当前位置:首页 期刊杂志

基于车间设备远程监控系统的研究与开发

时间:2024-07-28

宋 野,王德权,付闯闯 ,刘志宇

(大连工业大学 机械工程与自动化学院,辽宁 大连 116034)

0 引言

现阶段国内外关于设备远程监控系统的研发与使用仅限于部分领域和为数不多的大型跨国公司,对于生产车间设备的远程监控就更少了,但是国内多数设备制造商对实现设备远程监控的需要是比较多的,本文基于车间设备的远程监控系统正是在此背景下进行研究与开发的。

本系统的研究与开发是从某公司的实际需求出发,所研发的产品能够适用于80%以上的车间设备,本系统无论作为设备制造厂商的附加服务,还是单独作为一款软件系统进行销售,都是十分具有市场前景的。

1 系统整体架构

本系统整体分为三部,①智能终端监控子系统、②云端的通讯子系统、③使用终端的网页程序。

1.1 智能终端部分系统结构设计

智能终端部分运行子系统命名为MIS(Management Information System)系统,该子系统负责与设备层进行数据通讯,其完全为自主开发,利用OPC UA服务与设备PLC进行实时数据通讯,达到实时采集设备PLC的数据和状态信息的目的(目前多数通讯并未能实现实时通讯);除此之外,还包含设备数据采集模块,TCP Client远程通讯模块,数据库数据存储模块。MIS系统的架构图如图1所示。

TCP Client远程通讯模块作为系统核心子系统,其采用哈希表的形式(经过多种登录形式比对,例如通过数据库存储,写TXT文档存储,写XML文件存储等,此种方式的内存释放和处理速度均最快)将客户端名称和客户端IP信息登录到云TCP Server,能够实现对经过公网转换之后的IP的精确捕捉,利用该子系统主要负责和云进行信息通讯,通过接收来自数据采集模块的数据,并将数据按照固定的数据协议合成,然后转发给云端TCP Server服务器进行云数据库存储以及转发等操作。

图1 MIS系统架构图

1.2 云端部分结构设计

云端子系统是整个系统最为核心的部分,主要对各个终端发过来的数据进行整理、存储、转发。本子系统主要包含TCP Server子系统、通讯服务器、发布在IIS上的网站。架构图如图2所示。

TCP Server子系统采用异步TCP通讯的方式与TCP Client建立面向连接的数据通讯,并且负责处理来自不同智能终端的数据,将这些数据存储到数据库中,并将处理过的数据协议转发给通讯服务器进行处理。通讯服务器主要负责与采用标准HTML5的WebSocket技术[1]开发的网页进行通讯,能够将网站与TCP Server连接在一起,并且能够进行两者间的数据相互转发。发布在IIS[1](Internet Information Server)上的Web程序采用标准HTML5网页技术编写。发布之后,浏览者可以在手机端登录网站进行信息监控。

图2 云端子系统架构图

2 系统开发的技术基础

异步TCP通讯技术的使用与最终功能实现:基于该技术,开发实现了本系统的核心部分TCP Server的用户登录管理和数据分发处理模块。客户端登录时,采用异步发送标准通讯协议(开发者自行定义)的方式将客户信息登录到服务端数据字典中,服务端通过内部多线程方式分别处理来自不同客户端的数据信息,经测试,利用该方式可实现大量客户端同时登录服务器,并且能够满足每秒钟处理近万条数据不卡顿以及数据不产生任何损伤。同时,对于窗体记录信息做可配置时间的清除处理,主要原因是由于连接不同数量客户端产生的数据信息量是不同的,数据量过大时,由于记录控件内存分配有限,所以会导致系统卡顿,采用这种技术可以避免由于卡顿造成的程序运行处理不畅。

