基于MODBUS/TCP协议的等离子体雾化在线监控系统的设计

2021-08-25 07:10杨胜源尹政鑫张清波余德平
自动化与仪表 2021年8期
关键词:下位网关以太网

杨胜源,尹政鑫,张清波,余德平

(四川大学 机械工程学院,成都610065)

球形钛合金粉末是采用粉末冶金工艺制造复杂工件的重要原料[1-2],也是粉末注射成型和添加剂制造的原料。在粉末冶金应用中,由于球形颗粒具有较好的流动性和密度,通常需要球形颗粒[1]。然而,钛粉(包括球形钛合金)的高成本一直是钛粉广泛应用的主要障碍,特别是随着基于金属粉末的3D打印技术的日益重要,对球形钛粉的性能、成本和粉末生产工艺的需求引起了新的关注。幸运的是球形钛金属粉末可以通过等离子体雾化(PA)方法生产。PA 生产的钛合金粉末的典型颗粒尺寸范围分布为10 μm~100 μm。等离子体雾化的示意图如图1所示[1]。

图1 等离子体雾化的技术原理Fig.1 Technical principle of plasma atomization

目前,等离子体雾化技术的进一步推广受到一些问题的挑战[3],主要问题是等离子体在雾化过程中难以保证结果粉末的稳定性[4]。在对金属丝材进行等离子体雾化时由于等离子体发生器的电极产生烧蚀、工作气体流量突变、冷却水温度变化等参数变化的影响,使得在一次雾化加工中产生的粉末质量不同[5-7]。所以,研究钛丝等离子体雾化过程在线诊断控制系统可以有效地对等离子体生产过程进行控制、检测、判断,通过控制系统可以了解等离子体雾化系统的运行状态,可以切实保障等离子体雾化产品的稳定性,避免在一次生产之中由于不同等离子体束状态不同,而产生粉末结果不同的情况[8], 此外可以通过等离子体在线控制诊断软件全面地了解等离子体雾化系统的状态、实现自动控制,为实际生产创造便利、为进一步研究等离子体雾化机理提供支持[9]。

伴随着近年来计算机系统的不断发展和进步,促使了我国工业界的智能监控系统的发展。目前,在绝大多数的工业应用中,并没有采取智能计算机监控系统,导致信息传输效率较低,现场控制不便[10]。在此背景之下,传统的等离子体雾化监控系统功能不足,实际作业需要消耗大量人力和时间来确认参数和操作设备,因此笔者自主开发了基于以太网的远程监控等离子体远程雾化监控设备运行状态参数实时监控系统[11]。

1 系统总体概述

1.1 系统架构

基于以太网的等离子体雾化自动在线监控系统主要由电脑(上位机)和雾化在线监控系统(下位机)组成,下位机包括MODBUS 网关、PLC 和等离子体电源柜。系统基本架构如图2所示。

图2 系统架构图Fig.2 System architecture

等离子体雾化在线监控系统主要包括工控机、MODBUS 网关、PLC、等离子体电源柜等设备,上位机负责进行等离子体设备雾化管理系统的数据采集、初始数据处理和下位机设备的控制,下位机系统的PLC 可以连接水温传感器、水流量传感器、气体流量计和霍尔传感器等,并将实时收集到的测量参数传送至PLC,以进行临时数据储存,当上位机向下位机发出读取参数的控制命令时,下位机通过以太网将临时储存的数据实时传送连接到主机客户端,以便后续进行处理。下位机系统连接有等离子体电源、伺服气流量计等多个电子控制驱动装置,通过网络通讯, 当上位机向下位机发送控制命令时,相关设备可以按照设备相应的控制命令进行操作,以实现实时控制。上位机的软件系统作为与操作者交互的关键平台,分为前端和后端两部分,WPF主要负责前端与用户互动,C# 作为后端, 进行数据处理和存储。软件系统可以实现实时处理和显示数据和图片、等离子体雾化设备的监控和数据存储和相关设备的远程控制等。

1.2 系统工作流程

