查看RS485的源代码
←
RS485
跳转到:
导航
,
搜索
因为以下原因,你没有权限编辑本页:
您刚才请求的操作只有这个用户组中的用户才能使用:
用户
您可以查看并复制此页面的源代码:
== Overview == RS485采用差分信号负逻辑: * Signal = 1 (HIGH): +2V ~ +6V * Signal = 0 (LOW): -6V ~ -2V RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用。 现在多采用的是两线制接线方式。在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。 RS485 的理论最长传输距离能达到 1200米,实际应用中要比1200米短,具体能传输多远视周围环境而定。在传输过程中可以采用增加中继的方法对信号进行放大,最多可以加 8 个中继,此时 RS485 的最大传输距离可以达到 9.6 公里 再长距离传输,可以采用光纤,收发两端各加一个光电转换器,多模光纤的传输距离是 5~10 公里,而采用单模光纤可达 50 公里的传播距离。 工程现场布线,必须选用国际上通行的屏蔽双绞线。推荐用的屏蔽双绞线的型号为 RVSP2*0.5 (二芯屏蔽双绞线,每芯由16股的0.2mm的导线组成)。采用屏蔽双绞线有助于减少和消除两根485通信线之间产生的分布电容以及来自于通讯线周围产生的共模干扰。 一些工程商喜欢采用 5 类网线或超 5 类网线作为 485 通信线,其弊端: * 网线只有 0.2mm平方,线径太细,会导致传输距离降低和可挂接的设备减少 * 网络线为单股的铜线,相比多芯线而言容易断裂 * 5 类普通网线没有屏蔽层,不能防止共模干扰 <br><br> == 干扰防护 == 485 通信线由两根双绞的线组成,它是通过两根通信线之间的电压差的方式来传递信号,因此称之为差分电压传输 === 差模干扰 === 差模干扰在两根信号线之间传输,属于对称性干扰。 消除差模干扰的方法是在电路中增加一个偏值电阻,并采用双绞线 <br> === 共模干扰 === 共模干扰是在信号线与地之间传输,属于非对称性干扰。 消除共模干扰的方法包括: * 采用屏蔽双绞线并有效接地 * 强电场的地方还要考虑采用镀锌管屏蔽 * 布线时远离高压线,更不能将高压电源线和信号线捆在一起走线 * 不要和电控锁共用同一个电源 * 采用线性稳压电源或高品质的开关电源(纹波干扰小于50mV) <br> === 接地 === 很多情况下,连接 RS485 通信链路时只是简单地用一对双绞线将各个接口的“A”、“B”端连接起来。而忽略了信号地的连接,这种连接方法在许多场合是能正常工作的,但却埋下了很大的隐患,这有二个原因: * 共模干扰 ::RS485 接口采用差分方式传输信号方式,并不需要相对于某个参照点来检测信号,系统只需检测两线之间的电位差就可以了。但人们往往忽视了收发器有一定的共模电压范围,RS485 收发器共模电压范围为 -7~+12V,只有满足上述条件,整个网络才能正常工作(否则网络不稳定) ::共模干扰会增大上述共模电压。消除共模干扰的有效手段之一是将 485 通讯线的屏蔽层用作地线,将机具、电脑等网络中的设备地连接在一起,并由一点可靠地接入大地。 ::目前,有相当部分 PC 机在使用时,电源并没接地。主要是电源没有接地,或电源插座没有地线,从而造成PC机地线与地之间往往有几十伏以上的漏电电压存在,这个电压很容易就引入设备中,从而导致网卡或通讯口损坏。 * EMI 问题 ::发送驱动器输出信号中的共模部分需要一个返回通路,如没有一个低阻的返回通道(信号地),就会以辐射的形式返回源端,整个总线就会像一个巨大的天线向外辐射电磁波 <br> === 走线建议 === 工程现场走线应遵循两个原则: * 远离电源线,日光灯等干扰源,应尽量远离高压电线,不要与电源线并行,更不能捆扎在一起 * 当网线不能与电源线等干扰源避开时,网线应与电源线垂直,不能平行,并采用质量高的双绞线走线 不可为了走线方便,把网线放在电源线的线槽里,或在天花板走线时经过日光灯等干扰源。实际上干扰源对相邻网线的干扰,主要是通过磁场和电场的作用,按照电磁理论,干扰源对网线的感应与距离的平方成反比,因此,网线离干扰源那怕远离10厘米,网线受到的干扰都会明显减弱 <br> == 终端电阻 == 一般在设备少距离短的情况下,不加终端负载电阻,整个网络也能很好的工作,但随着距离的增加性能将降低。 一般建议在通信距离超过 100米时,要在485通讯的开始端和结束端增加终端电阻,阻值大小一般为 120 欧姆 这种匹配方法简单有效,但有一个缺点,匹配电阻要消耗较大功率,对于功耗限制比较严格的系统不太适合。另外一种比较省电的匹配方式是RC匹配。利用一只电容C隔断直流成分可以节省大部分功率。但电容C的取值是个难点,需要在功耗和匹配质量间进行折衷。 还有一种采用二极管的匹配方法,这种方案虽未实现真正的“匹配”,但它利用二极管的钳位作用能迅速削弱反射信号,达到改善信号质量的目的,节能效果显著 判断在什么样的数据速率和电缆长度时需要进行匹配,MAXIM 有条经验性的原则:当信号的转换时间(上升或下降时间)超过电信号沿总线单向传输所需时间的3倍以上时就可以不加匹配。 <br><br> == Notes == RS-485 在多数情况下,由于应用环境的恶劣,需采用隔离方案以防止出现接地环路。 光耦隔离电路占用空间大,需要分立元件、缓存驱动, 但成本便宜 ADI 的 iCoupler 磁隔离解决方案,它能够提供多通道数字隔离、集成 RS-485 收发器的数字隔离、集成 isoPower 磁隔离电源的数字隔离等多种灵活的隔离方案。在体积、功耗、速率等众多方面优于光耦的解决方案 <br><br> == Hardware == === MAX485 === * In µMAX Package: Smallest 8-Pin SO * Slew-Rate Limited for Error-Free Data Transmission (MAX483/487/488/489) * 0.1µA Low-Current Shutdown Mode (MAX481/483/487) * Low Quiescent Current: **120µA (MAX483/487/488/489) **230µA (MAX1487) **300µA (MAX481/485/490/491) * -7V to +12V Common-Mode Input Voltage Range * Three-State Outputs * 30ns Propagation Delays, 5ns Skew (MAX481/485/490/491/1487) * Full-Duplex and Half-Duplex Versions Available * Operate from a Single 5V Supply * Allows up to 128 Transceivers on the Bus (MAX487/MAX1487) * Current-Limiting and Thermal Shutdown for Driver Overload Protection * http://ecee.colorado.edu/~mcclurel/max485ds.pdf Need B0505 DC-DC and PS2501 * RS485_1_A+ --- MAX485_PIN6 * RS485_1_B- --- MAX485_PIN7 * MAX485_PIN4 --- ARM9_CORE_J2_68_TXD0 * MAX485_PIN1 --- ARM9_CORE_J2_69_RXD0 * MAX485_PIN2 & 3 --- ARM9_CORE_J1_69_PC30 [[文件:Max485.png | 500px]] [[文件:Max485-sch.jpg]] <br><br> === ISL3152E === * High driver VOD 2.4V (Min) at RD = 54Ω Better noise immunity, or drive up to eight terminations * ±16.5kV IEC61000 ESD protection on I/O bus pins * High transient overvoltage tolerance . . . . . ±100V * Full fail-safe (open, short, terminated) receivers * High Rx IOL for opto-couplers in isolated designs * Hot plug circuitry - Tx and Rx outputs remain three-state during power-up and power-down * True 1/8 unit load for up to 256 devices on the bus * High data rates . . . . . . . . . . . . . . . up to 20Mbps * Low quiescent supply current . . . . . . . . . . 600µA * Ultra low shutdown supply current . . . . . . . . 70nA * http://www.intersil.com/content/dam/Intersil/documents/isl3/isl3150e-52e-53e-55e-56e-58e.pdf * http://www.intersil.com/content/dam/Intersil/whitepapers/interface/rs-485-transceiver-tutorial_cn.pdf * http://www.intersil.com/content/dam/Intersil/documents/an19/an1986.pdf <br><br> === ADM2483 === Also need the B0505 DC-DC <br><br> === ISO3082 === Also need the B0505 DC-DC <br><br> === ADM2587 === ADM2582E/ADM2587E 以单芯片实现完全的半/全双工RS-485接口隔离。ADM2582E/ADM2587E 集成 isoPower 磁隔离电源,无需外部隔离电源供电。还集成了数字隔离通道和 RS-485 收发器,具备±15 kV ESD 保护功能,适用于多点传输线路上的高速通信应用。 其内部集成的 RS-485 驱动器带有一个高电平有效使能电路,并且还提供一个高电平接收机有效禁用电路,可使接收机输出进入高阻抗状态。该器件具备限流和过热关断特性,能够防止输出短路,并防止出现由于总线争用而引起功耗过大的情况。 [[文件:ADM2587-block-diagram.jpg | 600px]] [[文件:ADM2587.jpg]] 芯片封装为 SOIC-20 全双工RS-485/RS-422: [[文件:ADM2587-full-tx.jpg]] 半双工RS-485/RS-422: [[文件:ADM2587-half-tx.jpg]] <br><br> == Connection == * PI_TX --- ADM2587_TX * PI_RX --- ADM2587_RX * ESP_TX --- ADM2587_TX * ESP_RX --- ADM2587_RX <br><br> == Reference == * https://github.com/4-20ma/ModbusMaster * https://github.com/andresarmento/modbus-arduino <br><br> <br><br> <br><br> <br><br> <br><br> <br><br> <br><br> <br><br> <br><br> <br><br> <br><br> <br><br>
返回到
RS485
。
个人工具
登录
名字空间
页面
讨论
变换
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
社区专页
新闻动态
最近更改
随机页面
帮助
工具箱
链入页面
相关更改
特殊页面