恭喜,你发布的帖子
发布于 2022-06-21 11:36:20
13楼
其实吧,对我来说楼主说的下面这段要求才是这个程序的价值吧。
这个程序是做为标准化编程的一个对象存在的。
在标准化编程里通信是读写IO的工具。IO同样做为对象存在的。
通信不应受到工艺逻辑的影响。通信程序中也不应有工艺逻辑存在。
比如与变频器,仪表通信,读写的数据都做为PLC的外设IO存在。
通讯事务必须满足这段要求才能使用这个程序,如果不符合就要增加一个通讯事务子程序来专门修改数据块对应的读、写次序了,不过这样就得改L001ModbusRtuComm了....
再有就是,整个程序不能存在非标准化的符号表占用,否则可能会被坑得很惨....比如L001ModbusRtuComm中的sBits,如果L001ModbusRtuComm前面的L区值带入到L001ModbusRtuComm感觉会很可怕(以前这样用一个子程序多次调用被坑过),所以不能有非标准化的应用...这局限啊....
@Zaxife
总结一下你说的两个问题:
1、通讯事务必须满足这段要求才能使用这个程序,如果不符合就要增加一个通讯事务子程序来专门修改数据块对应的读、写次序了,不过这样就得改L001ModbusRtuComm了....
目前程序通信中的轮询就只是按照通信任务的数量来做的,至于通讯事务想怎么排列是用户用了算,修改数据块或参数的程序块就可以。至于写是不分次序的,因为只有写的数据发生变化才会有写操作。
2、整个程序不能存在非标准化的符号表占用,否则可能会被坑得很惨....比如L001ModbusRtuComm中的sBits,如果L001ModbusRtuComm前面的L区值带入到L001ModbusRtuComm感觉会很可怕(以前这样用一个子程序多次调用被坑过),所以不能有非标准化的应用...这局限啊....
首先我不知道你有没有看懂我的程序,你说的问题是不存在的。在你没看懂我的程序之前,不要妄下判断。欢迎你留下电话或打我电话13478405725探讨。
请填写推广理由:
分享
只看
楼主