1 引言
一般来说,可以把控制系统划分为三类:过程调节系统、运动控制系统和生产控制系统。第一种侧重于回路的调节控制,往往涉及较复杂的控制算法,主要应用于炼油等化工行业;第二种侧重于机械的运动控制,实时性和同步性较强,主要应用于机械包装行业,如啤酒罐装生产过程;第三种侧重于有大量独立的检测和控制信号,控制程序的顺序性较强,与工艺流程结合比较紧密,啤酒酿造过程就属于此类。这三种控制系统,各有各的编程侧重点。对于生产控制系统,其编程重点有两部分:一部分是设备驱动标准模块的设计,主要针对生产中大量相对独立的检测和控制信号,通过归类分析,设计出各类设备的标准处理功能块,来实现这些设备的手动/自动开关/调节、报警检测、模拟、忽略等控制功能,这部分设计包括各类开关量设备驱动功能块、连续量设备驱动功能块和调节回路驱动功能块的设计;另一部分是生产工艺流程控制程序的设计,根据生产工艺流程中每一步骤的控制要求,在每个顺序步中实现相应的控制动作,而这些动作命令是发送给设备的标准驱动模块,由标准模块处理后才影响现场设备。可以看出第一部分的设备驱动标准模块设计是基础,它直接管理所有的输入/输出设备,生产工艺流程控制程序必须通过他们才能发挥作用。下面就以啤酒酿造生产控制系统设计为例,论述开关量设备驱动模块的plc程序设计方法。
2 数字量设备控制模块的设计分析
啤酒酿造生产涉及大量的数字量信号,如阀位检测信号、物料高低位检测信号、气动阀门开关控制信号,电机启停控制信号等,如一个年产20万吨的啤酒发酵和过滤车间,其数字量设备的数量至少在千点以上。如何按标准化、模块化的程序设计要求来编写这些数字量设备的控制块,使这些控制块既能通用于啤酒酿造设备,又能提供较全面的生产操作功能,这些是程序设计人员在动手写控制程序之前需要考虑的问题。在这里,通过分析啤酒酿造生产控制设备的特点,可以根据这些设备的信号类型和操作要求,把所有数字量设备划分成8种控制类型,从而设计出相应的标准控制模块,就可以大大提高整个控制系统编程的效率,使控制程序具有好的可读性和移植性。
2.1 数字量设备控制类型
根据数字量设备的输入输出信号特点,笔者把它划分成八类:
(1)第一种是常开输入(io)的信号设备。该类设备只有输入信号,没有输出信号,且平时的输入信号为0。如液位的高位信号,管板上的弯管连接状态信号等,它们正常时输入信号都为0,等到有变化了,需要提醒或报警时才变为1。
(2)第二种是常闭输入(ic)的信号设备。该类设备只有输入信号,没有输出信号,且平时的输入信号为1,与第一种恰好相反。如液位的低位信号,压力容器的关闭锅盖检测信号,设备的急停信号等,它们正常时输入信号都为1,等到有变化了,需要提醒或报警时才变为0。
(3)第三种是单输出(out)且不带反馈的控制设备。该类设备有一个开关输出信号,没有输入反馈信号。如电磁阀,不带位置反馈的单驱动气动蝶阀等。通常输出信号为0,对应于设备关,为1,对应于设备开。
(4)第四种是单输出(out)且带“开”反馈(io)的控制设备。该类设备有一个开关输出信号,有开到位时的输入反馈信号。如带阀门开状态检测的单驱动气动蝶阀等。通常输出信号为0,设备是关的,反馈信号为0;输出信号为1,设备是开的,反馈信号为1;
(5)第五种是单输出(out)且带“关”反馈(ic)的控制设备。该类设备有一个开关输出信号,有关到位时的输入反馈信号。如带阀门关状态检测的单驱动气动蝶阀等。通常输出信号为0,设备是关的,反馈信号为1;输出信号为1,设备是开的,反馈信号为0;
(6)第六种是单输出(out)且带开关双反馈(io,ic)的控制设备。该类设备有一个开关输出信号,有开到位和关到位两个输入反馈信号。如带开到位和关到位检测的双驱动气动蝶阀等。通常输出信号为0,对应于设备关,为1,对应于设备开。开到位时一个反馈信号为1,关到位时另一个反馈信号为1。
(7)第七种是单输出(out)且带运行(io)和报警(ic)双反馈的控制设备。该类设备有一个开关输出信号,有运行状态和报警检测两个输入反馈信号。如普通电机的开关控制等。通常输出信号out为0,对应于电机停止,为1,对应于电机启动;电机启动后主接触器闭合,运行反馈信号io输入变为1;电机跳闸或其他故障时,报警反馈输入信号ic为0,没有报警时为1。
(8)第八种是双输出(outl,outr)且带双运行(iol,ior)和报警(ic)的输入信号反馈的控制设备。该类设备有左/右转(高/低速)两种输出信号,有左/右转(高/低速)两个运行状态反馈信号和报警检测反馈信号。如左/右转(高/低速)电机的开关控制等。通常一个输出信号为1,对应于电机左转,另一个输出信号为1,对应于电机右转,相应的有两个运行状态的反馈信号。电机跳闸或其他故障时,报警反馈输入信号为0,正常时为1。
其实第八种是两个第七种的组合控制,再加上一些输出命令的互锁逻辑。
2.2 数字量设备的操作菜单
上面,我们根据开关量设备的信号特点,把所有开关量设备归纳成八种类型。可以看出这些开关量设备的输入、输出信号较简单,但是根据啤酒生产的操作要求,开关设备的操作功能要比较完善,才能提高设备操作的灵活性。下面,针对八类设备的操作特点,分析其相应操作菜单条的功能:
先来看看较好理解的输出设备的操作菜单条。
对于(3)类型单输出不带反馈的设备,其操作功能简单,只有设备状态显示、手动/自动切换按钮、开关切换按钮等,其操作菜单如图1所示:
说明:
open,close:指示设备当前开关状态,根据设备输入信号来判断。
auto open/close:自动输出值,由工艺流程控制程序运行时赋值。
interlocked:设备锁存位,保持设备当前状态,不容许操作,一般是为了安全需要。
manual/auto:自动、手动控制切换按钮。
open/close:手动开、手动关切换按钮。
ignore:忽略按钮,忽略设备的反馈信号,强制输入信号跟随输出信号变化,从而也忽略了报警。
alarm:设备报警位。
reset:报警复位按钮。
对于(8)类型双输出带双反馈的设备,其操作菜单如图3所示。可以看出,它是上一种类型的组合控制。
对于没有输出,只有输入的(1)、(2)两种设备的控制,为了增强其操作功能,参考输出设备的控制,赋予它有自动预置/手动模拟的输出功能,从而也就可以手动改变其状态和实现自动报警功能。这样一来,这两类设备的功能块处理过程就几乎与d、e、f、g类的输出设备一样。
(1)、(2)两种类型的输入信号设备,其操作菜单如如图4所示:
图4说明:
on,off:指示设备当前开关状,on是需要提醒或报警的状态。
preset auto:自动预置输出值,当生产流程控制程序运行时,步程序预置希望的信号状态,如果输入信号与预置值不一样,则产生报警。
alarm enable:设备报警使能。(输出信号设备也具有该功能,但没在菜单条上提供)
simulate:自动预置/手动模拟切换。
preset on/of f:改变手动模拟值。
ignore:忽略设备的反馈信号,强制输入信号跟随输出信号变化,从而也忽略了报警。
reset:报警复位。
八种开关量设备对应四种操作菜单,分别操作单输出信号设备、单输出单反馈信号设备、双输出双反馈信号设备和输入信号设备。仔细分析这些操单的操作功能,可以看出它们的操作功能是基本一致的,所以它们对应的程序功能块的编程处理过程也是雷同。
3 数字量设备处理功能块的plc程序设计
通过把数字量设备划分成八种类型,并给出相应类型的操作菜单条,可以看出数字量设备的程序控制功能块具有如图5的统一结构。
按类划分的设备控制模块,其调用的输入输出参数只包括设备顺序号和现场设备输入输出信号的plc地址,非常简单。划分八类数字量信号设备就有八个plc设备控制模块,不管生产控制设备的数量多少,归属于同类的生产控制设备,其控制程序的处理过程是一样的,不同的只是它们的输入输出信号地址和plc内部存储区地址。
如果用西门子step7来编程,可以用一个数据块db来储存所有数字量设备的状态位和命令位,每个设备占用一个数据字dw,根据设备的顺序编号,可以访问该设备在数据块中的数据字。下面列出各种模块的输入输出参数和各个状态位、命令位的符号。见附表。
可以从表1看出,八种功能块具有很多共同属性,并且其地址偏移是一致的,只要理解了各种功能块所需要的命令参数和状态参数,就不难编写出相应的处理过程。图6给出功能块的主要处理流程。
有了各类数字量设备的标准处理功能块,涉及到数字量设备的plc控制程序编写起来就非常简单。想修改某个设备的报警检测时间也很方便,只要通过电脑修改对应的plc内部数据字就行。每增加一个设备,只要增加一次功能块调用,赋给功能块四个参数:设备顺序号、输入信号地址、输出信号地址,则信号处理过程就自动完成,处理结果也放在了对应的数据字中。可以看出,利用设备标准处理功能块,几百个设备与几千个设备的编程难度是一样的。
4 结束语
通过以上的论述,可以看出,这些数据量设备控制模块的设计遵从面向对象编程思想,各类设备的处理过程封装在标准功能块中,只保留了与具体设备有关的四个输入输出地址参数,设备控制功能块只需设计一次,就可以反复调用,这样就大大简化了控制系统的程序设计。该方法已经在大型啤酒发酵过滤生产控制系统设计中的得到应用。
评论
查看更多