CN107193697A - 一种实现rs485无极性连接的方法 - Google Patents
一种实现rs485无极性连接的方法 Download PDFInfo
- Publication number
- CN107193697A CN107193697A CN201710310249.6A CN201710310249A CN107193697A CN 107193697 A CN107193697 A CN 107193697A CN 201710310249 A CN201710310249 A CN 201710310249A CN 107193697 A CN107193697 A CN 107193697A
- Authority
- CN
- China
- Prior art keywords
- chips
- polarity
- nonpolarity
- com1
- com2
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4286—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0002—Serial port, e.g. RS232C
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Communication Control (AREA)
Abstract
本发明涉及一种RS485串行通信的无极性连接方法,硬件方面只需在接收端增加一片相应的RS485芯片,以达到两个相同的RS‑485芯片同时接收,两芯片的差分接收端极性相反地连接至信号传输线上,硬件设计简单,成本低廉;在从机增加相应的软件,不但可以完成极性判断还可以进行极性自动切换,如果在数据正常通信中,存在主机重启、通信线重接等通信异常情况时,还可以通过看门狗使软件复位,重新判断极性,自动适应新的状态,无需人工干预,提高了系统的工作效率和可靠性。
Description
技术领域
本发明属于产品设计与检测用方法,涉及一种实现RS485无极性连接的方法。
背景技术
RS–485作为国际通用串口通信标准,以其结构简单、价格低廉、通信距离和数据传输速率适当等特点,在很多的测控系统中得到了广泛应用。RS-485利用两根数据线采用平衡式发送、差分式接收的方式实现通信,两根数据线在连接时是有极性区别的,如果接反,就会造成系统工作不正常。目前RS485的无极性连接解决方案主要有三种,一种是硬件判断人工修正法,这种方法采用的是在模块的发送端与地、接收端与地之间加LED指示灯,通过LED的指示辨别极性并通过人工拨码开关修改连线,这种解决方案存在以下缺点:不但需要技术人员参与调试纠正,施工不便,而且发送模块在调整时不能发送数据;第二种是软件判断自动修正法,这种方式是由主机发送一个测试信号,如果在设定时间内没有收到从机的应答,就说明线路连接错误,所谓自动修正就是主机改变连接线极性重发测试信号,而改变连接线极性是通过继电器、固态模拟开关或电子开关等方法改变一个双刀双掷开关的方向,这种解决方案存在以下缺点:需要增加继电器或开关等硬件电路,也增加了软件控制的复杂度;第三种是采用曼彻斯特编码法,即将信号进行差分曼彻斯特编码后可实现无极性连接,根据差分曼彻斯特编码原则可知,接线错误变成反相的波形信号后,仍可以解调出原始数据信号,这种解决方案存在以下缺点:需要在UART和RS485芯片之间加入编码电路和解码电路,同时需要同步的时钟信号。由以上叙述可知,三种方法虽都能实现RS485的无极性连接,但都存在一些不足。
发明内容
要解决的技术问题
为了避免现有技术的不足之处,本发明提出一种RS485串行通信的无极性连接方法,该方法采取在接收端增加一个相应的RS485芯片,在从机增加相应的极性判断及切换软件,从而实现RS485接线的无极性连接,同时如果在数据正常通信中,存在主机重启、通信线重接等通信异常情况时,软件也可以自动重新判断极性,适应新的状态,不需要人工干预,提高了系统的工作效率和可靠性。
技术方案
一种实现RS485无极性连接的方法,其特征在于发送端的RS-485芯片D1不变,在接收端使用两个相同的RS-485芯片D2和D3同时接收,两芯片的差分接收端极性相反地连接至信号传输线上,即将D2的A端和D3的B端相连,D2的B端和D3的A端相连;发送端的D1和控制系统组成了主机,接收端的D2和D3和控制系统组成了从机;步骤如下:
步骤1:主机主动发送同步字,当接收端的D2和D3的使能端/RE=0,DE=0时,接收使能有效,此时从机自数据线上接收串口数据,这里定义接收端两个485串口芯片D2和D3的串口分别为COM1和COM2;
步骤2:从机首先预设COM1口工作,COM2口闲置;读取COM1口数据,对收到的同步字进行判断,在固定时长内对同步字计数,如果计数值满足设定要求,判断硬件极性连接正常,即COM1口对应的485芯片处于正常工作状态,这时进行数据收取、处理即可;如果在一个检测周期内不能检测到足够多的同步字信息,则认为串口数据极性有误,主动切换极性到COM2口,同样在固定时长内对同步字计数,判别COM2口对应的485芯片是否处于正常工作状态;
步骤4:在COM1和COM2之间交替进行测试和判断,直到满足要求则转入正常工作状态。
步骤2中的固定时长设置为3s。
步骤2中的计数值的设定要求为55。
所述的控制系统为计算机或单片机。
有益效果
本发明提出的一种RS485串行通信的无极性连接方法,使用这种方式只需增加少许的软硬件就实现了无极性的连接,系统具有自动极性判断和串口切换的功能,不需要采用有标志的双绞线进行连接,不需要增加继电器等成本较高的硬件电路,也不需要技术人员参与调试纠正,极大地提高了系统工作的稳定性、可靠性和效率。
附图说明
图1RS–485常规连接方式
图2RS–485无极性连接方式
图3串行通信系统组成图
图4软件极性判断和切换流程图
具体实施方式
根据需要解决的问题,实现本方法需要硬件和软件来配合完成。硬件是在从机增加一个相应的RS485芯片,完成和主机串口的连接;软件完成RS485接口连接的极性判别及自动修正。
RS–485标准的数据信号采用差分传输方式,也称作平衡传输,它使用一对双绞线,将其中一线定义为A,另一线定义为B,通常情况下,发送端和接收端通过平衡双绞线将A–A,B–B对应相连,如图1所示。当在接收端A–B之间有大于+200mV的电平(即VA-VB≥200Mv)时,输出为正逻辑电平“0”;小于-200mV时(即VA-VB≤-200Mv),输出为负逻辑电平“1”,当200Mv≥VA-VB≥-200Mv时,输出为不定状态。
解决无极性连接,发送端不变,在接收端使用两个相同的RS-485芯片同时接收,两芯片的差分接收端极性相反地连接至信号传输线上,即将一个芯片的A端和另一个芯片的B端相连,B端和另一个的A端相连,如图2所示。
软件方面本发明分主从机网络结构,主机以固定的频率主动发送同步字,从机自数据线上接收数据,如果在一个检测周期内不能检测到足够多的同步字信息,则认为串口数据极性有误,主动切换极性,继续侦听。
如果在数据正常通信中,存在主机重启、通信线重接等通信异常情况时,从机均可以通过看门狗使软件复位,重新判断极性,自动适应新的状态。
作为一种常用的通讯接口芯片,许多半导体公司都在生产,而且引脚完全兼容,同时兼容工业标准规范。所以,这里不局限于哪个厂家的产品,统一叫做RS485芯片,做通用性描述。另外,因为RS485为双向传输,发送端同时也是接收端,而我们这种串行通信的无极性连接方法只是在从机采取措施,所以这里只做单一性描述。双向传输同理。
现结合实施例、附图对本发明作进一步描述:
图3为串行通信系统组成图。参照图3,接收端将两片485的差分输入交叉连接在一起,即将D2的A端和D3的B端相连,D2的B端和D3的A端相连,RS485的输入端DI和控制端/RE,控制端DE,以及系统输出RO与控制系统相连。控制系统可以是单片机、计算机等可以对控制端/RE,DE进行收发控制,可以发送数据和接收数据的系统。电阻R1、R2是为了防止远距离传输时传输线中的反射和干扰,一般加在信号线AB间的匹配电阻。
软件方面,主机(包括控制系统和发送端的RS485)主动发送同步字,当接收器(接收端的2片RS485)使能端/RE=0,DE=0时,接收使能有效,此时从机(包括控制系统和接收端的RS485)自数据线上接收串口数据,这里定义接收端两个485串口芯片(图3)D2和D3的串口分别为COM1和COM2。从机首先预设COM1口工作,COM2口闲置。读取COM1口数据,对收到的同步字进行判断,在固定时长内(比如3s)对同步字计数,如果计数值满足设定要求(比如55)可以判断硬件极性连接正常,即COM1口对应的485芯片处于正常工作状态,这时进行数据收取、处理即可;如果在一个检测周期内不能检测到足够多的同步字信息,则认为串口数据极性有误,主动切换极性到COM2口,同样在固定时长内(比如3s)对同步字计数,判别COM2口对应的485芯片是否处于正常工作状态。在COM1和COM2之间交替进行测试和判断,直到满足要求则转入正常工作状态。
软件极性判断流程如图4所示。
Claims (4)
1.一种实现RS485无极性连接的方法,其特征在于发送端的RS-485芯片D1不变,在接收端使用两个相同的RS-485芯片D2和D3同时接收,两芯片的差分接收端极性相反地连接至信号传输线上,即将D2的A端和D3的B端相连,D2的B端和D3的A端相连;发送端的D1和控制系统组成了主机,接收端的D2和D3和控制系统组成了从机;步骤如下:
步骤1:主机主动发送同步字,当接收端的D2和D3的使能端/RE=0,DE=0时,接收使能有效,此时从机自数据线上接收串口数据,这里定义接收端两个485串口芯片D2和D3的串口分别为COM1和COM2;
步骤2:从机首先预设COM1口工作,COM2口闲置;读取COM1口数据,对收到的同步字进行判断,在固定时长内对同步字计数,如果计数值满足设定要求,判断硬件极性连接正常,即COM1口对应的485芯片处于正常工作状态,这时进行数据收取、处理即可;如果在一个检测周期内不能检测到足够多的同步字信息,则认为串口数据极性有误,主动切换极性到COM2口,同样在固定时长内对同步字计数,判别COM2口对应的485芯片是否处于正常工作状态;
步骤4:在COM1和COM2之间交替进行测试和判断,直到满足要求则转入正常工作状态。
2.根据权利要求1所述的一种实现RS485无极性连接的方法,其特征在于步骤2中的固定时长设置为3s。
3.根据权利要求1所述的一种实现RS485无极性连接的方法,其特征在于步骤2中的计数值的设定要求为55。
4.根据权利要求1所述的一种实现RS485无极性连接的方法,其特征在于所述的控制系统为计算机或单片机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710310249.6A CN107193697A (zh) | 2017-05-05 | 2017-05-05 | 一种实现rs485无极性连接的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710310249.6A CN107193697A (zh) | 2017-05-05 | 2017-05-05 | 一种实现rs485无极性连接的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107193697A true CN107193697A (zh) | 2017-09-22 |
Family
ID=59873159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710310249.6A Pending CN107193697A (zh) | 2017-05-05 | 2017-05-05 | 一种实现rs485无极性连接的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107193697A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109101362A (zh) * | 2018-06-28 | 2018-12-28 | 广州视源电子科技股份有限公司 | 通信校正方法、装置、可读存储介质及从机 |
CN110069437A (zh) * | 2019-04-24 | 2019-07-30 | 大连理工大学 | 基于响应帧有效性的rs-485总线极性自适应方法 |
CN110196828A (zh) * | 2019-05-28 | 2019-09-03 | 深圳市雷赛软件技术有限公司 | 支持rs485半双工协议的通讯电路及通讯方法 |
CN110247833A (zh) * | 2019-05-24 | 2019-09-17 | 珠海格力电器股份有限公司 | 通信控制方法、装置、子设备和通信系统 |
CN111835598A (zh) * | 2020-07-30 | 2020-10-27 | 贵州电网有限责任公司 | 一种兼容有无极性485组网模拟的测试方法及系统 |
CN113836063A (zh) * | 2020-06-24 | 2021-12-24 | 鸣志电器(太仓)有限公司 | 一种基于双uart的rs-485信号线极性自适应实现装置 |
CN116126608A (zh) * | 2023-01-12 | 2023-05-16 | 北京众谊越泰科技有限公司 | 一种多串口监控主机的测试工装系统和方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1962199A2 (en) * | 2007-01-08 | 2008-08-27 | O.Y.L. Research & Development Centre Sdn Bhd | A communication apparatus |
CN102394734A (zh) * | 2011-07-29 | 2012-03-28 | 四川长虹电器股份有限公司 | 无极性连接的rs485通讯系统及其控制方法 |
CN203326979U (zh) * | 2013-07-09 | 2013-12-04 | 南京三能电力仪表有限公司 | 一种无极性连接的rs485电路 |
-
2017
- 2017-05-05 CN CN201710310249.6A patent/CN107193697A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1962199A2 (en) * | 2007-01-08 | 2008-08-27 | O.Y.L. Research & Development Centre Sdn Bhd | A communication apparatus |
CN102394734A (zh) * | 2011-07-29 | 2012-03-28 | 四川长虹电器股份有限公司 | 无极性连接的rs485通讯系统及其控制方法 |
CN203326979U (zh) * | 2013-07-09 | 2013-12-04 | 南京三能电力仪表有限公司 | 一种无极性连接的rs485电路 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109101362A (zh) * | 2018-06-28 | 2018-12-28 | 广州视源电子科技股份有限公司 | 通信校正方法、装置、可读存储介质及从机 |
CN110069437A (zh) * | 2019-04-24 | 2019-07-30 | 大连理工大学 | 基于响应帧有效性的rs-485总线极性自适应方法 |
CN110247833A (zh) * | 2019-05-24 | 2019-09-17 | 珠海格力电器股份有限公司 | 通信控制方法、装置、子设备和通信系统 |
CN110196828A (zh) * | 2019-05-28 | 2019-09-03 | 深圳市雷赛软件技术有限公司 | 支持rs485半双工协议的通讯电路及通讯方法 |
CN113836063A (zh) * | 2020-06-24 | 2021-12-24 | 鸣志电器(太仓)有限公司 | 一种基于双uart的rs-485信号线极性自适应实现装置 |
CN111835598A (zh) * | 2020-07-30 | 2020-10-27 | 贵州电网有限责任公司 | 一种兼容有无极性485组网模拟的测试方法及系统 |
CN111835598B (zh) * | 2020-07-30 | 2023-08-22 | 贵州电网有限责任公司 | 一种兼容有无极性485组网模拟的测试方法及系统 |
CN116126608A (zh) * | 2023-01-12 | 2023-05-16 | 北京众谊越泰科技有限公司 | 一种多串口监控主机的测试工装系统和方法 |
CN116126608B (zh) * | 2023-01-12 | 2024-01-26 | 北京众谊越泰科技有限公司 | 一种多串口监控主机的测试工装系统和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107193697A (zh) | 一种实现rs485无极性连接的方法 | |
CN106453383B (zh) | 一种基于uart的主从多机通讯系统及方法 | |
CN216596246U (zh) | 兼容多串口协议的自适应电路及通讯设备 | |
CN202372976U (zh) | 一种分时复用串口的切换电路 | |
CN106569976A (zh) | 一种串口通信系统及通信方法 | |
CN104317762A (zh) | 一种fpga自适应控制rs485芯片收发方向的方法 | |
CN105159194A (zh) | Rs-485串口接收发送数据切换电路及切换方法 | |
CN102882508A (zh) | 一种简易的rs485接口极性切换电路 | |
CN114301732B (zh) | 实现总线通讯的电路、总线通讯系统及电源储能装置 | |
CN113792003A (zh) | 单总线通信单元、系统及方法 | |
KR101084060B1 (ko) | Bms 제어기 간의 극성 자동판단에 의한 데이터 전송이 가능한 무극성 rs-485통신장치 | |
CN210469301U (zh) | 一种串口选择处理扩展系统 | |
CN101882124B (zh) | 具自动判断接口形态的rs422/485两用信号转换器 | |
CN101345681B (zh) | 通过串行总线连接智能电器的主机的工作方法 | |
CN101217523B (zh) | 一种串行通讯信号的修复装置及其方法 | |
CN107070547B (zh) | 一种具有故障监控能力的cpci型千兆以太网装置 | |
US6466989B1 (en) | Automatic network connection device for wiring to network cable | |
CN201820120U (zh) | 自适应多总线执行机构控制器 | |
CN201114493Y (zh) | 接口电路和具有该电路的电视机 | |
CN209118135U (zh) | 一种电动自行车用can总线通信电路 | |
CN114839897A (zh) | 一种多接口、输入输出可配置韦根通信扩展板 | |
CN1708027A (zh) | 一种传送以太网设备双工模式信息的方法 | |
US11630795B2 (en) | RS-485 circuit and communication system | |
CN112988642A (zh) | 一种串口信号的防反接方法及开关切换电路 | |
CN221631961U (zh) | 智能切换电路及工控设备 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170922 |
|
WD01 | Invention patent application deemed withdrawn after publication |