一种多悬垂管道探伤移动机器人的建图与定位系统及方法

文档序号:26445303发布日期:2021-08-27 13:45阅读:71来源:国知局
一种多悬垂管道探伤移动机器人的建图与定位系统及方法

本发明涉及移动机器人定位与建图技术领域,具体为一种多悬垂管道探伤移动机器人的建图与定位系统及方法。



背景技术:

随着制造工艺水平的提高以及嵌入式系统快速发展机器人软硬件得到飞速提高,近年来人工智能的发展使得智能机器人的研究与应用也越来越活跃。在一些需要大量简单重复劳动或者危险不适合人进行操作的工作已经被各种智能水平较低的机器人所取代。智能机器人的发展水平也成为衡量一个国家科技实力的重要标准。利用gps以及高精度惯导以及多线高精度激光雷达与里程计的多传感器融合定位建图的方案在自动驾驶定位中非常广泛的应用。但是其存在着成本过高以及需要较强的计算能力不适合在小型化的移动探伤作业机器人上进行部署的问题。而在移动作业机器人中常采用导轨以及标志物如二维码配合一些低成本的传感器进行定位与建图,这种方式需要事先布置各种标志物较为繁琐且标志物二维码易磨损以及精度较低等不足。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种多悬垂管道探伤移动机器人的建图与定位系统及方法,针对多悬垂管道环境中探伤作业移动机器人的定位于建图,提出一种软硬件系统设计方法,该方法利用环境的特点采用相机以及低成本2d激光雷达进行定位与建图可以得到较高精度移动性实时性以及较低成本的特点。

本发明的目的是通过以下技术方案来实现的:

包括上位机、无线路由与小车运动平台,所述小车运动平台设置为三层,第一层包括车架、麦克纳姆轮、控制器与显示器,所述麦克纳姆轮设置在所述车架的底部,所述控制器设置在所述车架的顶端,所述显示器与所述控制器连接,所述麦克纳姆轮通过驱动器与所述控制器连接;第二层包括信息处理平台与电池组,所述电池组与所述信息处理平台连接,所述电池组设置在所述车架的顶端,所述信息处理平台设置在所述电池组的顶端,所述上位机与所述无线路由通信连接,所述无线路由与所述信息处理平台通信连接,所述信息处理平台与所述控制器通信连接,第三层包括相机与激光雷达,所述相机、激光雷达均设置在所述信息处理平台的顶端;所述相机、激光雷达分别与所述信息处理平台通信连接。

优选的,所述控制器为stm32嵌入式单片机控制器,信息处理平台为高性能jetson嵌入式处理平台,激光雷达为低成本2d激光雷达,相机为小体积,低功耗高清网络相机。

一种多悬垂管道探伤移动机器人的建图与定位方法,包括以下步骤:

步骤1,将小车运动平台放置在管道正下方的位置,通过进行圆心检测算法获取管道投影在图像坐标下的位置;

步骤2,将小车以固定的较小编码器值进行移动,我们再计算移动后管道圆心在图像坐标系下的移动像素距离以及小车实际运行的距离以标定在小距离下像素距离、小车实际运动距离、编码器数值之间的关系;

步骤3,在进行2d激光雷达定位后,根据计算的管道圆心在图像坐标系下坐标与之前在正下方保存的坐标计算小车运动的方向以及距离,最后根据稳定时计算的管道圆心坐标评估最后进行定位移动的误差。

优选的,所述步骤1中的圆心检测算法采用改进霍夫圆检测算法进行检测,包括以下内容:第一步对原始图像进行灰度化、直方图均衡然后利用canny算法进行图像的边缘检测检测图像的边缘信息;然后计算图形的梯度;然后在二维霍夫空间内,计算所有图形的梯度直线,在霍夫空间坐标点上累加和的值越大,该点就越可能是圆心;接着设定一个阈值,霍夫空间内累加和大于该阈值的点就对应于圆心;

第二步检测圆的半径,计算某一个圆心到所有圆周线的距离,这些距离中就有该圆心所对应的圆的半径的值,同一圆心对应的圆半径相等,并且这些圆半径的数量要大于其他距离圆心距离值相等的数量;设定两个阈值最大半径和最小半径,使距离在这两个半径之间的值即检测出来的圆半径就在这两个值之间,对保留下来的半径距离进行排序,找到距离相同的那些值,并计算相同值的数量;设定一个半径数量的阈值,当相同值的数量大于该阈值,则认为该值是该圆心对应的圆半径。

本发明的有益效果是:本发明提出在室内环境下无法利用gps,无高精度惯导与里程计的情况下,通过检测环境特征中的悬垂管道圆心位置以及2d激光雷达slam来实现低成本高精度自主定位方案。2d激光雷达实现一个初步定位与环境的建图,结合垂悬管道的物理特征利用相机来辅助定位可以使定位的精度达到要求同时满足一定实时性与移动性。

附图说明

图1为本发明系统的示意图;

图2为多悬垂管道工作的场景示意图;

图3为小车运动平台的示意图;

图4是本发明多悬垂管道探伤移动机器人平台定位与建图软件系统的流程图。

图中,1、控制器;2、显示屏;3、相机;4、激光雷达;5、信息处理平台;6、电池组;7、车架;8、麦克纳姆轮。

具体实施方式

下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。

