基于以太网的传感器数据传输系统故障监控方法

文档序号:6714918阅读:211来源:国知局
基于以太网的传感器数据传输系统故障监控方法
【专利摘要】本发明涉及传感器数据传输故障监控方法,特别是涉及基于以太网的传感器数据传输系统故障监控方法。上位机在一个传输周期中,分五个阶段判断传输故障。上位机中设计了陷阱程序判断上位机是否与各服务器建立连接;上位机在向PLC发送数据前检测数据跳动范围是否过大;在PLC控制器中设计软件看门狗程序,监控数据传输故障,并对数据传输故障在时间上进行容错性设计。该方法可以及时有效地检测到数据传输故障,大大提高了数据传输的可靠性。
【专利说明】基于以太网的传感器数据传输系统故障监控方法

【技术领域】
[0001]本发明涉及一种传感器数据传输故障监控方法,特别是涉及基于以太网的传感器数据传输系统故障监控方法,适用于复杂工业系统中对上位机和多数据采集模块及PLC控制器之间数据传输故障的监控。

【背景技术】
[0002]在由上位机、数据采集模块和PLC构成的数据采集与传输系统中,上位机基于以太网TCP/IP协议,采用应答方式,读取数据采集模块或PLC A/D模块中的数据,进行数据处理后传送给PLC。数据传输过程中,存在很多可能发生的故障。一般情况下,根据下位机的返回码判断数据传输是否正常,但在网线连接出现问题、下位机通讯模块出现故障等极端情况下,上位机就收不到返回码。传感器数据传输的可靠性也不仅体现在上位机能否读取数据采集模块或PLC A/D模块中的数据、处理后再发送到PLC等控制器中,还要考虑所传输的数据能否真实反映传感器所检测的物理信号。如果传感器的供电电源不稳定或现场偶然出现强电磁干扰等都可以导致数据采集模块等采集到的数据失真。为了系统的安全性,上位机应当将传感器数据传输状态告知PLC,以便PLC采取应对措施,但如果上位机和PLC之间的数据传输出了问题,上位机就无法将故障告知PLC。


【发明内容】

[0003]本发明的目的是提供基于以太网的传感器数据传输系统故障监控方法,该方法针对数据传输过程中可能出现的各种故障采取应对措施,监控数据传输故障,提高数据传输的可靠性。
[0004]为了达到上述目的,本发明的技术方案是提供了一种基于以太网的传感器数据传输系统故障监控方法,该传感器数据传输系统包括作为客户机的上位机,上位机读取作为服务器的数据采集模块或A/D模块中的数据,处理后再发送到作为服务器的控制器,其特征在于,采取三重监控措施:针对各服务器连接故障,在上位机中设计陷阱程序判断上位机是否与各服务器建立连接;针对数据失真故障,在上位机中设计检测数据跳动范围程序检测上位机所读取数据跳动范围是否过大,判断数据是否失真;针对数据传输故障,在控制器中设计看门狗程序,监控数据传输状态,在一个传输周期中,具体体现为:
[0005]在上位机读取各服务器数据过程中,依次:通过上位机中设计的陷阱程序判断上位机是否与各服务器建立连接,是否读取各服务器指定空间的数据;通过上位机中设计的检测数据跳动范围程序检测上位机所读取数据跳动范围是否超过设定的阈值;在上位机向控制器发送数据过程中,依次:通过上位机中设计的陷阱程序判断上位机是否与控制器建立连接;通过控制器中设计的看门狗程序判断上位机是否向控制器的指定空间写入数据。
[0006]优选地,所述陷阱程序的具体实现步骤为:
[0007]定义与连接各服务器过程相应的Socket套接字及陷阱标志,在连接服务器语句的前一句将陷阱标志设置为状态A,在连接服务器语句的后一句将陷阱标志设置为状态B;在陷阱程序执行过程中,如果连接服务器成功,则执行完连接服务器语句后,陷阱标志将被置为状态B ;如果连接服务器不成功,则连接服务器语句不能正常执行,陷阱标志则保持为状态A,并跳转至陷阱处理部分,在陷阱处理程序中,若陷阱标志为状态A,则输出不能连接服务器故障警示。
[0008]优选地,在上位机中检测其所读取数据跳动范围是否超过设定阈值的具体步骤为:
[0009]将当前所读取的数据滤波后的采样值与上一次的滤波值比较,当检测到高于设定比例的当前数据滤波后的采样值远离上一次滤波值时,则判定数据跳动范围过大,出现了电源不稳或电磁干扰等故障;上位机一旦检测到数据跳动范围过大,就停止向控制器发送数据,放弃当前所读取的数据滤波后的采样值,输出警示,并重新读取数据。
[0010]优选地,所述看门狗程序的具体实现步骤为:
[0011]选用控制器数据保持寄存器区中的一个寄存器作为状态寄存器,上位机向控制器发送数据过程中,在数据帧中多嵌入一个字的数据发送到状态寄存器,该状态寄存器在两个不同的状态间交替改变,根据两个不同的状态,分别启动两个定时器,定时器的定时时间大于一个数据传输的周期;在数据传输正常情况下,状态寄存器的状态交替改变,两个定时器也将随之被交替启动和停止,由于定时器的定时时间大于一个数据传输的周期,两个定时器不会到达其定时时间;若任何一个定时器的定时时间到,都说明状态寄存器的状态长时间没有改变,控制器长时间没有从上位机接收到数据,即可判断数据传输出现故障,控制器接通一个数据传输故障标志位,并进行相应动作。在定时器的定时时间内状态寄存器的状态改变,控制器仍正常工作,保证控制器在时间上对数据传输故障具有容错性。
[0012]本发明采用以上技术方案的优点为:
[0013](I)按照所设计的数据传输故障监控主程序流程,可以保证上位机全程监控数据传输状态。
[0014](2)针对连接服务器过程设置陷阱程序,根据陷阱标志状态,可判断出不能连接服务器故障并输出警示。由于针对连接各服务器过程分别设置了陷阱标志,当出现连接故障时,程序可以对连接故障准确定位。
[0015](3)上位机向控制器发送数据前,检测上位机所读取数据的跳动范围,一旦数据跳动范围过大,就停止向控制器发送数据,避免控制器根据错误数据进行错误动作造成重大事故。
[0016](4)控制器中软件看门狗程序的设计,确保了控制器对数据传输故障的识别,并在时间上对数据传输故障具有容错性,避免了每次数据传输故障控制器都要停机。
[0017](5)三重监控措施的采用,可以及时有效地检测到数据传输故障,大大提高了数据传输的可靠性。

