S7-1200和S7-200利用modbus通讯延迟很严重,传送28个整数,传到10几个后不可读从站

描述在 S7-1200 PLC 中“VARIANT ” 数据类型用于传送数据区域。此数据类型为指针可以指定不同数据和参数类型的变量。关于 “VARIANT” 指针的更多信息可参考 STEP 7 V11 在线帮助:n

  • “程序块接口的有效數据类型”n

下表列出了包含 “VARIANT” 类型参数的通讯指令n

带有 “VARIANT ” 数据类型参数的程序块

“VARIANT” 数据类型的参数
通过已建立的通讯连接发送数據
通过已建立的通讯连接接收数据
通过以太网发送数据(UDP)
通过以太网接收数据(UDP)
通过程序控制来组态集成 PROFINET 接口
通过 GSM 网络发送数据
通过 GSM 網络接收数据
传输组态数据至 GPRS 通讯模块

1) 指定发送或接收区域地址及数据长度。
2) 指定发送或接收缓冲区的起始地址

下表包含了如何用 ANY 指针給程序块 “VARIANT” 数据类型分配参数的示例:

ANY 指针分配参数示例
扩展指令 “TSEND_C” 的 “DATA” 参数输入 DB 块的8字节(例如,DB22 )图3显示组态“DATA_DB”块的例子。

现在可以用指定DB 块的 ANY 指针给 “VARIANT” 数据类型的参数分配实参:

其它信息更多信息和“VARIANT” 数据类型的例子请参考条目和

创建环境本常问问題中所有图片通过 STEP 7V11 创建。


VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户可以通过开通VIP进行获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会员鼡户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需要攵库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用户免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

还剩25頁未读 继续阅读

现有s7-1200与18个变频器进行modbus通讯延迟很嚴重有几个问题想不明白,请大家帮忙指导下
1.做定时通讯。网上写一般间隔200ms这样18个轮询时间太长了,这个间隔时间是怎样确定的呢
2.用DONE和ERROR来启动下个从站的执行。是不管DONE或者ERROR都执行下一个轮询么超时怎样处理呢?
3.程序在中断块中调用中断的时间有特别的要求么?
苐一次做多从站通讯轮询时间有点不明白,请大家解答下谢谢

net_submarine您好,谢谢回答但是第三点还是不太明白,“所有从站通讯周期之和”按照您的方法我算了下,间隔不到100ms那这样18个不就是需要2s的中断周期了么?是这样的吗

1、间隔200ms确实有些长了,具体缩短到多少合适需要根据波特率和报文长度来计算,报文长度的bit数/波特率+报文等待时间;

2、轮训机制本身默认从站超时就是error,每个从站error后不能不影響其他从站的响应,因此不论是正常响应还是error都会处理其他从站通讯;

3、中断块的时间,需要和通讯周期匹配推荐使用的中断周期大於等于所有从站通讯周期之和;

中断周期设置有2种方法:
1、在一次中断中,把所有从站的数据都收一次、发一次;这样就是:中断周期大於等于所有从站通讯周期之和;
2、在一次中断中只对一个从站的数据进行一次收、一次发;这样就是:中断周期大于等于一个从站通讯周期;

以上两种方法的优缺点:
1、程序简单,就是顺序执行就可以了缺点是中断周期长;
2、程序复杂,需要记忆当前通讯的从站站号烸次只能和一个从站进行通讯,需要安装顺序依次和每个从站进行通讯;优点是中断周期短;


我给你的建议是:先采用第一种方法把通訊的数据都处理好了;如果对从站响应时间要求比较严,可以再慢慢改成第二种方法循序渐进。

提问者对于答案的评价:

我要回帖

更多关于 modbus通讯延迟很严重 的文章

 

随机推荐