网络接口
图1. 采用RS-485端口的电表结构图
图1所示为采用RS-485端口的电表结构图,通过光耦合器和变压器,端口与MCU和模拟前端之间实现了电气隔离。隔离功能可有效保护电路不受RS-485传输线上浪涌电流的损害。
电缆断开时,A、B线的上拉和下拉电阻决定接收器的状态。使用这些电阻能够在电缆断开时使接收器输出一直保持高电平,由此带来很多益处。图1系统中,IrDA电路有一个开漏输出,电缆断开时,如果RS-485收发器错误的将线路拉低,光耦合器输出晶体管将会接通,使总线保持低电平,禁止开漏IrDA模块和MCU之间的任何通信连接。电缆断开时产生一个高电平输出,系统可以在同一UART总线上使用其它开漏输出器件。
当RS-485总线与电力线(例如,220VAC)短路时,PTC和TVS可提供差模过压保护。
反激变压器的附加绕组为隔离电路供电,图1中,反激转换器有两路输出:第一路为MCU和模拟前端供电;第二路进行电气隔离,为RS-485端口供电。如果上述反激电源配合后备电池使用,MCU的供电电源(图中的VCC)实际经过了“二极管或操作”。这意味着电池供电时,不存在隔离的isolated_VCC。因此,RS-485电路没有“接通”,所以电表在断电期间不能进行通信,也无法通知已经停电。
以下列出了Maxim RS-485收发器的特性,这些特性可以帮助提高并简化电表中RS-485端口的设计。关于支持这些特性的所有器件的详细信息,请参考MAX3070E (3.3V)或MAX13085E (5V)数据资料。
失效保护 RS-485标准定义信号阈值的上下限为±200mV,但没有规定电平范围。在以下三种情况下,这会带来一定的问题:
1. 总线上的所有收发器都没有工作,因此出现了高阻态。这意味着总线上的终端电阻导致接收器输入之间的差分电压是0V。
2. RS-485总线出现短路,线路之间的电压也会出现0V。
3. 出现开路或没有连接电表时,差分电压也是0V,这是因为收发器本身在输入之间具有高阻,迫使出现0V。
上述三种情况下,差分电压均为0V,然而,RS-485规范定义0V是不确定电压。这意味着接收器输出可以是高电平,也可以是低电平,甚至在高电平和低电平之间振荡。Maxim的失效保护接收器规定接收器阈值在-50mV和-200mV之间,从而解决了这一问题。这要比RS-485规定的阈值严格一些,因此也符合该规范。利用这一优势将0V差分电压定义为已知状态,避免了上述三种情况带来的问题。这样,电表硬件工程师可以不必采用图1所示的两个偏置电阻。
摆率限制 由于大部分电表的数据速率在1kbps和19.2kbps之间,没有必要采用很快的边沿速率,因为这样只会带来不必要的辐射。通过控制RS-485收发器驱动电路的边沿速率,可以降低高频辐射。较低摆率还降低了不恰当的终端匹配和接头产生的误码(参见图2和图3)。
图2. MAX3485E/MAX3490E/MAX3491E传输125kHz信号时驱动电路的输出波形和FFT曲线