CN102664781B - 一种多节点rs485总线数据发送权的控制方法 - Google Patents

一种多节点rs485总线数据发送权的控制方法 Download PDF

Info

Publication number
CN102664781B
CN102664781B CN201210103084.2A CN201210103084A CN102664781B CN 102664781 B CN102664781 B CN 102664781B CN 201210103084 A CN201210103084 A CN 201210103084A CN 102664781 B CN102664781 B CN 102664781B
Authority
CN
China
Prior art keywords
time
period
bus
node
transmission route
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.)
Active
Application number
CN201210103084.2A
Other languages
English (en)
Other versions
CN102664781A (zh
Inventor
朱有祥
陈鹤
梁子君
宋志洪
宣林川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anhui Keli Information Industry Co Ltd
Original Assignee
Anhui Keli Information Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Anhui Keli Information Industry Co Ltd filed Critical Anhui Keli Information Industry Co Ltd
Priority to CN201210103084.2A priority Critical patent/CN102664781B/zh
Publication of CN102664781A publication Critical patent/CN102664781A/zh
Application granted granted Critical
Publication of CN102664781B publication Critical patent/CN102664781B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Small-Scale Networks (AREA)

Abstract

本发明涉及一种多节点RS485总线数据发送权的控制方法,该方法包括下列顺序的步骤:选取分时复用的时间周期T,作为系统数据延迟的最大允许时间;根据系统内部RS485总线的节点数,将时间周期T分成N份时间段,再根据各节点发送数据量的多少,确定每一份时间段tn的取值;在一个时间周期T内,每一份时间段tn对应选定一个节点获得RS485总线发送权,其他节点处于接收状态;重复上一步。本发明使用较少的硬件资源,在只利用RS485通讯两条信号线的基础上,以较少的总线控制命令,实现RS485数据总线的时分复用功能,使总线上每一个节点均能平等地发送数据。

Description

一种多节点RS485总线数据发送权的控制方法
技术领域
本发明涉及多节点RS485通讯控制领域,尤其是一种多节点RS485总线数据发送权的控制方法。
背景技术
RS485是一种USART串口的电平协议,它通常只利用两条信号线进行工作,即利用两条线上的电压差来表示数据信息。它可以进行多节点通讯,然而它是半双工通讯,在同一时间点只能有一个数据发射端,其他节点只能作为接收端。RS485总线上多个驱动板要能够同步协调实现整个路口信号灯的控制,因此其时间同步、有序通讯至关重要,在软件设计上需保证信号灯状态切换的时间同步不紊乱,通讯消息的收发有序不冲突以及通讯数据包的完整性。
通常RS485总线上可以有2个以上的节点,在同一时刻只能一个作为发送终端。通常的工作方式,用一个终端作为主节点,作为管理节点,对其他节点的收发进行管理,确保同一时间内,只有一个节点获得RS485总线发送权。目前,还没有出现各个节点以某个时间段作为循环,平等、轮流获得总线的发送权。
发明内容
本发明的目的在于提供一种采用分时复用的方式、使RS485总线上每一个节点均能平等地发送数据的多节点RS485总线数据发送权的控制方法。
为实现上述目的,本发明采用了以下技术方案:一种多节点RS485总线数据发送权的控制方法,该方法包括下列顺序的步骤:
(1)选取分时复用的时间周期T,作为系统数据延迟的最大允许时间;
(2)根据系统内部RS485总线的节点数,将时间周期T分成N份时间段,再根据各节点发送数据量的多少,确定每一份时间段tn的取值;
(3)在一个时间周期T内,每一份时间段tn对应选定一个节点获得RS485总线发送权,其他节点处于接收状态;
(4)重复步骤(3)。
由上述技术方案可知,本发明使用较少的硬件资源,在只利用RS485通讯两条信号线的基础上,以较少的总线控制命令,实现RS485数据总线的时分复用功能,使总线上每一个节点均能平等地发送数据。总线上每个节点均是平等地,配上数据包中的地址,可以向其他任意一个节点发送数据。
附图说明
图1是本发明的工作流程图;
图2是本发明的周期时间轴示意图;
图3是本发明的冲突区域示意图。
具体实施方式
一种多节点RS485总线数据发送权的控制方法,该方法包括下列顺序的步骤:(1)选取分时复用的时间周期T,作为系统数据延迟的最大允许时间;(2)根据系统内部RS485总线的节点数,将时间周期T分成N份时间段,再根据各节点发送数据量的多少,确定每一份时间段tn的取值;(3)在一个时间周期T内,每一份时间段tn对应选定一个节点获得RS485总线发送权,其他节点处于接收状态;(4)重复步骤(3)。如图1所示。
如图2所示,不同系统对通讯数据延迟有不同的需求,选取一个合适的时间周期T作为分时复用的循环周期,这个时间周期T就是系统数据延迟的最大允许时间。然后依据系统内部RS485总线的节点数,把周期T分成N份时间段,每一份时间段tn可以不同,根据各节点发送数据量的多少而定。设定在一个时间周期T内,0~t1时间段中,第1个节点获得RS485总线发送权,其他节点处于接收状态;t1~(t1+t2)时间段中,第2个节点获得RS485总线发送权,其他节点处于接收状态;以此类推,直到(t1+……+t(N-1))~(t1+……+tN)时间段中,第N个节点获得RS485总线发送权,其他节点处于接收状态。一个时间周期T结束后,再重新循环,第1个节点再次获得总线发送权。所述的时间周期T的取值范围为3~100s,时间周期T大于3s,最大值理论上无限大,实际上受地址编码和驱动能力限制,通常在100s以内。
如图1、2所示,一般情况下,各节点发送数据量相等,所述的每一份时间段tn的取值相同。在每一份时间段tn结束之后,均预留一个时间间隔tV,再开始下一时间段的计时。在每一个时间周期T的结束点预留一个冗余时间段tr,,再进入下一轮时间周期的循环。第1节点获得RS485总线控制权,增加预留时间间隔tV,第2节点获得RS485总线控制权,增加预留时间间隔tV,依次类推,第n个节点获得总线控制权,增加预留时间间隔tV,时间周期T结束时增加预留冗余时间段tr,之后进入下一轮的循环。时间间隔tV和冗余时间段tr的单位均为ms。
选择一个节点作为校时节点,在系统工作一定时间后,校时节点在自己的发送时间段再发送一次校时命令,各个节点再重新调整时间轴归零,继续进行总线通讯工作。
以下结合图1、2、3对本发明作进一步的说明。
RS485总线在工作的时候,由于各节点是独自计时,时间轴有偏差,可能出现当某一个节点计时到已经到达自己的发送时间段tn时,而上一个节点的计时比较慢,还处于它t(n-1)的时间段,尚未释放总线发送权,此时这个节点若发送数据,必会导致总线混乱,出现误码。以上这种分时复用的RS485总线通讯方式,实现的关键是需要对各个节点做时间同步,保证各个节点有一个统一的时间轴。所以可以定义在每一个时间段结束之后,预留一个很短的时间间隔tv,再开始计时下一时间段。然后在周期结束点预留一个冗余时间段tr,以保证数据通讯的可靠性。tv值的选择视系统各节点时间精度而定,在保证数据完整性的基础上,根据波特率的大小和数据包的大小,合理选择预留时间间隔tV的大小。
RS485总线系统开始工作时,所有节点处于接收状态,假设校时节点为节点1,节点1开始自己计时,先向总线上发送一个简单的校时命令,之后节点1把自己的时间轴调整为0开始,其他节点接收到校时命令后,也各自把自己的时间轴调整为0开始。之后各节点独立计时,当到达自己的发送时间段时,若有数据即可发送,自己的发送时间段结束时,立即释放总线,回到接收状态,一个周期T结束后周而复始。每个RS485总线上的节点均有自己的计时器,但是每个计时器都是有误差的,不可能一样。所以系统工作一定时间后,各节点时间轴就会偏移,导致RS485数据总线发送错误的现象。所以经过一定时间后(时间视各节点计时器精度而定),校时节点在自己的发送时间段再发送一次校时命令,各个节点再重新调整时间轴归0,继续进行总线通讯工作。
由于采用时分复用的方式,会增加数据的滞后性,数据延时最大几乎达到时间周期T,为了减小数据延时,必须减小时间周期T,时间周期T减小,每一时间段也必须减小,各节点每次允许发送的数据量也会减小,有必要增大RS485数据总线的波特率,来增加每次允许发送的数据量,所以波特率尽量选大的。
图3表示的是运用本发明所能避免的冲突效果示意图。由标准时间节点1总线占有时序及提前时间节点2总线占有时序对比可发现,若无标注2表示的时间间隔tv,则在标注4部分就会出现一个冲突区域,导致数据收发无序,进而发生冲突。这个冲突主要体现在当前周期节点与下一周期下个节点之间的冲突。结合标准时间节点1总线占有时序及滞后时间的末节点总线占有时序,主要表示当前周期节点与上个周期末节点之间的收发时间冲突。

Claims (1)

1.一种多节点RS485总线数据发送权的控制方法,该方法包括下列顺序的步骤:
(1)选取分时复用的时间周期T,作为系统数据延迟的最大允许时间;
(2)根据系统内部RS485总线的节点数,将时间周期T分成N份时间段,再根据各节点发送数据量的多少,确定每一份时间段tn的取值;
(3)在一个时间周期T内,每一份时间段tn对应选定一个节点获得RS485总线发送权,其他节点处于接收状态;
(4)重复步骤(3);
在每一份时间段tn结束之后,均预留一个时间间隔tV,再开始下一时间段的计时;在每一个时间周期T的结束点预留一个冗余时间段tr,再进入下一轮时间周期的循环;时间间隔tV和冗余时间段tr的单位均为ms;
设定在一个时间周期T内,0~t1时间段中,第1个节点获得RS485总线发送权,其他节点处于接收状态;t1~(t1+t2)时间段中,第2个节点获得RS485总线发送权,其他节点处于接收状态;以此类推,直到(t1+……+t(N-1))~(t1+……+tN)时间段中,第N个节点获得RS485总线发送权,其他节点处于接收状态;一个时间周期T结束后,再重新循环,第1个节点再次获得RS485总线发送权;
选择一个节点作为校时节点,在系统工作一定时间后,校时节点在自己的发送时间段再发送一次校时命令,各个节点再重新调整时间轴归零,继续进行总线通讯工作;
所述的时间周期T的取值范围为3~100s;
在保证数据完整性的基础上,根据波特率的大小和数据包的大小,选择预留时间间隔tV的大小。
CN201210103084.2A 2012-04-10 2012-04-10 一种多节点rs485总线数据发送权的控制方法 Active CN102664781B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210103084.2A CN102664781B (zh) 2012-04-10 2012-04-10 一种多节点rs485总线数据发送权的控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210103084.2A CN102664781B (zh) 2012-04-10 2012-04-10 一种多节点rs485总线数据发送权的控制方法

Publications (2)

Publication Number Publication Date
CN102664781A CN102664781A (zh) 2012-09-12
CN102664781B true CN102664781B (zh) 2016-01-27

Family

ID=46774200

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210103084.2A Active CN102664781B (zh) 2012-04-10 2012-04-10 一种多节点rs485总线数据发送权的控制方法

Country Status (1)

Country Link
CN (1) CN102664781B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104539501A (zh) * 2014-12-31 2015-04-22 陕西烽火电子股份有限公司 一种传输多路话音数据的rs485总线通信装置及方法
CN107305731B (zh) * 2016-04-21 2020-01-21 中兴通讯股份有限公司 一种无线数据传输方法及装置
CN106130858B (zh) * 2016-06-23 2019-06-07 北京东土科技股份有限公司 基于互联网的数据传输方法、装置及系统
CN108614528A (zh) * 2016-12-13 2018-10-02 中核控制系统工程有限公司 一种安全级多总线协同工作方法
CN109841047A (zh) * 2017-11-27 2019-06-04 深圳市科比特航空科技有限公司 无人机集群控制方法、装置及系统
CN109495215B (zh) * 2018-12-20 2022-02-11 山东比特智能科技股份有限公司 一种半双工总线的通信方法、系统、装置及可读存储介质
CN109661087A (zh) * 2019-01-23 2019-04-19 北京易华录信息技术股份有限公司 信号灯控制器的控制方法、装置、存储介质及中央控制器
WO2021196090A1 (zh) * 2020-04-01 2021-10-07 深圳市汇顶科技股份有限公司 时间同步及广播设定方法、芯片、电子设备及存储介质
CN112491675B (zh) * 2020-10-26 2022-10-18 创泽智能机器人集团股份有限公司 一种数据通信方法、装置、设备及计算机可读存储介质
CN114363107B (zh) * 2021-12-29 2024-05-07 上海联影医疗科技股份有限公司 一种控制器局域网总线的分时调度方法和系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459675A (zh) * 2008-12-29 2009-06-17 南京南瑞继保电气有限公司 一种实时多路复用同步高速传输串行总线协议

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004011946A1 (de) * 2004-03-11 2005-09-29 Bayerische Motoren Werke Ag Verfahren zur Datenkommunikation
CN101030827B (zh) * 2006-03-03 2011-04-20 华为技术有限公司 Dtm映射到otn的方法和装置
CN101453408B (zh) * 2007-12-04 2012-03-07 杭州华三通信技术有限公司 一种以太网无源同轴网络系统中实现中继的方法和设备
CN101605082A (zh) * 2009-07-21 2009-12-16 中兴通讯股份有限公司 实现多通道开销总线交叉的装置及方法
CN101783758B (zh) * 2009-08-28 2012-07-04 中国科学院声学研究所 一种基于业务区分的家庭同轴网络mac层数据传输方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459675A (zh) * 2008-12-29 2009-06-17 南京南瑞继保电气有限公司 一种实时多路复用同步高速传输串行总线协议

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
时分复用与交换方式;李朝举;《电信技术》;19950810;第12页1-3段 *

Also Published As

Publication number Publication date
CN102664781A (zh) 2012-09-12

Similar Documents

Publication Publication Date Title
CN102664781B (zh) 一种多节点rs485总线数据发送权的控制方法
EP3298824B1 (en) Method and apparatus for managing buffer in wireless communication system
EP3016306A1 (en) Method and apparatus for providing in-vehicle network time synchronization using redundant grandmaster
CN104113517A (zh) 时间戳生成方法、装置及系统
CN102857397A (zh) 一种多主异步双工差分总线及通讯方法
US20180109398A1 (en) Master communication device for a token network
CN109996325B (zh) 一种无线传感器网络的时钟同步系统及方法
CN104244417A (zh) Tdd上行下行配置的指示方法及用户设备
CN109644461A (zh) 一种资源配置方法及装置、计算机存储介质
JP5159852B2 (ja) ノード、スイッチ及びシステム
CN104144094A (zh) 用于操作数字总线系统从属节点的方法
CN103281261A (zh) 一种以太网通信方法和系统
KR102001366B1 (ko) 복수 기기의 저전력블루투스 연결방법
CN103369662A (zh) 适配器、基带处理单元和基站系统
CN104836636A (zh) 基于新型can帧进行通信的方法、装置及系统
CN108199809A (zh) 一种传输信息的方法,基站和用户设备
CN103796277B (zh) 一种指示信标帧发送和发送信标帧的方法、系统和装置
CN105207752A (zh) 一种信号发送和检测的方法及装置
JP6104210B2 (ja) 適応型インタフェースを実装する方法およびfpga制御システム
CN103813382A (zh) 时钟同步方法、设备及系统
SE516758C2 (sv) Digitalt bussystem
CN209015139U (zh) 一种i2c总线电路、芯片及系统
CN106330357B (zh) 一种serdes的传输校验方法、节点与系统
CN103236962B (zh) 现场总线传输方法
CN106464615A (zh) 干扰协调方法、装置和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method for controlling multi-node RS485 bus data transmission right

Effective date of registration: 20160812

Granted publication date: 20160127

Pledgee: Anhui yuan yuan investment fund Co., Ltd.

Pledgor: Anhui Keli Information Industry Co., Ltd.

Registration number: 2016340000045

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20210426

Granted publication date: 20160127

Pledgee: Anhui yuan yuan investment fund Co., Ltd.

Pledgor: ANHUI KELI INFORMATION INDUSTRY Co.,Ltd.

Registration number: 2016340000045

PC01 Cancellation of the registration of the contract for pledge of patent right