如何判断RS485主从站通讯是否掉线

某些比较复杂的应用可能需要使用两个或者两个以上的RWG控制器做RS485主从控制才能实现。在这种情况下,作为主站的RWG控制器就需要知道从站RWG是否通讯断线,然后决定是否进行停机等动作。而从站RWG控制器也需要知道自己跟主站RWG是否有通讯故障,然后决定是否需要释放掉相应的IO(比如复位DO输出和a清零AO输出)。

RS485通讯编程配置请参见4.3通信编程

主站判断从站通讯是否掉线

主站判断从站是否掉线及其对应的处理方式比较简单,如下是RWG控制器主站判断从站通讯是否掉线的示例(从站地址为1):

  1. 在主站RWG上创建中间变量如“从站1掉线”
  1. 主站RWG逻辑判断RS485从站是否掉线
  1. 主站RWG进行后续逻辑处理,比如报警停机之类的动作等。

从站判断主站通讯是否掉线

从站判断主站是否掉线及其对应的处理方式相对复杂些,如下是RWG控制器从站判断主站通讯是否掉线的示例(从站地址为1):

  1. 在主站RWG上创建通信变量如“主站通讯状态变量”,发给从站1。
  1. 主站RWG逻辑里将该变量做每秒自加1(超过1000时清零)。
  1. 从站RWG上创建中间变量 “主站通讯状态变量”和“主站通讯状态变量临时”用于后续对比两个值之间变化。
  1. 从站RWG上创建通信变量并绑定到变量 “主站通讯状态变量”上,接受主站写过来的值。
  1. 从站RWG逻辑里每秒将“主站通讯状态变量”的值赋给“主站通讯状态变量临时”。
  1. 从站RWG逻辑里根据这两个值判断主站是否掉线
  1. 若发生主站掉线故障,从站RWG逻辑须进行后续动作,比如说释放掉所有AO和DO输出,例如: