签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
plc作为客户端如何对同一个ip,id,端口号为502的施耐德plc进行modbus tcp通讯读写功能,读写数据地址不同,读写功能可以同时实现吗,怎么同时实现,
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1715789&b_id=66&s_id=0&num=3
论坛上关于轮询的讨论其实蛮多的,可以搜索借鉴下。
如果从来没做过,又只能靠自己的话,得一步一步来:
1)先摸清楚MB_Client的功能,单个读写功能进行下测试,顺便熟悉指令用法;
2)指令上手之后,就是增加轮询的功能。一个一个增加,考虑清楚切换的时序控制;务必确保在上一条指令执行成功或者错误(包括超时)之后,再切换下一个功能。
3)切换功能的方法,一是可以修改MB_Client的接口数据(mode,mb_data_addr,mb_data_len。mb_data_ptr不好修改,使用公用数据区); 二是可以调用多个MB_Client功能块,但要确保使用同一背景数据块和同样的Connect参数,不同功能的mode,mb_data_addr,mb_data_len, mb_data_ptr等参数事先配置好。
读和写其实是一回事儿,都是一个任务
程序可以分成三步来写:
开机第一个上上升沿启动读指令。
读指令的DONE触发写指令。
写指令的DONE触发读指令。
此时读指令和写指令之间构成一个循环,在PLC的第一个扫描周期,MB_Clien指令读,在下一个扫描周期,MB_Clien指令写,再下一个扫描周期,MB_Clien指令读,周而复始。
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录