自动跑位和数据采集机器人

2017-03-06 21:23叶忠民
电子技术与软件工程 2017年1期
关键词:陀螺仪

叶忠民

本文介绍了一种可以自动跑位并进行数据采集的运动机器人,该运动机器人可以根据输入的场地信息自动生成定位图,然后应用姿态检测模块和光流传感器模块实现机器人自动跑位到定位图中指定的位置并完成指定的任务。为了保障机器人跑位的灵活性和准确性,机器人采用麦克纳姆轮,其作用可以保证机器人可以灵活地向四个方向自由地运动。经过实验研究和检测,该机器人达到了研制的要求和目的。

【关键词】运动机器人 麦克纳姆轮 姿态检测 光流传感器 陀螺仪

在需要针对某些大型场地的某些参数进行检测的环节,往往需要在大量的指定位置进行测量,如果利用人工方式进行检测,工作效率低下,还难以保证检测数据的准确性,因此考虑采用机器人自动跑位,自动在这些点位上对某些参数进行检测。如果结合数据自动处理、上传,就能够实现全自动的检测。本文仅针对该机器人的设计、制作进行阐述。

1 详细设计

1.1 总体方案

该运动机器人的实物图如图1和图2所示。

为了实现机器人行驶速度和行驶距离的闭环控制,在四个车轮均安装了测速码盘,采用PID控制算法,以实现机器人的速度闭环和位移闭环控制。

PID控制器由比例单元(P)、积分单元(I)和微分单元(D)组成。其输入e (t)与输出u (t)的关系为

u(t)=kp[e(t)+1/TI∫e(t)dt+TD*de(t)/dt]

式中积分的上下限分别是0和t

因此它的传递函数为:G(s)=U(s)/E(s)=kp[1+1/(TI*s)+TD*s]

其中kp为比例系數;TI为积分时间常数;TD为微分时间常数。

本系统运动机器人的位移和速度闭环PID控制原理如图3所示。

图3中,控制给定值为行驶速度/位移,编码器测得的速度和位移值作为反馈,经过PID计算后得到控制输入量,控制输入量作用于控制对象,进而使机器人按照设定的速度/位移行驶。

1.2 定位导航系统

定位导航系统是运动机器人的“眼睛”,用于机器人运动定位,以达到是机器人可以在场内自动行驶的目的。本系统中要求定位导航系统能够:

(1)感知机器人方位。

(2)检测机器人运动位移。

为此,本系统中开发了姿态检测模块和光流传感器模块,以实现机器人的方向和位移监测,为下一步进行机器人路径规划提供反馈信息。

1.2.1 姿态检测模块

为了控制运动机器人在移动过程中的行驶方向,需要加入姿态检测模块,以实现运动方向的闭环控制。

惯性测量元件是能够测量重力方向或姿态角变化快慢的传感器,可用于检测转轴不固定或无固定转轴物体的角位移或角速度。因此,惯性测量元件常用于机器人系统、船舶、导弹、人造卫星、飞机等的姿态测量。常见的惯性测量元件包括倾角仪、电子罗盘、加速度计、陀螺仪等。

加速度计用于测量与惯性有关的加速度,一个典型的例子就是重力加速度,可以由输出的加速度值测量倾角,包括俯仰角和横滚角。基本的工作原理是加速度计静止时,加速度计输出作用于灵敏轴上的重力加速度值,即重力加速度在此方向上的分量。具体关系如图4所示。

加速度计输出与重力加速度的关系可表示为:

ax=g sinφ

ay=g cosφ

陀螺仪用于检测刚体转动产生的角速度或角位移的传感器,即使没有装在转动轴上,也能检测刚体的角速度或角位移。陀螺仪输出为绕灵敏轴的角速度,对其积分就可以得到姿态角,可用于测量俯仰角、横滚角和偏航角。陀螺仪的动态响应好,但是存在漂移和噪声,导致累积误差随着时间的推移而逐渐增大。

为了结合两种传感器的优点,通过将二者数据进行卡尔曼滤波,再经过四元数姿态结算,就可得到准确、实时的姿态角度信息。

(1)姿态检测传感器。姿态检测传感器采用MPU-6000(6050)芯片。MPU-6000(6050)为全球首例整合性6轴运动处理组件,相较于多组件方案,免除了组合陀螺仪与加速器时之轴间差的问题,减少了大量的封装空间。

MPU-60X0 对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量转化为可输出的数字量。为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的,陀螺仪可测范围为±250,±500,±1000,±2000°/秒(dps),加速度计可测范围为±2,±4,±8,±16g。一个片上1024字节的FIFO,有助于降低系统功耗。和所有设备寄存器之间的通信采用400kHz的I2C接口或1MHz的SPI接口(SPI仅MPU-6000可用)。对于需要高速传输的应用,对寄存器的读取和中断可用20MHz的SPI。另外,片上还内嵌了一个温度传感器和在工作环境下仅有±1%变动的振荡器。芯片尺寸4×4×0.9mm,采用QFN封装(无引线方形封装),可承受最大10000g的冲击,并有可编程的低通滤波器。

