基于灰度传感器的机器人路径跟随功能设计与实现
2017-02-28毛海懿
毛海懿
【摘 要】智能小车是一种能够通过编程手段完成特定任务的小型化机器人,具有制作成本低廉、电路结构简单、程序调试方便、趣味性强等优点,深受广大机器人爱好者以及学生的喜爱。路径跟随是智能小车应具备的基本功能之一。本文介绍一种基于灰度传感器的机器人路径跟随的功能设计与实现。
【关键词】路径跟随;灰度传感器;智能小车;图形化设计
一、设计制作背景
随着机器人技术的成熟,智能车以及在智能车基础上开发出来的产品已成为自动化物流运输、柔性生产组织等系统的关键设备。在实际应用中,某些场合要求工作小车有自动寻迹、自动避障功能。路线检测的准确与否直接影响小车寻迹时的行驶状态及速度,而自动寻迹在实际生活中有广泛应用,因此寻求一种低成本、抗干扰性强并且位置指示准确的路径检测方法具有重要意义。
路径跟随机器人系统主要由感知、执行及控制三部分组成。感知部分包括信息监测系统和信息融合系统,执行部分包括驱动系统和机械系统,控制部分包括人机交互系统和决策系统。
机器人寻迹所用到的传感器多不胜数,如光电传感器、灰度傳感器、电磁传感器、激光传感器及红外传感器等都属于寻迹传感器。灰度传感器主要用来检测地面的灰度值,进行简单的颜色识别和黑白线区别。
二、设计制作思路
本智能小车可分为硬件和软件两个部分。硬件包括用“博创”套件搭建好寻迹机器人的主体,以及将灰度传感器正确地安装在机器人的主体上。软件包括正确地编写程序并下载到机器人,使机器人能够通过指令改变运动轨迹并且始终保持在规定的路径上面。具有代表性的搭建路径常为蛇形路径。当传感器监测到路径时机器人直行,当传感器监测到非路径时机器人转弯,让机器人能够始终行驶在路径上直到路径结束。图1是其总体控制流程。
三、硬件系统组成
“博创”套件包括有控制器单元、传感器单元、执行器单元和通用结构零件等。其优点是每个“积木”单元之间都能够很容易地进行拼接和组装。采用这种套件可以很简单地搭建出自己所需要的机器人样式,并且能够根据自己的喜好搭建出许多富有想象力的机器人并且能够为自己所搭建出来的机器人进行编程。本智能车硬件组成分为控制部分、检测部分、运动部分三个模块。
MultiFLEX?2-PXA270控制器支持使用图形化编程软件NothSTAR,通过软件的集成化开发环境可以快速简洁地开发出程序。将CDS5516机器人专用舵机、轮子、传感器、和控制器连接起来以形成机器人结构部件。
传感器是检测部分的核心,在智能机器人中起了决定性的作用。灰度就是由纯黑色到纯白色的过渡色。灰度传感器是由高亮LED灯和光敏电阻两部分组成,当高亮LDE灯所发出的白光照射到可检测的路径上时,路径反射其部分光线,此时光敏电阻可检测到反射光线的强度并且能够将其转化为控制器可识别、处理的模拟信号。
为保证舵机能够正常地运作,对舵机进行速度与角度的调试是必不可少的。Robot Servo Terminal软件是专门用来对CDS5516机器人舵机进行调试的软件,如果在一个串联线上有多个舵机则此软件可以将每个舵机都检测到并且按照先后顺序对各个舵机依次进行调试。
搭建智能车需要的基本套件有MultiFLEX?2-PXA270控制器、灰度传感器、正六边形底盘、机器人专用舵机、轮子、连接件组及舵机结构件。搭建基本过程可以概括为首先用双孔U型结构件铆钉及连接件将控制器连接到正六边形底盘上,然后将黄色连接件安装在舵机架中间的孔中,通过铆钉将舵机安装在舵机架的镂空部分,再将轮子通过连接件安装在固定好的舵机上并对称地安装在底盘的四周,最后将驱动部分的信号线连接到控制器的Robot Servo端口上,至此寻迹机器人的运动部分搭建完成。灰度传感器的使用数量及排列方式不同对机器人寻迹效果起着决定性的作用,为了获得相对较好的寻迹效果而又不至于使得控制太复杂,本智能车采用三个灰度传感器在正前方并排排列。灰度传感器的信号线与控制器的AD Port接口相连。制作的效果图如图2所示。
四、软件设计
系统的软件工作流程如图3所示。
为了使机器人能在不同的光照条件下正常运行,需要分别在强光、正常光及暗光条件下对反射光线强度的上下限值进行确定,具体实验结果见表1。根据实验可以看出,不管是在何种条件下路径的上限值都要低于地面的下限值,综合各种条件确定一个临界值。
由于每个传感器所检测到的信息都是相互独立、互不影响的,于是可利用二进制对每个传感器是否检测到路径进行单独设置:0表示传感器没有检测到路径、1表示传感器检测到路径。三个传感器检测结果可用一个三位二进制iNum来表示,其中左边传感器检测结果为低位。根据iNum得出控制器控制舵机的运行,如表2所示。当传感器检测到不同的信息时,传感器的光敏电阻将该信息反馈给控制器,得到检测信息,并对其进行编号以后,就可以对不同的编号进行具体分析,得到机器人不同的运动状态。
NothSTAR是一个图形化交互式机器人控制程序开发工具。在这个软件中有许多实用的模块,使用这个软件我们不用特意地去编写那些复杂的程序,只需要在软件中将模块进行拖动连接并且将模块的一些基本的属性进行设置,就能够方便快捷地编写出控制机器人运动的程序。当程序编写完成并对程序进行编译后就可以将编译完成后的程序下载到机器人的控制器中进行运行。
通过对传感器检测到的信息进行编号后可得出8种不重复的组合,添加8个舵机控件,8个跳过控件、8个条件判断控件及8个条件结束控件,对舵机直线运动速度、平缓转弯速度、剧烈转弯速度分别进行设定。至此可以得到完整的图形化程序如图4所示。
五、结束语
通过自己查阅资料和老师指导,成功地实现了机器人的路径跟随功能。虽然该机器人的功能比较简单,但我相信通过不断的学习,随着知识应用的提升,机器人智能化也将不断提高。
参考文献:
[1] 张克明,毕春光.电磁寻迹车的设计与实现[J].信息技术与信息化,2014(9):168-171.
[2] 王佳,胡侠,柳洪义.球形管道机器人设计[J].机械设计与制造,2006(12):133-135.