从固件版本6.00起,BACRouter的RS485端口内置了一个软件噪声过滤器,在这里我们将考察其在ARC156上的表现
对照设备的性能
我们使用的对照设备是ZN551与AAR模块。它们采用了微芯公司的COM20019i芯片来处理ARCnet通讯
从测试数据来看,对照设备只关心信号的下降沿,此处信号对应RS485的差分电压。信号的宽度对解码没有影响,除非信号的脉宽小于0.52us,此时信号被忽略。下面我们将解释其原理。
对照设备内置一个硬件滤噪电路,此电路由SN74HC164 与 SN74AHC1G32 器件组成。在10M时基下,由RS485收发器来的输入信号,只有在第1个时钟与第5个时钟同时为低电平时,COM20019i才能接收到低电平信号,所以当脉冲宽度小于0.5us的低电平信号将被滤除。
空闲状态下的RS485总线对噪声更敏感,因为此时的偏置电流只为数毫安,对比被驱动的总线,它将要花费长得多的时间来从噪声信号中恢复。
在空闲的总线上,脉冲宽度大于0.52us的噪声信号将被COM20019i错误地识别为帧的起始信号。
在被驱动的总线上,当位1被发送,一个差分电压的下降沿将出现在总线上,如果噪声信号的下降沿出现在有效信号下降沿的+/-3.2us范围内,COM20019i将检测到多个下降沿,重复的下降沿将被忽略。
当位0被发送,如果噪声信号出现在下降沿检测位置+/- 3.2us范围内,COM20019i将错误地将其解码为位1。
BACRouter的性能
在空闲的总线上,BACRouter能容忍脉冲宽度小于2.1us的噪声信号。
在被驱动的总线上,如果位1被连续发送,信号的脉宽为3.2us,BACRouter只能容忍脉冲宽度小于1.05us的噪声信号。如果位0被发送,则信号的脉宽将大于6.4us,BACRouter可以容忍脉冲宽度小于2.1us的噪声信号。
结论
容忍噪声信号宽度 | BACRouter | 对照设备 |
空闲总线 | 2.1us | 0.52us |
位1发送中 | 1.05us | 噪声无影响 |
位0发送中 | 2.1us | 0.52us |