分享
基于B_S与C_S融合架构...动扭矩扳手远程监测系统设计_范学伟.pdf
下载文档

ID:498302

大小:2.30MB

页数:5页

格式:PDF

时间:2023-04-07

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于 B_S C_S 融合 架构 扭矩 扳手 远程 监测 系统 设计 范学伟
第45卷 第02期 2023-02【175】收稿日期:2021-04-23基金项目:2019年省科技重大专项立项项目(201903a05020039)作者简介:范学伟(1997-),男,安徽天长人,硕士研究生,研究方向为控制科学与工程。基于B/S与C/S融合架构的电动扭矩扳手远程监测系统设计Design of remote monitoring system for electric torque wrench based on B/S and C/S fusion architecture范学伟*,谢 峰,汪小武,唐 楠FAN Xue-wei*,XIE Feng,WANG Xiao-wu,TANG Nan(安徽大学 电气工程与自动化学院,合肥 230601)摘 要:在输电铁塔建设中,其安全性往往与螺栓紧固质量密不可分,针对当前电动扭矩扳手数据传输效率低、数据集成化程度低,导致螺栓紧固质量无法追溯等问题,提出一款远程监测系统。系统采用新型B/S与C/S融合架构,统一B/S和C/S前后端交互方式,实现服务器端共享,具有一定的可扩展性和可维护性。系统能实现对电动扳手输出扭矩、操作人员状态和位置状态监测预警,并集成计划管理、报警提示、权限管理等模块化功能,为管理者远程干预施工现场提供依据。系统稳定、高效,具有一定的应用与推广价值。关键词:B/S;C/S;电动扳手;远程监测;模块化中图分类号:TP393 文献标志码:A 文章编号:1009-0134(2023)02-0175-040 引言电动扭矩扳手因其操作方便、省时省力被广泛应用在输电铁塔高强度螺栓的紧固中。然而施工过程中,工人如果没有按照操作规范使用电动扳手紧固螺栓,导致螺栓松动,将直接影响铁塔的稳定性,甚至引发安全事故1,2。因此,实现对电动扳手作业参数的远程实时监测是尤为必要的。近年来,电动数控扭矩扳手不断更新发展,其扭矩控制精度和操作便携性有了显著提升,但数据传输距离有限、实时性不够且数据集成化程度较低,数据所对应的操作对象、时间、位置等信息缺失3。针对这一现象,有学者提出了基于C/S(client/server)架构的数据传输系统,弥补了当前数控扭矩扳手的不足,该系统能实现底层数据的实时上传,但无法实现自上而下的管理4。本文提出基于B/S(browser/server)与C/S(client/server)融合架构的电动扭矩扳手远程监测系统,分析并改进现有的B/S与C/S融合架构,在此架构基础之上搭建五层监测系统结构模型。手持终端APP通过蓝牙连接电动扳手控制系统,实现对电动扳作业相关数据的实时采集、上传;管理后台利用融合架构的特性扩展多元模块化功能,使管理者能够远程监控扳手作业现场,实现系统自上而下的管理。系统能有效减少现场施工事故发生率,提高铁塔建设的安全性和稳定性。1 B/S与C/S融合架构1.1 传统的B/S与C/S融合架构C/S与B/S架构是目前非常成熟的软件架构模式,被广泛应用于互联网软件系统当中。但扭矩扳手远程监测系统需要完成下位机及手持设备终端数据的采集、传递、处理和显示等一些列工作,同时对系统的实时性、可扩展性和安全性等提出了一定要求,传统的C/S和B/S架构已经很难满足上述条件5。因此监测系统的开发将基于B/S与C/S融合架构。将B/S与C/S架构模式融合的目的即结合两者的优缺点,发挥系统的最大效率。目前常用的融合架构模式有两种,如图1所示。(a)架构一 (b)架构二图1 两种B/S与C/S融合架构融合架构一中B/S模式是三层结构,B/S客户端运行在浏览器内,通过HTTP协议从web应用服务器中获取web页面,web服务器进行业务逻辑运算并与数据库相连接。相对于B/S模式,C/S模式只有两层结构,C/S客户端通过JDBC或ODBC技术直接与数据库连接,此种连接方式简化了系统的复杂性,却大大增加了系统的安全隐患。融合架构二中C/S模式中增加了C/S应用服务器,可【176】第45卷 第02期 2023-02以实现客户端跨局域网的部署。此架构下两种模式结构相同,但缺乏联系,模块开发重复率过高、代码冗余,增加了系统开发的工作量,导致系统的可扩展性不高。上述两种架构的主要变化体现在C/S模式的改变,而B/S架构没有发生变化,导致两者的融合度不够高。其根本原因是B/S模式的客户端与服务器始终是页面级交互,前后端没有分离,代码耦合度过高并集中在服务器端,无法做到C/S前后端API级别的交互方式,从而导致两种模式不能共用一个服务器端。1.2 新型B/S与C/S融合架构随着AJAX技术的发展,web服务的开发可实现前后端分离,web客户端与服务器端可以实现异步通信,使得B/S模式下的前后端交互方式与C/S一样,为API级别的交互。基于AJAX技术的B/S与C/S融合架构也逐渐被提出,这种架构统一了B/S与C/S两种模式的服务器端,使得不同模式的客户端可以以不同的方式访问同一个服务器6。基于AJAX的B/S与C/S融合架构,增强了两种模式的融合度,提高了系统的可扩展性和可维护性,同时减少了代码冗余量。本文则利用API交互这一特性进一步改进这种架构,使用基于HTTP协议的REST风格API统一两种模式访问服务器的连接方式。不仅高度统一了两种模式的服务器端,而且进一步简化了系统开发的工作量。改进后的新型B/S与C/S融合架构如图2所示。图2 新型B/S与C/S融合架构C/S模式下的客户端在完成数据采集后会对数据进行逻辑处理,充分运用了自己硬件资源的同时,也减少了服务器的负载压力。数据处理完成后,C/S客户端会通过HTTP协议以API形式请求服务器,建立长连接并进行数据通信。B/S客户端运行在浏览器内,其主要意义在于以直观图表的形式展示实时数据供用户浏览,同时使用户进行页面操作完成相应的逻辑功能。不同于C/S客户端,B/S客户端本身只能完成数据展示而不具备数据处理功能,所有的数据处理都需要通过服务器来完成,服务调用层在这里起到关键作用。B/S客户端在服务调用层中通过AJAX完成与服务器之间的异步通信,请求方式同样是通过HTTP协议调用API,在与服务器建立连接、获取数据后,由用户逻辑层控制表示层完成页面数据的局部刷新。服务器中的数据库交互层向下通过数据连接池连接与数据库进行数据交互,向上提供数据操作的接口,主要负责业务数据的访问获取与持久化;服务器逻辑层调用下层数据操作的接口,对业务数据进行应用逻辑上的处理,并向上层提供这些应用逻辑层的接口;服务器发布层主要负责将下层提供的应用逻辑接口包装成可供客户端调用的服务,即REST风格的API。2 系统结构与技术框架以B/S与C/S融合架构为核心构建的五层远程监测系统模型,如图3所示。自下往上,系统分为数据采集层、手持设备层、服务器层、数据库层和管理后台层79。底层为数据采集层。嵌入在电动扳手内部的PIC单片机实现对螺栓紧固扭矩值的采集,通过蓝牙与手持终端app完成数据交互。手持终端APP由java语言开发,采用标准Android接口驱动手持设备集成的蓝牙、4G、RFID和GPS等硬件模块,作为C/S客户端,负责实现扭矩值、操作人员信息和位置信息等数据的采集以及数据的无线传输。服务器层主要提供各类API接口给前端调用。服务器端采用java语言以及SpringBoot框架技术开发。SpringBoot相当于SSMSpring、SpringMVC、Mybatis三大框架的整合,能有效简化配置步骤,提高系统开发效率。数据库采用体积小、速度快的MySQL8.0数据库。监测系统的顶层为数控管理后台,作为B/S模式中的客户端,运行在浏览器内,具有数据监测等模块化功能。该前端使用Vue开发,Vue属于页面应用,是一个渐进式的javascript开发框架,是系统实现局部刷新的关键,能有效提高网页访问速度和用户体验。图4为软件技术框架。图3 监测系统整体结构图 第45卷 第02期 2023-02【177】图4 软件技术框架3 系统设计与实现电动扭矩扳手远程监测系统主要用于实时监测扭矩扳手的输出扭矩值、工作人员状态、作业时间、位置等信息并留存记录实现数据的可追溯性,使管理者能够把控螺栓拧紧质量和掌握现场作业工况。同时,遇到突发情况,系统要能迅速锁定事故源,为管理者提供处置策略10,11。根据上述要求,系统分为C/S软件设计和B/S软件设计。3.1 C/S软件设计电动扳手控制系统与手持终端APP组成C/S客户端,主要负责数据采集和数据上传。在保持原有扳手控制系统硬件电路不变的情况下,增加蓝牙模块实现扳手与手持终端APP的全双工无线通信。C/S软件设计主要有蓝牙通信程序设计、报警程序设计和离线数据本地存储。3.1.1 蓝牙通信程序设计蓝牙通信是一种全双工通信,一旦建立连接双方可同时发送和接受数据。将手持设备作设为主模式,电动扳手设为从模式,建立蓝牙连接时,手持设备开启蓝牙主动搜索扳手蓝牙并连接。双方蓝牙通信流程如图5所示,蓝牙连接完毕后扳手会进入循环等待模式,直至收到APP发送的工号,在确认工号信息无误后返回标志位;APP收到标志位,双方便可以进行数据通信。(a)单片机端 (b)手机设备端图5 蓝牙通信流程图3.1.2 报警程序设计C/S客户端中报警程序更多的是感知工作,即接受上层发出的警告/停机命令,在客户端中弹出方框提示,尤其接受到停机命令时,会进一步通过蓝牙控制扳手停止工作。报警程序工作流程如图6所示,APP不间断请求服务器,直到服务器响应报警信息,根据具体响应内容执行不同工作。图6 报警流程图3.1.3 离线数据本地存储Web服务器在网络通畅的情况下,可以正常与客户端进行数据通信,为了防止因网络信号差造成的数据丢失,在C/S客户端即手持终端APP设置离线数据本地缓存机制。当网络信号差甚至无网络时,手持设备通过蓝牙可以正常操作电动扳手进行作业,作业完成后所有数据会缓存在手持设备本地,直到有网络时,数据将自动上传至服务器并在手持设备本地销毁。3.2 B/S软件设计数控管理后台作为B/S客户端,面向管理者,是系统实现自上而下管理的关键。B/S软件设计主要分为数据监控、计划管控、警告与停机命令下发和权限管理与操作日志。3.2.1 数据监控数据实时监控模块是将下层采集的数据以图表的形式进行实现显示,并将数据存储。该模块一方面以折线、柱状图等可视化手段展示出数据概况;另一方面实时展示扳手作业详细数据,包含扭矩扳手作业扭矩值、扭矩扳手操作人员的身份、工作时间、GPS等。HTTP协议的请求-响应模式是非全双工的通信方式,客户端可以主动请求服务器获取数据,但服务器不能主动推送数据给客户端。因此,正常情况下浏览器页面无法实现自动实时刷新,只能由人工手动点击实现数据刷新。为了克服这一问题,本文采用Vue中的定时器以轮询的方式实现页面自动刷新。轮询即浏览器以一定的时间间隔向服务器发送请求,以频繁发送请求的方式不断刷新浏览器端页面信息,利用定时器setInterval可以实现这一功能。定时器setInterval会在页面挂载时启动,按照设定的时间间隔,每隔一段时间执行一次获取页面数据的请求方法,当【178】第45卷 第02期 2023-02页面被销毁时,定时器setInterval会自动清除。定时器执行流程图和作业数据监控界面如图7、图8所示。图7 定时器流程图图8 作业数据监控界面3.2.2 计划管控对不同监控参数进行对应的数据范围定义,作为超阈值报警判断指标,通过在计划管理列表中设定参数的上、下限实现。计划管理列表如图9所示。在扳手作业前,管理者在计划管理列表中增加计划,对作业位置和时间的范围参数进行设定,同时为了方便管理,指定部分作业人员在该条计划范围内执行工作。工作过程中,位置和时间超出设定范围,系统会自动报警,报警状态会实时同步在数据监控模块中。图9 计划管理列表3.2.3 警号与停机命令下发当扳手作业现场出现异常情况,如螺栓拧紧失败、作业位置偏差过大以及工人未按计划执行工作等,系统会在数据监控模块中弹出提示,并在每行数据后设置警告和停机按钮供管理员做

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开