APP下载

基于多传感器的IEEE电脑鼠位置检测技术研究*

2014-12-31曾国强谭承君

传感器与微系统 2014年6期
关键词:陀螺仪迷宫编码器

吴 刚,曾国强,汪 键,严 磊,杨 剑,谭承君

(成都理工大学,四川成都 610059)

0 引言

电脑鼠是一个自主式移动机器人,能够自主搜寻迷宫,完成IEEE制定标准中的竞赛任务[1]。随着世界人工智能的发展,每一届IEEE国际电脑鼠走迷宫竞赛都吸引了众多爱好者的参与[2],尤其在美国、英国、日本、新加坡等国家十分流行。依照竞赛规则,电脑鼠必须自行决定搜寻法则[3]。电脑鼠在搜寻迷宫终点过程中,执行前进、转弯、后退等动作,而每个迷宫格环境可能不相同,需要电脑鼠实时判断其所在迷宫格的位置,不断修正姿势,避免撞上迷宫墙壁。因此,电脑鼠需要安装多种传感器,用于测量电脑鼠与迷宫墙壁间的距离、检测电机转速,以完成电脑鼠规定的动作和任务。

包含多传感器的技术融合是电脑鼠完成迷宫搜索、找到迷宫终点的关键。文献[4]提出了基于摄像头的电脑鼠传感器方案,实现了迷宫环境图像数据帧处理的方式,根据图像数据提取迷宫墙壁信息,但图像处理时间与迷宫检测精确性呈反比,不适合高实时性的电脑鼠获取迷宫信息。文献[5]中提出了光电编码器和光电传感器的电脑鼠传感器方案,解决了电脑鼠在迷宫内的定位问题和迷宫墙壁检测问题,但仅靠这2种传感器在电脑鼠高速转弯时姿势难以校正,不利于电脑鼠姿势实时校正。文献[6]中提出了运用一体化红外传感器判断有无迷宫墙壁的方案,通过步进电机计数判断电脑鼠走过的距离,每转一圈返回75个脉冲,不能满足精确的定点距离判断。因此,需要设计高速、高效、精准的电脑鼠传感器,保证电脑鼠在最短时间内完成迷宫搜索和冲刺。本论文提出了运用线性红外传感器、积分型陀螺仪、正交编码器的电脑鼠传感器方案,让电脑鼠能自由在迷宫内进行各项动作。

1 实现方案

图1所示为电脑鼠传感器方案的硬件框图,采用Cortex—M3为内核的STM32为微控制器,运用线性红外传感器、编码器、陀螺仪等多传感器的检测方法对电脑鼠进行实时位置检测。通过设计的Matlab软件接口接收电脑鼠无线模块发回的各传感器数据,可以分析红外传感器数据观测电脑鼠的实时姿势,对编码器数据进行分析掌握电脑鼠速度与运动距离;对陀螺仪数据进行分析观察高速情况下电脑鼠的转弯效果。

图1 硬件框图Fig 1 Hardware block diagram

2 传感器应用

2.1 编码器电机位置计数

图2 编码器工作模式Fig 2 Encoder operating mode

2.2 陀螺仪转弯角度速度积分

电脑鼠在快速运动过程中,有可能轮胎打滑,导致电脑鼠在姿势修正时红外传感器不能及时检测迷宫墙壁,造成转弯角度误差,因此,选用陀螺仪ADXRS610修正电脑鼠在转弯时的误差。从ADXRS610技术资料中可以查到,陀螺仪输出电压值与角速度呈正比,以2.5 V为参考电压,典型的输出电压与角速度的关系是6 mV/((°)/s),输出电压大于2.5V时,角速度为正值;反之,角速度为负值。假设量测范围是±300°/s,那么,输出电压为

设陀螺仪输出的电压值U,由图3曲线关系知

本文中STM32自带的12位ADC,将0~5V陀螺仪的输出电压范围转换成0~4095的数值范围时,零点电压2.5 V的数值是2 047,那么,角速度为300°/s时的相应值是

由式(3)、式(4)得

ADXRS610为积分型陀螺仪,对角速度进行积分求得转弯角度

对式(6)进行离散化处理,得到