关于电源,MPU-60X0可支持VDD范围2.5V±5%,3.0V±5%,或3.3V±5%。另外MPU-6050还有一个VLOGIC引脚,用来为I2C输出提供逻辑电平。VLOGIC电压可取1.8±5%或者VDD。

(2)主控制器。主控制芯片选用了STM32F103T8,ARM 32-bit Cortex?-M3 内核,它有64KB的闪存存储器,和20KB的运行内存。7通道的DMA,7个定时器,通过板子上的8M晶体和STM32内部的PLL,控制器可以运行在72M的主频上,对于姿态解算这种需要大量数学运行的程序,更快的处理速度可以做更多的解算优化。STM32F1系列属于中低端的32位ARM微控制器,该系列芯片是意法半导体(ST)公司出品,其内核是Cortex-M3。该系列芯片按片内Flash的大小可分为三大类:小容量(16K和32K)、中容量(64K和128K)、大容量(256K、384K和512K)。芯片集成定时器,CAN,ADC,SPI,I2C,USB,UART,等多种功能。

控制板上的传感器通过I2C接口与STM32连接,同时传感器的数据中断引脚与STM32的IO相连。使得传感器在完成ADC轮换后,STM32在第一时间读取最新的数据,快速响应姿态的变化。这样的连接使得控制器拥有最大的主动权,最快地获取各传感器的状态和转换结果。

1.2.2 运动位移检测模块

机器人在运动过程中,需要是是测量其在水平面的移动距离,以便于控制其移动到设定光照采样点上,目前常用的测位移方法有编码器,激光测距等。编码器测距对场地平整度、摩擦力要求较高,当轮子出现打滑后,测量值将出现误差。激光测距测量精度高,但是对环境要求高,需要有反射物,无法测量水平位移。ADNS3080传感器是一种高性能的光学鼠标测量元件,其可以感知鼠标等在水平和竖直方向的移动速度,对速度进行積分,即可得到物体在水平和竖直方向的移动距离,即

s=s+v*t.

ADNS3080传感器的另一大优点是无需接触地面,即可实现距离测量,因此使用该传感器既可以测量篮球场、网球场等地面平整的场地,也可以测量足球场等地表有附着物的场地,满足了多种场地的测量需求。

将传感器安装在运动机器人底盘底部,传感器镜头对准地面,水平前后移动机器人,测得机器人在水平方向的运动位移如图6所示。

2 试验运行结果

如图7所示,在计算机中输入被检测的篮球场基本信息后,计算机便可以自动在软件中形成该场地需要的检测点位图(计算机屏幕左下角即为该点位图)。生成点位图后,便可以通过无线控制方式指挥机器人跑到指定的点位。

图8所示,试验人员按照计算机自动生成的点位图,在实际场地上黏贴纸张进行了标注,启动计算机的运行程序后,机器人自动跑到了标注的位置,由于跑位准确性要求不高,故并未进行定位准确性测量。

3 结束语

该机器人可以应用于定位精度不高,但需要在很多点位进行数据自动采集的场合,其优点是自动化程度高、跑位灵活快速、应用方便。

参考文献

[1]金奇,邓志杰.PID控制原理及参数整定方法[J].重庆工学院学报(自然科学版),2008(05):91-94.

[2]侯文生,戴加满,郑小林,杨琴,吴小鹰,许蓉.基于加速度传感器的前臂运动姿态检测[J].传感器与微系统,2009(01):106-108.

[3]梁阁亭,惠俊军,李玉平.陀螺仪的发展及应用[J].飞航导弹,2006(04):38-40.

[4]王铁流,李宗方,陈东升.基于STM32的USB数据采集模块的设计与实现[J].测控技术,2009(08):37-40.

[5]孔维荣.基于运动模糊图像的位移检测技术研究[D].江西理工大学,2015.

作者单位

1.浙江省质量检测科学研究院 浙江省杭州市 310013

2.浙江方圆检测集团股份有限公司 浙江省杭州市 310013

猜你喜欢
陀螺仪
基于Allan方差分析的陀螺仪漂移误差辨识与仿真复现
基于EMD的MEMS陀螺仪随机漂移分析方法
基于陀螺仪输出误差观测的冗余INS标定方法
一种单目相机/三轴陀螺仪/里程计紧组合导航算法
硅微阵列陀螺仪的模态分析与实验
我国著名陀螺仪专家——林士谔
陀螺仪故障数据检测的神经网络算法
“蓝天王国”奇遇记(十一)——陀螺仪
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
微机械陀螺仪概述和发展