技术论坛

Modbus RTU 主站库 V2.1

作者 主题
侠士

经验值: 1353
发帖数: 728
精华帖: 25
Modbus RTU 主站库 V2.1


只看楼主 2008-08-05 16:36:58
相对上一版的更新:
1、初始化时可选择通讯口,更换端口不必先删除POU再添加新库子程序
2、每端口支持两种通讯控制方式,可以简化调试过程
3、字符间超时时间由固定值改为初始化化时参数给定
4、数据处理与收发完全分离,对于小项目可以不必调用MBUS_MSG
5、支持外部帧(见改善Modbus通讯效率),外部帧与参数调用方式无缝整合
6、外部帧额外支持功能码 22/23(位屏蔽/同时读写多寄存器)
另外为 ASCII 传输模式准备了 3 个子程序,用于 LRC 计算、ASCII 和 RTU 帧格式互转。
但因目前没有 ASCII 传输方面的需求,也无相关的从站设备测试,本库暂不支持ASCII传输模式通讯,但通过很少量的改造即可使本库同时支持RTU、ASCII两种传输模式。待有空时先写一个 ASCII 从站库用 S7-200 作从站升级测试。
下载库程序及使用例程
免责声明:
本库可以自由使用,作者不承担相关责任。
两种通讯控制方式:
1、使用 RCV 以信息为单位接收,错误检验机制比较全面,程序相对复杂,用于处理数据量大的通讯需求。初始化时 bWay 参数选择 0/1 即为此方式(分别对应通讯口 0/1)。
2、使用接收字符中断,此方式用到地特殊寄存器只有 SMB30/130,容易调试,但会加重 CPU 负担。推荐数据量小且波特率低时才使用。或用于调试通讯,采用此方式可以监视接收字符中断程序,如收不到任何字符,可以断定主从站双方通讯参数不匹配或外部接线故障。初始化时 bWay 参数选择 2/3 即为此方式(分别对应通讯口 0/1)。
例程简介:
send1 最简应用示例
send2 多任务轮询示例
send3 不同的调用方式、多任务自动轮询、使用外部帧、如何生成外部帧示例
ASCII 三个ASCII 相关的子程序应用示例
详情参考代码注释

2009-06-25 BUG报告
使用外部帧广播时,填写外部帧中第一字节期待应答字节数(本应为0)不能小于6,否则 MBUS_MSG 会返回5号错误。
临时解决办法:期待应答字节数改为不小于6的值(MBUS_CTRL处理广播时,并不等待应答,所以这个值非0没有关系)
参数调用方式发送广播不受此BUG影响。
生命存在的方式只有两种:腐烂或燃烧
以下网友喜欢您的帖子:

  
重要声明:

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

帖子链接:http://www.ad.siemens.com.cn/club/bbs/post.aspx?b_id=3&a_id=468053&s_id=&num=47

侠士

经验值: 1386
发帖数: 726
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-05 17:39:21
下载了,谢谢
 
以下网友喜欢您的帖子:

  
侠客

经验值: 924
发帖数: 470
精华帖: 4
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-06 09:12:55
下载了~
等有空在慢慢研究!
给我个支撑点,我做的比西门子还要大!-----不断的追求
以下网友喜欢您的帖子:

  
侠士

经验值: 1020
发帖数: 248
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-06 09:38:15
下载学习!
 
以下网友喜欢您的帖子:

  
游侠

经验值: 494
发帖数: 202
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-07 13:11:18
下一个,学习一下
“只为成功找方法,不为失败找借口”
以下网友喜欢您的帖子:

  
新手

经验值: 1
发帖数: 1
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-08 13:07:34
下了学习一下,最近正在研究modbus,没写过不知道怎么写
 
以下网友喜欢您的帖子:

  
侠圣

经验值: 2621
发帖数: 2301
精华帖: 8
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-08 15:29:01
不错,谢了。
从西门子网站上下的Modbus指令库版本才1.0,只有两个指令。
 
以下网友喜欢您的帖子:

  
侠士

经验值: 1776
发帖数: 954
精华帖: 5
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-09 10:04:25
最近想做和变频器的通讯,下来现看看
 
以下网友喜欢您的帖子:

  
奇侠

经验值: 7046
发帖数: 1923
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-09 14:14:27
是楼主自己编的吗?
 
以下网友喜欢您的帖子:

  
侠圣

经验值: 2922
发帖数: 1448
精华帖: 6
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-11 17:46:29
quote:以下是引用quiet在2008-08-09 14:14:27的发言:
是楼主自己编的吗?

不要去怀疑楼主的能力。
没有
以下网友喜欢您的帖子:

  
奇侠

经验值: 7046
发帖数: 1923
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-11 20:35:07
我的意思是想问是否是siemens官方发布的库。
 
以下网友喜欢您的帖子:

  
侠圣

经验值: 2922
发帖数: 1448
精华帖: 6
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-12 18:09:45
是楼主的作品,非常不错。
没有
以下网友喜欢您的帖子:

  
游侠

经验值: 308
发帖数: 175
精华帖: 1
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-13 09:55:01
书生,真不知道该怎么表扬你了,呵呵!
头阵看你小子还在捣鼓什么彩票软件,想来你算法是很不错的鸟!
很想找回那种武林高手的感觉,坐在草舍喝茶,笑看世界风云!可世界总有许多事不那么如意,至今还必需要为衣食奔走。
难得那种潇洒一如书生你,差距还是蛮远的!
东东!加油!



 
以下网友喜欢您的帖子:

  
奇侠

经验值: 7046
发帖数: 1923
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-13 09:57:23
敬佩楼主。
 
以下网友喜欢您的帖子:

  
侠士

经验值: 1048
发帖数: 648
精华帖: 2
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-13 12:36:06
学习,感谢楼主共享精神!
 
以下网友喜欢您的帖子:

  
侠士

经验值: 1353
发帖数: 728
精华帖: 25
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-08-14 08:39:34
V1.0是在官方库的基础上修改的,V2.0以后是全部重写的,主要在框架结构、执行效率、使用方便性上改进,但程序块要大不少。
希望测试过的朋友能反馈下BUG或建议,准备再改进一次就在项目中使用了。如未发现明显BUG,此版本已可在实际项目中应用,下一次修改主要针对代码效率和程序大小方面细节优化,不会有太大的变动。

to 东东:彩票软件只是好玩,赚不到钱,还是吃饭要紧:)
生命存在的方式只有两种:腐烂或燃烧
以下网友喜欢您的帖子:

  
游民

经验值: 136
发帖数: 28
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-09-08 10:57:10
正在学习自由口通信!收下
 
以下网友喜欢您的帖子:

  
侠客

经验值: 631
发帖数: 144
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-09-09 09:03:30
已下载,谢谢楼主。
 
以下网友喜欢您的帖子:

  
游士

经验值: 270
发帖数: 128
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-09-19 09:52:10
下载学习,谢谢,昨天正测试发现有不懂之处!
 
以下网友喜欢您的帖子:

  
游士

经验值: 270
发帖数: 128
精华帖: 0
回复:Modbus RTU 主站库 V2.1


只看楼主 2008-09-19 09:53:13
下载学习,谢谢,昨天正测试发现有不懂之处!
 
以下网友喜欢您的帖子:

  
收起
Modbus RTU 主站库 V2.1
×
扫描打开手机版
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。