[发明专利]一种在RS—485上使用MODBUS通讯协议自动识别地址的方法在审

专利信息
申请号: 201410330307.8 申请日: 2014-07-11
公开(公告)号: CN105323328A 公开(公告)日: 2016-02-10
发明(设计)人: 姚普粮;劳承毅;黄镜彬;林朝光;龙光成;韦甘铭;欧世文 申请(专利权)人: 北海市深蓝科技发展有限责任公司
主分类号: H04L29/12 分类号: H04L29/12
代理公司: 北海市佳旺专利代理事务所(普通合伙) 45115 代理人: 林以坤
地址: 536000 广西壮族*** 国省代码: 广西;45
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 rs 485 使用 modbus 通讯 协议 自动识别 地址 方法
【说明书】:

技术领域

本发明属于总线通讯技术,特别是涉及到一种在RS—485上使用MODBUS通讯协议自动识别地址的方法。

背景技术

在RS—485上使用MODBUS通讯协议时,一个前提是挂接在RS—485上的设备的地址(此地址以下统称为MODBUS地址)为一字节,此地址一定是唯一的,这样在RS—485总线上的设备,才能通过唯一的MODBUS地址进行识别,实现正常通讯。但在实际操作时,因各种各样的原因,造成挂接在RS—485总线上的设备有可能会出现MODBUS地址相同的情况,这样会导致整个总线通讯不正常,影响总线上器件的正常工作。本发明专利“一种在RS—485上使用MODBUS通讯协议自动识别地址的方法”正是为了解决RS—485上存在相同MODBUS地址时,自动设置不同MODBUS地址问题,保证总线上的通讯正常。

发明内容

本发明专利的目的是设计一种在RS—485上使用MODBUS通讯协议自动识别地址的方法,以便当挂接在RS—485上的设备MODBUS地址有相同时,可以识别出来,并能设置为不同,这样在总线上的器件,可以通过唯一的MODBUS地址进行识别,实现正常通讯。

本发明的目的是这样实现的:一种在RS—485上使用MODBUS通讯协议自动识别地址的方法,其特征为:在挂接在RS—485总线上产品的MODBUS通讯命令中,设置用于读设备的总ID的广播寄存器命令FX,所述的总ID为器件ID+MODBUS地址;总线上的控制器作主器件,用MODBUS协议规定的查询类命令发送FX到RS—485总线上,接收全部挂接在总线上的器件的总ID;总线上的其它器件作从控制器,接收到FX后,根据器件ID地址的大小,延时相应一段时间,再将器件上总ID,发送到RS—485总线上;总线上的控制器接收到总线上全部器件的总ID后,检测如没有相同的MODBUS地址,则不用响应,有相同值,则按器件ID值大小排序,并取不相同值器件最高MODBUS地址+1为最小设置MODBUS地址初始值,用MODBUS协议规定的设置类命令发送全部MODBUS地址相同器件的FX命令;总线上的器件接收FX后,如器件ID值相同,则响应,根据接收到的MODBUS地址,将原MODBUS地址改为主控制器设置的MODBUS地址并保存,如器件ID值不同,则不响应。

用于读设备的总ID为器件ID+MODBUS地址,最长为5个字节,其中4个字节为器件ID,器件自带,为唯一值,即所有器件只有唯一一个,另外一个字节为MODBUS地址,即挂接在RS—485总线上器件的通讯地址,器件依靠此地址进行通讯。

总线上的控制器作主器件,用MODBUS协议规定的03类命令发送FX到RS—485总线上,接收全部挂接在总线上的器件的总ID。

总线上的其它器件作从控制器,接收到FX后,根据器件ID地址的大小,延时相应一段时间,再将器件上总ID,发送到RS—485总线上,因器件ID地址不同,因此延时也不同,这样,可保证在同一时间,RS—485上只有一个发送设备,不会造成总线冲突。

总线上的控制器接收到总线上全部器件的总ID后,若有相同值,则按器件ID值大小排序,并取不相同值器件最高MODBUS地址+1为最小设置MODBUS地址初始值,用MODBUS协议规定的06类命令发送全部MODBUS地址相同器件的FX命令。

本发明的软件流程为:

(1)“控制器发送广播寄存器命令FX到485总线上”,启动检测MODBUS地址是否相同功能;

(2)“器件接收到FX命令后,延时一指定值的毫秒值(其值=本器件ID地址值乘一固定值)后,将器件上总ID,发送到RS—485总线”,按不同的器件ID,延时不同的时间,以保证在同一时间内,总线上只能有一设备在发送,保证总线的通讯正常。器件总ID=器件ID+MODBUS地址;

(3)“控制器接收总线上全部器件的总ID地址”;

(4)进入“有相同的MODBUS地址?”,没有则结束,否则直接进入下一步;

(5)进入“相同MODBUS地址按器件ID次序按从小到大排序”;

(6)进入“不相同值器件最高MODBUS地址+1为最小设置MODBUS地址初始值FMINADDR。”;

(7)进入“控制器将未发送过最低器件ID地址+FMINADDR组成对应总ID发送到485总线上”;

(8)进入“器件接收FX命令”;

(9)如器件ID地址相同,则按命令设置,如不同,则退出”;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北海市深蓝科技发展有限责任公司,未经北海市深蓝科技发展有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410330307.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top