>【前言】 上篇测试了施耐德unity pro中的先入先出程序[FIFO],本次我们在西门子博途中进行功能块的测试 施耐德unity pro中测试FIFO功能及其他 在网络查看了相关的程序,做了相应的修改。 【功能块设计】
设计FB功能块 step1:定义接口变量 step2:程序设计
入栈:当入栈信号触发,且栈内数据未满的时,将当前数据入栈。 数据处理,通过一个循环指令,将数据逐一存入数组。先入先出。 出栈:当出栈需求信号且栈内数据不为空时,将先入的数据输出。同时清空数据。 栈数据监测:当第一个数据为0,标志为空。当最后一个数据不为0,标志为满。 【功能块测试】 我们入栈数据:3,4,2,1 结果如下:
当我们开始取数据时,第1个数据应该是3。 同时第2个数据前移。 【应用场景】 在水处理控制系统中,滤池反洗程序可以使用,比如在某个滤池在反冲过程中,另外滤池也需要反冲洗,那么就需要等待冲洗滤池完成后,才能进行反洗,将滤池编号1#,2#,3#,4#,分别入栈。出栈的滤池编号就作为控制该滤池的反冲洗顺序。 【后记】
关于PLC的算法,大家可以提出需求,一起研究。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |