一种自主全遍历爬壁机器人的制作方法

文档序号:15644840发布日期:2018-10-12 22:27阅读:130来源:国知局

本发明属于爬壁机器人技术领域,具体涉及一种自主全遍历爬壁机器人。



背景技术:

常见的移动机器人全遍历规划方法有模板模型法、单元分解法、生物激励神经网络算法等。模板模型法通过不断查找模块库完成对区域的遍历工作,但由于缺乏对环境的整体规划,该方法规划出的路径重复率较高。单元分解法根据障碍物的分布将待遍历区域划分为若干个子区域,通过对各子区域的遍历完成整个区域的遍历。基于单元分解法的遍历算法可以将复杂的问题简单化,但子区域间的衔接问题尚无较好的方法予以解决。生物激励神经网络算法利用神经元的活性值和机器人的上一位置产生遍历的路径,该方法计算简单、不需要额外的避障算法,但缺点是简单地将机器人考虑成一个质点,没有考虑机器人的能耗模型且规划的路径重复率较高。

爬壁机器人是移动机器人领域的重要分支,它是科学家受壁虎的运动机理启发研制出的可吸附于壁面的仿生机器人,已广泛应用在造船业、核工业、石化工业、消防部门及军事侦察活动等领域。在实际应用中,由于受重力的影响,爬壁机器人全遍历不仅涉及一般地面移动机器人的遍历技术,还存在着机器人沿着各个方向的运动能耗不同的问题。目前,主要通过人工遥操作爬壁机器人的方式执行全遍历任务。这种方式耗费人力、智能化水平不高,且会存在由于遥操作而导致部分区域未被遍历到以及遍历路线不合理的问题,且会进一步引发能耗过大问题。



技术实现要素:

本发明提出一种爬壁机器人,能以低能耗的方式自主完成全遍历任务。

为了解决上述技术问题,本发明提供一种自主全遍历爬壁机器人,包括爬壁机器人本体、定位模块、相机以及数据处理模块;相机安装在爬壁机器人本体上,用于获取爬壁机器人作业环境图像;定位模块用于获取爬壁机器人本体的位置和航向;数据处理模块根据爬壁机器人本体所处的现场环境以及其位置信息,使用自主全遍历方法规划出爬壁机器人本体的下一个目标位置,并控制爬壁机器人本体运动至下一个目标位置,直到完成全遍历;

所述使用自主全遍历方法规划出爬壁机器人本体的下一个目标位置的方法为:

步骤一,使用栅格法将爬壁机器人待检测区域划分为若干栅格,将每一个栅格作为一个神经元,获得生物激励神经网络图;

步骤二,根据神经元动力方程及生物激励神经网络图计算出爬壁机器人本体当前位置周围神经元的活性;

步骤三,选取活性大于当前位置神经元活性的神经元作为待选神经元;若没有大于当前位置神经元活性的神经元,则爬壁机器人本体停留在当前位置,等待神经元活性的传播;

步骤四,对于各待选神经元,计算其周围神经元对其的启发值;

步骤五、对各个待选神经元的启发值从大到小进行排序,选取出排名靠前的若干待选神经元;

步骤六,根据运动能耗模型计算出机器人本体从当前位置运动到步骤五选取的待选神经元所对应位置的运动能量消耗;

步骤七,选取所述运动能量消耗最小的待选神经元作为机器人本体的下一个目标位置。

进一步,步骤二中计算出爬壁机器人本体当前位置周围神经元活性的方法为:

式中,xi表示第i个神经元的活性,a表示神经元活性的衰减率,b表示神经元活性的上界,d表示神经元活性的下界,dt表示求导,函数[a]+=max{a,}0,[a]-=max{-a,0};[ii]表示外界对神经元i的输入,[ii]的定义如下所示:

式(2)中,e是一个远大于神经元活性上界b的正常数;

式(1)中,k为当前神经元所邻近神经元的个数;ωij=f(dij),dij表示第i个神经元与第j个神经元的欧氏距离;ωij表示局部侧连接的神经元j对第i个神经元的影响权值,计算公式如下:

