任务5.3 面向数字孪生的虚拟调试技术

任务5.3 面向数字孪生的虚拟调试 技术

1.任务引入

这里所设计的虚拟调试控制系统采用CodeSys软件的PLC开发平台,面对的将是智能虚拟生产线。在项目开展前期,现场设备就位之前,工程开发人员可以通过PLC、工业机器人仿真、数控系统等智能生产线必需设备,对由虚拟模块所搭建的智能虚拟生产线实现虚拟调试,极大地节约现场调试的时间与成本,同时也为推动项目进程提供可靠的解决方案。针对现实的任务要求和具体功能特点,面向数字孪生的虚拟资源调度与管理系统,必须同时具有人机交互、集成通信、监测运行、PLC程序编辑等功能。除此之外,该虚拟调试系统还应具备操作简易、操作性强等特性。本任务根据以上要求,对面向数字孪生的智能虚拟生产线的调试控制系统进行了总体设计。

2.任务目标

1)知识目标

(1)了解虚拟调试系统的功能需求。

(2)理解基于OPC UA的生产线通信框架。

2)技能目标

能够按照基于OPC UA的生产线通信框架进行驱动程序编写和工作流程设定。

3)素养目标

培养学生自我反思、知错就改、精益求精的工作态度

3.任务分析

对面向数字孪生的智能虚拟生产线的虚拟调试控制系统及其总体设计方案进行剖析,重点涉及功能要求与总体设计方法。首先分析虚拟调试系统的技术要求后,对虚拟调试系统做出总体方案的工程设计,使之可以达到商业使用的条件。其次对虚拟调试系统进行详细的设计,并设计编写数控代码解析脚本、运动驱动脚本,给出虚拟调试系统的运行流程,同时提出一种基于OPC UA的通信架构,使用该架构能够对智能虚拟生产线进行调试。

虚拟调试系统的功能需求如下。

针对传统的智能生产线调试过程中存在的不足,这里设计一种面向数字孪生的智能虚拟生产线的虚拟调试系统。该系统需具有集成通信的功能,将各个设备的控制器进行分离控制,采用实时性高、协同配合度高的通信方案;该虚拟调试系统具有对智能虚拟生产线各个设备的运行状态进行监控的功能;该虚拟调试系统具有人机交互功能,方便操作人员对智能虚拟生产线进行操作;该虚拟调试系统具有PLC调试功能,可针对智能虚拟生产线的生产流程编写控制程序,达到控制的目的。虚拟调试系统功能结构如图5-5所示。

图示

图5-5 虚拟调试系统功能结构

1)人机交互功能

为了方便对智能虚拟生产线的操作,为智能虚拟生产线中的各个设备设置启动和停止交互键。除此之外,为智能虚拟生产线设定视角转换功能,以便可以实时地观测各个设备的加工状况。

2)集成通信功能

集成通信网络是智能虚拟生产线与虚拟数控机床间信号传输的重要纽带,为整个智能虚拟生产线的正常运作提供保证。本书采用OPC UA,Modbus TCP/IP,因为OPC UA标准是目前比较热门的通信技术,被誉为“工业4.0”的核心,它具备不受平台限制、能够统一不同语意、可集成至底层设备等优点,能够解决现场调试过程中现场总线所遇到的问题。

3)监测功能

监测模块主要用来监测智能虚拟生产线中各个设备的运行情况,如设备的异常、设备的运行状态,并且能够实时地将运行产生的数据展示出来。

4)PLC控制功能

PLC控制模块根据智能虚拟生产线的生产流程,编写PLC控制程序,用于控制智能设备。该模块还支持定义、更改信号、离线仿真。

4.相关知识

1)基于OPC UA的通信框架

(1)OPC UA标准。

