基于多红外传感器的机器人水中巡检比赛策略研究

2019-03-06 11:10游旷喆
苏州市职业大学学报 2019年1期
关键词:漏点游动鱼体

钱 平,张 震,游旷喆

(苏州市职业大学 计算机工程学院,江苏 苏州 215104)

近几年,在国家的大力支持下水中机器人蓬勃发展,也形成了多种新概念的水中机器人,尤其是智能水中机器人。智能水中机器人的应用领域也非常广泛,包含军事应用、海洋开发、水中工程、水中娱乐、教学科研等[1-2]。智能水中机器人技术涉及众多学科领域,必须立足载体设计技术、运动控制技术、智能规划与决策技术等[3-4]。基于智能水中机器人的广泛应用前景,由江苏省教育厅主办的江苏省大学生机器人大赛,贯彻了加强学科专业和课程建设,深化教学改革,加强科研和工程实践训练,培养大学生创新能力、理论知识应用能力、动手能力的精神。为积极贯彻落实国务院颁布的《新一代人工智能发展规划》,该赛事也在如火如荼地进行着。

本研究主要围绕机器人水下巡检项目比赛展开,针对原先机器鱼水中寻迹管道不稳定问题,提出新增红外传感器形成矩形框架,精确控制游动的方向;针对检测漏点识别率低问题,提出新增红外传感器增加与管道的投影面积,提高识别率。实践证明,该方案针对比赛切实有效,在“第八届江苏省大学生机器人大赛”相应项目中获得名列第一的好成绩。

1 比赛规则

比赛开始前将机器鱼置于起点,不得超过分隔线,场地如图1所示。裁判吹哨示意比赛开始,比赛计时开始,启动后不允许再进行任何操作。机器鱼沿着输油管线按照白色箭头指示方向游动,不得偏离管线,从正上方观察若机器鱼与管线没有重叠则比赛停止,计时结束。游动的同时检测管线上标记的漏油处,检测到漏油处的黑点时,通过一定方式现场告知裁判及观众,可以是声音、光、回传PC机数据等,机器鱼全身进入终点区后比赛结束,计时停止。竞赛记分由检测分、计时分、技术分组成,检测分是关键,同时兼顾计时分和技术分[5]。

图1 比赛场地示意图

2 系统构成及检测原理

整个控制系统如图2所示。主控芯片采用的是Atmega128,该款芯片是高性能、低功耗的AVR8位微控制器,具有两路8位PWM、一个8位和一个16位的定时器/计数器等丰富的外设[6]。左边部分为单片机的最小系统包括电源模块、复位模块、晶振模块、下载模块等,是构成整个系统的基础。右边部分是系统的控制部分,机器鱼的控制主要分为利用手机APP遥控或者自主运行,通过手机APP遥控可控制机器人游动的速度和方向,比赛要求机器鱼完全的自主运行,本次比赛采用的是红外光电传感器来自主控制机器鱼的游动及检测管道漏点。利用主控芯片的GPIO口模拟产生PWM波信号,根据PWM信号的占空比的不同可以产生0~15共16个等级的速度前进,并且通过软件转向也分为0~15级。7级表示鱼尾处于正中央直游;0~6级表示右转且数字越小,角度越大;8~15级表示左转且数字越大,角度越大;整体的控制为尾部游动提供动力。蜂鸣器起到检测漏点报警作用。

改进前的机器鱼示意图如图3所示,只外接4个红外传感器,其中1、2是用来控制方向及寻迹管道的,3、4是用来检测管道上的模拟漏点的。改进后的机器鱼检测原理是利用9个漫反射式红外光电传感器连接AVR单片机不同的GPIO口,如图4所示。漫反射式红外光电传感器是对红外光束的遮光或反射给单片机相应GPIO口输入高电平或低电平。中间4个红外传感器6、7、8、9负责检测漏点,当遇到管道上黑点是反馈高电平驱动蜂鸣器鸣叫,周围5个红外传感器控制游动方向确保不偏离管道。

图2 控制系统图

图3 改进前的比赛用机器鱼示意图

图4 改进后的比赛用机器鱼示意图

3 比赛的优化策略

3.1 稳定寻管道

