如何监控RS485网络环境

栏目:行业应用 发布时间:2020-04-11

如何监控RS485网络环境

壹:前言

在现实生活环境中,我们可能要用到很多的摄像头来实时监控环境以及记录影像。于是在某些情况下,我们事后就可以回播影像记录来还原某些事件发生时的情形。

在工业控制环境中,RS485是一种相当普遍的数据传输方式。这些数据可能是下达给某个设备的控制命令,也可能是某个设备所回传的监控状态(温度、压力、湿度、氧气浓度…等)。如果我们可以实时的监看及记录RS485网络上面的数据传输状态,则如果整个控制环境出现某些异常,我们也可以对这些被记录的数据进行解析,来找出可能的原因。是因为命令发送错误,还是状态回报错误造成误判,或是其它原因造成问题。拥有这个能力对于判断事件可能发生的原因会有极大的帮助,对于系统提升可靠度有相当大的帮助。本文将介绍几种瑞旺科技的产品来帮助大家来达成这个工作。

贰:TWIN485盒的使用

1. 在TWIN485盒的桥接式模式底下,我们可以把两个RS485网络进行信号桥接工作,而此时所有RS485网络的数据可以送到RS232串口上面。只要我们监控及记录RS232串口上面的数据(例如PC的COM1串口与TWIN485盒的RS232串口连接,并且在PC上面执行瑞旺科技所提供的免费RAYMON软件就可以实时显示接受到的数据并且贮存之)。

2. 由于瑞旺科技提供RAYMON的源程序,任何使用者可以依据自己的应用需求自行修改源程序来符合自己专用的应用环境。

参:ULOG485盒的使用

1. 在ULOG485盒,我们提供有两组RS232对地电位隔离RS422/485界面转换器。同时经由USB电缆连接,我们可以在PC上面产生4个串口,所有在RS232接口或RS485接口所接收的数据都会传到USB串口上面。于是我们只要监控及记录这些USB串口的接收资料就可以知道RS485网络的工作情形。

2. 在一些RS232设备必须利用RS232对RS485界面转换器才可以连上RS485网络的应用环境,我们可以同时纪录RS232端及RS485端的数据传输状态。

3. 瑞旺科技提供有免费的RAYREAL软件,这个软件可以显示在不同时间点上面两个COM端口的接收数据。当我们在其中一个COM端口接收RS232界面端的数据,另一个COM端口接收RS485界面端的数据,则我们就可以看到RS232界面端设备与RS485界面端设备的对话过程。这就好像两个人的电话交谈过程,被电话录音一样。当发生某些事件,我们可以由电话录音来发现某些可能问题所在。在一个RS485网络控制环境中,如果出现某些异常,则我们可以经由RS485网络数据记录的回播来解析可能的问题原因。这就好像飞机的黑盒子一样,如果飞机出现问题,事后要找出可能原因,也是要依靠这个黑盒子来解析可能问题所在。

4. 由于瑞旺科技提供RAYREAL软件的全部源程序,使用者可以依据自己的应用环境需求来修改源程序以符合自己的期望应用。

5. 目前ULOG485提供两组RS232对RS485转换器功能,所以每一组RS232对RS485转换器要有两个COM端口来接收数据加以监控及记录。所以两组转换器共要有4个COM端口来工作。很幸运的,我们只要利用USB电缆的连接就可以产生4个COM端口来完成工作。

肆:iLOG101盒的使用

1. 在iLOG101盒,我们提供有一组RS232对地电位隔离RS422/485界面转换器。同时经由IP网络的连接,我们可以在远程连网的PC上面产生2个串口。所有在RS232接口或RS485接口所接收到的数据都会传到IP网络的串口上面。于是我们可以在远方利用IP网络来监控及记录这些在RS485网络的工作情形。

2. 所以在一些RS232设备必须利用RS232对RS485转换器才可以连上RS485网络的应用环境,我们利用iLOG101盒就可以同时完成转换器的功能,又可以同时纪录RS232端口及RS485端口的数据传输状态。而且利用IP网络,我们的监控地点可以在任何IP网络可到达的地方。特别是被监控的RS485网络环境如果是人类不适合长期存在的地方,iLOG101盒更是最佳选择。我们可以把数据如同影像或声音一样,实时监控及纪录。

3. 瑞旺科技提供免费的RAYREAL软件可以同时显示及记录两个COM端口的资料,于是所有RS232设备与RS485网络端的对话过程,都可以被我们掌握及记录。而且利用iLOG101盒,所有的应用环境都不必改变就可以达成所期望的监控与纪录工作。飞机的黑盒子只记录在飞机上,事后才能寻找出黑盒子来解析。iLOG101盒则可以实时利用IP网络来记录。

伍:监控的重要性

1. 当我们的生活环境中,出现愈来愈多的影像摄像头,希望可以尽快的发现问题、解决问题,或者在事件发生后可以经由影像记录来找出问题。可是这些都是实体的影像功能。

2. 对于数据传输而言,我们无法像实体一样来记录吗?即然我们在实体世界有必要用摄像头来记录,则我们当然有必要对数据传输进行记录。

3. 在现代化的工业控制环境中,由于缺少对数据传输的记录,于是在出现控制异常时并不容易找出问题所在。当一个软件程序因为某些逻辑缺失,在正常情况下,可能不会出错,可是在符合特定环境条件下,可能就会送出错误指令而造成巨大灾难。但是这些环境问题要如何在事后找出原因呢?如果不找出原因,又如何保证以后不会发生呢?一个机器,一个零件是实体的东西,我们可能由事情发生后的残骸来推论或发现其异常原因。但是软件或者数据是看不到,摸不着的东西,如果我们不记录数据传输的内容,则要发现或推论其异常原因是不容易的。所以要提供系统的安全性,在未来一定要提供数据传输的监控功能。

陆:实际案例

1. 我们自己在DOS系统对两个串口进行控制。

2. 传统上PCI卡是由主机板指定I/O地址空间给每个UART控制器,每个UART控制器会占有8字节空间。

3. 由于I/O地址是由主机板动态给定其值,而且要在位Ø给予值1来指示此地址为I/O空间。所以我们的应用软件会在取得此值时,把位Ø清为Ø以取得UART的真正起始地址。

IOADDR = IOMAP & 0xfffe;

4. 当我们有一行程序误打成

IOADDR = IOMAP & 0xfff0;

5. 在多年的使用过程中,我们都没有出现问题,直到有一天有人反应某块新主机板不能工作,可是相同PCI卡在所有其它主机板上面都没有问题。

6. 我们发现这块有问题的主机板给予UART的地址分别为0xfff1及0xfff9。大家可以发现经过错误的IOADDR=IOMAP & 0xfff0过程,则两个UART的起始地址变成相同的0xfff0,而不是正确的0xfff0及0xfff8。

7. 现在大家可以了解为何软件的问题不容易找到的原因。因为在广大的I/O地址空间中,主机板厂商给予I/O地址相当宽松,虽然每个UART只要求8个字节,可是主机板给不同的UART I/O地址时相邻距离可能是256字节,或者16字节以上我们都不会出问题。在发现问题的主机板上面,偏偏它就把16字节空间指定给两个UART来使用。于是在我们有问题的软件程序行的逻辑动作下,错误就显现了。如果没有这件事情发生,我们可能也不会发现上述程序错误,但大家也都工作的相安无事。