网站首页
IC库存
IC展台
电子资讯
技术资料
PDF文档
我的博客
IC72论坛
ic72 logo
资料首页最新产品 技术参数 电路图 设计应用 解决方案 代理商查询 IC替换 IC厂商 电子辞典
关键字: 技术文章 PDF资料 IC价格 电路图 代理商查询 IC替换 IC厂商 电子辞典

如何解决串口通信的理论极限及其实现问题?

1、突破RS-485节点和距离极限的布线方式

RS-232/RS-485中继转换器有一个DB-9孔的RS-232口和2个带接线端子的RS-485。DB-9孔端用于接RS-232口、DB-9 针端通过接线端子板接RS-485口。485A2的接线端子板上有5个接线端子(A1、B1、GND、B2、A2) ,为两个RS-485口,共用GND地线。A1、B1与A2、B2是功能完全相同的,不分方向。 两个RS-485口具有相互中继的功能。


图1

485A2应用的RS-485多机通信的典型接线图以及485A2+产品图,如果串口设备只有RS-485口则可以配接485A2+。若每一段RS-485的距离为1200米和128个,则整个RS-485系统的距离达到(N×1200米)、节点数达到(N×128)。可以看出,使用了485A2的RS-485总线布线极其简洁。最远两端可以用485A,也可以用485A2。注意整个RS- 485系统共用GND线。

2、RS-485多机通信节点数的极限

假设RS-485通信的地址编码为8位,那么最多的节点数就是2^8=256;假设RS-485通信的地址编码为10位,那么最多的节点数就是2^10=1024。10位已经多到极少用到。这个总线中的RS-485节点数的极限完全取决于通信软件 ,与总线中所接的RS-485中继转换器个数没有关系。实际上,因为受RS-485接口芯片性能的限制,每一段RS-485目前最多接128个节点,所以要达到256个的极限就得至少接一个485A2中继转换器,要达到1024极限就要至少8个485A2中继转换器。

3、完全失败的RS-485通信距离的理论极限

假设波特率为9600bps,就是每秒9600位。每个数据有1个起始位、8个数据位、1个校验位、1个停止位,一共11位。也就是传输一个数据 (1byte)的时间是11/9600=0.001145s。在这个时间内电磁波的传输距离(也就是光速为299792458m/s )为343512米,即343.5千米。

如果电信号的电磁波延时达到0.001145s(大约1.25ms),那么就会延时到错位一个数据,这样就无法正常通信。怎么理解?在某一时刻主机以9600bps同时向所有从机发送一组信号(比如ABCD),从机都立即响应回答数据,注意在 9600bps下没传一个数据的时间差为1.25ms,也就是发A比发B早1.25ms,发B比发C早1.25ms……。那么主机收到的最远的节点的回答 A的数据与1.25ms后最近的节点回答B的数据重叠,这样就无法通信。

也就是RS-485的理论传输的最远距离在9600bps时只有大约343512米。假设每1200米进行一次中继,343512/1200=286,也就是说要达到RS-485的理论极限,需要至少286次中继延长。

4、无误码的RS-485通信距离的理论极限

并非只有当整个11位数据完全重叠时才无法通信,实际上只要有1位错位存在误码就不好。虽然有时候软件有一定纠错功能,容许存在一定程度的误码情况下也可以传输数据,但是我们还是要弄清楚无误码的极限。

假设波特率为9600bps,就是每秒9600位。也就是传输一位(1bite)的时间是1/9600=0.000104s。在这个时间内电磁波的传输距离(也就是光速为299792458m/s )为31228米。如果电信号的电磁波延时达到0.000104s(大约0.1ms),那么就会延时到错位一个数据位,这样就会出现误码。怎么理解?在某一时刻主机收到的最远的节点的数据会与大约0.1ms前最近的节点发送的数据重叠一位,这样就有误码了。也就是RS-485的无误码通信的理论最远距离在 9600bps时只有大约31KM。假设每1200米进行一次中继,31228/1200=26.02,也就是说要达到RS-485的理论极限,需要至少 26次中继延长。

以上可以看出,RS-485通信距离的理论极限与波特率成反比,波特率越高极限距离越短。当波特率为 115200bps时(=12×9600),无误码传输的理论极限距离为31228/12=2602米。只有大约2.6km!这也难怪RS-485的远程通信只说9600时传输多远,几乎不提115200bps。

5、其它介质和其它总线的理论极限

以上的RS-485距离极限343512米以及31228米(9600bps)与传输介质无关,就是说用光纤传输RS-485最远也是这么多,无线也是一样。 以上的无误码RS-485距离极限31228米(9600bps)与协议无关,就是说用CAN、PROFIBIUS最远也是这么多,原理是一样的。以上的通信完全失败的RS-485距离极限343512米(9600bps)与数据位数有关,而且成正比例,就是说用CAN2.0(29位)比 CAN1.0(11位)的极限更加大,大一倍以上。

到这里,大家一定会惊讶RS-485通信距离极限之短。互联网、手机、GPS是如何传输几乎无限远距离的呢?互联网和手机通信几乎无法实时,而GPS对延时的计算及其精确。以后将另外专文讨论。

热门搜索:SS3612 2762265 UL603CB-6 2811271 BTA12-800TWRG PS2408RA SBB830 PS-415-HG-OEM 8300SB2-LF ULTRABLOK TLM626SA TLM626NS TLP1008TEL 2838319 01M1001JF 2839240 SS240806 TLP808NETG SS7619-15 02M5000JF LCR2400 RS1215-RA PM6NS ADC128S102CIMTX BT151S-800R118
COPYRIGHT:(1998-2010) IC72 达普IC芯片交易网
客户服务:service@IC72.com 库存上载:IC72@IC72.com
(北京)联系方式: 在线QQ咨询:点击这里给我发消息 联系电话:010-82614113 传真:010-82614123
京ICP备06008810号-21 京公网安备 11010802032910 号 企业资质