行业惯有的规则或长期的实践经验往往会形成某些固有的解决方案,最终演变为行业标准或企业规则。这些标准或规则固然有文字和管理的约束,但也延伸和嵌入到了控制系统中,尤其是一些技术方面的处理。
通过Add_On指令的推行来实现一个企业或一个行业的标准,按照规定对某事物或对象进行标准化的处理。下面我们针对一个标准化的诊断处理编写一条Add_On指令。
这是一个具有监视模拟量输入功能的指令,针对模拟量数据监视,如图15-44所示。
要求当来自设备检测的模拟量反馈值超出上限或下限值的时间持续在n秒之后,指令报警,报警信息确认之后,给予报警复位。标准化编程进行延时报警处理,报警的上、下限值和延时时间均可以由编程者或操作者来设置。
创建一个名为ANALOG的Add_On指令,如图15-45所示。
创建如图15-46所示的参数设置,各个指令参数的用法和数据类型以及说明如表中所示,并设定参数显现在Add-On指令中。这里监视时间设定值的单位是秒,这意味着在Logic例程中编写梯级逻辑时将有特殊的处理。众所周知,计时器的计时基值是毫秒,对使用者来说,如果没有精度的特别要求,总是习惯使用秒为时间单位。
创建如图15-47所示的本地标签,高限值和低限值的计算中间结果存放单元,高限监视延时计时器和低限监视延时计时器。
图15-44 针对模拟量数据进行监视
图15-45 创建一个名为ANALOG的Add_On指令
图15-46 创建指令参数
(www.xing528.com)
图15-47 创建指令标签
编写梯级逻辑如图15-48所示。用加法指令ADD和减法指令SUB分别计算出高限比较值和低限比较值。延时计时器的预置值要进行换算,指令设置时间单位规定为秒,计时器时间基值为毫秒。乘法指令MUL不但完成了时间单位的换算,同时也将设定的时间传递给了延时计时器的预置值。比较指令给定了高限计时器延时和低限计时器延时的梯级条件,当持续时间未达到延时时间而监视值退出高限值范围或低限值范围,计时器复位,下次重新进入限值范围开始计时;当持续时间达到设定的延时时间,完成位置位。计时器的完成位的置位将锁定高限报警位或低限报警位,直到报警确认复位。此外,如果希望高限报警延时时间和低限报警时间不同,可以增设低限报警时间设置值的指令参数,并分别运算不同的源数据。
图15-48 监视模拟量的梯级逻辑
图15-48 监视模拟量的梯级逻辑(续)
编辑完成的ANALOG指令将出现在分类指令集的Add_On指令中,当我们在例程中引用该条指令时,将出现如图15-49所示的界面。
为本条指令分配一个结构数据标签AnalogTest,这个结构数据标签是与ANLOG指令同名的结构数据,它将存放与ANLOG指令操作有关的全部数据,并在数据库给出了所有的指令参数,根据指令参数设置时的用法选择,有的参数是输入设定的,如Analog_Set、High_Tolerance、Low_Tolerance和Monitor_Timer_Sec,有的参数用于监视并显示在ANLOG指令上,如High_Alarm和Low_Alarm。
由于指令后台运行的结果,AnalogTest标签的子元素是活动的数据,如果指令参数没有选择标签AnalogTest的子元素,而是选择了同类数据类型的其他标签,那么标签AnalogTest中的子元素将不断地给其他标签相互复制(拷入或拷出)。指令中测试对象直接使用了模拟量输入通道0。从指令面板上可以看出,测试对象数据居于15616,正好在高限值16000和低限值14000之间,故此没有任何报警状态出现。报警延时时间是默认值的5s。
标准化的技术处理聚集了丰富的经验和严谨的结构,规范的使用不但令各种优势得以延续,还避免了新手的失误和遗漏,更可以让维护人员尽快适应例程的解读。
图15-49 在例程中编写调用ANALOG的梯级逻辑
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。