波峰焊/回流焊专用plc实时多任务控制方法

文档序号:6279949阅读:554来源:国知局
专利名称:波峰焊/回流焊专用plc实时多任务控制方法
技术领域
本发明属于可编程逻辑控制器(Programmable Logic Controller;PLC)技术领域,尤其是指一种在可编程逻辑控制器中实现波峰焊、回流焊工艺的实时多任务控制方法。
背景技术
作为离散控制的首选产品,可编程逻辑控制器(以下称之为PLC)在二十世纪八十年代至九十年代得到了迅速发展,其以存储执行相关逻辑运算、顺序控制、定时、计数和运算等操作的指令,并通过数字输入和输出操作而实现对各类机械或生产过程的控制。用户根据生产过程的工艺要求编写控制程序,并预先存入PLC的用户存储器中,运行时按照所存入的控制程序的内容逐条执行,以完成生产工艺流程所要求的操作。PLC的CPU内有指示程序步存储地址的程序计数器,在程序运行过程中,每执行一步,程序计数器自动加1,程序从起始步(步序号为零)起依次执行到最终步(通常为END指令),然后再返回起始步循环运算。PLC每完成一次循环操作所需的时间称为一个扫描周期。现有的的波峰焊/回流焊专用PLC大多采用单任务的时钟扫描或监控程序来处理程序本身的逻辑运算指令和外部的I/O通道的状态采集与刷新,这种处理方式直接导致了PLC的“控制速度”依赖于应用程序的大小,其无疑与I/O通道中高实时性的控制要求相违背。在波峰焊、回流焊控制系统中,对温度曲线的控制精度要求很高,以单线程的PLC进行控制就难以达到其对温度曲线控制高精度的需求。

发明内容本发明的目的在于提供一种波峰焊/回流焊专用PLC实时多任务控制方法,以提高波峰焊/回流焊专用PLC的控制效率和控制精度。
本发明的目的是这样实现的一种波峰焊/回流焊专用PLC实时多任务控制方法,其将控制任务划分为温度曲线调节算法任务、通讯任务和逻辑控制任务三部分,其中,温度曲线调节算法任务处理的是采集波峰焊/汇流焊工艺的现场温度,并将采集到的现场温度与温度设定值进行联合计算,然后将计算结果输出至相应的输出端口;通信任务处理的是和外部设备的通讯请求;逻辑控制任务处理的是波峰焊/回流焊工艺所需的处理程序,其控制方法包括有如下步骤(1)、系统初始化;(2)、创建逻辑控制任务,并将其压入就绪任务队列;(3)、检测系统的采样定时器,如采样定时器的时间大于或等于所预设的采样时间,则创建温度曲线调节算法任务并将其压入就绪任务队列,然后执行步骤(4),如采样定时器的时间小于所预设的采样时间,则直接执行步骤(4);(4)、检查就绪任务队列中是否有温度曲线调节算法任务,如有温度曲线调节算法任务,则继续步骤(5),如没有温度曲线调节算法任务,则继续步骤(6);(5)、执行该温度曲线调节算法任务,如在分配的系统时间片内完成温度曲线调节算法任务,则复位系统的采样定时器后返回步骤(3),如在分配的系统时间片内未完成温度曲线调节算法任务,则挂起该温度曲线调节算法任务后返回步骤(3);(6)、检查就绪任务队列中是否有通讯任务,该通讯任务由外部设备发起的通讯请求而创建,通讯任务一旦创建,就会压入就绪任务队列,如有通讯任务,则继续步骤(7),如没有通讯任务,则执行步骤(8);(7)、执行该通讯任务,如在分配的系统时间片内完成通讯任务,则直接返回步骤(3),如在分配的系统时间片内未完成通讯任务,则挂起该通讯任务后返回步骤(3);(8)、执行逻辑控制任务,如在分配的系统时间片内完成逻辑控制任务,则返回执行步骤(2),如在分配的系统时间片内未完成逻辑控制任务,则挂起该逻辑控制任务后返回执行步骤(3)。
相比于现有技术,本发明的有益效果在于所涉及的波峰焊/回流焊专用PLC实时多任务控制方法克服现有技术中以单线程PLC来控制波峰焊/回流焊工艺所存在的实时性差、控制效率低和控制精度差的缺点,采用并行多任务结构,可大大提高PLC在波峰焊/回流焊应用中的控制效率与精度。

