益旺电气
工控爱好者
级别: 略有小成
精华主题: 0
发帖数量: 91 个
工控威望: 201 点
下载积分: 6963 分
在线时间: 84(小时)
注册时间: 2010-08-15
最后登录: 2024-01-18
查看益旺电气的 主题 / 回贴
楼主  发表于: 2020-11-27 21:33
图片:
在很多的场合有需要使用先进先出的功能,但是稍低档点的PLC没有先进先出指令,请问一下大家怎么用普通的PLC实现这样的功能?
如图所示,在前面位置进行检测,检测是否为良品,在后面进行废料处理,或放行,两位置之间的物料件数会根据前面的来料及后面的废料处理,使中间的数量会变化,有可能是1个,也有可能最多8个的数量,后面处理的比来料快,中间的数量就少,后面处理的速度比前面的来料慢,中间的数量就多。不管中间的数量如何变化,但是后面处理的结果都是依据前面检测的顺序来执行。
[ 此帖被益旺电气在2020-11-28 09:20重新编辑 ]
工控自动化设备PLC,触摸屏,单片机程序开发设计 ,PCB设计,生产与销售
plc-cmd
级别: 探索解密
精华主题: 0
发帖数量: 7 个
工控威望: 127 点
下载积分: 1557 分
在线时间: 20(小时)
注册时间: 2014-03-17
最后登录: 2024-03-05
查看plc-cmd的 主题 / 回贴
1楼  发表于: 2020-11-28 22:27
图片:
图片:
不使用SFRD和SFWR以及左移、右移等指令的情况下, 写一个子程序,定义一个数组,定义入栈元素、出栈元素、堆栈长度等,在子程序内部进行入栈和出栈以及初始化操作就可以了
举个栗子:
[ 此帖被plc-cmd在2020-11-28 23:37重新编辑 ]