互联网技术的应用,Web前端采用自适应开发框架BootStrap进行开发[2]。同时为了更好的满足通讯需求,采用了标准的HTML5的WebSocket技术实现网页与系统间其他子系统的稳定数据通讯[2-4]。在Microsoft Visual Studio 2015的开发平台上,综合运用HTML5、jQuery、JavaScript等前端编程语言并结合CSharp(C#)高级语言进行网站开发。针对WebSocket,采用动态拼接URL的技术,实现对不同设备的访问。

数据库存储部分采用SQL Server 2016,通过ADO.net技术,可以迅速的实现对数据的增、删、改、查等操作,使得整个系统可以十分流畅的实现对数据读取操作。

3 功能实现

3.1 数据采集

数据采集模块的硬件部分主要是采用超六类网线将自主研发的智能终端与设备通过RJ45口进行物理连接[5]。

软件层面上,通过与PLC定义的DB地址以及PLC使用的IP地址实现对PLC数据存储空间的访问,并依据预先定义的标准通讯协议,该智能终端上的MIS子系统可实现实时稳定抓取设备PLC的数据。

数据采集之后,不同数据点的变化会导致MIS子系统触发差发生相应事件。MIS子系统中不同功能模块通过对事件的订阅,便能够准确迅速的执行相应处理。

3.2 数据通讯

数据通讯作为整体系统的核心子系统,担负着整体系统稳定运行的重任。智能终端MIS子系统中的TCP Client通过4G网卡将数据信息发送到云上的TCP Server子系统上,再由TCP Server实现云上数据的处理与传递。TCP Server的内部处理逻辑见图3。

图3 TCP Server流程图

由于是将智能终端的数据发送到云上,但是由于云的IP是公网IP,而智能终端的IP并不是公网IP,所以必须采用面向连接TCP通讯,这样才能与云建立稳定的基于连接的通讯。采用异步TCP通讯实现登录,并在登录的同时将客户机的名称与IP地址和端口号绑定的字符串同时发送给TCP Server,进而使TCP Server能够唯一锁定客户机身份。同时,将身份信息在TCP Server上注册之后,如果系统中再次出现此身份信息,则系统通过删除原有注册信息内容,重新连接该身份信息所绑定的IP地址,以达到清除无用服务的目的,保证服务系统能够稳定持续运行。

3.3 Web网站功能

图4 监控界面图

本套系统采用B/S架构实现,显示端仅需要安装浏览器即可,降低了对使用者设备操作系统的限制,可以更好的被客户接纳。Web端分为两部分:监控界面和配置界面。

监控界面主要用于设备状态的监控,以及历史数据信息的查询。通过监控界面,使用者能够对当前设备的状态进行全面了解,并且通过历史数据信息的查询,能够很方便的查询到关于某台设备的所有信息。监控界面如图4所示。

配置界面主要用于对智能终端的基础数据进行配置,用户系统管理员可以通过界面操作达到配置终端的目的。

4 系统数据库设计

数据库主要是为了进行实时数据、历史数据、基础配置数据等数据的存储。通过ADO.net技术,监控系统可以随时随地与数据进行数据信息交互,从而达到数据的保存与数据在显示端的显示,实现操作者进行监管和查看的目的。

为了数据库能够实时保持高速稳定的状态供系统随时调用,对数据表进行了科学合理的主外键设计,并添加了合理的索引,能够保证数据量过大时数据库的正常稳定运行。其中某个数据表的整体设计如图5所示。

图5 MES计划BOM工位名称数据表设计

为避免SQL注入攻击[6],同时也能够大幅度降低程序端的压力,适当的将压力分担给数据库,采用编写存储过程的方式实现对数据表的访问。

5 结束语

通过对某公司的实际业务需求进行分析与调研之后,采用当下较为流行的云平台技术以及互联网技术,开发了这款适用于多数操作系统的远程设备监控系统。该系统能够满足用户对设备甚至是对操作工人工作情况的监管,达到随时随地了解生产状态的目的。极大地方便了管理者的管理工作,同时也在很大程度上提高了管理者的工作效率,为企业带来较高的利润。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!