【专利附图】

【附图说明】
[0018]图1为本发明的系统总体结构图;
[0019]图2为数据传输故障监控主程序流程图;
[0020]图3为看门狗程序梯形图。

【具体实施方式】
[0021]为使本发明更明显易懂,兹以优选实施例,并配合附图作详细说明如下。
[0022]本发明的系统总体结构如图1所示,上位机读取数据采集模块或PLC等控制器自带的A/D模块中的数据,处理后再发送到PLC等控制器中。
[0023]数据传输故障监控主程序流程如图2所示,上位机在一个传输周期中,分五个阶段判断传输故障。读取数据过程中,首先判断上位机是否与各数据采集模块及PLC成功连接,其次判断是否读取指定空间的数据;数据处理后,判断数据跳动范围是否正常;发送数据过程中,首先判断上位机是否与PLC建立连接,其次判断是否向指定空间写入数据。在任何阶段发现故障,上位机都输出警示,并返回到初始位置重新读取数据。
[0024]在VB环境下,设计陷阱程序,首先定义与连接各服务器(包括数据采集模块和PLC)过程相应的Socket套接字及陷讲标志,接着套接字连接服务器语句Connect ( “IP地址”,端口号)的前一句将陷阱标志设置一个状态,如置0,再接着连接服务器语句的后一句将陷阱标志修改成另一个状态,如置I。程序执行过程中,如果连接服务器成功,执行完连接服务器语句后,陷阱标志将被置I ;如果连接服务器不成功,连接服务器语句不能正常执行,陷阱标志置I语句不会被执行,陷阱标志状态将保持为O。在程序开头部分使用OnError GoTo语句,程序执行过程中发生不能连接服务器错误,程序将跳转到指定的陷阱处理部分,在陷阱处理程序中,根据陷阱标志状态,输出不能连接服务器故障警示。针对连接各服务器过程分别设置陷阱标志,当出现连接故障时,程序可以对连接故障准确定位。
[0025]电源不稳或电磁干扰会同时使多个传感器数据失真,检测数据跳动范围程序依据这一特征检测。主程序的数据处理包含数据滤波,将当前所读取的数据滤波后的采样值与上一次的滤波值比较,当检测到高于70%的当前数据滤波后的采样值远离上一次滤波值时,判定数据跳动范围过大,出现了电源不稳或电磁干扰等故障。上位机一旦检测到数据跳动范围过大,就停止向PLC发送数据,放弃当前所读取的数据滤波后的采样值,输出警示,并返回到主程序初始位置重新读取数据。
[0026]软件看门狗程序梯形图如图3所示,选用PLC数据保持寄存器区中的一个寄存器作为状态寄存器,在图3中选用了 D1,其状态作为PLC识别数据传输故障的逻辑条件。上位机向PLC发送数据过程中,在数据帧中多嵌入一个字的数据发送到PLC中所选用的状态寄存器,交替改变该寄存器的状态,例如交替发送0000和FFFF。PLC根据两个不同的状态,分别启动两个定时器,定时器的定时时间大于一个数据传输的周期。数据传输正常情况下,该状态寄存器的状态交替改变,两个定时器也将随之被交替启动和停止,由于定时器的定时时间大于一个数据传输的周期,两个定时器不会到达其定时时间。任何一个定时器定时时间到,都说明状态寄存器的状态长时间没有改变,PLC长时间没有从上位机接收到数据,即可判断数据传输出现故障,PLC接通一个数据传输故障标志位,并进行相应动作。在定时器的定时时间内状态寄存器的状态得到改变,即使在这个过程中出现数据传输故障,PLC也不会进行相应动作,而是正常工作,保证PLC在时间上对数据传输故障具有容错性,避免每次数据传输故障PLC都要停机。
【权利要求】
1.一种基于以太网的传感器数据传输系统故障监控方法,该传感器数据传输系统包括作为客户机的上位机,上位机读取作为服务器的数据采集模块或A/D模块中的数据,处理后再发送到作为服务器的控制器,其特征在于,采取三重监控措施:针对各服务器连接故障,在上位机中设计陷阱程序判断上位机是否与各服务器建立连接;针对数据失真故障,在上位机中设计检测数据跳动范围程序检测上位机所读取数据跳动范围是否过大,判断数据是否失真;针对数据传输故障,在控制器中设计看门狗程序,监控数据传输状态,在一个传输周期中,具体体现为: 在上位机读取各服务器数据过程中,依次:通过上位机中设计的陷阱程序判断上位机是否与各服务器建立连接,是否读取各服务器指定空间的数据;通过上位机中设计的检测数据跳动范围程序检测上位机所读取数据跳动范围是否超过设定的阈值;在上位机向控制器发送数据过程中,依次:通过上位机中设计的陷阱程序判断上位机是否与控制器建立连接;通过控制器中设计的看门狗程序判断上位机是否向控制器的指定空间写入数据。
2.如权利要求1所述的一种基于以太网的传感器数据传输系统故障监控方法,其特征在于,所述陷阱程序的具体实现步骤为: 定义与连接各服务器过程相应的Socket套接字及陷阱标志,在连接服务器语句的前一句将陷阱标志设置为状态A,在连接服务器语句的后一句将陷阱标志设置为状态B;在陷阱程序执行过程中,如果连接服务器成功,则执行完连接服务器语句后,陷阱标志将被置为状态B ;如果连接服务器不成功,则连接服务器语句不能正常执行,陷阱标志则保持为状态A,并跳转至陷阱处理部分,在陷阱处理程序中,若陷阱标志为状态A,则输出不能连接服务器故障警示。
3.如权利要求1所述的一种基于以太网的传感器数据传输系统故障监控方法,其特征在于,在上位机中检测其所读取数据跳动范围是否超过设定阈值的具体步骤为: 将当前所读取的数据滤波后的采样值与上一次的滤波值比较,当检测到高于设定比例的当前数据滤波后的采样值远离上一次滤波值时,则判定数据跳动范围过大,出现了电源不稳或电磁干扰等故障;上位机一旦检测到数据跳动范围过大,就停止向控制器发送数据,放弃当前所读取的数据滤波后的采样值,输出警示,并重新读取数据。
4.如权利要求1所述的一种基于以太网的传感器数据传输系统故障监控方法,其特征在于,所述看门狗程序的具体实现步骤为: 选用控制器数据保持寄存器区中的一个寄存器作为状态寄存器,上位机向控制器发送数据过程中,在数据帧中多嵌入一个字的数据发送到状态寄存器,该状态寄存器在两个不同的状态间交替改变,根据两个不同的状态,分别启动两个定时器,定时器的定时时间大于一个数据传输的周期;在数据传输正常情况下,状态寄存器的状态交替改变,两个定时器也将随之被交替启动和停止,由于定时器的定时时间大于一个数据传输的周期,两个定时器不会到达其定时时间;若任何一个定时器的定时时间到,都说明状态寄存器的状态长时间没有改变,控制器长时间没有从上位机接收到数据,即可判断数据传输出现故障,控制器接通一个数据传输故障标志位,并进行相应动作。在定时器的定时时间内状态寄存器的状态改变,控制器仍正常工作,保证控制器在时间上对数据传输故障具有容错性。
【文档编号】G08C19/00GK104301179SQ201410542675
【公开日】2015年1月21日 申请日期:2014年10月15日 优先权日:2014年10月15日
【发明者】孙以泽, 卢伟, 孟婥, 朱荷蕾, 李培兴 申请人:东华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1