相比于传统的PLC集中控制系统,现场总线采用统一的总线连接方式进行分布管理。统一总线连接方式使接线系统的管理工作更加简化,同时控制系统的配置、调试的工作量也减少了,这给工业控制提供了很大方便。但是,各个企业都根据设备开发了自己的总线,在IEC的标准中也有几十种总线。总线技术本来可以给工业控制系统提供方便,可是在各种总线之间很快产生了新的壁垒。同种总线技术设施都能够互连,不同种总线技术设施却无法互连。以太网技术采用国际标准的IEEE802.3网络,因此在物理层面上实现了统一。工厂自动化系统和信息化管理系统间的数据互操作能力较弱,造成了非标准数据接口的复杂性,使消息、数据的通信模型与系统之间的交互变得困难。(https://www.daowen.com)

OPC UA指OPC统一架构。作为一个可靠灵活的通信网络,OPC UA是一种不依赖平台且具有更高安全性和可靠性的标准。OPC UA使软件产品的研发与应用更加简便,也提高了工业智能化管理系统与企业信息化管理系统之间的数据互操作能力,减小了对非标准数据接口的复杂性。OPC UA界定了统一数据信息与服务模型,包含:代表结构、行动与语义的统一消息模型,使用软件交互的消息模型,在终端用户间传输数据的整体统一通信模型,以及保证系统内部互操作性统一的一致性模型。这种统一的模块架构使数据能够更加灵活地组合起来,因此实现报警与事件、数据读写、历史数据存储、管理命令与复杂数据信息的交互等通信功能也相当容易。

OPC UA使用了客户端/服务器架构,每个操作系统中可能包含几个网络客户端和网络服务器。每个网络客户端都能够同时与一个或多个网络服务器交互,而每个网络服务器也能够同时与一个或多个网络客户端交互。一个应用系统能够同时组合客户端系统和服务器设备,并用来和其他服务器设备或者客户端系统通信。OPC UA系统架构如图5-6所示。

(2)OPC UA工作原理。

OPC UA的地址空间主要由服务器内的节点所组成,其中节点则是整个地址空间中的基础单位,而地址空间中的数据可以使用这些节点加以描述。OPC UA的节点包含各种类型,既能够描述对象,又能够描述对象类型,并且各个节点具有不同的属性,可以通过属性对OPC UA中的节点类型加以描述。OPC UA总共有8种基本节点类型:变量类别、视域、类型、对象、引用形、方法、变量、对象的类型。

图示

图5-6 OPC UA系统架构

OPC UA根据数据信息建模把数据信息存储在服务器设备中,并且OPC UA客户端能直接访问OPC UA服务器设备,对位置空间中的数据信息进行读取。

(3)基于OPC UA的信息交互网络框架。

将OPC UA技术运用到智能生产线中的主要方法,是将OPC UA服务器内嵌到智能生产线上的各个智能设备中,利用信息模块对各种底层设施所收集的数据分析,与OPC UA服务器地址空间中的节点连接,进而利用OPC UA服务器端和OPC UA服务器相连,从而实现大数据分析互动。采用OPC UA的信息交互网络结构包括3层,分别为设备层、通信层、信息化层。底层装置主要由加工设备、辅助装置和传感器等组成。在设备层,由设备的正常工作所产生的操作与状态等数据首先封装到OPC UA服务器中,随后采用OPC UA的订阅/发送或查询模型,传送至更高层的应用程序。设备和设备之间也能够直接通过OPC UA客户端和OPC UA服务器进行联系。通信层既连通了底层设施和信息系统,也连通了整个企业外部的网络及其各类云应用。同时,在通信层,设备监控网络系统与企业内部信息网络也将向融合的方面发展。信息化层的主要功能是针对智能生产线在工作过程中的实际需要,利用OPC UA客户端获取设备层的各种数据信息,保存到本地数据库、云数据库或者一些应用系统中,以便实现资源规划ERP、生产装置制造与运行管理系统MES的运用。该架构也揭示了OPC UA在现代工业通信中的优越性,即利用信息模型可以对底层设备数据进行规范化管理,使各种设备的信息都可以得到最直接的呈现,同时基于位置空间的保留,可以及时进行统一化连接,再结合信息模型的语义保存能力,可以在通信流程中很好地对智能生产线的各种设备信息进行统一化管理。

(4)基于OPC UA的信息模型的建立。

针对智能生产线,建立基于OPC UA的信息模型,为了克服信号闭塞与大数据无法收集的问题,在与各个设备互通的同时兼顾各种应用的开发性问题。基于OPC UA的信息模型的建立主要分为4个详细步骤。

①获取需求,即从系统框架图和应用情景图中,获得建模所需的设备种类。设备的参数与属性、设备所产生的方法与事件,以及设备属性、设备方法之间的关联。接着,通过特定领域的相关标准来检验建模所需要的信息,并同时做出必要的补偿。最后,将这些节点信息纳入8个标准的节点分类。

②界定类别模型。首先将节点类型中的4个类别依次界定为对象类别模型、变量类别模型、参考类别模型、统计类别模型,之后组合为统一的类别模型。在界定此类模型时,对于OPC UA中已出现的内置类别,也可以不进行界定。在界定类别模型时只能表示针对特殊应用领域的扩展的类型。

③界定类别模型后,可以参照某个领域的具体案例对4个类别模型进行案例化,并且依据OPC UA服务器的标准IP地址空间,构建案例化信息模型。

④使用UA Address SPACE Model Designer开发工具可以导出大量XML和CSV文件,用作实例化信息的数据源。

本书采用OPC UA开发包,在Windows 10操作系统下,分别对6自由度工业机器人、加工设备、运输设备进行OPC UA信息化建模,并集成至虚拟模型,将模型加载至OPC UA服务器IP地址空间。

2)工业机器人的OPC UA信息模型

