32  |  电子制作    2019年10月
资金的社会效益不高,而社会影响不佳迫切需要通过提高技术手段,使对管线全面检测成为可能,从事后抢修变成提前预防,提升社会效益。
研发一种可用主干管线检测的有动力源智能船型管线机器人(下文简称无人船系统),可搭载视频系
统,高清图像采集系统,气体传感器,声纳等多种检测设备,可自主作业,具备避障功能,自动采集数据。系统具有良好的操控性和环境适应性。软件系统部分是本文的研究重点,是无人船系统智能化的体现。
1 无人船系统结构
■1.1 总体结构
无人船系统由管内机器人、入井支架、自动收放线机、固定工作站、移动工作站五个部分组成。管内机器人采用船型结构,其承搭载各类传感器进入管道内进行作业;入井支架负责将机器人送入或吊离工作井,同时需要在机器人作业时将射频通讯天线吊入井中,并且固定光纤线缆确保线缆里程计较为可靠;固定工作站包含了一台用于数据存储和大负荷运算的工控机,用于通讯的各类通讯交换设备;移动工作站采用WiFi通讯与固定工作站链接,实
现人机交互的所有功能。另外配备一辆
系统设备运输工具车。
■1.2 控制系统
控制系统分为远程和船体两个部
分,总体结构如图1所示。船体部分
采用低功耗树莓派作为主控器。树莓派
是一款基于Linux系统的单片机电脑,
在具备一定处理能力的同时具有极低的
功耗,非常适合用于船体系统。但是树
莓派的总线接口在本系统中略显不够,故而定制一块接口扩展板,该板卡采用USB-Hub芯片加USB-RS232、USB-RS485、USB-IO。传感器部分,激光雷达与IMU分别采用USB和RS232与主控器连接,可以获得较为实时的运动数据用于船体的位置与姿态计算。气压与气体传感器采用I2C与主控器连接,采集机器人的环境数据。视频相机与拍照相机,采用以太网接入系统。数据通过以太网直接传送到远程终端。船体通讯接口采用RS232与主控器链接,接收主控器的运动指令,并返回船体状态。
为了保证船体部分与远程部分的通讯可靠,通讯系统采用光纤和射频双通道设计。其中光纤通讯作为主要的通讯通道,实时传输图像、视频、机器人状态、传感器数据、控制指令等。该通讯链路使用光纤交换机实现。射频通讯负责在主链路断链的时候传送回激光雷达、机器人状态等基础数据,并可以通过该链路向机器人发送运动指令。
■1.3 运动控制算法
管内机器人运动有手动、自动和混合控制三种方式。手动模式即所有运动指令都由操作人员通过移动工作站向机图1    总体结构
图2    控制系统
www�ele169�com  |  33
智能应用
器人发送,机器人按照指令执行。自动模式下机器人根据自动收放线机、IMU 和激光雷达返回的数据,利用卡尔曼滤波器进行数据融合,计算出管向位置、径向位置和姿态。根据上述数据使用PID 得到车体的Vy,Vx,ω指令,控制机器人行进。混合模式是船体的姿态和径向位置进行自动控
制,前进后退采用手动指令控制。
2 软件系统方案设计
■2.1 软件功能设计
2.1.1 需求设计
为结合无人船控制及监控等应用,软件系统设计为C/S 结构,设计满足以下功能需求。
①对无人船本体系统进行实时心跳检测。
②接收无人船系统上报的所有状态数据及其图形化展示。③对无人船系统下发运动控制及业务提示等命令。④支持键盘、控制手柄等外接设备控制船体运动。⑤实时采集监控视频数据并进行画面预览。⑥控制工业相机拍照及存储照片。⑦实时接收激光雷达数据并全屏图形化显示。⑧自动控制与手动控制自由切换。⑨回放所采集的照片和视频等文件。
⑩接收系统告警并提示。
11用户登陆权限控制。
2.1.2 功能模块
软件功能分模块设计为四大部分。
其一为系统功能部分,主要负责软件系统层面的统一管理服务与操作,包括登录控制、系统设置、心跳检测、
告警提示、开机检测等。其二为数据
控制部分,主要负责系统各项数据的
实时采集、存储及相关显示等功能,
包括视频监控、相机采集、数据存储、文件搜索和状态展示等。其三为控制部分,主要负责船体运动控制及运动控制模式的切换功能。其四为数据查看部分,包括视频文件的回放及工业相机图片的浏览等功能。
2.1.3 业务数据
该软件系统核心功能是为船体系统提供数据服务,故而
从业务数据角度出发,将系统数据分为以下几类:视频数据,图像数据,管理数据。
其中,视频数据来源于安装在船体正前方的视频采集设
备,通过H.264协议读取到本地视频文件,并以单次检测任务的名称及时间命名,文件格式为.mp4。图像数据来源于安装在船体上方及左右两侧的三个工业相机设备,通过厂商提供的SDK 接口,实现检
测过程中的图像数据采集,并且保存到本地文件,文件格式为.jpg。管理数据是指船体在检测任务过程中对所有视频、图像数据的记录与管理,以及单次检测任务的基本情况记录,文件格式为.json 及.xml。
管理数据是组织、管理其他所有数据的元数据。客户端应用程序利用此数据可以浏览图像和视频文件,以及获得检测任
务的具体信息。
图5    数据功能
■ 2.2 技术架构设计
2.2.1 C/S 结构设计
软件系统使用基于JVM 的java 平台,分为控制与监控
客户端、数据服务器端两部分。客户端部署于现场操作人员使用的windows 操作系统PC 机上,并且以exe
可执行
3    手动指令控制
图4    系统功能
34  |  电子制作    2019年10月
图6    结构平台2.2.2 系统架构逻辑
从模块化的角度我们构建如图7所示的软件系统架构
图。此架构通过系统中的消息总线服务器搭建起移动站、固定站及船体机器人之间通信的桥梁。系统外接控制手柄、收放线机、工业相机及视频设备。
2.2.3 Springboot 服务架构
Spring 是一个开源框架,Spring 是于2003 年兴起
的一个轻量级的Java 开发框架。Spring 是为了解决企业级应用开发的复杂性而创建的,使用Spring 可以让简单的JavaBean 实现之前只有EJB 才能完成的事情。但是Spring 不仅仅局限于服务器端开发,任何Java 应用都能在简单性、可测试性和松耦合性等方面从Spring 中获益。为了降低Java 开发的复杂性,Spring 采用了以下4种关键策略:①基于POJO 的轻量级和最小侵入性编程;②通过依
赖注入(DI)和面向接口实现松耦合;③基于切面(AOP)
通信,activemq 组件与船体通信,借助于samba 服务,客户端可以浏览数据服务器端存储数据。数据
服务器端也是以springboot 框架作为载体,其编译生成的jar 包自带tomcat 服务器,易于部署。同时用modbus 串口协议与收放线机通信,用ffmpeg 组件读取视频服务设备数据。其中,
相机采集程序使用GigEVision 协议与工业相机通信。另外,数据服务器端使用文件IO 生成管理元数据。
图8      全新框架
3 系统操作界面
图9      登录框
登录框提供用户登录用户名密码输
springboot推荐算法
入,及服务端和MQ 服务器IP 设定。默认直接登录,除非登录数据有误才会弹出
图7    系统架构
智能应用
此框进行设置更改。
图10    系统检测
系统检测界面是进入主界面之后呈现的第一个用户界面,提供在开始检测工作之前进行系统检测的功能。包括传感器数据,照明系统及动力检测等。
图11    监控主界面
监控主界面提供相机及摄像机的画面预览及其数据保存功能,还有系统错误提示、动力控制及激光雷达数据监控等。
图12    数据回放
数据回放提供历史检测数据的播放、查看功能。视频播放提供播放、暂停、全屏、截屏以及进度条等功能。图片回放提供上一张、下一张以及进度条拉动查看等功能。
图13    设置
设置界面提供临时的服务器IP设置更改及线缆机串口端口号临时更改。
4 试验效果
如图14是外场试验环境,机器人分别通过自动控制的方式进入市政管线内部运行约10米,自动运行速度约视频时延约为200至300毫秒。工业相机匀速拍照采集图像,视频稳定录制,所有状态数据均可上报。获取到了约30秒的清晰视频,260张相机图片。检测结束后切换至照片回放和视频回放页面即可现场浏览相应数据,可以看到相关数据明亮清晰。
图14    试验现场
图15    相机图片
5 结束语
本文介绍的智能船型管道检测机器人从机械设计到硬件开发集成,再到软件适配,出地完成了下水管线检测的艰巨任务,所设计的软件系统很好地支撑了机器人整体的良好运作与使用。在此基础上,加入大数据、物联网等前沿技术,必定会对社会的地下管道检测提供更加强有力的技术支
(下转第38页)
www�ele169�com  |  35
智能应用
提下返回工作原点,并完成系统的初始化。前往预先设定的一个或者多个拾取位置(每个位置的零件类型具有一定的相似性,例如尺寸差异不能过大),将零件后移至摄像头上方固定的检测点位,以便摄像头进行过拍照采集图像数据。■5.2 视觉系统通讯
机器人与视觉系统通过网线连接。IRB120 机器人自带用于针对基于通信或非连接通信的连接指令,即创建新的套接字——SocketCreate。SocketCreate带有交付保证的流型协议TCP/IP以及数据电报协议UDP/IP的套接字消息传送均得到支持。通过发送数据的指令——SocketSend控制视觉系统进行拍照和图像数据分析;通过接收数据的指令 SocketReceive将视觉系统反馈的数据接收,用于后续数据提取及处理。
■5.3 数据处理
由于机器人与视觉系统是通过套接字的方式进行通讯交互,在出现连续发送信息且前后两条信息间没有任何延时的情况下会出现第二条信息附加在第一条信息后的情况,导致后续信息错乱现象,所以在视觉系统反馈信号时,会将所有信息所有反馈信息组合成为一条字符串信息发送给机器人。为此,机器人在接收到视觉系统反馈的信息之后需要将信息进行拆分,提取出零件类型数据、X1方向偏差数据、Y1方向偏差数据、旋转角度θ等数据,并字符串形式的数据转换为数值型的数据用于机器人后续的工作当中。
■5.4 零件分拣与装配
零件完成检测后,机器人根据视觉系统反馈的信息,可以确定零件的类型,并根据偏移数据对零件进行偏移补偿,将零件移至对应组装位置的上方。在机器人移动过程中,要充分考虑移动轨迹的合理性,避免出现碰撞等意外事故。最后根据零件的特征,将零件组装到产品上。
6 验证试验
验证试验采用ABB公司开发的仿真软件RobotStudio 进行仿真运行。首先根据要求搭建控制平台,然后将机器人程序下载至仿真软件中,并模拟运行系统。在RobotStudio 软件中,可以看到机器人会根据零件的类型不同,选择对应的组装位置及组装流程。新增新的零件,只需要在原产线上新增功能,就可以继续完成零件的组装。
7 结论
通过该套系统的验证运行,可以看出该套系统具有较好的快速性,极高的稳定性与准确性。系统在经过前期的调试后,系统可以完成按照预计的方案完成产品的组装,过程中基本上不会出现不合格的产品。
此外,由于该系统只需要对零件的特征进行提取检测,更改抓取的夹治具、依据零件特征重新设计组
装方式,就可以完成新产品的组装,不需要对产线进行重新设计,进一步提高产线的柔性程度。
参考文献
* [1]徐杜,蒋永平,张宪民.柔性制造系统原理与实践[M].北京:机械工业出版社,2001.43.
* [2]杨杰忠,向金林.工业机器人技术及其应用[M].北京:机械工业出版社,2017.4.
* [3]张广军.机器视觉[M].北京:科学出版社,2005.1.
* [4]董文辉.基于机器视觉的工业机器人抓取技术的研究[D].华中科技大学.2011.
* [5]朱正伟.基于单目视觉的目标位姿识别与机器人抓取引导[D].华南理工大学.2015.
* [6]王红涛.基于视觉的工业机器人目标识别定位方法的研究[D].西安理工大学.2007.
* [7]余峰.基于视觉的工业机器人协作装配方法研究[D].华南理工大学.2012.
* [8]曾鹏.基于单目视觉的机器人螺母分拣系统[J].电子技术与软件工程.2017.12.
(上接第35页)
撑与数据参考。
图16    视频画面参考文献
* [1]韩雪.基于机器视觉的小型管道机器人研究[D].天津理工大学,2017.
* [2]夏旭东.水库涵管检测机器人的设计与试验[D].浙江理工大学,2016.
* [3]张义.城市燃气管道检测机器人测控系统研究[D].北京石油化工学院,2015.
38  |  电子制作    2019年10月

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。