对陀螺仪输出角速度n次采样后

2.3 红外传感器测距

2.3.1 红外发光二极管

传感器选用红外发光二极管OSE—1L1,波长为90 nm,工作电压5 V。红外发光传感器发出的光线是肉眼不可见的,但在空气介质中形成了一定的球面度。数据曲线Q=I(sr),sr是立体角国际单位,r为发光传感器照射的半径(cm)。当红外发光二极管工作在典型电流值50 mA时,发射强度为50 mW/sr。发射光强度与球面度的关系

光路是可逆的,红外线照射到迷宫墙壁上会被吸收少量的光线,红外感光器接收到的光线会比理想情况下减小,因此,光在迷宫墙壁上有损失,在接收端的光强与球面度的关系为

式中 α大小与迷宫墙壁反射率相关。

2.3.2 红外接收传感器

选用红外TSL262R为接收传感器,接收的辐照需要由波长峰值为940 nm的红外发光二极管提供,该传感器能够根据接收到的光强度转换为压电信号,典型的辐照反应是111mV/(μW/cm2),并且该传感器内部集成滤波电路,体积较小。TSL262R输出的电压信号与接收到的光能量强度在对数图形上呈正比,选取TSL262R数据手册上输出电压与接收光能量的关系曲线上(100,0.9)(10,0.09),求解输出电压和接收光能量的对数关系方程

将式(10)带入式(11)中

由上式得出了红外接收传感器输出电压与迷宫墙壁距离的呈线性的关系,由于不同迷宫的墙壁反射率α并不是完全相同,并且相同电路的不同红外发光二级管发出的光强也会存在细微的差异,此公式不能直接套用。根据红外接收传感器TSL262R输出电压与接收光能量强度的对应的对数关系,假设红外接收传感器检测到的光强为βEe,外界常量因素为b,则用公式lgvo=αlgEe+β代替式(12)

参数r为电脑鼠到迷宫墙壁的距离,c为红外发光二极管发射强度和迷宫墙壁反射率的影响。因此,红外接收传感器输出电压与电脑鼠迷宫墙壁距离存在对数关系

参数c和不同迷宫墙壁的反射率有关,d和红外发光二极管发射强度与迷宫墙壁发射率有关。

2.3.3 红外数据拟合

红外发光二极管和红外接收传感器形成红外检测电路,STM32将ADC采回的电压值上传到PC上,在PC上经过数据解析,可以得到红外接收传感器输出电压与电脑鼠同迷宫墙壁距离的一组实验数据如表1。

对表1数据10个点预测距离依据式(12)进行建模如下:F(r)=cr+d,其中,系数a,c可以通过最小二乘法计算出来的数据的偏差的平方和拟合计算[7],2个未知数的10个方程如下

在Matlab环境下,对表1的电压和距离数据进行最小二乘法拟合,获得如图3所示的红外输出电压与迷宫墙壁的数据拟合图,可以计算出最接近真实值的c,d值,求得c为 -0.6126,d为0.6525,残差r=0.0869。根据拟合曲线,电脑鼠通过判断相应的采样电压,可以确定与迷宫墙壁的距离信息。为了验证红外数据拟合曲线上电压与对应距离的可靠性,以及数据点个数的选取的合理性,表1中对相同电压下,实际距离与不同数据点预测距离进行对比验证。

图3 红外输出电压与迷宫墙壁距离数据拟合图Fig 3 Data fitting diagram of IR output voltage and maze wall distance

表1 相同电压下实际测量距离值与预测值对比Tab 1 Contrast of actual measurement distance and predicted values in same voltage

每格迷宫是18 cm×18 cm,选取红外线传感器测距范围4~13 cm。从表1中每组预测数据与实际检测距离比较可以看出:采用3个点预测的值各个点与真实值最接近,5个点预测值和4个点预测值在越靠近迷宫墙壁时预测值偏差变大,2个点预测值在距离迷宫墙壁较远时误差偏大。总体上用最小二乘法拟合的曲线偏差都较小,红外接收传感器采用经过拟合后的数据能有效检测迷宫墙壁距离,根据检测到的距离,电脑鼠可以定点执行姿势清零、姿势调节、动作预判、方向转换等。