通过OPC UA架构实现数据通信,实现设备间的数据交换,以6自由度工业机器人为例,首先需要给6自由度工业机器人建立OPC UA的信息模型。6自由度工业机器人由许多工业机器人的连杆组成,拥有6个自由度。6自由度工业机器人的OPC UA信息模型如图5-7所示。

由图5-7能够很清晰地看到在OPC UA信息模型中,6自由度工业机器人数据信息对象的不同层次关系,及其在各个层次中含有的信息内容。通过将信息模型的整个结构完全显示出来,可以有效地对数据进行读写和管理。

3)AGV的OPC UA信息模型

AGV的OPC UA信息模型如图5-8所示。

图示

图5-7 6自由度工业机器人的OPC UA信息模型

图示

图5-8 AGV的OPC UA信息模型

5.任务准备

面向数字孪生的虚拟调试系统总体方案包括智能虚拟生产线模型和虚拟调试系统之间、虚拟数控系统和智能虚拟生产线模型之间、虚拟调试系统与虚拟数控系统之间的设计。本书主要基于CodeSys软件的PLC开发平台,对虚拟调试系统进行设计。

面向数字孪生的虚拟调试系统总体设计方案主要包括3个部分:智能虚拟设备及虚拟调试系统之间的通信设计、虚拟调试系统的设计、虚拟调试系统和虚拟数控系统之间的通信设计。本书通过对虚拟数控系统、6自由度工业机器人控制器内的控制程序进行解析,将得到的数据通过通信协议传递给虚拟模型从而驱动设备模型进行运动。该虚拟调试系统除了支持OPC UA标准外,还支持Modbus TCP、TCP/IP等。设备包括6自由度工业机器人、五轴数控机床、缓存库、AGV等。通过OPC UA标准这些设备连接至虚拟调试系统,虚拟数控系统连接至虚拟调试系统和设备,通过虚拟调试系统提供的PLC编程模块,根据生产流程编写控制程序,对智能虚拟生产线进行控制。

使用智能虚拟调试系统对智能虚拟生产线进行控制,虚拟调试系统主要有人机交互模块、集成通信模块、监测模块、PLC控制模块。在人机交互模块中设定相应的可视化按钮,通过对按钮的点击实现对智能虚拟生产线信号的控制,进而控制智能虚拟生产线的运行。集成通信模块主要用来实现智能虚拟生产线、虚拟调试系统以及虚拟数控系统之间的通信。监测模块用于监测智能虚拟生产线的运行过程,实现设备的故障报警功能。PLC控制模块主要负责针对智能虚拟生产线的运行过程编写PLC控制程序,控制智能虚拟生产线中各个设备的信号,实现对智能虚拟生产线的控制。

6.任务实施

1)数字孪生设备驱动程序编写

针对各种模块,如信息模块、运动模块、通信模块等,使用Python脚本实现上述功能。对数控程序、工业机器人程序进行解析后,使用解析后的数据对数字孪生模型进行驱动,需要为模型添加驱动脚本。

在模型中使用Python语言编写通信脚本。流程如下:设定主机地址,并设定相应的端口号;创建socket通信,使之与虚拟数控系统进行交互;将虚拟调试系统的IP地址和端口号进行绑定;接收、处理数据,然后通过处理后的数据对模型进行驱动。

2)虚拟调试系统工作流程设定

面向数字孪生的虚拟调试系统主要是根据智能虚拟生产线设备工作时所设定的信号,在PLC控制模块中配置相应的控制信号,然后根据智能虚拟生产线的运行流程编写PLC梯形图程序,在VE2中的智能虚拟生产线上进行设备验证和程序逻辑验证。具体的工作流程如图5-9所示。

面向数字孪生的智能虚拟生产线与虚拟调试系统的工作过程如下。首先对智能虚拟生产线运行所需的设备进行通信连接,智能虚拟生产线、虚拟数控系统、虚拟调试系统之间通过OPC UA标准进行通信连接,并检查通信连接是否成功。连接成功后,为设备编写加工所需的运动脚本以及配置相应的交互信号,并根据智能虚拟生产线的加工流程编写PLC控制程序,以实现智能虚拟生产线的自动化运行。在完成上述步骤后,再次检查智能虚拟生产线、虚拟调试系统以及虚拟数控系统是否通信成功。如果连接失败,检查目标端口以及IP地址是否正确,直至连接成功。连接完成后,启动脚本程序以及PLC程序,使用虚拟调试系统对智能虚拟生产线进行调试、控制、监测。通过人机交互界面以及监测模块可以观测到智能虚拟生产线是否正常运行。若智能虚拟不能正常运行,则立即停止采集数据和检测错误的工序,经修改和优化之后再次进行调试和脚本编程,直至智能虚拟生产线能够按照预期运行。

图示

图5-9 面向数字孪生的智能虚拟生产线的虚拟调试工作流程

7.任务评价

任务评价见表5-3。

表5-3 任务评价

图示

续表

图示