一种面向巡检机器人的自动化仿真测试系统及方法
技术领域
本发明涉及巡检机器人仿真测试
技术领域
,尤其涉及一种面向巡检机器人的自动化仿真测试系统及方法。背景技术
本部分的陈述仅仅是提供了与本发明相关的
背景技术
信息,不必然构成在先技术。随着巡检机器人相关技术的不断发展,利用巡检机器人代替人力进行巡检已经成为趋势。巡检机器人在正式工作之前,都需要进行测试,发明人发现,现有的巡检机器人在测试过程中普遍存在以下技术问题:
(1)巡检机器人模块与变电站或隧道内主辅设备、在线检测、安防等存在数据交互及联动控制,采用实验室测试的方式往往不具备这些系统,因而无法实现巡检机器人的联动控制测试;而采用变电站或隧道内现场测试的方式存在难度大、费用高、需要专业人员配合保证测试安全等问题。
(2)巡检机器人软件测试工作是在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。目前对于巡检机器人模块的软件测试存在重复性工作量大(如手动频发对项目进行打包部署、构建测试配置)、项目运行环境多样化部署工作复杂,人工判断存在不稳定性、工作效率低下等问题。
(3)现有的测试方法并未考虑对巡检机器人长时间、连续性运行以及极限性的测试,无法保证巡检机器人的质量和运行安全性。
发明内容
有鉴于此,本发明提出了一种面向巡检机器人的自动化仿真测试系统及方法,能够对巡检机器人模块与巡检场所内主辅设备系统、在线监测系统、安防消防系统进行模拟交互和仿真,替代现场测试减少了现场操作风险,实现了自动化部署及测试。
根据本发明实施例的第一个方面,提供了一种面向巡检机器人的自动化仿真测试系统,包括:
自动化测试模块,被配置为自动配置巡检机器人测试方案并存储自动化测试任务;
测试服务器,被配置为根据需要调用相应的自动化测试任务并传送至巡检机器人模块;
巡检机器人模块,被配置为接收测试服务器下发的测试任务,并根据测试任务内容执行相应的动作;
模拟测试模块,被配置为实现巡检场所内的系统与巡检机器人模块的模拟交互。
根据本发明实施例的第二个方面,提供了一种面向巡检机器人的自动化仿真测试方法,包括:
触发巡检机器人测试任务;
自动获取巡检机器人源码并进行编译;
编译成功后,解析测试任务指令,形成测试任务队列,并发送至巡检机器人;同时向巡检机器人发送巡检过程中需要的模拟交互数据;
单次任务执行完毕后,基于巡检机器人对巡检任务的执行情况,自动生成测试结果报告。
根据本发明实施例的第三个方面,提供了一种面向巡检机器人的联动测试方法,包括:
接收机器人发起的联动测试数据请求,解析所述联动测试数据请求中包括的设备编码、实物ID以及查询时间属性信息,基于所述属性信息返回相对应的模拟数据;
将接收到的模拟联动信号及模拟数据,根据联动规则生成对应的联动队列并发送至巡检机器人,以使巡检机器人按照联动队列中的先后顺序执行巡检任务。
与现有技术相比,本发明的有益效果是:
(1)本发明提出一种基于Jenkins自动构建的巡检机器人系统自主仿真测试技术,研制了相关系统,以Jenkins服务为核心,实现了巡检机器人系统的自动化编译、部署、代码检测及自主测试,解决了部署复杂、人工重复劳动,机器人闲置等问题,通过自动化测试方式能够对被测系统可进行长时间、大规模、连续性、极限行测试,提升了机器人巡检系统的质量和测试高效性。
(2)本发明提出巡检机器人系统与模拟测试模块的联动测试技术,研制了高级数据分析模块,实现了巡检机器人系统与变电站或隧道内主辅设备系统、在线监测系统、安防消防系统的模拟交互和仿真,解决了人工工作繁重、准确性低的难题;提高了机器人与第三方系统的交互能力,替代现场测试减少了站内操作风险,节省了人力物力资源,扩大了机器人巡检范围,实现了自动化部署及测试,提高了机器人巡检的适应性和可靠性。
本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1为根据本发明实施例的面向巡检机器人的自动化仿真测试系统结构示意图;
图2为根据本发明实施例的巡检机器人结构示意图;
图3为根据本发明实施例的模拟测试模块结构示意图;
图4为根据本发明实施例的面向巡检机器人的自动化仿真测试系统方法流程图;
图5为根据本发明实施例的巡检机器人与模拟测试模块的联动控制方法流程图。
具体实施方式
应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本发明使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
实施例一
根据本发明实施例,提供了一种面向巡检机器人的自动化仿真测试系统的实施例,参照图1,具体包括:
自动化测试模块,被配置为自动配置巡检机器人测试方案并存储自动化测试任务;自动化测试模块配置自动化测试方案及存储自动化测试脚本,接收到测试服务器发送的调用请求时,发送测试任务序列。
测试服务器,被配置为根据需要调用相应的自动化测试任务并传送至巡检机器人模块;测试服务器为Jenkins服务器,该服务器自动部署要测试的巡检机器人系统程序,完成代码的自动下载、测试环境部署及调用自动化测试脚本。
代码检测模块,被配置为接收Jenkins服务器传输的检测数据,及检测命令,对代码进行规范性、安全性多维度检测,并根据质量阈值设置判断代码是否符合要求。
巡检机器人模块,被配置为接收测试服务器下发的测试任务,并根据测试任务内容执行相应的动作;巡检机器人可以是变电站场景下的巡检机器人,也可以是隧道场景下的巡检机器人。
参照图2,巡检机器人模块主要结构包括:巡检后台系统、硬盘录像机、若干视频设备及若干机器人设备,其中巡检后台系统与硬盘录像机、视频设备、机器设备通过交换机相连接,根据现场需要还可增加路由器及安全接入设备的接入。
巡检后台用于负责模型管理、消息分发、任务调度、实时数据解析与存储、模式识别、异常联动、告警分析及文件存储等功能;硬盘录像机汇集固定点高清视频及机器人设备视频,完成视频监控与存储;若干视频设备包括固定式安装的可见光枪机、可见光球机、红外热像仪、双光谱、双光谱云台等,其根据所携带检测设备完成对变电站内所关注设备的视频采集和图片采集;若干机器人包括室外轮式机器人和室内轨道机器人,机器人支持自主导航,离线检测,自动补测,异常情况下自主返航等自主巡检功能。
模拟测试模块,被配置为实现巡检场所内的系统与巡检机器人模块的模拟交互。
参照图3,模拟测试模块的主要结构包括:消息分发、在线检监测系统模拟、主辅系统模拟、安防系统模拟、消防系统模拟、外部设备控制器模拟和高级分析报警模拟6个功能单元。其中,
消息分发模块负责模拟测试模块各功能模块间的消息流转,其他功能模块可以通过消息的订阅和发布,实现通信信息在功能模块间的传递。
在线检测模拟模块用于仿真变电站及隧道测试环境内接入的在线检测设备,如各种气体传感器、水位传感器、烟雾传感器、环境检测传感器等的实时数据上送,并解析对风机、水泵、防火门等设备的控制指令,返回模拟数据。模拟指令可根据需要定制发送。
主辅系统模拟模块用于发起主辅联动信号到巡检机器人系统,系统接收到联动信号后,根据联动策略完成对应设备的巡检动作并返回巡检结果到主辅系统模拟模块,主辅系统模拟模块核对巡检结果,并进行一致性分析。该模块还可定制不同的联动策略。
安防系统模拟模块、消防系统模拟模块用于模拟安防、消防系统发送的异常联动信号,巡检机器人系统根据信号指令解析需要调用的视频设备及规划巡视任务,调度相关机器人进行异常行为的监控与分析。
外部设备控制器模拟模块,外部设备包括变电站内的灯、窗、窗帘、空调、风机、推拉杆等设备,外部设备模拟模块接收巡检机器人系统发出的设备控制指令,模拟进行相关设备的控制,并返回控制结果给巡.检机器人系统,实现巡检机器人系统与外部设备的联动控制模拟。
高级分析报警模拟模块:高级分析具备图像识别、图像判别和视频识别功能。图像识别以图像为基础,通过人工或者机器学习的凡事提取特征,并根据图像中的目标特性对齐进行分类,支持以下类别:表盘模糊、表盘破损、外壳破损、绝缘子破损、地面油污、呼吸器破损、箱门闭合异常、挂空悬浮物、鸟巢、盖板破损或缺失绝缘子裂纹、部件表面油污、金属锈蚀、门窗墙地面损坏、构架爬梯未上锁、表面污秽;图像判别以不同时间相同对象的特征为基础,进行特征比对,比较两幅图片的差异,并找出其差异的位置,包括以下类别:箱门闭合变化、消防设施位置变化、隔离开关分合变化、表计读数的大幅值变化、设备破损变化、画面异物位置变化、指示灯变化、开关压板位置变化、设备装置位置变化;视频识别功能基于深度学习的目标检测技术进行烟、火、工装、安全帽、小动物(猫、狗、兔)识别、捕捉、提取,配置虚拟安全围栏并自动识别闯入禁区的物体,研究最终形成图像自动识别与反馈服务程序接口,实现目标图像的自动识别与定位。
高级分析报警模拟模块实现与巡检机器人系统的通讯连接,完成登陆及消息订阅,根据巡检机器人系统发送的报文解析识别类型、设备名称、系统编码、数据来源等关键信息,并返回分析结果、报警内容、报警级别等订阅内容。
实施例二
根据本发明实施例,提供了一种面向巡检机器人的自动化仿真测试方法的实施例,包括以下过程:
(1)触发巡检机器人测试任务;
(2)自动获取巡检机器人源码并进行编译;
(3)编译成功后,解析测试任务指令,形成测试任务队列,并发送至巡检机器人;同时向巡检机器人发送巡检过程中需要的模拟交互数据;
(4)单次任务执行完毕后,基于巡检机器人对巡检任务的执行情况,自动生成测试结果报告。
具体地,参照图4,上述过程的具体实现步骤如下:
步骤4-1:当检测到有代码更新时或者Jenkins服务器中部署的测试任务到执行时间时,自动触发测试任务,测试任务的发起也可由人工指定。
步骤4-2:Jenkins服务器收到测试任务驱动发起后,自动从代码管理服务器中下载机器人巡检系统源码。
步骤4-3:Jenkins服务器下载完源码后,自动进行编译,编译成功进入步骤4-4;若不成功,进入步骤4-13,该测试任务执行完成,形成错误报告通知测试人员。
步骤4-4:Jenkins服务器代码编译成功后,自动调用代码检测服务器,对新增代码进行编码规范性、安全漏洞、重复率、复杂度等多维度检测,并根据质量阈值判断是否通过检测,成功则进去步骤4-5;不成功进入步骤4-13该测试任务执行完成,形成错误报告通知测试人员。
步骤4-5:把可执行程序部署到测试环境中,并启动系统并检测系统的正常运行。
步骤4-6:解析测试任务指令,形成测试任务队列。队列中任务需要由测试模拟服务发起时,进去步骤4-7;由巡检机器人系统直接运行时,进入步骤4-9。
步骤4-7:模拟测试模块接收测试任务发送的指令要求,解析指令中包含的设备编码、实物ID、控制指令、数据要求、机器人ID、视频设备ID,根据解析数据发送模拟信息到巡检机器人系统。
步骤4-8:巡检机器人系统接收到模拟测试模块发送的模拟数据,根据配置的联动规则自动进行路径规划,运行对应设备巡检任务或者发送相关装置的控制指令。
步骤4-9:巡检机器人系统执行测试任务过程需要获取环境监测数据、在线检测设备信息时,发送请求到测试模拟服务。
步骤4-10:测试模拟服务模块返回给巡检机器人系统所需要的交互数据。
步骤4-11:根据交互结果,巡检机器人系统根据联动要求自动生成对应巡检任务及设备控制、查询统计等控制命令,并自动下发执行。
步骤4-12:完成单次测试任务后,生成结果报告,报告中详细记录任务执行时间、产生测试数据、测试结果等信息。测试队列不为空时进入步骤4-6,从测试队列中获取下一个测试任务继续执行,测试队列为空时,进去步骤4-13。
步骤4-13:测试任务结束,发送测试报告到测试人员。
参照图5,上述过程中,模拟测试模块与巡检机器人进行数据交互联动控制时,具体过程如下:
步骤5-1:联动测试发起。由巡检机器人系统发起联动测试数据请求到模拟测试模块,或者由模拟测试模块发送联动信号到巡检机器人系统。
上述联动数据包括向在线监测模块请求在线装置实时数据如水位、气体浓度、温湿度、风速等,向安防、消防系统请求的火情、防火门、安全门控制状态等数据。上述模拟联动信号包括主辅设备系统发出的主辅设备联动信号,安防、消防系统发出的安全巡视需求及高级分析模块发出的设备报警信号。
步骤5-2:模拟测试模块收到巡检机器人系统发出的数据请求,解析其中包括的设备编码、实物ID、查询时间等属性,根据内置的模拟规则返回模拟数据。
步骤5-3:巡检机器人系统接收模拟测试模块发送的模拟联动信号及模拟数据,根据联动规则生成对应的联动队列,队列包括巡检任务队列和设备操作指令队列。
步骤5-4-A:生成巡检任务队列。
步骤5-4-B:巡检机器人系统按照队列中先后顺序执行巡检任务。
步骤5-4-C:机器人按照模拟路线自动运行到检测点抓取可见光图像和红外图像。并发送模式识别请求到模拟测试模块,
步骤5-4-D:模拟测试模块中高级分析模块解析发送的设备编码、设备类型、点位关联关系、识别类型,并根据测试需求组织对应图片、识别结果发送回巡检机器人系统,巡检机器人系统存储图片文件,并进行报警分析。
步骤5-4-E:所有检测点检测完毕后,任务执行完成,生成任务巡检报告。
步骤5-5-A:生成操作指令队列。
步骤5-5-B:巡检机器人系统按照队列中先后顺序执行设备操作指令。操作完成后发回信号给模拟测试模块。
步骤5-5-C:模拟测试模块根据返回信号核对相关设备的操作是否成功。如果该操作满足联动条件则进入步骤5-1.
步骤5-6:巡检机器人系统对任务过程中产生的报警及设备操作失败产生的报警进行实时展示。
步骤5-7:执行完当前任务和操作后,判断联动队列中为空,为空则联动结束,不为空则进入步骤5-3。
步骤5-8:联动结束。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:一种自动紧急制动系统硬件在环仿真测试方法