式(3)中,u为一个正常数,通过设置u的大小调整局部侧连接的神经元活性传播的快慢;当生物激励神经网络图中其他神经元与第i个神经元的欧氏距离超过其与神经元局部侧连接的半径r时,其对于第i个神经元的影响权值为0。

进一步,设步骤三中待选神经元的编号为i,步骤四中计算待选神经元i周围神经元对其的启发值hi的方法为:

式(4)中k为第i个待选神经元周围的神经元个数,当待选神经元i周围的神经元j为障碍物或者已遍历的神经元时,hj的取值为神经元活性的上界b,否则取值为0;

进一步,步骤六根据爬壁机器人的运动能耗模型计算出机器人从当前位置神经元i运动到待选神经元j的运动能量消耗βj的方法为:

βj=csj+ctj(5)

式(5)中csj=(fv+pd)tg和ctj=(pr+pd)tr分别表示爬壁机器人从当前位置神经元i运动到神经元j的直行能耗代价和转弯能耗代价。

进一步,数据处理模块包括上位机和下位机;上位机负责将现场图像数据录入系统数据库,并根据现场图像数据和自主全遍历方法规划出爬壁机器人本体的下一个目标位置,然后将自主全遍历方法规划出的下一个目标位置转换为爬壁机器人的速度和航向,通过指令形式发给下位机;下位机通过执行速度和航向指令,校正爬壁机器人本体的速度和航向。

进一步,当爬壁机器人本体运动到下一个目标位置后,数据处理模块将此位置对应的神经元设为已遍历神经元,然后根据神经元动力学方程更新生物激励神经网络图。

进一步,数据处理模块根据生物激励神经网络图的活性判断是否完成全遍历,若生物激励神经网络图中所有神经元活性均不大于0,则表示完成全遍历,否则,表示未完成全遍历。

本发明与现有技术相比,其显著优点在于:

(1)本发明利用了生物激励神经网络计算简单的优势,并结合爬壁机器人运动能耗模型,使得机器人不需要额外避障运算即可实现低能耗全遍历;

(2)本发明节省了传统遥操作爬壁机器人的人力消耗,提升了爬壁机器人智能化作业的水平。

附图说明

图1为本发明爬壁机器人自主全遍历流程图。

图2为本发明爬壁机器人三级决策流程图。

图3为本发明爬壁机器人全遍历环境建模图。

图4为本发明爬壁机器人竖直壁面匀速运动受力分析图。

图5为本发明爬壁机器人全遍历平台硬件组成示意图。

图6为本发明爬壁机器人上位机操作流程图。

图7为本发明爬壁机器人下位机操作流程图。

具体实施方式

容易理解,依据本发明的技术方案,在不变更本发明的实质精神的情况下,本领域的一般技术人员可以想象出本发明自主全遍历爬壁机器人的多种实施方式。因此,以下具体实施方式和附图仅是对本发明的技术方案的示例性说明,而不应当视为本发明的全部或者视为对本发明技术方案的限制或限定。

结合图5,爬壁机器人包括爬壁机器人本体、定位模块、相机以及数据处理模块;爬壁机器人本体上安装有相机、离心泵以及舵机等。相机用于采集爬壁机器人作业现场图像;离心泵用于提供爬壁机器人在运动过程中所需要的负压;舵机为爬壁机器人的运动提供动力。

定位模块用于获取爬壁机器人本体的位置信息和航向信息,作为一种实施例,定位模块可以一分为二,即包括用于获取位置信息的定位模块一和用于获取航向信息的定位模块二;当然定位模块可以为一个,既具有获取位置信息的功能又具有获取航向信息的功能。

数据处理模块根据爬壁机器人本体所处的现场环境以及其位置信息,对爬壁机器人本体的运动路径进行规划,并控制爬壁机器人本体按规划路径运动。

作为一个实施例,数据处理模块对爬壁机器人本体的运动路径进行规划时,先根据现场环境规划出爬壁机器人本体的下一个目标位置,转后根据爬壁机器人本体的位置信息计算出爬壁机器人本体运动至下一个目标位置的包括速度和航向。