3 实验效果

电脑鼠在迷宫内运动时,电脑鼠端配置无线发射模块,无线发射模块向PC端发送电脑鼠各传感器的状态数据:电机编码器脉冲信号、红外接收传感器输出电压值、陀螺仪输出电压值,PC端接收到的传感器数据运用Matlab软件制作电脑鼠运动状态数据曲线,根据理论建模设定的转弯加减速参数、直线运动距离制作理论曲线,通过比较实际速度曲线与理论速度曲线的差别,改进电脑鼠直线和转弯过程中的各项参数,以修正电脑鼠在迷宫内的运动姿势。

图4为运用多传感器检测电脑鼠运动状态和位置,在迷宫内运功的左右轮速度曲线,显示了直线、90°转弯、连续转弯姿势修正预期效果。对各段数据逐一分析如下:

图4 电脑鼠左右轮速度曲线Fig 4 Left and right wheel speed curve of micromouse

1)Ⅰ段为电脑鼠直线运动,采用红外和编码器进行姿势修正;

2)ⅡⅣ段为左右轮以绝对值相同的加速度减速和加速,由于运用了PID控制算法,让电脑鼠经过加减速后能够快速达到稳定状态;

3)左右轮快速加减速并达到稳定匀速;

4)ⅡⅢ段右轮速度大于左轮速度,电脑鼠向左转弯90°,采用陀螺仪转弯姿势修正;

5)ⅣⅥ段为左轮速度大于右轮,向右转弯90°,采用陀螺仪转弯姿势修正;

6)Ⅴ段连续转弯时,转弯完成后,采用红外单面墙壁姿势迅速修正。

4 结论

电脑鼠设计技术难度较大,涉及机械、电子、计算机、传感器技术、控制技术等多项技术,需要把感知、规划、决策和行动等各种模块有机地结合起来[8],才能完成迷宫搜索冲刺任务。本文提出运用编码器、红外传感器、陀螺仪的检测技术,针对红外采用了最小二乘法拟合出红外的探测距离,在测距精准的同时,配置了高精度的编码器和陀螺仪,让电脑鼠在直线运动、转弯过程中都有传感器检测迷宫信息和电脑鼠姿势,较好实现了电脑鼠的位置检测。本文设计的电脑鼠实践效果较好,在2012年IEEE电脑鼠走迷宫全国总决赛中,以3.92 s的成绩获得了全国总决赛冠军。

[1]Chen N.An updated micromouse competition[C]//26th Proceedings of IEEE Annual Conference on Frontiers in Education,FIE'96,1996:1057-1059.

[2]Gibb J,Hamey L.MINNI:Micromouse incorporating neural network intelligence[J].Australina Computer Science Communications,1997,19:194-201.

[3]Sharma M,Robeonics K.Algorthms for micro-mouse[C]//International Conference on Future Computer and Communication,ICFCC 2009,IEEE,2009:581-585.

[4]Chen N.A vision-guided autonomous vehicle:An alternative micromouse competition[J].IEEE Transactions on Education,1997,40(4):253-258.

[5]Su J H,Lee C S,Lin K E,et al.A hands-on laboratory for autonomous mobile robot design courses[C]//World Congress,2008:9743-9748.

[6]张辉辉,许 杰,崔琪琳,等.基于双T选频网络的电脑鼠红外检测系统[J].电子测试,2011,12(12):68-71.

[7]陈怀琛,吴大正,高西全,等.Matlab及在电子信息课程中的应用[M].北京:电子工业出版社,2006:36-120.

[8]Siegwart R,Nourbakhsh I R.Autonomous mobile robots[D].Cambridge:Massachusetts Institute of Technology,2004:181-186.

猜你喜欢

陀螺仪迷宫编码器
基于EMD的MEMS陀螺仪随机漂移分析方法
基于FPGA的同步机轴角编码器
我国著名陀螺仪专家——林士谔
大迷宫
应用旋转磁场编码器实现角度测量
微机械陀螺仪概述和发展
MEMS三轴陀螺仪中不匹配干扰抑制方法
迷宫
捕网迷宫
JESD204B接口协议中的8B10B编码器设计