德明福业务介绍之数据采集模块
栏目:企业新闻 发布时间:2020-09-24 作者: 信息部 包思强

国内智能制造发展如火如荼智能制造过程系统必然离不开生产现场生产过程的实时数据

德明福自动化为国内高端SUV厂家定制了一款制造数据获取工具模块,模块是使用python开发的一款采集PLC内数据的程序,拥有高性能、海量数据量和实时的数据获取能力。

数据采集模块架构

数据采集模块整体架构如下:

 

 

数据采集系统特点

开发效率高

数据采集程序使用python编写,可以获得比较高的开发效率, 节省开发和调试的时间。

高度封装

数据采集程序使用封装后的OPCUA协议与OPC Server进行通信,屏蔽了底层S7协议的一些细节处理,不需要直接和PLC进行交互,从而省略了建立连接和断开连接的时间,不需要处理复杂的连接问题,大大节省了调试和开发时间。

 

订阅机制

数据采集程序通过订阅机制来实时获取数据点的值,提高了数据点的响应速度,基本上可以做到实时更新,抛弃传统的轮询机制,降低了无用的网络通讯量,提高了网络通讯的质量。

自动降级

借助于OPC Server的自动降级机制可以实现对离线PLC的自动降级,定时重试,避免出现屡次重新连接PLC导致的数据点更新延迟问题,解决PLC离线时影响其他设备数据采集的问题。

 

 

多线程采集

通过多线程编程的方式来采集不同类型设备的数据,并发度高,每个设备之间互不影响,防止程序出错导致整个数据采集流程终止,容错率高。

 

可远程连接

数据采集程序通过OPCUA协议与OPC Server进行通讯,OPCUA的底层是TCP协议,故可以通过远程连接的方式连接OPC Server。

 

 

相比于DA协议只能通过dll通信的优点在于:

• 可以远程连接、采集和调试,数据采集程序和OPCUA服务器可以放置在两台不同的服务器上。

• 可移植性好,可以跨平台使用,数据采集程序可以部署在任意的平台上, 只需要支持TCP协议即可使用。

• 可以使用多机热备份策略,单个或多个数据采集程序可以对应单个或多个OPCUA服务器,不存在单点故障。

• 多编程语言支持,可以很方便的在各个编程语言之间进行切换。

多种设备采集

由于OPCUA协议是通用协议,可以支持多种设备的数据采集,不局限于PLC,只需要设备拥有OPCUA服务器即可,基本不需要修改即可支持不同设备的数据采集。

 

 

高吞吐量

通过使用消息队列的方式来存储OPCUA消息,依次排队进行处理,在高数据量的场景下拥有不错的性能,不会丢失数据。

 

 

总结

数据获取模块的应用可以在大数据量和多设备的情况下高效的完成数据采集的任务,目前已经实现50+ 台设备,3W IO点 并发数据采集,10W + 数据的正确获取,为制造企业数字化转型提供有力的数据支撑