基于以太网的PC 客户端的作业流程如图3所示,客户端主要完成两部分内容。一是PC 客户端向下位机发送读写数据的命令,下位机接收报文后反馈。工控机客户端实时接收下位机发送的反馈数据并对其进行实时分析、存储和实时显示;另一个是PC 监控客户端通过以太网接口TCP 和IP 协议直接获得下位监控设备上的相关监控信息数据后,进行数据显示和分析诊断并实现实时的智能控制。这两种监控功能分别在两个独立的子线程中执行,PC监控客户端在子线程收到监控数据后,按照一个指定线程形式对其进行解释,然后在子线程1 将监控数据进行传送连接到一个主线程,主线程在线程收到监控数据后,在用户界面的适当位置实时进行数据的显示,如果数据经过判断属于异常数据,则通过颜色、形态的变化友好地提示用户设备出现了异常状态。同时,子线程2 对主机接收采集到的在线监控数据视频信息流数据进行接收和预处理,在进行预处理之后将视频图片信息发送到主线程中,由主线程在用户界面中进行友好地显示。此外,在主线程中会对设备状态进行实时的诊断和智能控制,当任何设备出现异常状态时,软件系统可以智能诊断出异常状态,然后软件系统会自动向下位机发出控制装置命令,解除下位机设备的错误状态。

图3 系统工作流程Fig.3 System work flow chart

2 上位机与下位机通讯模块的构造

2.1 上位机与MODBUS 网关的通讯

MODBUS 网关作为上位机与等离子体电源通讯的中间设备, 具有极其重要的地位。上位机与MODBUS 网关的通讯,采取了基于以太网的MODBUS 协议。

本文基于以太网和MOSBUS 网关实现了上位机与等离子体电源柜之间的MOSBUS 通信。MODBUS 支持RTU 和ASCII 两种数据帧的模式。本研究中提出了等离子体雾化控制系统即采用了RTU 的数据帧模式。基于MODBUS/TCP 实现读取命令的数据帧如表1所示。RTU 数据帧的主要优点就是在相同的波特率下,它可以比ASCII 方式传输更多的数据。

表1 基于MODBUS/TCP 实现读取的数据帧Tab.1 Data frame of read command in MODBUS/TCP

基于MODBUS/TCP 的读取命令数据帧示例如表1所示。PC 客户端向下位机请求1 号等离子电源单电压寄存器的数据格式, 共8 字节。消息包含8字节的主机号、功能码、起始地址、数据量和CRC 校验位。功能码03 代表该数据帧命令的含义是读取寄存器数据,地址2 对应于1 号等离子电源的电压读取寄存器号为2。MODBUS 网关接收并分析指令后,将响应数据帧返回上位机。响应帧的格式如表2所示,共有10 位。返回的数据是十六进制的电压信号,对应259 V,利用该方法只需要改变起始地址,就可以得到多个等离子电源的电压、电流和功率的等值。如果功能代码更改为04,则会写入该值,就实现了对等离子电源的控制。

表2 下位机收到读取信号后回复的数据帧Tab.2 Data frame returned by lower computer after receiving read signal

2.2 上位机与PLC 的通讯

TCP/IP+PLC 的控制模式是目前工业应用最广泛的自动化控制方式。在进行数据交换之前,需要与通信者建立一条路径,不仅要确定通信者之间现有的路由,而且还确保通信双方都是活跃的,能够相互响应,并确保传递的数据是正确的。但是,这需要大量的通讯才可以确定接收者和发送者之间的连接畅通。由于工业现场的数据非常重要,需要保证数据不丢失,为了保证通信的准确性,在等离子体雾化在线监控软件系统中采用了面向连接的通信方式。

2.2.1 PLC 通讯程序

为了让S7-400 PLC 能够与PC 机通信,需要通过互联网网关模块将S7-400 PLC 连接到以太网,并设置正确的IP 地址和网关等PLC 控制信息。为了与通信伙伴(即上位机)进行通信,需要预先设置好PLC 的IP 地址和PLC 的运行端口号, 在网络协议栏中选择TCP 协议。此外,以TCP 方式进行通信时,双方应分别设置为服务器端和服务器端。在本文的研究中,S7-400 PLC 以服务器方式运行,PC 机以客户端方式运行。为了实现交流S7-400 PLC 的通用通信功能块,首先需要将PLC 采集到的数据复制到PLC 中一块指定的内存中,并将待发送的数据排队,在适当的时间内将缓存的数据传送到以太网上的上位机。图4展示PLC 程序的运行逻辑。