作为一个实施例,数据处理模块可以为一个模块,也可以划分为多个子模块,例如包括上位机和下位机。此时,上位机负责将现场图像数据录入系统数据库,并根据现场图像数据和自主全遍历方法规划出爬壁机器人本体的下一个目标位置,然后将自主全遍历方法规划出的下一个目标位置转换为爬壁机器人的速度和航向,通过指令形式发给下位机。下位机负责执行速度和航向指令,例如,下位机根据爬壁机器人的当前航向信息,通过校正爬壁机器人的速度和航向。

作为一个实施例,在上位机和下位机之间设置一对无线数传电台和一对无线图传电台,无线数传电台用于上位机和下位机之间数据信息传输,无线图传电台用于上位机和下位机之间图像信息传输。当然可以通过其他方式在上位机和下位机之间传递数据信息和图像信息。数据信息包括速度和航向指令等,图像信息包括相机采集的现场环境数据等。

作为一个实施例,数据处理模块可以全部安装在爬壁机器人本体上,也可以分开设置,例如数据处理模块分为上位机和下位机时,上位机不安装在爬壁机器人本体上,单独设置,此时,无线数传电台一、定位模块一、无线图传电台一与上位机相连接。下位机安装在爬壁机器人本体上,定位模块二、无线数传电台二与下位机相连。

本发明提出了一种新的遍历规划三级决策机制,用于在自主全遍历方法中规划出爬壁机器人本体的下一个目标位置,结合图1,具体为:

(1)使用栅格法对爬壁机器人待检测区域进行环境建模,也即将爬壁机器人待检测区域划分为若干栅格,将每一个栅格作为一个神经元,得到生物激励神经网络图。如图3所示栅格区域中,黑色栅格表示存在障碍物的神经元,白色栅格表示待遍历的神经元。待检测区域由相机采集的现场图像数据获得。

(2)如图4所示,对爬壁机器人在作为竖直壁面的待检测区域运动时的受力进行分析,得到牵引力计算公式后建立爬壁机器人沿任意方向的运动能耗模型;其中,

爬壁机器人在竖直壁面做匀速运动时的受力分析为:

式中,f为爬壁机器人做匀速运动所需提供的牵引力,f1为爬壁机器人本体与竖直壁面的摩擦力,θ为爬壁机器人运动方向与壁面水平右方向的夹角,g为重力。

爬壁机器人在水平壁面(例如桥梁底部)等平面匀速检测时的受力分析为:

f=f1

式中,f为爬壁机器人匀速运动所需提供的牵引力,f1为爬壁机器人本体与桥面的摩擦力。

则爬壁机器人在竖直壁面、水平壁面匀速运动的整体运动能耗模型etotal为:

etotal=(fv+pd)tg+(pr+pd)tr

式中,f为爬壁机器人匀速运动所需提供的牵引力,v为速度,pr为原地转向功率,pd为爬壁机器人设备功率,tg为直线行走时间,tr为转弯时间。

(3)将爬壁机器人运动能耗模型与生物激励神经网络算法相结合建立爬壁机器人遍历规划三级决策机制;结合图2,采用三级决策机制产生机器人本体下一运动位置的过程包括以下步骤:

第一、根据神经元动力方程及生物激励神经网络图(如图3所示)计算爬壁机器人当前位置周围神经元活性:

式(1)中,xi表示第i个神经元的活性,a表示神经元活性的衰减率,b表示神经元活性的上界,d表示神经元活性的下界,dt表示求导,函数[a]+=max{a,0},[a]-=max{-a,0};[ii]表示外界对神经元i的输入,[ii]具体定义如下:

式(2)中,e是一个远大于神经元活性上界b的正常数。当神经网络图中的某个神经元被作为待遍历神经元时,其对应的外部输入为e。当神经网络图中某个神经元被视为障碍物神经元时,其对应的外部输入为-e。当网络图中某个神经元是已遍历神经元时,其对应的外部输入为0;

式(1)中,k为当前神经元所邻近神经元的个数,其与神经元局部侧连接的半径r有关;ωij=f(dij),dij表示第i个神经元和第j个神经元的欧氏距离;ωij表示局部侧连接的神经元j对第i个神经元的影响权值,计算公式如下:

