微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 基于红外超声光电编码器的室内移动小车定位系统

基于红外超声光电编码器的室内移动小车定位系统

时间:06-30 来源:《电子工程师》 点击:

下面给出第2种情况的求解方法,见图3。通过比较光电编码器所测2个轮子的移动距离,可得出小车向移动距离短的轮子一侧转弯,已知红外超声测得的a′、b′、b点的坐标,2个轮子的间距d,线段aa′和bb′平行,ab和小车的运动方向垂直,根据几何知识可以求出a点的坐标和小车的移动方向,其他情况亦然。

2 系统的硬件结构

系统主要由超声波信标节点(参考点)、一个红外发射管、一个超声波发射头及各自的驱动电路和微控制器SST89E564RD(以下简称564RD)8位单片机组成。普通节点(目标点)由8个红外接收管、8个超声波接收头及各自的驱动电路和8个564RD组成红外超声接收单元,每一个红外接收和超声波接收为一对,用一个564RD控制,分成2组,每组4对,在每个轮子的上方一定高度间隔90°与水平面成45°夹角向上分布。因为测量的目标点是移动物体,所以采用多通道同时接收的方法缩短每次测量所用的时间,提高定位精度。光电编码器测距单元由译码轮、光电偶合器和一片564RD组成。用1片564RD作为主控芯片,与8个超声波接收单元、2个光电编码器测距单元使用串口进行通信,主控制器渎取各个单元的测量数据,完成定位运算,同时起到同步各个单元工作的作用。564RD的晶振都为40 MHz。图4给出单个红外管和超声波发射电路,图5给出单个红外管超声波接收电路。超卢波的发射管为T40-16(对应接收管为R40-16),中心频率为40 kHz。红外发射管为SE303A(对应接收管为PH302),564RD用2个I/O口分别输出载频为40 kHz、调频为5 kHz的方波信号驱动红外发射管,以及载频为40 kHz、调频2 kHz的方波信号驱动超声波发射管。

3 系统的软件设计

系统上电后各单元进行初始化,各部分工作如下:

a) 超声波信标节点不断向外发射红外和超声波信号,每个节点的红外与超声波信号编码相对应,并且与其他节点的信号编码不同。

b) 普通节点每隔1 s(可以改变,但不能太长,否则小车出现拐弯时运行轨迹可能不平行)进行一次定位,主控制器通过串口向各个单元发出定位信号并启动内部定时器,延时100 ms后依次读取8个超声测距单元所测得的a、b这2点到参考点的距离信息和2个光电编码器测距单元记录的位移信息,计算出移动小车的位置和运行方向。定时器定时到1 s后重复此过程。主控制器的软件流程如图6所示。

c) 2个光电编码器测距单元初始化后立刻开始记录轮子的位移,串口收到定位信号后,将记录的位移信息存到指定位置,等待主控制器读取,并从0开始继续记录位移情况。

d) 普通节点检测到定位信号后,接收红外和超声波信号,记录一组相对应的红外超声信号的超声波传输时间,存到指定的位置,等待主控制器读取。在串口接收到定位信号的开始100 ms时间内有这样的信号,则把第1次接收到对应的时间存人指定的位置就不再检测接收了,如果100 ms时间内没有检测到相应的信号,就送数据0到指定的位置。

4 系统误差分析及实验测距结果

定位误差主要有以下5方面:超声波器件的形状和安装位置造成坐标系参考点和待测目标点的位置偏差;系统电路器件延迟产生的误差;小车是不断运动的,由于超声波传输速度比较慢,请求定位时刻到定位完成,小车已经移动了一定的距离;在不能连续检测到足够参考点信号时,位置的确定依靠前一时刻的测量,会造成累计误差;温度条件对超声波的影响。

图7给出了在室温20℃、超声波速度为340m/s、小车2个轮子间距离为0.2 m、移动速度为0.2 m/s、平面二维定位实验测量的一段轨迹,实验通过对前3个方面误差补偿计算,使定位精度达到3 cm。

5 结束语

因为光电编码器测距定位依靠前一测量点的信息,必然导致定位误差的累积;而红外超声三边测距法是一种只依靠当前测量点信息的绝对位置定位方法。此系统综合了这2种方法,消除了累积误差,并解决了定位盲区的问题,对移动小车有一个较准确的定位。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top