恭喜,你发布的帖子
发布于 2023-07-02 12:26:59
35楼
版主果然不一般,把我没能完整表达的意思基本上表达出来了!假设
1,PLC走485跟若干仪表通信,有时候读有时候写,有时候同一个仪表,有时候不同仪表。但是因为是485,一次只能完成一个工作,又因为是异步通信,可能经历诺干个周期。我想做一个功能块来负责通信,这个块完全平行调用,每个需要的地方,只需要输入要读写的地址,剩下的完全智能轮询。那么对仪表的通信,是不是将变得很简单?
2,有一个变频器控制若干个轴,根据实际需要在几个轴之间加上接触器来回切换。轴有启动和停止两个命令,当启动命令关闭后轴保持运行,直至收到停止命令,或者其他轴有启动要求,然后斜坡停止,抱闸,切换到另外一个轴,如果同时有请求,那么先运行的有优先权!常规的做法是一个地方读写变频器的控制字,状态字。然后每个轴根据这些去做逻辑控制,切换!我的目标是做成一个功能块,还是平行调用。每个使用的地方,只管负责请求和停止,给定,剩下的后台智能处理。
但是上述两种,都需要有一个在这个FB的实例之间穿梭的变量,直到当前的运行状态,或者有更好的办法我还没发现?
1,PLC走485跟若干仪表通信,有时候读有时候写,有时候同一个仪表,有时候不同仪表。但是因为是485,一次只能完成一个工作,又因为是异步通信,可能经历诺干个周期。我想做一个功能块来负责通信,这个块完全平行调用,每个需要的地方,只需要输入要读写的地址,剩下的完全智能轮询。那么对仪表的通信,是不是将变得很简单?
---------------------------------------------------------------------------------------------------------------
1)那么通信功能与你的控制程序可以细分为两个应用
2)通信程序与控制程序之间有数据交互
3)控制程序对通信程序的输出是任务变量的地址、读写方式以及需要写入的值
4)通信程序对控制程序的输出是通信状态,任务是否执行,以及任务变量读取的值
5)通信任务管理(按楼主的想法应该是有则做,无则歇)
其实,最后理想的结果就是做一个固定的任务轮询,控制程序与通信程序通过数据接口进行数据交互。
通信本身与控制对象的多少无关,控制对象的多少与通信任务的多少有关。
第二个问题也是类推吧
什么式编程架构,架构是用来做什么的?
我认为,架构的核心就是数据传递的通道。
请填写推广理由:
分享
只看
楼主