关于RS485
偏置电阻和匹配电阻
的说明
匹配电阻:对于双绞线组成的RS485网络,匹配电阻有两个,分别位于双绞线的两端。这两个匹配电阻只为消除由于传输线即双绞线特性阻抗不连续而带来的反射信号。
关于反射信号的知识如下:
特征阻抗(也有人称特性阻抗),它是在甚高频、超高频范围内的概念,它不是直流电阻。属于长线传输中的概念。
在信号的传输过程中,在信号沿到达的地方,信号线和参考平面(
电源平面或地平面)之间由于电场的建立,就会产生一个瞬间的电流,如果传输线是各向同性的,那么只要信号在传输,就会始终存在一个电流I,而如果信号的输出电平为V,则在信号传输过程中(注意是传输过程中),传输线就会等效成一个电阻,大小为V/I,我们把这个等效的电阻称为传输线的特征阻抗(characteris
tic Impedance)Z。
要格外注意的是,这个特征阻抗是对交流(AC)信号而言的,对直流(DC)信号,传输线的电阻并不是Z,而是远小于这个值。
信号在传输的过程中,如果传输路径上的特征阻抗发生变化,信号就会在阻抗不连续的结点产生反射。
传输线的基本特性是特性阻抗和信号的传输延迟,在这里,我们主要讨论特性阻抗。传输线是一个分布参数系统,它的每一段都具有分布电容、电感和电阻。传输线的分布参数通常用单位长度的电感L和单位长度的电容C以及单位长度上的电阻、电导来表示,它们主要由传输线的几何结构和绝缘介质的特性所决定的。分布的电容、电感和电阻是传输线本身固有的参数,给定某一种传输线,这些参数的值也就确定了,这些参数反映着传输线的内在因素,它们的存在决定着传输线的一系列重要特性。
一个传输线的微分线段可以用等效
电路描述如下:
传输线的等效电路是由无数个微分线段的等效电路串联而成,如下图所示:
从传输线的等效电路可知,每一小段线的阻抗都是相等的。传输线的特性阻抗就是微分线段的特性阻抗。
传输线可等效为:
Z0 就是传输线的特性阻抗。(ZJJ:利用ZS+(Z0*ZP)/(Z0+ZP)=Z0计算出Z0的过程实际上是解了一个一元二次方程:X=-B+SQR(B*B-4AC))
一旦在双绞线两端接入匹配电阻(匹配电阻的阻值等于双绞线的特性阻抗,而双绞线的特性阻抗是由生产厂商提供的),则由内向该端头看去好像双绞线并没有中断,即该双绞线呈现出无限长的假象,理论上讲这就从根本上解决了特性阻抗不连续的问题,从而解决了反射信号的问题。
偏置电阻:与三极管的偏置电阻一样,这里的偏置电阻是为了将空闲状态的总线电平拉离0电平,更准确的说,偏置电阻是为了将总线的空闲电平拉高到可以在反射信号最强的情况下仍能保持高电平的状态。
添加偏置电阻的解释如下:对于不包含故障保护的芯片,比如SN75176B等,当作为接收器时,如果RS485总线处于空闲状态,则总线电平处在-200mv~+200mv之间,这时接收器的输出状态不定,如果接收器输出0,则对于处理器而言,意味着一个字符帧的开始,从而导致网络混乱,出现错误。当然,对于集成有故障保护的芯片而言,比如max3080~max3090,如果总线处于空闲状态时(即处于高电平限和低电平限之间时),则接收器的输出为高电平,这就保证了网络的稳定。
偏置电阻选择标准:
a) 需要考虑具体电路的反射信号强度,反射信号跟具体的电路有关,没有参数可寻。尽管我们加入了匹配电阻,但是反射依然不可避免的会存在,因此反射信号强度是应当考虑的,但是由于反射信号强度与具体网络连接有关,因此通常我们可以采用大概数值,详见下面解释。
b) 滞回电压,在混入反射信号后,经过偏置电阻的偏置作用空闲状态的总线差分电压需要高于该滞回电压,只有这样才能让接收器避免进入不定状态。滞回电压可以在datasheet中查到,比如SN75176B的滞回电压是50mv。
通过上面a,b两点,我们可以看出,当接收器处于空闲状态时,经过偏置后,即使掺杂最高的反射信号,对于接收器而言,总线电平依然要高于滞回电压,这是我们选择偏置电阻的基本要求和出发点。
但是,a中也提到反射信号在不同的网络中都有不同,网络的变动也会导致反射信号的变化,因此,工程中我们对于a和b中提到的要求做以下处理:偏置电阻需要将空闲总线电平带到将接收器置1的电平水平。分析如下:比如对于SN75176B,接收器的置1差分电压是200mv,那就需要偏置电阻将空闲总线电平带到200mv,又由于SN75176B的滞回电压是50mv,因此这里我们假设了最强反射信号造成的电位降低为200-50=150mv。从这个分析我们能看出,我们用200mv的接收器置1电压粗略包含了反射信号和滞回电压,即a和b中的要求。当然,为了保险起见,可以将空闲总线电平偏置到略微高于接收器的置1差分电压,比如对于SN75176B而言,略微高于200mv,例如偏置到300mv左右。
另外,对于偏置电阻,分为上拉和下拉电阻,我推荐使用相同的上拉和下拉电阻,理由如下:对于无论A或者B输出线而言,电平都是0V-6V(SN75176B),因此无论上拉或者下拉电阻,如果过小,都会导致相应输出线的电流过大,比如:对于SN75176B,当A输出低时(此时B肯定输出高,因为两个反向,这些知识可以查看datasheet),如果A端的上拉电阻太小,就会有大量拉电流流入芯片。对于B输出高,如果B的下拉电阻过小,就会有大量灌电流通过该电阻流入地,也会导致B输出线电流太大。又由于偏置电阻的和,即A的上拉电阻和B的下拉电阻的和,为固定数值,因此,权衡两条输出线,只能平均配置两个偏置电阻。
最后,偏置电阻可以分散到每个收发器,也可以只加在总线的某一处。如果分散到每个收发器,则需要按照并联的方法使总的上拉和下拉电阻与总线需要的上拉下拉电阻相等。
通过以上分析,我们大概了解了偏置电阻和匹配电阻的作用和选用原则,下面将以一个例子计算偏置电阻的阻值:
对于有32节点,两端有120欧匹配电阻的RS485网络(比如SN75176B组建的网络,上图),其偏置电阻的计算方法和步骤如下:
1)计算节点总负载
每个节点的负载阻抗为12K欧(ZJJ:这是个经典数值),32个节点的并行阻抗为:375欧(ZJJ:12000欧/32=375欧)。
2)计算总线负载
上述并行阻抗再并入两端的终端匹配电阻(120欧),两个120欧并联为60欧,则总线负载为:52欧(ZJJ60*375)/(60+375)=51.72欧)。
3)计算最小偏置电流
为了满足最小置1电压200mV,所需的最小偏置电流为:200/52=3.9mA(ZJJ:电压/电阻=电流)
4)计算偏置电阻总和
在5V的电压下,提供最小偏置电流所需的最大串联电阻为:5/3.9=1293欧(ZJJ:电压/电流=电阻)
减去已经加在线上的52欧(ZJJ:网络等效阻抗),就是上拉和下拉阻抗的和:1293-52=1241欧
5)计算上拉和下拉电阻
其中:最大上拉电阻=最大下拉电阻=1241/2=720欧,即上图中的R1和R2均为720欧(ZJJ:这是个经典数值)。
如果采用单一偏置,则在总线的某一处添加上拉和下拉电阻即可,各720欧;如果采用分散设置,则需要在32个收发器上各添加一个720*32的上拉和一个同样阻值的下拉。
当然,这是32个节点组成的网络,如果节点数不同,需要的最大偏置电阻也会不同,但是该最大偏置电阻不会小于720欧,即安装720欧上下偏置电阻以后,无论节点数是多少,差分线的偏置电压不会低于200mv。