[发明专利]基于Modbus协议的RS485总线通讯方法及基于该通讯方法的电力电子系统有效
| 申请号: | 201410301602.0 | 申请日: | 2014-06-27 | 
| 公开(公告)号: | CN104065545B | 公开(公告)日: | 2017-12-22 | 
| 发明(设计)人: | 陈国柱;徐群伟;王异凡 | 申请(专利权)人: | 浙江大学 | 
| 主分类号: | H04L12/40 | 分类号: | H04L12/40 | 
| 代理公司: | 杭州天勤知识产权代理有限公司33224 | 代理人: | 胡红娟 | 
| 地址: | 310027 浙*** | 国省代码: | 浙江;33 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 基于 modbus 协议 rs485 总线 通讯 方法 电力 电子 系统 | ||
1.一种基于Modbus协议的RS485总线通讯方法,实施于包括一个主控制器和若干个从控制器的RS485总线多机通信系统,其特征在于,所述的RS485总线通讯方法包括:
(1)主控制器根据用户输入的读写指令或者状态查询指令生成相应的控制指令,并将所述的控制指令封装成控制帧后发送到RS485总线上;
(2)从控制器侦听RS485总线,当侦听到控制帧到达后开始接收并处理侦听到的控制帧形成相应的响应帧,并将形成的响应帧发送到RS485总线上;
(3)主控制器通过侦听RS485总线接收响应帧,并判断接收到的响应帧是否正确:
若主控制器在设定的时间间隔内未接收到响应帧或接收到的响应帧不正确,则重新发送该控制帧,直至接收到正确的响应帧或连续发送M次都未接收到正确的响应帧后停止发送该控制帧,并结束侦听RS485总线,重新使能用户输入的读写指令和运行状态查询指令;
所述的控制帧和响应帧均包括5个字段,分别为起始段、控制器地址段、功能标志段、分控信息段和错误校验段;
所述的起始段为1~16位,控制器地址段根据需要支持的系统模块数决定,为1~8位,功能标志段包括2~8位,错误校验段为2个字节,分控信息段的长度取决于控制指令的类型;
通讯帧包括控制帧和响应帧;
通讯帧的长度是由位构成的,依据功能码的不同;
通讯帧的帧结构的定义按照字节进行,通讯帧各个字段大小的定义都是以字节为单位的;
主控制器发送控制帧前,还对控制帧进行了备份,先将控制帧存储到一个数据缓冲区中,再次发送时,直接从该数据缓冲区中调取相应的控制帧;所述步骤(1)中主控制器通过sci通讯中断将控制帧发送到RS485总线上;
通常需要对该数据缓冲区进行扩展,将中断发送该控制帧时产生的中断数据也放在发送数据缓冲区。
2.如权利要求1所述的基于Modbus协议的RS485总线通讯方法,其特征在于,所述的起始段用于表示控制帧或响应帧的开始;
所述的控制器地址段用于表示控制帧或响应帧所指向的控制器的地址;
所述的功能标志段用于表示控制帧或响应帧的对应的控制指令的类型;
所述的分控信息段用于表示控制指令的内容或执行结果;
所述的错误校验段用于检验对应的控制帧或响应帧的正确性。
3.如权利要求2所述的基于Modbus协议的RS485总线通讯方法,其特征在于,所述步骤(1)中通过解析控制指令将控制指令封装成控制帧。
4.如权利要求2所述的基于Modbus协议的RS485总线通讯方法,其特征在于,所述步骤(2)中的从控制器通过以下步骤接收并处理控制帧形成响应帧:
(2-1)接收控制帧的起始段,并判断控制帧的起始段是否有效:若有效,则继续接收控制器地址段;否则,返回继续侦听RS485总线;
(2-2)判断控制帧的控制器地址段与自身的地址是否一致,若不一致,则停止接收;若一致,则继续进行如下操作:
(2-21)接收功能标志段、分控信息段和错误校验段,接收完成后根据接收到的起始段、控制器地址段、功能标志段和分控信息段采用Modbus协议通用的CRC16校验方法生成校验码;
(2-22)比较生成的校验码与接收到的错误校验段,若二者一致,则执行该控制帧,并根据执行结果生成相应的响应帧;否则,不操作。
5.如权利要求4所述的基于Modbus协议的RS485总线通讯方法,其特征在于,所述步骤(2-22)中通过以下方法生成响应帧:
根据接收到的功能标志段确定该控制帧对应的控制指令的类型:
若为写入指令,则将控制帧的起始段、功能标志段和分控信息段分别作为响应帧的起始段、功能标志段和分控信息段,响应帧的控制器地址段装载主控制器的地址,根据响应帧的起始段、控制器地址段、功能标志段和分控信息段生成错误校验段,得到响应帧;
若为读取指令或状态查询指令,则将控制帧的起始段、功能标志段作为响应帧的起始段、功能标志段,将读取结果作为响应帧的分控信息段,响应帧的控制器地址段装载主控制器的地址,并根据响应帧的起始段、控制器地址段、功能标志段和分控信息段生成错误校验段,得到响应帧。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410301602.0/1.html,转载请声明来源钻瓜专利网。





