欢迎光临小豌豆知识网!
当前位置:首页 > 物理技术 > 调节控制> 一种工业设备数据采集的方法及装置独创技术12974字

一种工业设备数据采集的方法及装置

2021-02-28 06:31:11

一种工业设备数据采集的方法及装置

  技术领域

  本发明属于数据采集技术领域,具体涉及一种工业设备数据采集的方法及装置。

  背景技术

  工业设备数据采集是任何行业数据透明,智慧工厂、数据透明工厂的基础,进入大数据时代后,工业数据采集变得重要,是连接上层信息化和下层自动化的重要手段,通过工业设备数据可以在制造过程中及时准确地了解工厂动态信息,从而为提高生产效率和提高制造资源利用率提供支持。工业设备数据采集装置主要用于工业设备控制器的通讯,由于历史原因,工业设备控制器配备的通讯接口都是串口,如RS232、RS485、RS422等,或是其它一些单通道的通讯接口,如CAN和LIN,而上述这些通讯接口一般被用于触摸屏或是其它控制设备的通讯使用,用的也是一主一从的通讯方式,最多只能有一个数据通道在通讯。

  随着大规模工业生产的演进,在工业设备数据采集的要求下,对于一些老旧设备需要不改动原有的数据通讯通道作用的前提下,同时读取和写入设备数据,这时就需要一种方法,将单通道分割为多个数据通道,且将工业设备控制器的单通道分割为多个数据通道。

  现有技术中,将工业设备控制器原有的一个通讯通道扩展为两个通道的方法,多了一些中间的处理步骤,扩展为两个通道后实时性差,只能用于实时性要求不高的通讯改造。

  发明内容

  本发明的目的是克服现有技术中存在的只能一个数据通道通讯,实时性差,不能用于高实时性场合的缺陷,提供一种不改动原有数据通讯通道的前提下,能够将单通道分割为多通道且不影响实时性的工业设备数据采集的方法及装置。

  本发明解决其技术问题所采用的技术方案是:

  一种工业设备数据采集的方法,所述方法包括以下过程:

  S1,将多个外接设备连接到通讯装置上,一个外接设备对应所述通讯装置上的一个接收通讯口;

  S2,将工业设备控制器连接在所述通讯装置的传输通讯口上;

  S3,每个接收通讯口分别接收外接设备的数据,当数据到达时,接收通讯口接收到的数据缓存到各自的数组中;

  S4,判断S3中的数组中的数据是否是一个完整的请求数据帧;若数据不是一个完整的请求数据帧,则接收通讯口继续接收数据;若数据为一个完整的请求数据帧则将接收到的请求数据和请求序号、当前的接收通讯口标识被打包成data、seq及id三元的数据结构Req;其中data是接收到的完整请求;seq是接收请求序号;id是当前接收通讯口号,用来标识是哪一个接收通讯口的请求数据;

  S5,将S4中打包的数据结构Req放入传输通讯口的请求队列;

  S6,传输通讯口依次从请求列队中获取数据结构Req,然后从传输通讯口发送请求数据帧给工业设备控制器,然后等待工业设备控制器返回的数据;

  S7,传输通讯口对上述S6中工业设备控制器返回的数据判断是否是一个完整的通讯数据帧,若不是一个完整的通讯数据,继续接收判断,若是一个完整的通讯数据帧,传输通讯口将收到的通讯数据与之前的请求数据Req中的通讯口标识id、请求序号seq整合放入到响应队列中,并且根据通讯口标识id,确定将响应通知哪一个接收通讯口;

  S8,接收通讯口获取到响应通知后,将数据从各自的端口发出,重新返回步骤S1,进入下一个通讯过程。

  进一步地,S4中所述接收请求序号seq,序号是算法初始化时为0。

  进一步地,S4中所述接收请求序号seq,当接收通讯口每接收到一个完整请求数据帧,会被自动加一。

  进一步地,S5中所述传输通讯口的请求列队对于多个所述接收通讯口的数据起到分时缓冲的作用,若多个接收通讯口同时有请求存在,根据设置的各个接收通讯口的先后循序进行数据的传输。

  进一步地,S7中设定一个超时时间,等待传输通讯口返回的响应数据,若有响应数据转发至请求数据的接收通讯口,若在超时时间内无响应数据,则构建错误响应帧返回一个错误数据帧给对应的接收通讯口,放弃本次请求。

  一种工业设备数据采集的装置,包括工业设备和通讯装置;所述通讯装置包括壳体、设置在所述壳体上的至少两个接收通讯口和一个传输通讯口;所述接收通讯口用于连接外接设备;所述传输通讯口用于连接工业设备控制器。

  进一步地,所述接收通讯口为两个。

  更进一步地,所述接收通讯口与外界设备之间、所述传输通讯口与工业设备控制器之间均通过通讯线连接。

  本发明的一种工业设备数据采集的方法及装置的有益效果是:

  1、本发明在工业设备控制器和原有外接设备数据接口之间物理接入一个嵌入式通讯装置,在不改变原有的通讯设备的前提下,将原来的一个数据通道扩展成两个数据通道,这两个通道都可以读取和写入设备数据。在满足数据采集需要的同时,不影响原采集设备的实时性。

  2、本发明在不需要原来设备厂家支持的前提下,也可以采集数据,也可以对一些设备的通讯数据地址做到探测,省却了重新配置和编程的时间。对于设备不会做大的改造,使得设备能稳定生产,不影响工业设备的稳定性。

  附图说明

  下面结合附图和具体实施方式对本发明作进一步详细的说明。

  图1是本发明实施例的工业设备数据采集装置的结构示意图;

  图2是本发明实施例的工业设备数据采集方法的整体流程图;

  图3是本发明实施例的接收通讯口的数据传输流程图;

  图4是本发明实施例的传输通讯口的数据传输流程图。

  图中:1、通讯装置,11、B1接收通讯口,12、B2接收通讯口,13、A1传输通讯口,2、工业设备控制器,3、通讯线。

  具体实施方式

  现在结合附图对本发明作进一步详细的说明。这些附图均为简化的示意图,仅以示意方式说明本发明的基本结构,因此其仅显示与本发明有关的构成。

  如图1-图4所示的本发明的一种工业设备数据采集的方法及装置的具体实施例,一种工业设备数据采集的装置,包括工业设备控制器2和通讯装置1;通讯装置1包括壳体、设置在壳体上的至少两个接收通讯口和一个传输通讯口;接收通讯口用于连接外接设备;传输通讯口用于连接工业设备控制器2。接收通讯口为两个分别为B1接收通讯口11和B2接收通讯口12。传输通讯口为A1传输通讯口13接收通讯口与外界设备之间、传输通讯口与工业设备控制器2之间均通过通讯线3连接。本发明实施例中通讯装置1为嵌入式通讯装置。

  使用上述工业设备数据采集的装置,本发明实施例的工业设备数据采集的方法包括以下过程:

  S1,将两个外接设备连接到通讯装置1上,一个外接设备对应通讯装置1上的B1接收通讯口11,另一个外接设备对应通讯装置1上的B2接收通讯口12;

  S2,将工业设备控制器2通过通讯线3连接在通讯装置1的A1传输通讯口13上;

  S3,B1接收通讯口11和B2接收通讯口12分别接收外接设备的数据,当数据到达时,B1接收通讯口11和B2接收通讯口1接收到的数据缓存到各自的数组(a1~an)中;

  S4,判断S3中的数组中的数据是否是一个完整的请求数据帧;若数据不是一个完整的请求数据帧,则B1接收通讯口或B2接收继续接收数据;若数据为一个完整的请求数据帧则将接收到的请求数据和请求序号、当前的接收通讯口标识被打包成data、seq及id三元的数据结构Req;其中data是接收到的完整请求;seq是接收请求序号,其中接收请求序号是算法初始化时为0,当接收通讯口每接收到一个完整请求数据帧,会被自动加一;id是当前接收通讯口号,用来标识是哪一个接收通讯口的请求数据;

  S5,将S4中打包的数据结构Req放入A1传输通讯口13的请求队列;其中A1传输通讯口13的请求列队对于B1接收通讯口和B1接收通讯口的数据起到分时缓冲的作用,若两个接收通讯口同时有请求存在,根据设置的各个接收通讯口的先后循序进行数据的传输;

  S6,A1传输通讯口13依次从请求列队中获取数据结构Req,然后从A1传输通讯口13发送请求数据帧给工业设备控制器2,然后等待工业设备控制器2返回的数据;

  S7,A1传输通讯口13对上述S6中工业设备控制器2返回的数据判断是否是一个完整的通讯数据帧,若不是一个完整的通讯数据帧,继续接收判断,若是一个完整的通讯数据帧,A1传输通讯口13将收到的通讯数据与之前的请求数据Req中的通讯口标识id、请求序号seq整合放入到响应队列中,并且根据通讯口标识id,确定将响应通知哪一个接收通讯口;S7中设定一个超时时间,等待传输通讯口返回的响应数据,若有响应数据转发至请求数据的接收通讯口,若在超时时间内无响应数据,则构建错误响应帧返回一个错误数据帧给对应的接收通讯口,放弃本次请求。其中通讯数据帧比请求数据帧多了请求、响应的前缀表明方向和用途。

  S8,B1接收通讯口11或B2接收通讯口12获取到响应通知后,将数据从各自的端口发出,重新返回步骤S1,进入下一个通讯过程。

  在使用过程中,B1接收通讯口11和B2接收通讯口12开始接收外接设备的数据,B1接收通讯口11和B2接收通讯口12将接收的数据缓存到各自的数组a1到an中,并判断数组中的数据是否完整,如果不完整则B1接收通讯口11或B2接收通讯口12继续接收数据,若果数组中的数据为一个完整的请求数据帧,则将接收到的请求数据和请求序号、当前的接收通讯口标识被打包成data、seq及id三元的数据结构Req,并放入A1传输通讯口13的请求队列中,如果B1传输通讯口和B2传输通讯口同时有请求存在,在先后上,设置B1接收通讯口11的请求比B2接收通讯口12更早,则B1接收通讯口11的请求先放到队列前面,B2接收通讯口12的请求放在后面;A1传输通讯口13依次从请求列队中获取数据结构Req,然后从A1传输通讯口13发送请求数据帧给工业设备控制器2,A1传输通讯口13等待工业设备控制器2返回的数据,并且判断是否是一个完整的通讯数据帧,如果不是一个完整的通讯数据帧,A1传输通讯口13继续接收并继续判断是否是一个完整的通讯数据帧,设定一个超时时间,等待A1传输通讯口13返回的响应数据,若有响应数据转发至请求数据的接收通讯口,若在超时时间内无响应数据,则构建错误响应帧返回一个错误数据帧给对应的接收通讯口,放弃本次请求,若A1传输通讯口13判断接收的通讯数据是一个完整的通讯数据帧,A1传输通讯口13将收到的数据帧与之前的请求数据结构Req中的通讯口标识id、请求序号seq整合放入到响应队列中,并根据通讯口标识id,发送响应数据给B1接收通讯口11或B2接收通讯口12,B1接收通讯口11或B2接收通讯口12获取到响应通知后,将数据从各自的端口发出,重新返回步骤S1,进入下一个通讯过程。

  在工厂设备采集改造项目中,压力表是需要做设备联网的,设备上只有一个串口,但是这种压力表又需要和无纸记录仪连接,如果需要采集它的设备上的数据的同时需要做设备联网,就需要本发明实施例中的装置和方法,压力仪表的通讯数据帧是按照Modbus协议来规定数据和数据长度的,在嵌入式通讯装置1中通过软件编写方法判断Modbus协议的请求帧和响应帧,然后按照上述步骤,就可以将数据通道分割为两个通道了。

  应当理解,以上所描述的具体实施例仅用于解释本发明,并不用于限定本发明。由本发明的精神所引伸出的显而易见的变化或变动仍处于本发明的保护范围之中。

《一种工业设备数据采集的方法及装置.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)