如图1所示,包括上位机、无线路由与小车运动平台,如图3所示,小车运动平台分为三层最下层是麦克纳姆轮的车架包含小车的电机以及驱动电路以及控制器stm32,小车的移动电源为小车以及控制电路供电、oled显示器显示小车状态;第二层是tx2嵌入式处理器以及为其供电的移动电源;第三层是一个罗技c270相机以及rplidara2的2d激光雷达。2d激光雷达通过带独立供电支持usb3.0的拓展坞提供的usb接口进行连接。无线局域网由一个千兆无线路由器搭建,tx2通过无线网卡与路由器相连,上位机通过无线网卡与路由器相连,上位机与tx2在同一网段。相机采用罗技科技的usb相机,相机通过usb接口与tx2直接连接。相机安装位置正面朝上镜头保持水平使之可以采集到管道的图像。

其中,stm32嵌入式控制器用于控制麦克纳姆轮的移动,嵌入式处理平台jetson系统的tx2用于信息数据处理,罗技c270相机用于获取图像信息,2d激光雷达用于获取点云数据。tx2与stm32通过串口进行通信,tx2发送小车运动的方向以及距离信息,stm32根据获取的信息驱动小车移动到指定的位置。tx2是系统的核心其直接与2d激光雷达以及相机连接,tx2与2d激光雷达以及相机通过usb接口连接;tx2与电脑组成无线的局域网实时向上位机传输建图以及定位的结果。

tx2与stm32利用串口进行通信通过杜邦线直接相连,采用tx2开发平台上的串口进行通信,通信采用相同的配置,高速波特率115200,所述的通信通过双方约定的格式进行数据解析其第一个字符代表位置可能值有“u”,“d”,“l”,“r”表示分别表示上下左右,后面是移动的距离以编码器数值为单位。2d激光雷达提供点云信息,采用16线的低成本2d激光雷达;tx2与2d激光雷达通过串口进行通信,其通信的波特率为115200。发送的数据由机器人操作系统ros(robotoperatingsystem)进行获取可以通过rviz实时显示。数据的处理采用opencv(opensourcecomputervisionlibrary)进行读取以及数据保存并采用ros进行转换以及发布。

如图2与图3所示,以小车运动平台的视角进行展示,其中悬垂管道分布再小车上方,管道外形为标准的圆。小车需要依次到达每个悬垂管道的正下方在相机进行定位过程中我们首先在系统运行前将小车放置在管道正下方的位置,通过进行圆心检测算法我们获取管道投影在图像坐标下的位置;我们将小车以固定的较小编码器值进行移动,我们再计算移动后管道圆心在图像坐标系下的移动像素距离以及小车实际运行的距离以标定在小距离下像素距离、小车实际运动距离、编码器数值之间的关系;在进行2d激光slam定位后,根据计算的管道圆心在图像坐标系下坐标与之前在正下方保存的坐标计算小车运动的方向以及距离,最后根据稳定时计算的管道圆心坐标评估最后进行定位移动的误差。

采用改进的霍夫圆检测算法进行检测,第一步圆心的检测首先利用canny算法进行图像的边缘检测检测图像的边缘信息;然后计算图形的梯度;然后在二维霍夫空间内,计算所有图形的梯度直线,在霍夫空间坐标点上累加和的值越大,该点就越可能是圆心;接着设定一个阈值,霍夫空间内累加和大于该阈值的点就对应于圆心;

第二步检测圆的半径,计算某一个圆心到所有圆周线的距离,这些距离中就有该圆心所对应的圆的半径的值,同一圆心对应的圆半径相等,并且这些圆半径的数量要大于其他距离圆心距离值相等的数量;设定两个阈值最大半径和最小半径,使距离在这两个半径之间的值即检测出来的圆半径就在这两个值之间。对保留下来的半径距离进行排序。找到距离相同的那些值,并计算相同值的数量;设定一个半径数量的阈值,当相同值的数量大于该阈值,则认为该值是该圆心对应的圆半径。

参考图1,首先是一个上位机平台具有无线或有线网卡可以与无线路由进行通信以便与小车运动平台组成局域网可以完成对小车运动平台进行控制。上位机平台安装有linux操作系统ubuntu,在ubuntu系统中安装ros操作系统以进行图像以及建图定位结果进行展示。

在进行探伤操作之前需要进行标定,标定一是为了确定小车正对管道中心时圆心在相机图像的投影,二是以固定里程计值小车运动平台测量小车实际运动距离以及圆心在图像上的偏移。标定后可以根据管道圆心在图像上的投影与标准投影位置之间的位置关系控制小车进行位置的调整;

整个系统正常工作需要在同一局域网内,将小车运动平台的嵌入式开发平台jetsontx2通过路由器wifi连接无线网络,同时主控pc连接到同一网络。在ubuntu下获取两个主机在局域网内的ip地址将其写入host文件中。通过ssh(secureshell)服务主机pc对jetsontx2进行远程的控制。同时在ros系统中将jetsontx2设置为从机将pc设置为主机。

系统开始运行之前需要知道各个管道之间的大概相对位置,以及固定小车每次运行的起始位置。先对系统上电然后打开嵌入式开发平台jetsontx2以及stm32,待主机pc可以正常远程访问jetsontx2后在主机端启动一个主节点master。然后在主机端启动从机jetsontx2的激光雷达建图定位以及相机管道圆心检测定位节点。在主机中打开rviz程序添加图像以及地图定位消息进行可视化。可以接收到相应的消息系统正常工作后按下小车的按键stm32开始控制小车运动。

如图2与图4所示,工作时小车会依次遍历每一个管道到达悬垂管道下方后会根据检测的悬垂管道圆心坐标与标准位置的坐标进行对比计算出需要运行的方向以及距离。同时在主机端会实时显示运动的位置以及周围环境的2d栅格地图,相机采集的图像以及悬垂管道的检测情况,端口打印圆心检测的位置坐标,当所有的管道结束检测后返回起始位置。

以上所述仅是本发明的优选实施方式,应当理解所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1