由于原来比赛中只用到机器鱼前面两侧的两个红外传感器来控制游动方向,受到水波等影响,偏离管道时未能及时修正方向甚至偶尔会彻底离开管道,导致机器鱼不能很好地直游,影响游动速度和鱼身与管道的重合度。经过反复测试,在鱼身后距前红外传感器约20 cm处新增两个红外传感器,由4个传感器构成一个矩形框。在直游的情况下会出现如图5所示的6种情况。①出现如图5(a)、图5(b)所示的大概左偏15°或右偏15°时,红外传感器2或红外传感器1出现在管道上方有反射,触发控制鱼尾以较小幅度向反方向进行修正,经过反复实验,鱼体左偏时转向值取为5,鱼体右偏时转向值为9;②出现未能及时修正的情况如图5(c)、图5(d)所示的大概左偏25°或右偏25°时,红外传感器(2、3)或红外传感器(1、4)均出现在管道上方有反射,同时触发控制鱼尾以较大幅度向反方向进行修正,经过反复实验,鱼体左偏时转向值取为3,鱼体右偏时转向值为11;③出现如图5(e)、图5(f)所示向同一侧偏出管道时按照图5(a)和图5(b)相同处理。针对偏移的所有情况的考虑,利用红外传感器1-4构成的一个矩形框图分布在机器鱼身的前后关键的比例点,尽量保证整个机器鱼身不会偏离管道,且确保使机器鱼身与管道的重合度较高。

图5 机器鱼直游时偏离情况

3.2 直角拐弯的顺畅性策略

比赛场地有两处是直角右转弯,原来只靠传感器2控制转向,机器鱼在直角转弯时不够顺畅甚至无法达到转直角弯的效果,且与管道的重合度不够高,容易造成拐点漏检现象。为解决这个问题,新增如图4所示的传感器5,这一传感器放置于鱼的前侧右方并正对前方。经过反复实验,距此红外传感器的10 cm左右检测到前方有管道,进行转弯的提前预判,然后触发控制鱼尾以右转转向值为1的级别较大幅度进行拐弯,既能快速顺畅地90°右转,又与管道有良好的重合度以解决漏检问题。如果比赛场地有左拐管道,还可以在对称位置增加一个直角转弯传感器。

3.3 防止漏检策略的提出

机器鱼在游动过程中受到水波等影响必然会有轻微的偏移,原来鱼身中间只有如图3所示的2个红外传感器3、4用于检测漏点,在鱼体轻微偏移管道时就有可能出现漏检现象。为解决此问题,在原来基础上新增2个传感器达到如图4所示的4个传感器6、7、8、9,使传感器的投影面与管道尽量大面积重合。新增传感器后,值得注意的是多个检测传感器靠的相对近,导致相互之间的红外射线发送和接收受到一定程度的干扰,出现错检的现象,针对这一情况还需要完善结构,在这4个传感器之间塞入3 mm左右的塑料片,这样既能满足全覆盖管道要求,又解决了互相干扰的问题。

3.4 提高稳定前行的策略

受到水波的影响,势必会使机器鱼有不同程度的晃动,晃动会使机器鱼在游动的过程中偏移管道的概率增加,不利于完成时间和检测率。通过不断的实验和探索,在机器鱼身上配以相应配重块,一方面,确保重心在机器鱼体的中线,另一方面降低鱼尾产生的水波,使其尽量小。最关键的是在机器鱼体两侧配上浮漂如图6所示,使机器鱼在游动过程中更加稳定。

图6 机器鱼添加浮漂实物图

4 系统软件设计及测试结果

软件程序主要由系统初始化模块和检测模块组成。其软件控制流程图如图7所示。由于程序是基于Ucos-II片上实时操作系统,可实现多个任务并行[7],初始化模块包括通信部分信息反馈、舵机调制任务、机器鱼的运动计算选择等。检测模块为Ucos-II系统中任务三的while循环函数,代码如下所示:

图7 软件控制流程图

在这个while循环中以全速直游开始,并在检测到黑点后蜂鸣器叫,偏离管道时按照优化的策略控制进行修正。

检测模块是用于该比赛软件设计的重点,主要实现比赛中黑点检测及方向的控制。实现比赛策略控制关键代码如下:

根据以上软硬件设计和多项策略的优化形成改进后的方案,与原方案进行实验对比,测试是以机器鱼在比赛场地全程游20次为样本,测试结果如表1所示。

测试实验结果表明:在改进后的方案中,检测率极大提高,能达到95%以上,整个过程用时也提高28.7%,且偏离管道的次数也大大减少,提高了整体的运行效果。

表1 机器鱼优化前后测试结果对比

5 结论

本研究提出了新增多个红外传感器的策略,优化控制机器鱼的游动和提高转弯的顺畅性,并利用力学等相关学科完善机器鱼的外观及重心位置。通过不断测试解决了水中巡检项目竞赛过程中检测率低,完成时间长、游动不稳等问题。通过测试和比赛证明,提出的优化策略安全可靠,运行稳定。在测试和实际比赛中都达到理想的运行效果。

猜你喜欢
漏点游动鱼体
城市供水管网卫星探漏技术应用及效果研究
级联层架精料流有漏对级联的影响
三维鱼体参数化建模
球轴承用浪型保持架径向游动量的测量
轴流泵内鱼体的运动行为与撞击损伤分析
淡水鱼水平往复振动头尾定向输送方法
空客A320 系列飞机大翼干仓燃油渗漏解决方案
淡水鱼腹背定向装置设计及试验
把手放进袋子里
父亲