式(3)中,u为一个正常数,通过设置u的大小可以调整局部侧连接的神经元活性传播的快慢;当神经网络图中其他神经元与第i个神经元的欧氏距离超过半径r时,其对于第i个神经元的影响权值为0。

第二、在机器人当前所在位置周围选取活性大于当前位置的神经元作为下一步运动的备选位置,即作为待选神经元,完成第一级决策并进入步骤三,进行第二级决策;若没有大于当前点活性的神经元,则机器人停留在原地,等待神经元活性的传播。

第三、判断进行第一级决策后待选神经元的个数,若只有一个待选神经元,则直接将其作为爬壁机器人的下一运动位置;若存在两个及以上待选神经元,则转步骤四;

第四、设步骤三中待选神经元的编号为i,计算待选神经元i周围神经元对其的启发值hi:

式(4)中k为第i个待选神经元周围的神经元个数,当待选神经元i周围的神经元j为障碍物或者已遍历的神经元时,hj的取值为神经元活性的上界b,否则取值为0;

第五、对各个待选神经元的启发值从大到小进行排序,选取排名前几个(如前二)的待选神经元,转步骤六,进入第三层决策;

第六、根据爬壁机器人的运动能耗模型计算出机器人从当前位置神经元i运动到步骤五选取的待选神经元j的运动能量消耗βj:

βj=csj+ctj

式中csj=(fv+pd)tg和ctj=(pr+pd)tr分别表示爬壁机器人从当前位置神经元i运动到神经元j的直行能耗代价和转弯能耗代价;

第七、选取待选神经元中运动能耗最小的神经元作为机器人本体下一个运动位置。

爬壁机器人在进行自主全遍历运动的过程为:

第一,设定爬壁机器人执行自主全遍历的起始位置,同时设定机器人在生物激励神经网络图中的起始位置,初始化生物激励神经网络的衰减率、神经元活性上下界等各个参数;

第二,将环境建模后的生物激励神经网络图及设定的爬壁机器人本体起始位置输入到自主全遍历方法中,自主全遍历方法以程序形式集成在上位机中;

第三,上位机根据三级决策机制执行自主全遍历程序,下位机控制爬壁机器人本体的航向和速度。

作为一个实施例,上位机程序的执行流程如图6所示,具体步骤如下:

(1)、输入环境建模后的生物激励神经网络图及爬壁机器人自主全遍历的起始位置;

(2)、开启实时定位线程,使用定位模块一获取爬壁机器人的位置信息;

(3)、开启实时录像线程,使用相机获取现场图像数据,将取现场图像数据录入到系统数据库;

(4)、根据图2的爬壁机器人全遍历三级决策机制产生爬壁机器人的下一运动位置;

(5)、根据步骤(2)中获取到的机器人实时位置信息及步骤(4)中产生机器人下一运动位置计算出速度和航向指令,通过无线数传电台一发送到下位机;

(6)、根据步骤(2)中获取到的机器人实时位置信息判断爬壁机器人是否到达步骤(4)中规划的下一运动位置,若到达,转步骤(7),否则,转步骤(5);

(7)、将此位置对应神经元设为已遍历神经元,根据神经元动力学方程更新步骤(1)中的生物激励神经网络图;

(8)、根据生物激励神经网络图的活性判断是否完成全遍历,若神经网络图所有神经元活性均不大于0,则表示完成全遍历,转步骤(9);否则,表示未完成全遍历,转步骤(4);

(9)、发送任务完成指令到下位机。

作为一个实施例,下位机程序的执行流程如图7所示,具体步骤如下:

(1)、开启定位信息采集线程,实时采集定位模块2获得的航向数据;

(2)、开启指令监听线程,实时监听数传电台2接收到的速度和目标航向指令;

(3)、执行接收到的上位机速度和航向指令;

(4)、根据步骤(1)实时采集到的爬壁机器人航向数据判断当前航向是否与目标航向一致,若一致,转步骤(2);否则,转步骤(5);

(5)、采用控制算法修正机器人航向,转步骤(4)。

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