RS-485 总线的接口电路硬件设计 笔者在火灾自动报警系统的联网设计中,经大量试验,发现在使用 RS-485 总线时,如果简单地按常规方式设计电路,那么在实际工程中可能存在以下两个问题:一是通信数据收发不可靠;二是在多机通信方式下,一个节点的故障(如死机)往往会使得整个系统的通信框架崩溃,而且给故障的排查带来困难
针对上述问题,对 485 总线接口的软硬件设计采取了有效的改进措施,大大提高了联网系统的可靠性和稳定性
1 RS-485 总线接口硬件电路的设计 如图 1 所示,89C51 单片机自带异步通信接口,外接 RS-485 收发器 75LHCl84,89C5l 的异步通信口与 75LBCl84 之间采用 3 片光耦进行电气隔离
1 75LBCl84 DE 控制端的设计 由于火灾报警控制系统中主机与分机相隔较远,通信线路的总长度往往超过l000m,而分机系统上电或复位又常常不在同一个时刻完成
如果此时某个 75LBCl84 的 DE 端电位为1,那么它的 485 总线输出将处于发送状态,也就是占用了通信总线,这样其他分机就无法与主机进行通信
这种情况尤其表现在某个分扰出现异常情况(如死机)下,会使整个系统通信崩溃
因此在电路设计时,应保证系统上电复位时 75LBCl84的 DE 端电位为O
由于89C51 在复位期间,I/O 口输出高电平,故图 1 中电路的接法可有效地解决复位期间分机“咬”总线的问题
1.2 隔离光耦电路的参数选取 在火灾报警系统中,要对现场情况进行实时监控及响应,因此通信数据的波特率往往做得较高(本系统中控制器与显示盘之间的通信速率在 6250bps)
限制通信波特率提高的“瓶颈”并不是现场的导线(现场施工一般使用非屏蔽的双绞线),而是单片机系统进行信号隔离的光耦电路
此处采用 TIL117,电路设计中可以考虑采用高速光耦,如 6N137、