1.程序结构
在RSLogix5000编程软件中,一个项目用户程序文件由三层结构组成。第一层由任务(Task)组成,ControlLogix控制器的每一个项目最多可以定义32个任务,它们将决定逻辑程序的执行顺序和执行时间;第二层由程序(Program)组成,在每个任务下最多可以定义32个程序,每个程序拥有自己独立的数据区域和多个例程;第三层由例程(Routine)组成,是真正执行的程序。一般为梯形图程序,也可为功能块图、顺序功能图和结构化文本。
任务分为连续型、周期型和事件触发型3种执行类型。连续型任务指程序周而复始的执行,周期型任务指的是定时中断执行的逻辑程序,周期性地执行任务,需要定义执行周期。事件触发型任务指的是事件触发引起的任务调用,时间触发可以是外部输入点变化引起,也可以由Consumed标签引起或者直接指令调用引起,还可以有运动控制状态引起。
图4-6 程序结构
A水厂加药控制系统采用了如图4-6所示的程序结构:
程序的具体说明如表4-7所示:
表4-7 程序结构
2.阀门控制(进水阀门、出矾阀门)
阀门控制包括进水阀门的控制以及出矾阀门的控制。通过控制进水阀门的开关来实现药液的配制,控制出矾阀门的开关用来决定哪个矾池作为投加池。进水阀门与出矾阀门的控制方式相同都有“手动”、“中控”、“自动”三种控制方式,如图4-7所示。
图4-7 阀门控制模式选择
在阀门控制程序中,每个阀门都包含I/O变量和内存变量。I/O变量是和控制器上的实际I/O模块连接的变量,它们作为控制器控制阀门开关的输出信号以及对控制器输入的阀门状态反馈信号。内存变量则是在控制器内存单元中的变量,它们不连接控制器的实际I/O模块,而是作为实现上位机监控以及编程时程序逻辑需要而用到。3个进水阀门的变量见表4-8。
表4-8 进水阀门变量表
Add-on指令在阀门控制中的应用。
用户自定义指令原英文名称是Add_On Instruction,简称AOI。AOI是由用户自己创建的指令,可以像子例程一样反复调用,并带入带出用户自定义的参数。不同于子例程的是,利用导入导出的方法,可在多个项目中使用同一条AOI指令。AOI可以用系统标准的编程语言梯形图、功能块和结构语句来编写,并且可以被任何形式的例程调用。
由于加药系统中6个电磁阀门的控制逻辑相同,所以使用AOI指令会大大简化程序的开发而且使程序的可读性增强。
创建阀门控制Add-on指令
点开阀门控制Add-on指令结构体,其参数配制如图4-8所示。
图4-8 阀门Add-On指令参数配制
在上图的参数配置中v_remote参数为阀门控制的“远程控制”输入信号;v_opened、v_closed参数为阀门开到位、关到位的输入反馈信号;v_fault为阀门故障输入信号;v_orel、v_crel分别为阀门的开、关输出信号;v_open、v_close为阀门的开、关命令信号;v_needopen、v_needclose为在自动控制方式下阀门的开、关命令信号,这两个参数由外部的程序逻辑判断触发。overtime_set参数用来设置阀门的故障延迟时间,当阀门开、关输出时,在设定的时间内没有接受到阀门开到位、关到位信号反馈,则阀门停止开关输出,并触发v_overtime参数;overtime_reset参数则用来设置故障延迟时间;v_auto参数用来切换自动运行模式。
阀门控制Add-on的程序逻辑如图4-9所示。
图4-9 阀门控制Add-on程序逻辑
在阀门控制子例程中调用阀门控制Add-on指令,并将3个进水阀门、3个出矾阀门的控制变量标签依次同阀门控制Add-on指令中的标签进行连接。如图4-10所示。
阀门控制Add-on指令同样可以应用于出矾阀门的控制如图4-11所示。
2#、3#出矾阀门控制程序类似,在这里不再赘述。
在上述的阀门控制程序中当阀门auto_control标签触发,即阀门进入自动控制模式时,阀门的开关由v_needopen、v_needclose来控制,而这两个参数需要外部的程序逻辑判断是否触发。而当矾池的液位低于液位低限值且药剂加入矾池时,自动开启进水阀门进行配药。当液位到达设定值时自动关闭进水阀门,程序结构如图4-12所示。
图4-10 阀门控制子例程
图4-10 阀门控制子例程(续)
图4-11 出矾阀门控制梯级
图4-12 阀门自动控制梯级
在阀门自动控制模式下,出矾阀门的开闭用来确定其所对应的矾池是否作为当前的投加池,在同一时刻只有一个矾池作为投加池,即只有一个出矾阀门处于打开状态,其他两个矾池要么处于配药阶段,要么处于等待加药阶段,阀门处于关闭状态。PLC控制系统依次轮询各个矾池的状态,判断是否具备作为投加池的条件。当某个矾池配药过程完毕,且没有其他矾池处于加药状态,则该矾池作为投加池,出矾阀门打开。其控制流程如图4-13所示。
其阀门切换程序如图4-14所示。(www.daowen.com)
程序中当1#矾池配药完毕,2#出矾阀、3#出矾阀门处于关闭状态,且1#进水阀门关闭的情况下,1#池作为投加池触发“alumvalve1_needopen”标签,通过连接的阀门Add_on指令完成阀门开的命令,2#、3#矾池同理。
图4-13 矾池切换流程图
图4-14 阀门切换程序
3.搅拌机控制
搅拌机用来在矾池进行配药时对药液进行搅拌,使药液混合均匀。每个矾池各有一个搅拌机,搅拌机的控制方式也分为“手动”、“中控”、“自动”3种控制方式,在“自动”控制方式下,当矾池的液位高于低位设定值时,搅拌机自动开启,并且周期性的运行,运行设定时间后自动关闭,并开启空闲时间计时器,当空闲时间达到设定值时搅拌机再次起动,如此反复的运行。其程序流程如图4-15所示:
表4-9为搅拌机控制的变量。
表4-9 搅拌机控制变量表
(续)
图4-15 搅拌机控制流程
创建搅拌机控制Add-on指令
参数配制如图4-16所示:
图4-16 搅拌机Add-on指令参数配置
其中参数pool_yewei为矾池实际液位值;参数open_yewei为搅拌机开条件的液位设定,当液位超过该值时,搅拌机自动开启;mixer_computer_control和mixer_auto_control分别为搅拌机“中控”和“自动”方式选择;mixer_remote_control为搅拌机远程控制输入;mixer_fault_input为搅拌机的故障输入;mixer_run_time用来设定搅拌机的运行周期;mixer_control_out连接数字量输出模块用来控制搅拌机的开关;mixer_spare_time用来设定搅拌机的空闲时间,在自动控制模式下,搅拌机空闲时间达到设定值后重新起动;sparetime_acc和runtime_acc作为模块的输出,用来显示搅拌机的空闲时间和运行时间。
其程序逻辑如图4-17所示。
图4-17 搅拌机控制(一)
上一梯级为中控方式下搅拌机的开关逻辑,当在上位机监控界面点击搅拌机中控标签时“mixer_computer_control”标签触发,搅拌机进入“中控”控制方式,通过点击监控界面上的搅拌机开/关按钮来分别触发open_mixer和close_mixer标签来实现搅拌机的开关控制,如图4-18所示。
图4-18 搅拌机控制(二)
上一梯级用来判断搅拌机的故障条件,当搅拌机控制开输出,即mixer_control_out触发时,计时器TON指令触发开始计时,在设定时间“fault_time_delay”内没有收到搅拌机运行的反馈信号则搅拌机软故障soft_false位触发,搅拌机故障终止搅拌机控制输出,如图4-19所示。
图4-19 搅拌机控制(三)
在上一梯级中矾池的液位大于搅拌机开启液位设定值时,在中控模式下则提示搅拌机运行,在自动模式下则触发mixer_run位,从而开启搅拌机,如图4-20所示。
上面的梯级中当搅拌机在自动控制模式下运行后计时器开始计时,当运行时间达到设定值mixer_run_time时搅拌机停止,启动空闲时间计时器,当空闲时间达到设定值mixer_spare_time时自动开启搅拌机。
4.计量泵控制
在加药控制系统中需要保证根据不同的原水水质和水量情况实现最为合适的药剂投加,这常常通过计量泵控制系统来实现。计量泵的控制包括逻辑上的控制即控制计量泵的启停,还包括加药量的控制,这往往要用到过程控制,计量泵每一次的流体泵出量决定了其计量容量。在一定的有效隔膜面积下,泵的输出流体的体积流量正比于冲程长度L和频率F,即V∝A·F·L,在计量介质和工作压力确定情况下,通过调节冲程长度L和冲程频率F即可实现对计量泵输出的双维调节。
尽管冲程长度和频率都可以作为调节变量,但在工程应用中一般将冲程长度视为粗调变量,冲程频率为细调变量:调节冲程长度至一定值,然后通过改变其频率实现精细调节,增加调节的灵活性。在相对简单的应用场合,也可以手动设置冲程长度,仅将冲程频率作为调节变量,从而简化系统配置。
在A水厂加药间中配置有两台计量泵,一用一备。为了提高计量泵的使用寿命采用两台计量泵周期性轮换工作的方式,当其中的一台泵运行时间达到设定值时自动切换到另外一台泵,此外当其中一台泵出现故障时,也自动切换到另一台泵,以保证药液的连续投加。其流程如图4-21所示。
计量泵逻辑部分的控制程序比较简单,在这里不再赘述。
在A水厂中计量泵的控制采用手动设置冲程长度为固定值,通过控制加药泵变频器的运行频率来对加药量进行控制。加药量计算子程序根据不同的原水水质与水量情况计算出最为合适的加药量作为计量泵输出流量的给定值SP,同时控制器将流量计算值SP与实际的出矾流量PV的偏差输入给PIDE功能块,通过PIDE功能块计算出最为合适的值CU,作为变频器的频率给定值,变频器通过该频率输出控制计量泵电动机的转速变化从而调节加药量,其控制系统结构如图4-22所示。
该系统中用到了PIDE功能块,它具备了很多比传统PID功能块更为优越的功能,这将在下一节中讲述。
图4-20 搅拌机控制
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。