0 引言
本文主要说明对移动机器人底盘的设计与研究包括底盘的机械部分和控制部分的设计研究。机械部分主要是搭建底盘,包括底盘前期的设计与加工采购相应的硬件设备并将底盘各个零部件进行组合安装。控制部分采用ARDUINODUE控制和C#编写控制界面,从而实现整体运动预期目标是使机器人底盘实现室内坐标定位、室内非巡线导航、室内测距避障的功能,最后,完成底盘的设计与研究。
1 概要
1)此底盘由铝合金和自行设计到机加工的零件组成。
2)运动机构由电动机带动的平行双轮,前后2个万向轮。
3)在主动轮附近添加固定编码器的机构由主动轮带动编码器轮,要留意的是编码器轮跟主动轮要在一个同轴度上。若电动机自带有编码器则不需考虑。
4)此底盘圆最大直径为450mm。
5)感应器位置、数量由实现具体功能决定本底盘在左右两侧各安装1个超声波感应器,用于测量距离外物的距离从而做出自动调节的动作。前上左右4个方向各安装若干红外感应器,用于避障等功能。
6)电动机、编码器等元件,在参数选择上要考虑多个方面从设计到使用。由于考虑方面过多,不—一说明。
2 物料选型
物料的选型上没有太大的原则,只要是电动机、编码器与主板这些主要物件选择较为知名的品牌即可其他物料可以视情况而定,例如价格、大小等等。我们在三维建模之前就必须确定下来物料的选择,同时记录下每一个物料的尺寸大小这在后面的设计中尤为重要。具体的物料选型清单见表1。
从选料中选取建模所需的数据,记录下来在模型中使用。需要注意的是一些数据是有尺寸公差的,也要在图中表明,大多数都是一些配合尺寸。底盘的三维模型如图1所示。
传感器一般为3根线,包含电源线和信号线。把信号线对应I0记录下来,制作信号表方便后面的程序编写。电动机驱动是连接PWM输出I0口,一个电动机2路PWM输出控制共4路。编码器线是接在输入IO口以读取编码器脉冲数。5V低电压的连接可以用杜邦线24V电源线就要用0.5大小的电线。以防止杜邦线过载造成起火。在接线的时候按照一般的电气原则即可。电气原理如图2所示。
下位机控制系统中主要是编写、存放在控制板中的程序设计,可以分为两部分,一是各部分的驱动程序,二是逻辑循环程序。下面写出几种驱动程序作为示例。分别为测距驱动、红外驱动、电动机驱动(编码器驱动、无线模块驱动等等不一一列出)。
1)超声波有控制口和接收口之分,一个控制口发一个10us以上的高电平,就可以在接收口等待高电平输出。在有输出的时候就可以开定时器计时,当此口变为低电平时就可以读定时器的值此时就为此次测距的时间,方可算出距离。如此不断地周期测量,就可以得到移动测量的值了。超声波传感器的驱动程序如图3所示。
2)红外线传感器驱动。红外传感器是一种集发射与接收于一体的光电传感器。检测距离可以根据要求进行调节。红外传感器可以视为一个继电器的作用当红外传感器接触到物体时线圈得电,常开触点或者常闭触点,闭合或者打开,得到信号。其特点在于可以调节检测距离这是一大特色。电压:5VDC,电流:100mA距离:3~80cm。红外驱动程序如图4所示。
3)电动机驱动。直流电动机的工作原理是只要给线圈供直流电无论电动机哪边接正负正负极对接只会改变转子的转动方向,电动机都会工作,只要电压、电流足够。转子转动速度跟电压大小成正比,扭力跟电流跟正比。我们把电源直接接在电动机上是不能调速的因为改变不了电压的大小。如果把直流电看做一条线那我们要做的就是把这根线打断,捋它分为若干份直流电,电动机就会在一个周期内只是正常工作半个周期半个周期不工作这样就可以达到改变直流电动机速度的方法,我们一般把这种电源称为脉冲,我们只需要在单位时间内输入固定的脉冲数就可以让电动机保持一个速度转动增加脉冲数速度增加减少脉冲数速度减少。加上我们已经知道电动机的正反转是改变电源正负方向即可。电动机驱动部分程序如图5所示。
而循环部分的程序,就是在某个时刻驱动某个电气元件,完成规定的动作通过结合传感器信号,形成逻辑关系以一次终止或者无限循环的形式执行程序。图6是底盘前进、停止、和原地右转的部分程序。
6上位机界面设计
界面进行需求分析:1)需要与下位机进行串口通信,因此需要连接串口的串口号和与下位机进行硬件类型匹配的初始化2)需要用户输入坐标位置指示目的位置;3)暂停执行命合和停止上位机命合)上位机接收下位机传递到串口数据的显现界面5)超声波与红外线是否在运行的显示界面6)行走方式的选择。这是经过讨论并修改过后的最初界面,它清晰地显示出下位机的执行过程与下位机的执行动态,因此我们最初确定了这个界面,当然包括它的功能。上位机示意图如图7所示。
7 实验验证
实验需要实现室内坐标定位、室内井巡线导航、室内测距避障的功能才能说明底盘的可行性。为了同时检验三个功能,为此设置了一个特定的环境以便实验的顺利进行,如图8所示。
在实验时底盘放在距离墙20cm(假设)的位置,并定为原点(0,0)小车需要运动到(xy)点。图示中目标点在原地左边x为负数。
方向可以在实验开始时底盘原地转动,调节直到底盘右边平行墙。图8中,先走目标位置y的距离过程中会遇到一个路障底盘绕过路障继续往前走小车与墙的距离保持在20cm的距离不变。y方向行程完成后底盘左转90°继续前行,过程中遇到路障并绕过路障继续运动直到到达目标点。记录(x,y)完成第一段路程。第二段路程是底盘从(x,y)返回原地(0,0)具体是底盘自转一定角度,然后直走回到原点。记录下回到原点的位置(xbyn)。实验重复3次以减少误差提高实验可信度。理想运动位置如表2所示实验位置如表3所示。
8 结语
底盘从设计到构建完成,VS编写上位机界面,然后整体的调试。每一步都是经过深思熟虑多次实践而完成。底盘通用性较高,功能的增加可能有待开发在此只是实现底盘基本动作。实验的结果误差也在可接受范围以内,此机器人底盘在室内运动在一定程度上有很大的优势。
暂无评论内容