您现在所在的是:

PLC论坛

回帖:15个,阅读:11412 [上一页] [1] [2] [下一页]
1141
sqscc2712
文章数:47
年度积分:50
历史总积分:1141
注册时间:2005/9/27
发站内信
发表于:2013/2/18 8:55:00
#0楼
请教:PLC做主站通过MODBUS RTU通讯网络,采集从站数据,一般采用怎样的编程结构和方法?请高手和专家赐教,谢谢!
补充:不管是功能块还是自己编通讯程序,主要问题是每次发送通讯指令的时间间隔如何处理?
[此贴子已经被作者于2013/2/18 17:13:50编辑过]
19769
pqsh 版主
文章数:7488
年度积分:385
历史总积分:19769
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2013/2/18 16:43:01
#1楼
看你什么PLC了。有的只需要填写主站轮询命令,有的需要自己在程序里放功能块,功能块填的命令参数也差不多就是那些。什么从站地址,命令代码,寄存器首地址,寄存器数,接收缓冲区地址。
好吧,我也补充吧,根据前2种情况:
如果是填写命令的,有的需要填写通讯间隔,尝试次数等。
如果是功能块,一般在定时器后面运行。
至于时间间隔定多少,要看你的情况了。比如,你的数据要求不太快,数据量不多,从站很少,那1s发一次命令足够了。如果你的从站很多,那几秒发一次,每个从站1s就是了。
至于重试次数,简单的不用了。
如果你有特别要求,那只好这样来计算了:主站的命令一条一般8字节,然后等待从站响应,允许从站最迟响应在n位(帧)后(这个modbus有规定),假设连续吧,然后从站发回数据,一般有m(你需要的数据量)x2+5字节。再乘以数据格式(RTU11=比如n,8,1),除以波特率(9600比如),等到最理想的响应时间。
[此贴子已经被作者于2013/2/19 12:31:24编辑过]
如果我忘了我
请帮忙记得我
pqsh@163,326199298@v&q同号
20748
jinqiaoma
文章数:5449
年度积分:183
历史总积分:20748
注册时间:2009/5/15
发站内信
2018论坛热心网友
发表于:2013/2/19 7:19:57
#2楼
用过200的做MODBUS轮询,有库可以添加使用,其他的就不了解了,应该大同小异吧。
43684
YXBK 版主
文章数:20014
年度积分:1063
历史总积分:43684
注册时间:2007/4/14
发站内信
2015论坛优秀版主
2015春节活动
2013论坛优秀版主
2012论坛优秀版主
发表于:2013/2/19 7:36:17
#3楼
如果是信捷的PLC,可以用 顺序功能块 这个功能搞定
大家一起学习
11823
gzg_00
文章数:8996
年度积分:50
历史总积分:11823
注册时间:2009/10/1
发站内信
发表于:2013/2/19 16:29:10
#4楼
根据实际情况来综合考虑
3472
dixinke
文章数:1062
年度积分:50
历史总积分:3472
注册时间:2004/9/9
发站内信
发表于:2013/2/20 16:48:35
#5楼
你用西门子的??
200,300??
我有现成的块。不过是收费的。
17578
ahljj
文章数:3386
年度积分:50
历史总积分:17578
注册时间:2002/3/23
发站内信
发表于:2013/11/16 16:04:34
#6楼
PLC做主站通过MODBUS RTU通讯网络
2081
BG7MKA
文章数:406
年度积分:50
历史总积分:2081
注册时间:2005/10/2
发站内信
发表于:2013/11/16 19:15:14
#7楼
时间控制很笨,一般用通讯完成位触发下一次通讯
此帖发自手机工控论坛
28357
guanyumou 版主
文章数:10598
年度积分:335
历史总积分:28357
注册时间:2008/7/13
发站内信
2018论坛优秀版主
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(二)
2017春节活动(三)
发表于:2014/5/13 13:35:16
#8楼
以下是引用dixinke2013/2/20 16:48:35的发言:
你用西门子的??
200,300??
我有现成的块。不过是收费的。
你的200 有MODBUS库?
基于各种组态软件\触摸屏\PLC\单片机\变频器Modbus TCP\RTU\ASCII通信编程服务,需要请直接
联系!腾讯扣扣149034219
20748
jinqiaoma
文章数:5449
年度积分:183
历史总积分:20748
注册时间:2009/5/15
发站内信
2018论坛热心网友
发表于:2014/5/13 15:19:54
#9楼
以下是引用BG7MKA2013/11/16 19:15:14的发言:
时间控制很笨,一般用通讯完成位触发下一次通讯
时间控制应该比较稳定,如果用通讯完成位来触发下一次通讯,假设某个子站通讯失败,后面的站就都没法触发了,这个有什么好办法解决吗?
我看过西门子的帮助也是用的通讯完成位触发下次通讯作为例子,我感觉不完善,还是我理解有问题?

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

93.6006