基于OPC UA的簇绒地毯织机设备互联互通的研究与实现
2022-09-02郗欣甫孙以泽
郭 祥,郗欣甫,孙以泽
(东华大学 机械工程学院,上海 201620)
0 引言
簇绒地毯织机车间内普遍存在不同机台型号且控制系统各异的簇绒地毯织机,不同控制系统通信协议相对独立,数据在车间层级之间的传输格式无法统一,导致车间内信息集成难度大,严重阻碍了簇绒地毯织机车间的智能化升级。虽然针对异构设备控制系统开发中间件适配器的方案能在一定程度上实现通信协议和接口的统一[1],但是仍存在开发难度大、信息集成效率低等问题,未能实现异构设备数据的标准化。因此,簇绒地毯车间异构设备间数据采集集成与标准化的问题亟待解决。
OPC UA因为其平台无关性、访问统一性和良好的可扩展性等优点,逐渐成为工业领域通用的数据标准。当前国内外关于OPC UA技术的研究与应用较为广泛,沈南燕等[2]基于OPC UA架构研究了工业机器人的数据采集系统;徐兵兵[3]将OPC UA技术应用到SCADA系统中,开发了实时数据服务模块;欧洲塑料与橡胶制造商推出了以OPC UA为基础的EUROMAP77标准,开发了注塑机与MES之间进行交互的设备接口[4]。随着OPC UA技术的快速发展,OPC UA技术也开始应用到纺织行业中,汪松松等[5]基于OPC UA框架建立了针织装备信息模型,介绍了OPC UA的互联互通结构开发方法。但是在簇绒地毯行业中,对簇绒地毯织机设备的数据采集与信息集成系统的研究较少。
设计一套规范而有效的数据采集系统将有助于簇绒地毯织机车间中信息集成,使得车间内设备信息能够基于统一的通信接口进行传输,增强地毯织机设备的可扩展能力,降低车间数据信息集成难度和管理成本。本文基于OPC UA标准框架,建立语义一致的标准化簇绒地毯织机信息模型,设计开发簇绒地毯织机的统一接口模块,采用标准化集成方法提供统一交互模式,更加方便和高效的实现异构设备系统之间信息集成和互联互通[6],解决车间内各层级之间数据语义无法统一的难题。
1 簇绒地毯织机信息建模
1.1 簇绒地毯织机信息模型框架
信息集成与互联互通是消除信息孤岛、实现车间数字化和智能化的重要基础和保障[7],而其中的关键就是建立相对统一且语义规范的信息模型。OPC UA通过信息模型封装了数据信息,实现数据在传输过程的语义一致性。OPC UA建模是基于元模型的面向对象的方式[8],依据OPC UA信息建模原则和规范,抽象出簇绒地毯织机设备元模型,簇绒地毯织机类型可分为特征对象属性集和组件对象集两部分。簇绒地毯织机属性集可再分为静态属性集、过程属性集、配置属性集,其每个属性集又包含各自的属性及属性集。簇绒地毯织机组件对象集根据其物理结构和功能要素拆分为多个组件,每个组件又包含了自身的属性集和子组件。
簇绒地毯织机的信息模型结构层次如图1所示。静态属性集主要包括簇绒地毯织机设备的通用基础信息和私有属性集,其私有属性集包括簇绒地毯织机的毯面幅宽、针排型式和提花类型等信息;过程属性集除了表示设备运行特性信息外,还有当前生产过程信息,当前过程生产信息主要包含订单信息、产量信息、花型信息和班次信息等地毯生产织造相关信息;配置属性集主要包括设备管理、通讯地址和协议及安全设置信息。
图1 簇绒地毯织机信息模型架构
簇绒地毯织机组件集包含集合结构自身并可以引用子结构或组件信息,根据其物理模型功能要素拆分为多个组件,每一个组件又包含了自身的属性集。组件集分为提花控制系统对象集、针排横移系统对象集、主轴控制系统对象集、底布进给系统对象集[9]以及辅助控制系统对象集。每个子组件对象集又可根据其功能结构细分为若干个对象,每个对象又有相应的属性集、属性和方法等信息。
簇绒地毯织机信息模型对属性集和组件集都规定了建模方法,以过程属性集为例,属性如表1所示。
表1 地毯织机过程属性表
1.2 簇绒地毯织机信息模型描述
根据设备信息建模规则以及地毯织机信息模型架构,采用可视化建模工具UaModeler对簇绒地毯织机信息模型框架进行编辑。在建模工具中自定义单独的节点命名空间,地毯织机对象类型(Carpet)继承于OPC UA标准下的BaseObjectType,定义在ObjectType下的FolderType中,Carpet与其属性集和组件集通过HasComponent引用关联。簇绒地毯织机建模结果如图2所示。
图2 簇绒地毯织机信息建模结果
为使得簇绒地毯织机信息模型能跨平台、以统一的方式在不同系统之间进行传输,需要采用一致的格式来描述簇绒地毯织机信息模型,XML语言由于具有良好的数据组织格式、扩展性、广泛适用性以及面向对象等优点[10],满足对设备信息模型的统一映射实现异构系统间信息共享的要求,因此本文采用XML语言来描述簇绒地毯织机信息模型。图3为簇绒地毯织机信息模型生成的XML文件部分文本,该部分内容描述了簇绒地毯织机过程属性集所包含的内容信息。
图3 簇绒地毯织机过程属性集XML文档
2 簇绒地毯织机数字化车间信息互联互通架构
OPC UA不仅可以快速解决设备的信息建模问题,而且还可用作数据传输的统一通信协议[11]。OPC UA的基本通信模式是一个Client和一个Server组合成C/S架构,而在簇绒地毯织机数字化车间中,设备层每一台设备都作为OPC UA Server运行,服务层的OPC UA聚合服务器作为基于计算机的一个独立可执行应用程序,连接多台设备层簇绒地毯织机终端,实现服务层软件系统和底层设备之间的互联互通。另外,基于OPC UA SDK的软件开发,可根据簇绒地毯织机的信息模型与车间MES系统整合开发可视化OPC UA客户端,形成一个庞大的OPC UA网络,实现整个车间数据信息的互联互通。簇绒地毯织机车间互联互通网络架构如图4所示。
图4 簇绒地毯织机数字化车间互联互通应用架构
实现簇绒地毯织机车间数据互联互通主要考虑两种类型的设备:一种是支持OPC UA协议的簇绒地毯织机可以直接使用OPC UA实现的客户端获取数据。如簇绒地毯织机车间内使用倍福控制器作为主控系统的地毯织机,倍福控制器TwinCAT内嵌了OPC UA,对TwinCAT的开发环境进行服务器部署,并对数据变量做相应设置,OPC UA客户端便可直接访问倍福PLC从而获取设备的运行数据,改善了数据传输的实时性。第二种是不支持OPC UA协议的簇绒地毯织机,则通过在现场设备层之上实现OPC UA服务器,在服务器内部集成底层设备的通信驱动,完成信息模型到地址空间的映射,再将数据通过OPC UA协议发送出去。
簇绒地毯织机设备的控制器负责采集实时数据,每台设备上的OPC UA Server不断获取控制器的数据并更新,聚合服务器向上层网络提供OPC UA服务功能,向下层网络收集设备层采集的数据[12],聚合服务器处理OPC UA客户端的服务请求并分发子任务给底层设备的基础OPC UA服务器。车间MES系统或用户作为OPC UA客户端执行并监控生产需求,同时将从聚合服务器获取的设备层数据持久化保存到MySQL数据库中,供应用层数据展示和分析使用。
3 簇绒地毯织机数据采集统一接口的实现
3.1 簇绒地毯织机服务器的开发
簇绒地毯织机车间内的信息集成和互联互通的本质是实现数据和信息在不同网络层次的设备和系统之间的一致性传输。簇绒地毯织机数据采集统一接口的实现可使得数据传输以同一格式描述,其主要实现内容包括建立簇绒地毯织机设备信息模型,OPC UA服务器和OPC UA客户端三部分。簇绒地毯织机OPC UA服务器的开发模型如图5所示。
高等教育作为现代国民教育序列中顶端的组成部分,其教育质量和教育水平很大程度上决定着我国教育现代化的进程,当前逐步开始朝着“内涵式发展”的方向转型。在此,正如党的十九大报告对高等教育发展所要求的,进一步“加快一流大学和一流学科建设,实现高等教育内涵式发展”[1]。高等教育供给侧改革指的是一种注重从高等教育的内部结构优化、以质量为核心,确保高等教育质量能够整体上充分适应中国特色社会主义道路发展的改革思路。
图5 簇绒地毯织机OPC UA服务器开发模型
在获得簇绒地毯织机信息模型文档的基础上,实现地址空间编译的方式是将XML文件放入开源库Open62541指定文件夹下经过指令编译得到可被C语言程序调用的库文件,并引用到工程中,从而实现将簇绒地毯织机信息模型整合到服务器。
实现基于簇绒地毯织机信息模型的OPC UA服务端,对采集到的簇绒地毯织机过程数据映射到OPC UA服务器中的地址空间相应节点上,OPC UA服务器按照如下流程实现:
1)用UA_ServerConfig_new_default()方法创建一个config,设定服务器端口号、安全证书和签名方式等配置,调用UA_Server_new(config)方法初始化服务器;
2)根据创建的簇绒地毯织机信息模型XML描述文件包含的信息,判断簇绒地毯织机服务器状态码与UA_STATUSCODE_GOOD是否相等,若相等则调用UA_Server_addObjectNode()创建簇绒地毯织机对象节点;
3)数据采集线程调用底层数据采集系统的API获取设备的实时过程数据,将采集到的数据绑定到地址空间中相应的节点上,从而实现地址空间信息模型获取实时数据。当采集到的簇绒地毯织机设备过程数据发生变化时,调用OPC UA订阅与监控服务更新对应节点变量数值;
4)调用UA_Server_run(server,&running)方法开启服务器监听服务,控制台显示界面返回访问服务器地址空间的URL。图6显示的是OPC UA客户端连接上OPC UA服务器之后的控制台输出信息,界面显示了新连接服务器的客户端IP地址,输出服务器和客户端成功建立安全通道和激活会话的提示信息,等待进行数据传输的操作。
图6 基于OPC UA簇绒地毯织机服务器运行图
服务器绑定数据源有手动更新、变量值回调和可变数据源三种方法[13]。簇绒地毯织机OPC UA服务器的地址空间中变量节点数据的更新通过数据源来实现。OPC UA服务器开启多线程,将设备数据采集驱动与服务器进行整合,采集簇绒地毯织机设备的运行数据更新到服务器地址空间对应的节点中,从而实现服务器与数据源的绑定。
3.2 数据采集统一接口的验证
为验证本文中针对簇绒地毯织机信息模型开发的OPC UA服务器实现数据采集的可行性将车间内所有的地毯织机设备连入OPC UA服务器。簇绒地毯织机控制控制系统使用的是倍福控制器CX5120-0120,试验电控柜如图7所示。
图7 测试电控柜布局图
利用基于C#类库OPC UA Helper开发的OPC UA客户端访问OPC UA服务器,通过客户端访问OPC UA服务器地址空间中簇绒地毯织机的过程属性集数据,包括花型信息、上电时间、订单信息、产量信息等属性,读取的属性包含属性名称、数值、数据类型和读写权限等属性元素信息,并测试属性集的读写功能,测试结果如图8所示。
图8 OPC UA客户端获取地毯织机过程属性信息
OPC UA Helper客户端程序后台开启独立线程将从服务器获取的数据保存至数据库中,为节省系统资源,数据存储线程监听OPC UA服务器内的变量,在变量数值发生改变时写入MySQL数据库。簇绒地毯织机车间设备数据库负责储存设备层簇绒地毯织机采集并上传的过程数据,并为车间数据可视化提供数据基础。
存储车间设备运行数据和生产信息的本地MySQL数据库以公网映射的方式,在DataV可视化界面配置本地数据库为数据源,将数据库数据展示到车间监控大屏上,监控大屏如图9所示。
图9 簇绒地毯织机车间大屏展示信息
根据OPC UA客户端获取的服务器地址空间中簇绒地毯织机设备的过程属性集数据可以发现,基于簇绒地毯织机信息模型开发的OPC UA服务器具有对外暴露数据的统一接口,通过OPC UA客户端可以获取到地毯织机信息模型的对象类型及其属性值。验证基于OPC UA技术实现的数据采集统一接口满足功能要求,可用于簇绒地毯织机车间解决信息孤岛问题,实现车间设备和各层系统之间的信息互联互通。
4 结语
基于OPC UA框架的数据采集和信息集成系统有利于提高车间的智能化、数字化水平,从而实现数据在异构系统之间的互联互通。本文从簇绒地毯织机车间实际应用出发,建立了簇绒地毯织机统一标准化信息模型,针对车间内具体设备实现互联互通的方案,重点描述了聚合服务器的功能和实现方式。基于OPC UA技术实现簇绒地毯织机数据采集统一接口,并且对实现的OPC UA服务器进行功能测试和验证,实现了将设备层数据以统一的形式在车间内传输,将数据上传至云端,供远程访问与监控。
本文基于OPC UA的簇绒地毯织机设备互联互通的研究与实现可以为其他纺织车间进行信息集成和互联互通提供借鉴,解决异构纺织设备与软件系统间数据信息无法直接共享的问题,对纺织行业智能制造和数字化车间的实现具有一定参考意义。