现场只有一部分不能通讯的原因可能很多。你需要首先拿回来那些不能通讯的板子,查一下有没有损坏。因为看到你没有加浪涌保护相关的器件。另一方面,电路设计是有些问题的。485是需要隔离的,由于总线无法供电,所以必须增加b0505这种隔离电源。并且信号通道要用光耦隔离。长线传输时候,共模电压会产生巨大的电流回路路径,通过485芯片内部,长时间下导致485芯片烧毁。更具体损坏内部原理,可以参见我的其他回答。485这种总线技术如果用于现场技术,想稳定还是要加不少外围器件和成本的。现场应用现在更流行用一些二总线技术,即没有共地损坏问题,还能总线供电无需隔离模块,所以成本也很好。
1、去掉R1和R2,RS485是一种悬浮线路,靠判断两线的正反电平工作,加上这两个电阻不合适。
2、R3和R4也可以不用。虽然电阻不大,但加在总线上可能会影响信号电平大小。
3、如果要用R3和R4应该用热敏电阻或自恢复保险丝,而且应该把D2和D3接到电阻的左面,当发生高压浪涌时由于瞬变管动作快首先吸收电流,R3和R4在电流加大后切断线路实现保护,同时元件又都不至于损坏。现在的接法,R3和R4无法实现保护功能,当有持续高压时保护管还会损坏。
4、建议采用双向瞬变管并接于AB两端且接于R3和R4左侧,并取消D3和D4。原因同第一条。D3和D4的位置放上放电空气保护管。