基于激光测距的光电“寻的”智能小车控制系统
基于激光测距的光电“寻的”智能小车控制系统
作者:李成勇;胡晶晶;
近年来,无人控制的智能小车自动行驶逐渐成为关注的热点。自动行驶技术涉及到方方面面控制处理,是一个复杂的系统,是自动驾驶的一个缩影。目前智能小车在自动行驶过程中识别障碍物、避开障碍物基本上通过摄像头采集道路信息来保证,不仅信号采集速度慢、受外界电磁干扰严重,影响小车行驶路线,且易出现信号处理中断,智能小车在快速行驶时无法及时有效避开障碍物,为了有效避开障碍物,可以降低小车速度,但小车行驶效率将大大降低,应用一直受到制约。为解决以上问题,在不降低小车速度的同时,有效避开道路上的障碍物,沿设定的道路行驶,本文提出基于激光测距仪的循迹智能小车控制系统,用于实现小车快速自动行驶。
1 系统方案的选择与描述
1.1 速度控制算法设计
实现小车速度控制算法有2种:比例控制算法和PID(比例-积分-微分控制器)控制算法。其中比例控制算法实现简单,比例系数容易操作,整个算法计算过程不复杂,只需要在小车发生偏移时设定一个反向偏移量来纠正小车的位置信息,让其回到正确的路径上。在本系统应用中,视觉传感器和激光传感器的个数不固定及布局比较灵活,导致系统输出值是离散化的,因此比例系数很难调整,造成舵机左右摇摆幅度偏大,不利于小车平衡,很容易造成小车侧翻,不能提速。而采用 PID控制算法可以优化比例控制算法的不足,通过积分和微分控制器的调节,使离散值在一定区间,这样比例系数很容易设置,可以让小车提速时保持平衡。因此本文选择PID控制速度,实现小车有效加速和减速。
1.2 小车位置信号采集传感器选择
小车位置信号采集可以采用2类传感器实现:光敏电阻和pixy视觉传感器。光敏电阻主要是通过电阻值随着光照强度不同输出不同的电平值来感应光源信息的。测量时比较灵敏,同时受自然光等外界光源影响较大,很容易出现误判,尤其是小车快速行驶时,光敏电阻灵敏度很难适应小车的采集要求,误差较大。pixy视觉传感器,可以配合处理器跟踪、分析许多有颜色的数据。其图像传感器上本身搭载着一个处理器,双核处理速度快,可视域广(水平:±75°,垂直:±47°),兼容性好。此传感器属于智能传感器,以颜色为处理中心,可以只选择用环境中需要的信息单独采集,将要采集的物体颜色及时发送给主控制器,进行数据分析处理,筛选需要的物体信息采集光源灵敏度高,因此本文中采用pixy视觉传感器采集小车位置信号。
1.3 测距传感器选择
避开道路障碍物有2种方案实现:超声测距传感器和激光测距传感器。其中超声测距是利用超声波来回传播声波来发现障碍物,小车行驶中,超声波传感器发射器发送声波,遇到障碍物声波发射回来,超声波接收器接收到声波,通过声波传输速率加上传输时间就能计算出障碍物距离。超声波在小车静止状态下,测距效果良好,随着小车速度提高,发射器传输信号干扰严重,接收器在近距离反射时超声波干扰大,使控制中心不能明确判断障碍物的方位,从而动作紊乱,不能实现要求。激光测距传感器和超声波传感器结构上是相似的,都是有发射器和接收器组成,但激光测距传感器的发射器是由震荡管和放大器构成,震荡管只能产生180kHz频率的震荡波,由于频率过低,很容易衰减,通过三极管放大,激光管发光,接收器只能接受 180kHz的频率光强。通过调制技术处理,这样可以避免外界光源干扰,只接受相同频率的反射光,因此本系统设计中选用激光测距,可有效防止可见光对反射激光的影响。
2 理论分析与计算
2.1 控制算法的理论分析
根据小车行驶过程中道路情况,速度控制可通过PID算法来对舵机进行控制。
2.2 信号采集传感器的理论分析
Pixy采用基于色度的颜色滤波算法(hue-basedcolor filtering algorithm)来检测物体。计算图像传感器每个 RGB像素的色度和饱和度将其作为主要的滤波参数。pixy可记忆多达7种不同的色彩饱和度。如果需要更多色彩饱和度可用色码,pixy一次可以找到上百个物体。pixy处理一幅640×640像素图片仅需1/50s,每20ms即可更新一次检测小车的位置。
2.3 测距传感器的理论分析
激光测距传感器可以实现物体在动态特征下无接触远距离测量,是光测量的一种有效应用。主要组成是发射管、反射管、测量电路。传感器有一对信号发射与接收二极管,发射管发射一定频率的信号,接收管接收三种频率的信号,当传感器的检测方向遇到障碍物(反射面)时,信号反射回来被接收管接收,经过处理之后,通过数字传感器接口返回到STM32单片机。本系统设计选用激光测距传感器型号为 GY-530VL53L0X,激光传感器是新型测量仪表,在小车快速行驶中,采用激光传感器测距可以避免外界干扰,测量数据精度高。
通过激光测距传感器采集到小车与障碍物之间的距离,采用路径识别算法,从而调整小车行驶路径,到测距作用,路径识别算法是通过 A/D 端口将激光测距红外管接收端转化的电压值读入单片机。各个激光红外接收器相对于标准线所测量的距离是模拟量,经过模数转换,把这些数字量应用插值算法得到小车位置信息更准确。
3 电路与程序设计
3.1 硬件的设计
首先通过信号采集传感器pixy采集光源的位置信 号,红外测 距 检测障碍 物的信 息,然后送 到STM32F103RDT6单片机中,STM32F103RDT6对数据进行处理,驱动小车的电机。
3.2 软件的设计
首先对系统进行初始化,信号进行检测(光信号和测距信号),若检测到光信号,调整转角的方向,驱动小车前进,完成灭灯。若检测到测距信号,调整转角的方向,驱动小车前进,避免触碰障碍物。通过控制PWM 口的信号输出可以实现轮速的控制。
4 测试方案与测试结果
4.1 测试方案
当传感器检测到红光时,左右车轮高速转动,小车直行;当左边一级红外光电传感器检测到黑线时,小车左轮高速正转,右轮低速正转,实现一级左转;当左边二级红外光电传感器检测到黑线时,小车左轮高速正转,右轮停止转动,实现二级右转;当右边一级红外光电传感器检测到黑线时,小车右轮高速正转,左轮低速正转,实现一级右转;当右边二级红外光电传感器检测到黑线时,小车右轮高速正转,左轮停止转动,实现二级左转。
4.2 测试结果及分析
按照上述设计方式 ,完成了智能小车控制系统模型,在规定的时间内,经过从指定位置出发,快速搜寻场地内随机点亮的信标灯,当小车进入点亮的信号灯一定范围,即视为达到信号灯处,信号灯随熄灭,同时下一个随机选择的信标灯点亮,统计灭灯个数。每个灯被灭后可能再次亮。
根据不同距离pixy图像识别传感器返回的数据,计算出当前信标灯对应小车的坐标值,pixy 图像识别传感器测试数据,可以得出以下结论:在300s时间内,平均灭灯超过55个,说明系统能准确识别障碍物光源的位置信息;通过图像传感器得到的左中右坐标值,误差在1cm 范围内,说明系统能准确识别障碍物光源的位置信息,小车能够准确识别障碍物的位置信息,小车能够进行右右坐标位置测量,说明系统能够准确驱动电机转动方向;小车在1m、2m、4m 位置处得到坐标值,说明系统能准确驱动小车前进,完成灭灯。本设计达到了设计要求。
5 结束语
本系统采用视觉传感器和激光测距传感器来锁定小车及障碍物位置信息,这两个位置锁定有助于行驶路径的控制,选用的pixy图像识别传感器,在小车稳定不抖动的情况下数据精度较高,测试多组数据相差值都较小,几乎可以忽略,系统稳定,数据传输准确,本系统达到了预期效果。
本文章转自爱学术(aixueshu.com),如有侵权,请联系删除