恭喜,你发布的帖子
发布于 2017-08-25 21:57:21
16楼
我觉得Zane版主说的挺好,之前有过的项目经验也确实说明数据同步的重要性。(虽然速度不快)
这种涉及到多个元器件,组成部分的响应时间,不能按理论或正常情况考虑。数据库查询也会遇到网络中断,或堵塞的情况,以往的做法是将配置文件(比如换班或换件的时候,将配置信息下载到本地PC、或PLC)。
我的建议是:
1、第一个光电是扫码,或者重量或者其他信息的获取标志,设定数据库返回条码信息一个固定时间(改时间不能超过下一个物品来的时间),超时则认为错误。数据库返回状态信息的标志作为入栈的标志(不是光电)。记录数据库超时的次数,连续超时一定数目,报警或其他措施。
2、剔除光电作为出栈信号,剔除光电根据信息动作,原先入栈出栈可能会遇到同时出现,采取中断可能会分开。出栈应该优先级高一些。
3、可考虑使用BOOL运算,减少浮点数运算,或者将这个剔除系统单独一个PLC,与其他分开。
实际情况不甚了解,仅供参考。
光电传感器触发扫码,是对的。
数据库返回条码信息和下一个盒子到来的时间,这里有问题,会有一种情况,就是扫码结果没有出来,但下一个盒子已经到来,触发扫码。
数据库返回状态作为入栈标志。数据库超时次数没有办法记录。难道是第一个传感器触发扫码开始计时,到结果返回时结束计时,记录这个次数?按照当时客户的想法,如果有一次这样的超时,都是不允许的。
采用中断,出栈的优先级高一些,是很好的建议,谢谢啦!
当时用的BOOL变量,传送指令,上升沿等。没有其他。
请填写推广理由:
分享
只看
楼主