CN112565038A - 一种基于rs485总线的低负载的通讯方法 - Google Patents
一种基于rs485总线的低负载的通讯方法 Download PDFInfo
- Publication number
- CN112565038A CN112565038A CN202011408499.1A CN202011408499A CN112565038A CN 112565038 A CN112565038 A CN 112565038A CN 202011408499 A CN202011408499 A CN 202011408499A CN 112565038 A CN112565038 A CN 112565038A
- Authority
- CN
- China
- Prior art keywords
- slave
- message
- state
- bus
- communication method
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明涉及一种通讯方法,具体涉及一种基于RS485总线的低负载的通讯方法。该方法包括:启动并初始化主机和各从机,各从机进入准备状态;主机以固定的轮询间隔依次向各从机发出报文;若从机在响应时间内接收到有效的报文,则对主机的报文进行解析;若接收的报文是对当前从机的请求报文,则当前从机切换到发送状态;若接收的报文不是对当前从机的请求报文,则当前从机切换到休眠状态;若从机在响应时间内未接收到有效的报文,则该从机切换到掉线状态;主机跳过掉线状态的从机,持续对剩下的从机进行轮询。该通讯方法具有从机负载较低和系统成本较低的优点,解决了现有的通讯方法存有的从机负载高和系统成本高的问题,满足了主机与从机的通讯需要。
Description
技术领域
本发明涉及一种通讯方法,具体涉及一种基于RS485总线的低负载的通讯方法。
背景技术
RS485总线是工业环境下常用的可编程逻辑控制器之间的内部通信标准,它采用了半双工的工作方式,支持多点数据通信。RS485总线还具有平衡发送和差分接收的特点,因此具有抑制共模干扰的能力,一般来讲,RS485总线的网络拓扑采用的是终端匹配的总线型结构,即采用一条总线将各个节点串接起来,在这种网络系统中,通常存有一台性能较为强大的主机,用于接收和处理数据,各节点上还存有众多的从机,从机的性能较差,以便满足基础的数据交互功能并降低采购费用。
现有的基于RS485总线的通讯方式在工作过程中容易产生瓶颈,当主机高频率访问各个从机时,由于各个从机都需要持续对总线保持监听,导致各个从机的CPU负载居高不下,当总线上持续存在大量数据在传输时,由于从机要持续监听这些数据是否是对自身的访问,无论是基于中断还是查询方式,此时从机的串口外设将大量地占用CPU的算力,严重时会导致从机无法执行其他任务,使系统瘫痪;另一方面,由于主机的性能较强,对于高频率访问所产生的开销不敏感,但众多的低性能从机则难以应对高频率的访问,往往需要更换性能更强的从机,增加了采购成本,因此需要一种新的通讯方法来解决上述的不足。
发明内容
为了克服上述现有的通讯方法存有的从机负载高和系统成本高的技术缺陷,本发明提供一种从机负载较低和系统成本较低的基于RS485总线的低负载的通讯方法。
为了解决上述问题,本发明按以下技术方案予以实现的:
本发明所述的一种基于RS485总线的低负载的通讯方法,其特征在于,该方法包括:
启动并初始化主机和各从机,各从机进入准备状态;
主机轮询向各从机发出报文;
若从机在响应时间内接收到有效的报文,则对主机的报文进行解析;
若接收的报文是对当前从机的请求报文,则当前从机切换到发送状态;
若接收的报文不是对当前从机的请求报文,则当前从机切换到休眠状态;
若从机在响应时间内未接收到有效的报文,则该从机切换到掉线状态;
主机跳过掉线状态的从机,持续对剩下的从机进行轮询。
所述的启动并初始化主机和各从机,各从机进入准备状态,具体的,所述准备状态包括:从机开启接收数据的功能,等待主机的报文。
所述的轮询向各从机发出报文。轮询时间受到波特率限定而不同。
所述的若从机在响应时间内接收到有效的报文,则对主机的报文进行解析,具体的,所述响应时间为100ms以内。
所述的若从机在响应时间内接收到有效的报文,则对主机的报文进行解析,具体的,所述解析包括:从机关闭接收数据的功能,开启发送数据的功能,并检查报文内容,判断报文是否为对自身的请求报文。
所述的若接收的报文是对当前从机的请求报文,则当前从机切换到发送状态,具体的,所述发送状态包括:从机向主机连续发送数据,当从机将一个完整的数据帧发送完毕,则该从机切换到准备状态。
所述的若接收的报文不是对当前从机的请求报文,则当前从机切换到休眠状态,具体的,所述休眠状态包括:从机关闭接收数据和发送数据的功能,并在休眠时间结束之后切换到准备状态。
所述的休眠时间按需设定。
所述的若从机在响应时间内未接收到有效的报文,则该从机切换到掉线状态,具体的,所述掉线状态包括:从机关闭接收数据和发送数据的功能,并从RS485总线上断开。
与现有技术相比,本发明的有益效果是:
本发明所述的一种基于RS485总线的低负载的通讯方法具有从机负载较低和系统成本较低的优点,通过给从机设定初始化状态、准备状态、发送状态、休眠状态和掉线状态,可根据需要对从机的状态进行切换,以便在有从机与主机进行通讯时,将其他从机切换到休眠状态,避免从机持续监听导致CPU占用率居高不下;此外,由于该方法降低了从机的算力负载,因此使用性能较低的从机即可满足工作需要,无需批量更换高性能从机,节省了成本,解决了现有的通讯方法存有的从机负载高和系统成本高的问题,满足了主机与从机的通讯需要。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明,其中:
图1是本发明的方法流程示意图;
图2是本发明的从机的状态切换示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
如图1~图2所示,本发明所述的一种基于RS485总线的低负载的通讯方法,其特征在于,该方法包括:
101、启动并初始化主机和各从机,各从机进入准备状态。
所述的启动并初始化主机和各从机,各从机进入准备状态,具体的,主机和各从机在初始化状态下完成必要的初始化工作,然后各从机即会切换到准备状态,所述准备状态包括:从机开启接收数据的功能,等待主机数据。
102、主机以固定的轮询间隔依次向各从机发出报文。
所述的主机轮询向各从机发出报文,具体的,主机采用一条RS485总线将各个节点串接起来,各节点上分别设置有从机,主机首先向RS485总线上距离最近的从机发出报文,传输工作结束后,主机等待接收报文。
103、若从机在响应时间内接收到有效的报文,则对主机的报文进行解析。
所述的若从机在响应时间内接收到有效的报文,则对主机的报文进行解析,具体的,所述响应时间为100ms以上,作为本发明一种较佳的实施方式,所述的响应时间为100ms,即,若从机在100ms以内接收到有效的报文,则对主机的报文进行解析;进一步的,所述报文为网络系统中实现交换与传输功能的数据单元,即主机一次性发送的数据块,报文中包含了将要发送的完整的数据信息,根据实际的需要,报文的长度不设限制;所述解析包括:从机关闭接收数据的功能,解析接收的数据。
104、若接收的报文是对当前从机的请求报文,则当前从机切换到发送状态;
所述的若接收的报文是对当前从机的请求报文,则当前从机切换到发送状态,具体的,当报文为请求报文,且指定了当前接收到报文的从机来完成数据传输工作,则当前从机切换到发送状态,所述发送状态包括:从机向主机连续发送数据,当从机将一个完整的数据帧发送完毕,则该从机切换到准备状态。
105、若接收的报文不是对当前从机的请求报文,则当前从机切换到休眠状态。
所述的若接收的报文不是对当前从机的请求报文,则当前从机切换到休眠状态,具体的,当报文不为请求报文,而是其他类型的报文,或者报文是请求报文,但没有指定当前接收到报文的从机来完成数据传输工作,则当前从机无需进行数据发送的工作,因此当前从机切换到休眠状态;作为本发明一种较佳的实施方式,发送状态的从机在数据发送结束后即会切换到准备状态,并接收主机的响应,由于该响应的报文不为请求报文,因此该从机迅速切换到休眠状态,该设置的优点在于:休眠状态能显著降低CPU的占用率,此时从机仍可完成自身所负责的工作,且具有较多的可用算力,提高了工作效率;从机在休眠时间结束之后切换到准备状态。
106、若从机在响应时间内未接收到有效的报文,则该从机切换到掉线状态。
所述的若从机在响应时间内未接收到有效的报文,则该从机切换到掉线状态,具体的,若从机在200ms内没有接收任何有效的报文,说明该从机的数据收发相关的功能出现了故障,无法正常进行工作,因此该从机切换到掉线状态,所述掉线状态包括:从机关闭接收数据和发送数据的功能,并从RS485总线上断开。
107、主机跳过掉线状态的从机,持续对剩下的从机进行轮询。
该通讯方法具有从机负载较低和系统成本较低的优点,通过给从机设定初始化状态、准备状态、发送状态、休眠状态和掉线状态,可根据需要对从机的状态进行切换,以便在有从机与主机进行通讯时,将其他从机切换到休眠状态,避免从机持续监听导致CPU占用率居高不下;此外,由于该方法降低了从机的算力负载,因此使用性能较低的从机即可满足工作需要,无需批量更换高性能从机,节省了成本,解决了现有的通讯方法存有的从机负载高和系统成本高的问题,满足了主机与从机的通讯需要。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,故凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (9)
1.一种基于RS485总线的低负载的通讯方法,其特征在于,该方法包括:
启动并初始化主机和各从机,各从机进入准备状态;
主机轮询向各从机发出报文;
若从机接收到有效的报文后,则对主机的报文进行解析;
若接收的报文是对当前从机的请求报文,则当前从机切换到发送状态;
若接收的报文不是对当前从机的请求报文,则当前从机切换到休眠状态;
若从机在响应时间内未接收到有效的报文,则该从机切换到掉线状态;
主机跳过掉线状态的从机,持续对剩下的从机进行轮询。
2.根据权利要求1所述的一种基于RS485总线的低负载的通讯方法,其特征在于:所述的启动并初始化主机和各从机,各从机进入准备状态,具体的,所述准备状态包括:从机开启接收数据的功能,持续监听RS485总线的数据,以等待主机的报文。
3.根据权利要求1所述的一种基于RS485总线的低负载的通讯方法,其特征在于:所述的主机轮询向各从机发出报文,当主机与从机存有确定的波特率时,轮询间隔保持固定。
4.根据权利要求1所述的一种基于RS485总线的低负载的通讯方法,其特征在于:所述的从机在响应时间内接收到有效的报文,则对主机的报文进行解析,具体的,所述响应时间为100ms以内。
5.根据权利要求4所述的一种基于RS485总线的低负载的通讯方法,其特征在于:所述的若从机在响应时间内接收到有效的报文,则对主机的报文进行解析,具体的,所述解析包括:从机关闭接收数据的功能,开启发送数据的功能,并检查报文内容,判断报文是否为对自身的请求报文。
6.根据权利要求1所述的一种基于RS485总线的低负载的通讯方法,其特征在于:所述的若接收的报文是对当前从机的请求报文,则当前从机切换到发送状态,具体的,所述发送状态包括:从机向主机连续发送数据,当从机将一个完整的数据帧发送完毕,则该从机切换到准备状态。
7.根据权利要求1所述的一种基于RS485总线的低负载的通讯方法,其特征在于:所述的若接收的报文不是对当前从机的请求报文,则当前从机切换到休眠状态,具体的,所述休眠状态包括:从机关闭接收数据和发送数据的功能,并在休眠时间结束之后切换到准备状态。
8.根据权利要求7所述的一种基于RS485总线的低负载的通讯方法,其特征在于:所述的休眠时间不大于50ms。
9.根据权利要求1所述的一种基于RS485总线的低负载的通讯方法,其特征在于:所述的若从机在响应时间内未接收到有效的报文,则该从机切换到掉线状态,具体的,所述掉线状态包括:从机关闭接收数据和发送数据的功能,并从RS485总线上断开。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011408499.1A CN112565038B (zh) | 2020-12-04 | 2020-12-04 | 一种基于rs485总线的低负载的通讯方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011408499.1A CN112565038B (zh) | 2020-12-04 | 2020-12-04 | 一种基于rs485总线的低负载的通讯方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112565038A true CN112565038A (zh) | 2021-03-26 |
CN112565038B CN112565038B (zh) | 2022-08-19 |
Family
ID=75048544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011408499.1A Active CN112565038B (zh) | 2020-12-04 | 2020-12-04 | 一种基于rs485总线的低负载的通讯方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112565038B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113726402A (zh) * | 2021-07-20 | 2021-11-30 | 西安空间无线电技术研究所 | 一种基于星载rs485双总线自适应控制方法 |
CN115085758A (zh) * | 2022-06-10 | 2022-09-20 | 贵州电网有限责任公司 | 一种双收发器多模式rs-485通信主机及工作方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102185747A (zh) * | 2011-03-30 | 2011-09-14 | 华立仪表集团股份有限公司 | 一种远程自动抄表系统 |
CN106358276A (zh) * | 2016-10-27 | 2017-01-25 | 珠海市杰理科技股份有限公司 | 基于id包的通信方法 |
CN106569897A (zh) * | 2016-11-07 | 2017-04-19 | 许继集团有限公司 | 基于协作式多任务调度机制的共享总线的轮询方法与装置 |
CN108462988A (zh) * | 2018-05-16 | 2018-08-28 | 南京蓝园精瑞电气有限公司 | 一种低功耗的无线射频网络组网方法 |
CN109934329A (zh) * | 2019-04-18 | 2019-06-25 | 苏州易德龙科技股份有限公司 | 一种用于统计生产效率的实时低功耗无线传输计数装置 |
-
2020
- 2020-12-04 CN CN202011408499.1A patent/CN112565038B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102185747A (zh) * | 2011-03-30 | 2011-09-14 | 华立仪表集团股份有限公司 | 一种远程自动抄表系统 |
CN106358276A (zh) * | 2016-10-27 | 2017-01-25 | 珠海市杰理科技股份有限公司 | 基于id包的通信方法 |
CN106569897A (zh) * | 2016-11-07 | 2017-04-19 | 许继集团有限公司 | 基于协作式多任务调度机制的共享总线的轮询方法与装置 |
CN108462988A (zh) * | 2018-05-16 | 2018-08-28 | 南京蓝园精瑞电气有限公司 | 一种低功耗的无线射频网络组网方法 |
CN109934329A (zh) * | 2019-04-18 | 2019-06-25 | 苏州易德龙科技股份有限公司 | 一种用于统计生产效率的实时低功耗无线传输计数装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113726402A (zh) * | 2021-07-20 | 2021-11-30 | 西安空间无线电技术研究所 | 一种基于星载rs485双总线自适应控制方法 |
CN113726402B (zh) * | 2021-07-20 | 2022-08-12 | 西安空间无线电技术研究所 | 一种基于星载rs485双总线自适应控制方法 |
CN115085758A (zh) * | 2022-06-10 | 2022-09-20 | 贵州电网有限责任公司 | 一种双收发器多模式rs-485通信主机及工作方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112565038B (zh) | 2022-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112565038B (zh) | 一种基于rs485总线的低负载的通讯方法 | |
CN105743755B (zh) | 一种双冗余can总线通信系统 | |
CN104317765B (zh) | 一种基于串口通讯的一对多通讯系统和实现方法 | |
CN100570566C (zh) | 一种异构多核间协调调度的方法及异构多核系统 | |
CN112199316B (zh) | 一种链式主从串口通讯装置的配置方法及通讯方法 | |
CN212163361U (zh) | 一种两个主站控制器通讯系统 | |
CN111294289A (zh) | 一种多链路切换的机器人通讯方法和系统 | |
CN114257996A (zh) | 一种设备的发现方法和装置 | |
CN201639589U (zh) | 基于arm的嵌入式双冗余网卡 | |
CN113626365A (zh) | 一种基于spi总线的通信方法 | |
CN114422288A (zh) | 基于Modbus协议的通讯系统 | |
CN101170473A (zh) | 星形半双工链路中从站主动通信方法 | |
CN207968522U (zh) | 一种实现多主通信方式的rs485总线驱动电路 | |
CN103353750B (zh) | 一种基于多总线的微波冶金控制方法 | |
CN101360050B (zh) | 一种设置流控模式的方法及装置 | |
CN110300042B (zh) | 一种总线通信系统及通信控制方法 | |
CN217509048U (zh) | 一种网关设备 | |
CN109981430A (zh) | 一种车内自组网实现方法 | |
CN106304241B (zh) | 一种数据传输方法、转发器及网关 | |
CN202261354U (zh) | 一种应用于数据采集装置的can总线结构 | |
CN111432504B (zh) | 通讯系统、其电子装置及应用其的通讯方法 | |
CN105743927A (zh) | 一种CANopen与DP协议数据转换器及转换方法 | |
CN114928557B (zh) | 一种自适应响应间隔时间的设备离线检测方法 | |
CN214444000U (zh) | 一种具备Modbus TCP通讯功能的焊接控制器 | |
CN114827235B (zh) | 一种基于uwb实现网络共享方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |