回复:S7-200Smart子程序编程思路之二-分享最简单的ModbusRTU多参数读写

已锁定

ANIUPC

西门子1847工业学习平台

  • 帖子

    4
  • 精华

    0
  • 被关注

    1

论坛等级:游侠

注册时间:2016-11-05

黄金 黄金 如何晋级?

发布于 2022-10-27 22:27:30

91楼

展开查看
以下是引用holdkcsxyz在2022-10-27 21:34:46的发言 >88楼

多谢砖家称呼,委托第三方初测OK(第三方IO),错漏难免, 缺乏的一些容错性可以由使用者自己补齐。帖子的例程不是标准化的,是完完全全的非标,子程序内部变量的使用也是信手的,使用造成的故障应根据实际情况自行调整。

1 读24个布尔输入(循环读写)


2 写24个布尔输出(变化才写)


3  数据块


4  状态表


5  测试图





以下是引用201611052FX28V在2022-10-27 16:36:26的发言 >87楼:本人才疏学浅,那位...

引用87楼详细内容:

本人才疏学浅,那位提问题的老师已经说的很明白了,楼主真是没有明白modbus数据帧的格式,西门子官方资料也说的很明白了,使用主站指令,读取从站地址的数据,需要从站支持对应的功能码,就是那位老师提出的第3个问题,你能保证你的所有从站都支持他说的那些功能码吗?假如,我说假如,有个从站不支持16号功能码:写多寄存器单元,然后再假如有人不了解的拿你的程序去往这个从站连续写多个寄存器的值,结果通讯错误了,这是谁的责任?这不是误导吗?你的贴子从头到尾都没有提这个问题,如何解决?如何避坑?这不是楼主应该想的事吗?通过楼主的程序我看到了楼主确实在指针、循环指令、子程序、中断运用上也是专家级的,但是这个这么基础的问题,竟然视而不见。既然来这里看帖,都是想学知识,提高自己的,既然发出来,有人提出这种疑问了,也请楼主多思考一下。

楼主,刚才我也测试了,公司有几台项目剩下的st40的plc,使用楼主的程序能达到读写位地址目的。我提出疑问也是在大家讨论的基础上发表一些自己的看法,可能看法也有不对的地方,但是我认为这样才能有进步,如果大家都是说收藏了,下载了,学习了,就没有什么意义了。楼主此贴的侧重点在如何使轮询快速如何更优化的处理掉站状况,其他情况并不在楼主考虑范围,如需要应用使用者要自行把握。为验证程序的可行性,楼主应该是做了大量的工作,为楼主的探索精神点赞。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有8945条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。