技术论坛

s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理

作者 主题
奇侠

经验值: 8141
发帖数: 843
精华帖: 14
主题:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
精华帖精华帖星级2级 推荐帖


只看楼主 只看精华 楼主 2021-10-05 12:05:49

好几年前做过用一台226PLC与二十几台变频的modbus通信,当时就是一个msg指令接一个msg的指令编程,把PLC的空间填满了。因为都是同样的变频器,后来通过只改变从站的站号把通信功能实现了。现在知道了,不仅有那种多个msg组成的传统方式,还有对数据区V先赋值再用指针把值传给msg的脚的方式,还有这个帖子里的在程序里进行赋值的方式,有其它方式网友跟帖探讨。

各种方式各有优缺点吧

1,传统方式,优点:比较直观,缺点:当通信的任务多了以后,程序量会比较大。

2,数据区赋值方式,优点:程序量小,缺点:数据区占用的多一些

3,本帖方式,就是在程序里赋值。程序量比数据区赋值方式多一些,但比传统方式的程序量少,数据区占用少一些。


此例程是个子程序

此例程是PLC串口连接了一台电能表(地址2),四台变频器(地址3,4,5,6),

此例程有写操作优先功能

此例程有掉站跳过功能,另外还有1分钟掉站通信恢复功能


拿到程序后的疑问:

1、为什么都是局部变量

这个通信子程序是我程序框架里里的一小部份,全部都是局部变量在我的程序框架里正常工作。下载者将变量自行替换。

2、为什么上升沿信号不是上升沿指令产生的

因为子程序里使用上升沿指令程序工作不正常

3、为什么我直接用这个子程序无法正常工作

此程序是我框架程序里的一部份,直接使用不可以。要根据自己的应用对变量地址更改。

4、可以重复调用吗?

在我的框架程序里是可以重复调用,但也就调用两次,因为只有两个串口嘛,相应的指令也要变一下。

如果有其它问题欢迎留言,共同探讨。


看下面的帖子

【S7-200 Smart开源标准化编程】modbus rtu终极封装-单条msg指令多任务读轮询写优先掉站跳过掉站恢复

https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1760741&b_id=64&s_id=0&num=0#anc



13478405725
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1718425&b_id=64&s_id=0&num=48

至圣

经验值: 14877
发帖数: 1015
精华帖: 1
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 1楼 2021-10-05 20:53:55

我经常用的是第二种,先收藏了


自己不努力,一切全白费
以下网友喜欢您的帖子:

  
奇侠

经验值: 6776
发帖数: 1106
精华帖: 1
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 2楼 2021-10-05 21:17:22

用日系PLC时都用第二种方法,西门子官网上有个程序案例用第一种方法。两种各有优势,但我比较喜欢第二种。


 
以下网友喜欢您的帖子:

  
至圣

经验值: 12573
发帖数: 2503
精华帖: 31
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 3楼 2021-10-05 23:44:49

两种都用过,喜欢第一种的直观。

第一种相对来说占用的RAM、ROM更少的,但是缺点就是不够灵活吧。

第二种占用的RAM、ROM比第一种都要多,但是优点是够灵活。


所以,单纯的通讯采集,第一种是首选。但是通讯写优先的第二种会更实时性一些。


 
以下网友喜欢您的帖子:

  
游侠

经验值: 557
发帖数: 65
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 4楼 2021-10-10 21:40:05

先收藏着,下次用 


 
以下网友喜欢您的帖子:

  
至圣

经验值: 12543
发帖数: 1843
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 5楼 2021-10-11 08:05:38

感谢 分享  。


邮箱 yongquancun@126.com
以下网友喜欢您的帖子:

  
侠圣

经验值: 2333
发帖数: 107
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 6楼 2021-10-11 08:12:58

收藏 备用,感谢 分享  


Always save before download!
以下网友喜欢您的帖子:

  
至圣

经验值: 18067
发帖数: 1524
精华帖: 2
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 7楼 2021-10-13 08:26:18

学习一下,谢谢分享。


我回来了!继续努力!
以下网友喜欢您的帖子:

  
侠士

经验值: 1289
发帖数: 164
精华帖: 3
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 8楼 2021-10-14 14:30:01

我也做了一个,学习下,看下我做的缺点在什么地方


赠人玫瑰,手留余香!
以下网友喜欢您的帖子:

  
侠圣

经验值: 2511
发帖数: 177
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 9楼 2021-10-15 08:40:37

这个不错,学习一下!


没什么大不了
以下网友喜欢您的帖子:

  
侠圣

经验值: 2841
发帖数: 451
精华帖: 2
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 10楼 2021-10-16 08:27:13

记得原来一版手册中例程使用的第二种方式,现在都是第一版了。当通讯多个仪器仪表,其通讯变量表一致时,感觉第二种好一些。当通讯不同的仪器仪表还是第一种好看一些



利而不害,为而不争;专注暖通空调行业
以下网友喜欢您的帖子:

  
至圣

经验值: 15532
发帖数: 1735
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 11楼 2021-10-16 08:48:19

 萝卜青菜,各有所爱!1.2都好用!


海纳百川,厚德务实!
以下网友喜欢您的帖子:

  
侠客

经验值: 863
发帖数: 120
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 12楼 2021-10-16 13:58:24

用过第一种的方案,第二种没尝试过。先收藏以后用。


 
以下网友喜欢您的帖子:

  
奇侠

经验值: 6501
发帖数: 459
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 13楼 2021-10-18 07:27:06

感谢分享,我也经常做Smmart200的Modbus通讯,就是没有搞过20多个从站的,最多8,9    个从站。我学习一下


我要瘦
以下网友喜欢您的帖子:

  
游士

经验值: 161
发帖数: 8
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 14楼 2021-10-18 13:54:24

第一种用的多一点,第二种没用过,学习学习


 
以下网友喜欢您的帖子:

  
侠圣

经验值: 4153
发帖数: 111
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理


只看楼主 只看精华 15楼 2021-10-18 14:27:29

感 谢 分 享  。


 
以下网友喜欢您的帖子:

  
侠圣

经验值: 2063
发帖数: 139
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 16楼 2021-10-26 08:13:51

感谢分享,学习了!!!!!


 
以下网友喜欢您的帖子:

  
奇侠

经验值: 6714
发帖数: 1038
精华帖: 1
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 17楼 2021-10-26 08:34:57

您这是那个版本的软件,2.5导入有错误?



1234567
以下网友喜欢您的帖子:

  
奇侠

经验值: 5057
发帖数: 453
精华帖: 3
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 18楼 2021-10-26 08:56:09

感谢楼主分享,很实用。


 
以下网友喜欢您的帖子:

  
侠士

经验值: 1558
发帖数: 90
精华帖: 0
回复:s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
推荐帖


只看楼主 只看精华 19楼 2021-10-30 18:06:06

感谢分享,学习一下。


 
以下网友喜欢您的帖子:

  
收起
s7 200 smart modbus rtu通信例程,单条msg指令多任务,读轮询,写优先,掉站处理
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。