RS485和RS422的优点与差异
RS485是什么
最初的ANSI / EIA / TIA-485-A-1998标准于1998年3月获得批准,以解决RS232和RS422的缺点。RS485是双向半双工标准,具有多个“总线”驱动器和接收器,每个驱动器都可以放弃总线。它符合所有RS422规范,但功能更强大,例如包括更高的接收器输入阻抗和更宽的共模范围(-7V至+ 12V)。RS485传输设备
接收器输入灵敏度为±200mV,这意味着要识别标记或空格,接收器必须看到高于+ 200mV或低于-200mV的信号电平。最小接收器输入阻抗为12kΩ(称为单位负载),驱动器输出电压最小为±1.5V,最大为±5V。
驱动能力是32个单位负载,即32个并联的12kΩ接收器。许多接收器被设计为具有更高的输入阻抗,从而允许一条总线上的单元负载数量也更高。总线上可以连接任意数量的接收器,只要提供给驱动器的组合(并行)负载不超过32个单位负载(375Ω)。驱动器允许的最大负载阻抗为54Ω,在典型的24AWG双绞线环境中,它是32个单位负载与两个120Ω终端并联的。
RS485仍然是POS,工业和电信应用中使用最广泛的协议。较宽的共模范围使数据能够通过更长的电缆长度以及在嘈杂的环境(例如工厂车间)中进行传输。而且,接收器的高输入阻抗允许将更多设备连接到线路。
RS422是什么
RS422是用于电噪声工业环境的单向全双工标准。它指定一个具有多个接收器的驱动程序。信号路径是差分的,可处理高于50Mbps的比特率。接收器的共模范围为±7V,驱动器输出电阻最大为100Ω,接收器输入阻抗可低至4kΩ。
RS485和RS422的优点
RS485和RS422驱动线采用差分方式:每个信号需要两条线。如果要传输四个信号,则需要八根线。下图显示了正在传输的单个RS485 / RS422信号。为了传输逻辑1,线B为高电平,线A为低电平。为了发送逻辑0,线B为低电平,线A为高电平。这种布置的优点是,与单根导线相比,信号传输速度更快,距离更远。
RS422和RS485之间的差异
在RS422和RS485中,一个驱动器可以驱动许多接收器。在RS485中,可以关闭每个驱动器,从而允许多个单元通过一对电线发送数据。在RS422中这是不可能的。此额外功能会给RS485设备带来额外的问题。其他差异很小,因此在下文中,我将其称为RS485,但备注也适用于RS422。接口单元通常将自己描述为RS422 / RS485,因为未使用其额外功能的RS485单元与RS422兼容。
RS485接线安排
当仪器被描述为具有RS485接口时,这不能肯定地告诉您正在传输的信号。通常,尽管仅将普通串行端口的发送数据(TX)和接收数据(RX)转换为RS485或RS422。不使用串口的其他信号。三种安排很常见:仅写,4线(全双工)和2线(半双工)。
只写系统:仅发送数据
在这种安排下,计算机通过一条RS485电线将数据发送到许多仪器。它从不读回任何数据。例如CCTV摄像机的遥控器。操作员可以发送信息来移动摄像机。他的反馈是电视图像,因此不需要返回数据。这仅需要将RS232 TX信号转换为RS485。
全双工系统:通过4线发送和接收数据
全双工意味着数据可以同时往返于仪器。这需要 4根线-一对要发送,一对要接收。单独由计算机控制TX传输线。它发出包含地址的消息。被寻址的仪器仅通过驱动RX线进行响应。
这确实意味着所有连接的仪器都必须使用相同的软件协议-否则,对于要解决的仪器会产生混淆。从RS232到RS485的简单转换就足以满足这种要求,并且对通用软件(例如ComDebug)没有特殊要求。
半双工系统:通过2线发送和接收数据
半双工意味着数据一次只能沿一个方向通过。在这种布置中,TX和RX信号共享一对导线。这样可以节省安装成本。
计算机驱动线路发送其请求消息,但必须关闭其驱动程序以允许仪器回复。这很棘手。许多RS232到RS485转换器使用串行端口的RTS线来打开和关闭RS485驱动程序。但是Windows从来没有半心半意地支持这种安排。
Windows的多任务性质意味着始终很难在正确的时间执行操作-在这种情况下,发送请求和关闭驱动程序之间可能会有很大的延迟。如果仪器在关闭电源之前开始回复,则会错过回复的开始。仪器制造商被迫为此问题寻找自己的解决方案。这可能包括特殊软件,特殊硬件或两者。
近年来,大多数串行端口已实现为USB到串行的安排。这些单元始终包括一个微处理器,这可以很好地执行控制RS485驱动器的任务。如果您需要实施2线制RS485系统,则应始终获得一个USB至RS485转换器,该转换器具有这一特殊功能。我们使用的一个示例类型是Moxa1130。当没有更多数据要发送时,该设备会自动关闭驱动程序。这样的单元可以与通用软件(例如ComDebug或HyperTerminal)一起使用。请注意,尽管它可能无法与仪器制造商提供的特殊软件一起使用,这些软件可能假定使用特定的RS232到RS485转换器,并且在与任何其他设备一起使用时可能会产生错误。
防止电压反射
当信号通过电缆发送时,总会有反射电压使电缆返回。随着信号的边缘变快和线变长,这种反射会更大。可以通过以系统的特征阻抗端接线路的末端来将其最小化。
理想的RS485接线
理想情况下,RS485系统由单根线性电缆(无分支)组成,在电缆的两端通过2根导线连接120欧姆电阻。
RS485可以处理每秒超过10 Mbits的速度和超过1 km的线路长度。如果您在接近这些值的任何地方进行操作,则必须将布线布置接近理想值。
对于许多波特率很慢的应用(例如9600波特),并且线路只有几十米长,这不是必需的。然后可以放宽布线要求,以允许电缆从计算机以星型排列走线,并且端接电阻器成为可选件。
线路上拉:避免串行错误
在许多RS485多点系统中,有时没有任何单元在驱动RS485线路。然后它们可能会升至任何电压,并可能产生串行错误。为避免这种情况,通常需要安装电阻,该电阻将一根线拉高而另一根线拉低,从而使线进入被动状态。RS485转换器通常包括可根据需要连接的电阻。
RS485信号注意事项
您会发现线路对的RS485信号名称为A,B或+,-。在理想情况下,您只需将计算机上的A连接到仪器上的A。但是,这些名称并非由制造商一致使用,您可能需要将计算机上的A连接到仪器上的B。