下面结合附图及实施例对本发明做进一步说明。
图1是本发明波峰焊/回流焊专用PLC实时多任务控制方法的流程图。
具体实施方式本发明所公开的波峰焊/回流焊专用PLC实时多任务控制方法在于克服现有技术中以单线程PLC来控制波峰焊/回流焊工艺所存在的实时性差、控制效率低和控制精度差的缺点,以提高波峰焊/回流焊专用PLC的控制效率和控制精度。首先,根据波峰焊/回流焊工艺和控制的特点将PLC控制任务划分为温度曲线调节算法任务、通讯任务和逻辑控制任务三部分。温度曲线调节算法任务处理的是采集波峰焊/汇流焊工艺的现场温度,并将采集到的现场温度与温度设定值进行联合计算,然后将计算结果输出至相应的输出端口,因温度采集频率直接决定温度调节精度,所以将其定义为优先级最高的任务。通信任务处理的是与诸如编程器、上位机、HMI、变频器、智能仪表等外部设备的通讯请求,其由外部设备发起的通讯请求而创建,优先级低于温度曲线调节算法任务但高于逻辑控制任务。逻辑控制任务处理的是波峰焊/回流焊工艺所需的处理程序,实现传输、助焊剂涂敷、预热、均热、回流加热、锡炉波峰、热风刀和冷却等功能,因这些功能均为逻辑控制任务,实时响应要求较低,所以其优先级为最低。
结合图1所示,本发明的控制方法如下所述,系统初始化(步骤S10)后,首先创建逻辑控制任务,并将其压入就绪任务队列(步骤S11)。检测系统的采样定时器,比较采样定时器的时间与所预设的采样时间(步骤S12),如采样定时器的时间大于或等于所预设的采样时间,则创建温度曲线调节算法任务并将其压入就绪任务队列(S13),然后执行以下步骤,如采样定时器的时间小于所预设的采样时间,则直接执行以下步骤。检查就绪任务队列中是否有温度曲线调节算法任务(步骤S14),如有温度曲线调节算法任务,则执行该温度曲线调节算法任务(步骤S15),再判定是否能在分配的系统时间片内完成该温度曲线调节算法任务(步骤S16),如在分配的系统时间片内完成温度曲线调节算法任务,则复位系统的采样定时器(步骤S17)后返回步骤S12,如在分配的系统时间片内未完成温度曲线调节算法任务,则挂起该温度曲线调节算法任务(S18)后返回步骤S12;如没有温度曲线调节算法任务,则检查就绪任务队列中是否有通讯任务(步骤S19),通讯任务由外部设备发起的通讯请求而创建,通讯任务一旦创建,就会压入就绪任务队列,如有通讯任务,则执行该通讯任务(步骤S20),后判定该通讯任务能否在分配的系统时间片内完成(步骤S21),如在分配的系统时间片内完成通讯任务,则直接返回步骤S12,如在分配的系统时间片内未完成通讯任务,则挂起该通讯任务(步骤S22)后返回步骤S12。在进行步骤S19的过程中,如在就绪任务队列中检查没有通讯任务,则执行逻辑控制任务(步骤S23)。判定该逻辑控制任务能否在分配的系统时间片内完成(步骤S24)如在分配的系统时间片内完成逻辑控制任务,则返回执行步骤S11,如在分配的系统时间片内未完成逻辑控制任务,则挂起该逻辑控制任务(步骤S25)后返回执行步骤S12。
上述波峰焊/回流焊专用PLC实时多任务控制方法采用并行多任务结构,在波峰焊/回流焊的工艺控制中,可大大提高控制效率与控制精度。
权利要求
1.一种波峰焊/回流焊专用PLC实时多任务控制方法,其特征在于其将控制任务划分为温度曲线调节算法任务、通讯任务和逻辑控制任务三部分,其中,温度曲线调节算法任务处理的是采集波峰焊/汇流焊工艺的现场温度,并将采集到的现场温度与温度设定值进行联合计算,然后将计算结果输出至相应的输出端口;通信任务处理的是和外部设备的通讯请求;逻辑控制任务处理的是波峰焊/回流焊工艺所需的处理程序,其控制方法包括有如下步骤(1)、系统初始化;(2)、创建逻辑控制任务,并将其压入就绪任务队列;(3)、检测系统的采样定时器,如采样定时器的时间大于或等于所预设的采样时间,则创建温度曲线调节算法任务并将其压入就绪任务队列,然后执行步骤(4),如采样定时器的时间小于所预设的采样时间,则直接执行步骤(4);(4)、检查就绪任务队列中是否有温度曲线调节算法任务,如有温度曲线调节算法任务,则继续步骤(5),如没有温度曲线调节算法任务,则继续步骤(6);(5)、执行该温度曲线调节算法任务,如在分配的系统时间片内完成温度曲线调节算法任务,则复位系统的采样定时器后返回步骤(3),如在分配的系统时间片内未完成温度曲线调节算法任务,则挂起该温度曲线调节算法任务后返回步骤(3);(6)、检查就绪任务队列中是否有通讯任务,通讯任务由外部设备发起的通讯请求而创建,通讯任务一旦创建,就会压入就绪任务队列,如有通讯任务,则继续步骤(7),如没有通讯任务,则执行步骤(8);(7)、执行该通讯任务,如在分配的系统时间片内完成通讯任务,则直接返回步骤(3),如在分配的系统时间片内未完成通讯任务,则挂起该通讯任务后返回步骤(3);(8)、执行逻辑控制任务,如在分配的系统时间片内完成逻辑控制任务,则返回执行步骤(2),如在分配的系统时间片内未完成逻辑控制任务,则挂起该逻辑控制任务后返回执行步骤(3)。
全文摘要
本发明公开一种波峰焊/回流焊专用PLC实时多任务控制方法,其根据波峰焊/回流焊的工艺和控制的特点而将PLC控制任务划分为温度曲线调节算法任务、通讯任务和逻辑控制任务三部分,根据所确定的温度曲线调节算法任务、通讯任务和逻辑控制任务三者的执行优先级进行控制。其可大幅度提高波峰焊/回流焊专用PLC的控制效率和控制精度。
文档编号G05B19/05GK101082818SQ200610083028
公开日2007年12月5日 申请日期2006年5月29日 优先权日2006年5月29日
发明者黄朝晖, 刘海涛, 祁岩, 王世伟 申请人:深圳市同辰智能控制系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1