基于TCP/IP 协议的擦窗机远程状态监测系统设计
2021-01-20董泊纤龙麒谭王伟龙
董泊纤, 龙麒谭, 王伟龙
(长安大学,陕西 西安 710064)
0 引言
擦窗机作为高空作业机器, 对其安全性能有着极高的要求[1]。 当设备出现问题时,技术人员需及时赶到现场,不仅不便于故障的及时处理, 甚至可能产生更加严重的后果。 因此,如何有效监测擦窗机状态成为维持擦窗机工作稳定、 安全运行的关键问题。 设计一种远程的监诊系统,实现对设备的动态监测,不仅便于非专业人士直观了解擦窗机目前状态, 而且便于专业人士远程进行设备操作指导,从而排除安全隐患,节省了大量的人力物力,且相较于人工排查而言,也更为准确可靠,极大地节省了成本,提高了工作效率。
1 总体设计思路
系统采用B/S 模式架构进行人机交互,可以减轻服务器负担,节省用户内存,方便进行系统维护。擦窗机的PLC数据通过远程通信模块传输至云端服务器, 将数据解析后存储至数据库中以便系统调用, 实现PLC 与本系统的数据交互。 创建数据表以储存用户名、账号密码、设备地址、设备类型等信息,在服务器中部署WEB 项目调用数据库,使用WEB 开发语言进行系统设计,完成擦窗机设备远程监测网站的开发。
2 数据采集方案
数据的远程采集是通过通信模块与云端服务器完成网络通信实现的,是整个远程监测系统的核心。 系统的数据采集流程为:1) 利用TCP/IP 协议建立客户端与服务器之间的连接;2) 使用MODBUS 协议获取并解析PLC 数据,并将解析后的数据存入在服务器创建的数据库内。
2.1 数据传输
擦窗机PLC 中数据可以通过RS-485 串口与远程通信模块连接, 通过WIFI、GPRS、4G 网络将数据远程传输至云端服务器,本文选用济南有人物联网公司的GPRS 模块USR-GPRS232-730 进行数据传输,模块与服务器之间采用TCP/IP 协议, 服务端与客户端通过建立套接字进行通信[2],图1 为SOCKET 通信流程。 这里通信模块用作客户端,服务器用作服务端,通过对模块进行配置,添加服务器IP 地址与接收端口, 便可将数据传送至云服务器的指定端口。 服务器通信代码如下:
tcp_server_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
tcp_server_socket.bind(("127.0.0.1",15000))
tcp_server_socket.listen(128)
new_client_socket,client_Addr = tcp_server_socket.accept()
recv_data = new_client_socket.recv(1024)
new_client_socket.send
(b"x02x01x00x00x00x18x3Cx33")
recv_data1 = new_client_socket.recv(1024)
new_client_socket.close()
tcp_server_socket.close()
图1 SOCKET 通信流程
2.2 数据解析
在进行数据解析时采用Modbus 通信协议,PLC 作为Modbus 从站,服务器作为Modbus 主站。 服务器循环向通信模块利用MODBUS 指令发送获取数据请求, 通讯模块接收到指令后, 将PLC 离散输入寄存器与线圈寄存器的数据发送至远程服务器[3],将获取到的数据通过MODBUS协议解析后储存至数据库, 系统可通过AJAX 技术及HTTP 协议发送JSON 格式的数据, 将获取到的PLC 数据在网站中显示。 图2 为MODBUS RTU 指令的格式。
图2 MODBUS RTU 指令格式
3 系统结构设计
系统客户端是用户对设备进行远程监测的直观页面,页面排版应简洁直观且具有专业性,以方便不同类型的用户的使用。 客户端主要的两个功能为:1)为用户提供一个友好的人机交互界面;2)与服务器进行网络通信,完成数据收发[2]。
3.1 设备状态监测
页面可以展示设备的信息及目前在线/离线、故障/正常等状态,实现对设备当前动作、限位开关状态的直观监测,并可查看与该动作相关的点位信息。 当设备出现故障时,点击故障排除可以显示该故障的解决办法。 为了清楚观察主机及吊篮中的状况, 分别在主机与吊篮中安装摄像头,将图像接入网页中,可实现设备的远程实景图像监测,可以控制摄像头旋转,方便查看设备内部细节。 并且针对不同型号的设备,调节页面的显示内容与布置[4]。
3.2 设备故障分析
与一些大型工程机械的电气系统类似, 擦窗机电气系统线路众多,控制较复杂[5]。 其可能的故障形式有:自检故障,设备无输入,设备无输出,限位开关故障,接触器故障,工作电机或液压电机故障等。 设备出现故障的原因可能是:1)动作旋钮,限位开关,接触器或电机损坏。 2)触点至PLC 之间接线断开。3)未满足设备动作的必要条件。将设备可能出现的故障编入程序中, 通过PLC 数据点组合判断,在网站中显示设备当前出现的故障及解决办法。
4 系统测试
打开擦窗机模拟电控箱,将设备调至正常工作状态。操作吊篮上升动作改变PLC I/O 口的数据值,GPRS 通信模块将变化后的数据发送至指定服务端, 在服务端发送MODBUS 指令,如’02 01 00 00 00 18 3C 33’,该指令为从MODBUS 地址00001 开始, 读取36 个线圈寄存器的数据, 立刻能接收到回复数据’02 01 03 07 00 00 8D BC’,其中’07 00 00’为36 个线圈寄存器的数据,共3 个字节,将数据通过MODBUS 协议规则解析后存入数据库内,在网页中调取数据库, 便可将擦窗机状态实时显示在网页中,90 个数据点的采集时间为2s,数据采集间隔为10s,如使用配置更高的服务器,还可进一步提升采集效率。 图3为系统进行数据采集的工作流程图。
图3 数据采集流程图
5 结论
本文针对目前擦窗机在管理监测中存在的问题,根据擦窗机的特点,设计了基于擦窗机设备的远程监测与故障诊断系统。 通过测试显示,系统运行状态稳定,采集数据的速度快、频率高,满足对设备的监测要求,最终实现了对擦窗机设备的远程监测, 便于对设备故障的及时处理,缩短了故障时设备的停机时间,提升了经济效益,为同类大型工程机械设备的远程监测系统提供了设计思路。