图4 PLC 程序的运行逻辑Fig.4 Operation logic of PLC program

2.2.2 PC 端通讯程序

在C# 中自带了支持TCP/IP 协议的Winsock包,利用这个包可以方便地实现应用程序的网络通讯功能。Winsock 提供了2 种套接字通讯方式:阻塞和非阻塞;同时Winsock 也提供了几种模型,主要包括Overlapped I/O 以及Com-port 等等。因PLC 何时发送数据很难确定,因此采用多线程和非阻塞式通讯。

3 客户端系统的设计和实现

3.1 数据采集的客户端实现

等离子体雾化的软件系统主要负责实时发送读取、控制命令给下位机系统,并实时解析下位机反馈上来的反馈数据帧, 在将数据帧解析出数据后,再将数据友好地展示在用户界面上。本研究的软件系统使用了多线程以提高工控机CPU 的可用性,其中子线程负责与下位机连接,并发送读取、控制的数据帧;此外子线程还可以实时接收并解析下位机反馈的数据帧,并将解析出来的数据发送给主线程以便进一步的展示和分析。上位机中的软件系统向等离子体雾化设备发送查询相关参数的命令,下位机接收到查询命令后,回复上位机希望查询的数据,上位机收到回复的收据后,根据MODBUS 协议的数据帧进行解读。等离子体雾化系统总共3 把等离子体发生器,每个发生器都有电压、电流、功率和启停状态等参数,这些参数均可以通过MODBUS通讯的方式获取。此外,软件界面要实时显示所有数据的数值和状态。

3.2 视频采集的客户端实现

如图5所示,视频监控模块主要包括影像采集和本地视频显示、存储两部分,在远程影像采集模块收集影像后, 通过以太网传送到工控机客户端,工控机客户端接收影像数据后进行分析、实时显示和储存影像内容。

图5 客户端视频模块工作流程Fig.5 Client video module work flow chart

提出的等离子体雾化在线监控软件,利用WPF的标准控件来进行软件开发, 利用WPF 中的图片/视频显示控件实时显示相机获取到的现场环境图像。在工控机上用户进行视频影像信息显示时主要执行操作两个部分。一是通过通讯手段,将工控机连接到相机,实时获取相机采集到的图像信息并进行预处理;二是在软件的图片/视频显示控件上实时显示图像。本研究中,采用了多线程技术,一个子线程用于与相机构建通讯,接收来自相机的图像信号,然后发送到主线程以进行图像的实时显示。主线程在主窗口进行绘图,实时地显示监控视频图像。

客户端的视频工作流程如下:首先,利用VS2019设计用户界面,在用户界面的合适位置放置图片/视频控件用以显示摄像头获取的图像信息。相机获取的图片,实时通过网络实时发送给上位机的软件系统。软件系统获取了图片信号后就可以更新图片/视频控件中的内容。为了保证图片的连续性和播放连贯性, 设置了定时器来循环变换相机获取的图像,这使得画面可以在短时间间隔内连续播放,只要间隔足够短,就可以成为连续视频,这种方式实现的视频画面流畅、不粘滞、清晰度高。参数显示模块和视频显示模块在软件中的布局如图6所示。

图6 参数显示模块和视频显示模块Fig.6 Parameter display module and video display module

4 结语

本研究设计的等离子体雾化在线监控和诊断软件系统利用WPF 和C# 软件,实现了等离子体雾化过程的实时数据监控、数据采集和保存、系统控制。系统软件运行稳定、操作简单方便,具有一个可视化的自动人机交互操作界面,布局合理,各个主要功能模块集中自动显示,使用灵活。系统各个功能模块功能独立、效率较高,对等离子体雾化的自动控制具有重大的意义, 将使这一系统更安全、高效、通用性更好。

猜你喜欢
下位网关以太网
基于1500以太网养猪场的智能饲喂控制系统的设计与实现
发射机房监控系统之下位机
信号系统网关设备的优化
谈实时以太网EtherCAT技术在变电站自动化中的应用
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”
LTE Small Cell网关及虚拟网关技术研究
一种90W高功率以太网供电系统的设计
浅谈EPON与工业以太网在贵遵高速公路中的应用
CAN总线并发通信时下位机应用软件设计