轮式移动机器人运动控制系统研究与设计
摘 要: 基于差速转向原理,设计了一套轮式移动机器人的运动控制系统。首先选择小车的模型(运动模型), 进行运动学和力学分析,得出左右两侧车轮的速度约束,然后设计机器人的运动控制模块和无线遥控模块。运动控制模块可分为控制电路和驱动电路两大模块,控制电路以DSP作为核心控制部件,捕获编码器的信息并产生PWM信号;驱动电路以直流电机H桥集成芯片为驱动部件,接收来自DSP的控制信号。无线遥控模块选用AVR单片机作为控制核心,实现A/D转换和指令发送等功能。实验证明,该系统不仅能实现较长距离的无线控制,传输可靠,而且速度控制准确,车体运动灵活。
关键词: 差速转向; AVR单片机; DSP; 无线控制
中图分类号: TN4?34; TP2 文献标识码: A 文章编号: 1004?373X(2016)02?0022?06
Research and design of motion control system of wheeled mobile robot
YANG Junju, LIN Rui, WANG Zhenhua, SUN Lining
(Robotics and Microsystems Research Center, Soochow University, Suzhou 215000, China)
Abstract: A motion control system of differential steering wheeled mobile robot was designed on the basis of the differential steering principle in this paper. A trolley model (motion model) is selected firstly to conduct kinematics and mechanical analysis, and obtain the speed constraint of the wheels on both sides. Then the motion control module and wireless remote control module of the robot are designed respectively. The motion control module can be divided into two parts: the control circuit module with DSP as its core which can obtain the encoder information and generate PWM signal, and the drive circuit module with H?bridge driving chip which can receive control signal from DSP. The AVR microcontroller is taken as its control core of the wireless remote control module to realize the functions of A/D conversion and instruction issue. Experimental results show that the system can not only realize long distance wireless control reliably, but also have accuracy speed control and flexible body movement.
Keywords: differential steering; AVR SCM; DSP; wireless control
差速转向常用于移动机器人中,现如今因为很多轮式机器人在外形尺寸上有严格的要求,而差速转向由于结构紧凑,重量轻,不需要专门的转向机构,而且可实现较小半径甚至零半径的转向,所以近年来差速转向越来越多地运用于各式移动机器人中。
1 小车运动模型的建立
轮式机器人的差速转向模型一般可分为3种,图1(a)为后驱动轮独立驱动,前轮为万向轮。这种结构特点是结构简单、旋转半径理论上可为零,但这种结构在转动过程中形成的速度瞬心位于两驱动轮轴心连线上,所以即使机器人旋转半径为零,旋转中心也与车体几何中心不一致。图1(b)是在图1(a)结构的基础上在车体后面加了一个万向轮。图1(c)与图1(b)、图1(a)的区别之处在于,相对于3轮和4轮结构,6轮结构具有更大的承载能力和稳定性。但是不管是图1(b)还是图1(c)所示的结构,为了避免驱动轮在某些位置悬空,都需要加装悬挂机构,这就使结构复杂化以及制造成本升高。为此本文选用图2所示的差速模型。该模型的前轮和后轮都设计成驱动轮,能产生很大的驱动力,转弯灵活,在一定条件下可实现原地旋转,相对于有万向轮的结构来说具有较好的直行能力,定位精度高。
为了控制机器人的转向,需要对机器人进行运动学分析,得出左右驱动轮的转速,便于DSP控制器的控制。由于该机构不可避免的会使机器人发生滑移,为了使机器人能够原地旋转,需要对机器人进行力学分析,设计出合适尺寸和质量的轮式机器人。
图1 轮式车辆差速转向模型
图2 四轮驱动小车差速转向模型
1.1 小车运动学分析
参考阿克曼(Ackerman)转向几何学原理,即在汽车转向时4个轮胎都近似围绕一个中心点旋转以保证汽车的行驶稳定性。把汽车的形心作为质心,并且忽略路面情况变化等的影响,可得出四轮驱动差速转向小车的运动学模型如图3所示。
图3 四轮驱动小车运动学模型
图3中,[α1]和[α2]分别为前左轮和后左轮,前右轮和后右轮的转角;[2L]为左右轮距离;[2K]为前后轮轴距;[v]和[ω]分别为车子质心的线速度和角速度,[V1],[V2],[V3],[V4]分别为各个轮中心的实际运动方向。
由图3可以得出各速度和转角的关系:
[V1=ω?R1=ω?Ksinα1V2=ω?R2=ω?Ksinα2V3=V1=ω?Ksinα1V4=V2=ω?Ksinα2]
[V1y=V1cosα1=ωKtanα1=ω(R-L)V2y=V2cosα2=ωKtanα2=ω(R+L)V3y=V3cosα1=ωKtanα1=ω(R-L)V4y=V4cosα2=ωKtanα2=ω(R+L)]
式中:[R=vω。]
则电机的角速度为:
[ωn=Vnyir, n=1,2,3,4] (1)
式中:[i]为减速器的减速比;[r]为车轮的半径。
1.2 小车动力学分析
由于小车没有转向机构,小车转向时会和地面发生滑移。以原地旋转为例,若不计空气阻力,小车受到地面的力可分为静摩擦力,滚动摩擦力和滑动摩擦力,各力的方向如图4所示。其中,静摩擦力为[F],提供小车旋转的动力,滚动摩擦力为[Fo],滑动摩擦力为[Fμ]。
图4 四轮驱动小车受力分析
假设小车做匀速圆周运动,则每个轮子上所受合力方向为指向圆心[O]的方向,合力矩为0,由此可得出:
[4(F-Fo)?L=4Fμ?K] (2)
假设小车质量为[m],动摩擦系数为[μ],则滑动摩擦力为:
[Fμ=14μmg] (3)
将式(3)代入式(2)得:
[4(F-Fo)?L=μmgK] (4)
[4FL>μmgK] (5)
假设[T]为电机提供的转矩,[i]为减速器传动比,[r]为轮子半径,则:
[F=T?ir] (6)
将式(6)代入式(5)得:
[4TirL>μmgK LK>μmgr4Ti] (7)
2 控制系统硬件的设计
本系统可分为3大模块,分别为遥控模块,运动控制和驱动模块(如图5所示)及无线传输模块。其中,遥控模块以AVR单片机为核心。为了使功能模块化,把运动控制和驱动模块划分为DSP控制电路和驱动器电路,时个电路相互独立便于驱动器的散热。无线传输模块负责在遥控模块、运动控制和驱动模块之间传输数据。系统各部分组成如图6所示。
图5 运动控制和驱动模块
图6 系统总框图
遥控模块选用ATxmega128A1单片机作为控制核心,该单片机是一个基于AVR先进的精简指令集(RISC)结构的8位CMOS微处理器,具有32×8通用工作寄存器,带8个具有12位精度的A/D转换模块,内部具有两个精准的参考电压,用它可以采集的模拟电压精度理论可达0.002 V,能精确控制小车的速度。运动控制模块采用TMS320LF2407A DSP作为处理器,该处理器集成了多种控制资源,这些丰富的片上资源使得它在电机控制中比传统单片机更具优势,能达到更高的精度要求。无线传输部分选用基于ZigBee协议的XBee PRO S3B无线数传模块。
2.1 A/D转换及发送
遥控盒负责A/D转换以及数据发送。采用高精度二维摇杆电位器,可输出两路模拟电压经ATxmega128A1单片机的A/D转换模块转换后得到2路具有12位精度的数字电压值,分别用作线速度和角速度。由于芯片内部自带的参考电压值为2.56 V,故用2个1 kΩ的电阻对3.3 V电源分压,PB1和PB2端口分别作为2路模拟电压的输入口,电路图如图7所示。
图7 A/D转换电路
ATxmega128A1单片机具有8个串口,为保证传输可靠性,选用2个串口分别用作无线数据发送和有线数据发送接口。无线数据发送串口连接XBee PRO S3B无线数传模块,采用最小连接方式,DOUT引脚和DIN引脚分别接入单片机的PF2和PF3引脚。有线数据发送串口电平为RS 232电平,而单片机为TTL电平,因此需要用MAX3232芯片进行电平转换。
2.2 PWM信号的产生
为实现速度的闭环控制,采用如图8所示的编码器逆反馈形式。增量式编码器反馈回3相方波信号,A相和B相具有90°的相位差,方便判断旋转方向,Z相用于基准点的定位。CPLD主要起到电平转换的作用。DSP根据三相方波信号计算出电机的旋转速度和方向,与串口接收到的速度做对比,通过一个PID调节器产生PWM波形,进行速度的闭环控制。
图8 DSP运动控制系统闭环系统
2.3 H桥PWM驱动电路
由DSP产生的PWM信号传到驱动电路上。驱动电路的驱动器采用LMD18200,同一芯片上集成有CMOS控制电路和DMOS功率器件,利用它可以与主处理器、电机和增量型编码器构成一个完整的运动控制系统。内部结构图如图9所示,它内部集成了4个DMOS管,组成一个标准的H型驱动桥。引脚2,10接直流电机电枢,正转时电流的方向应该从引脚2到引脚10;反转时电流的方向应该从引脚10到引脚2。电流检测输出引脚8可以接一个对地电阻,通过电阻来输出过流情况。内部保护电路设置的过电流阈值为10 A,当超过该值时会自动封锁输出,并周期性的自动恢复输出。过热信号还可通过引脚9输出,当结温达到145 ℃时引脚9有输出信号。
图9 LMD18200内部结构图
驱动电路采用2个LMD18200并联的方式,既能加大连续输出电流和峰值电流,增强驱动能力,又可在一个驱动芯片损坏的情况下工作一段时间,增强可靠性。电路原理图如图10所示,其中,PWM引脚输入脉宽调制波,可改变电机的速度,BREAK引脚为制动引脚,DIR引脚可改变电机旋转方向。Motor1A和Motor1B输出电流,电流的方向由DIR引脚改变。J2和J3可选通电流取样,形成电流的闭环反馈。
图10 LMD18200电路原理图
在驱动电路中,DSP控制芯片只需给PWM引脚,BREAK引脚,DIR引脚输入信号就能控制电机运转。为使信号更加稳定,采用6N137光电耦合器,使输入端和输出端实现电隔离,加强抗干扰能力,电路原理图如图11所示。IN_BRK,IN_PWM和IN_DIR为DSP的信号输入引脚,输出引脚接上拉电阻,根据输入引脚的特性可选通5 V或3.3 V输入。
图11 6N137电路原理图
3 控制系统软件的设计
控制系统主程序流程如图12所示。程序分为遥控盒程序和运动控制程序。遥控盒作为数据发送端,主要功能是采集手柄的模拟电压信号和I/O信号,然后发送给DSP运动控制板,由DSP板对数据进行进一步处理后再发给驱动器。DSP板返回的即时信息会被发送板接收,处理过后显示在LCD显示屏上。运动控制程序作为数据接收和处理端,接收来自遥控盒的速度命令,然后根据电机当前的速度对PWM波进行PID调节,达到闭环控制的目的,同时返回给遥控盒即时的速度信息。
3.1 遥控盒程序流程图
定时器中断程序作为主要的程序,负责A/D转换以及无线发送等主要功能的实现,而串口接收中断主要作用是即时更新显示屏数据以及监控通信是否中断,为了使DSP板能实时接收到来自遥控盒的控制信号,应将定时器中断级别设置成较高一级别的中断。程序流程图如图13,图14所示。
3.2 运动控制板流程图
运动控制板流程图如图15所示。
3.3 通信协议的设计
为实现可靠的数据通信,需要建立一个遥控盒和运动控制板之间的通信协议。通信协议采用校验数据包头和校验数据之和的方法数据总长为11 B,数据格式如表1所示。
表1 遥控盒和运动控制板的通信协议
注:30表示线速度或角速度为正值;31表示线速度或角速度为负值。
图14 定时器中断流程图
4 实验与结论
该设计的平台为四轮驱动苹果采摘机器人,该机器人重约75 kg,轴距K=60 cm,宽L=55 cm,轮子直径为36 cm,电机减速比为35,每个电机的功率为100 W,持续输出扭矩为0.15 N·m。经试验得出地面与轮胎的动摩擦系数大约为0.5,经计算,小车能在0.2 m/s的速度下进行原地旋转,满足设计要求,图16为机器人的机械结构图,图17为机器人的遥控实验。
图15 运动控制板流程图
图16 苹果采摘机器人结构图
在不同的波特率和传输距离下进行实验,得到数据传输正确率见表2。
表2 数据正确率与传输距离(室内)、波特率关系表
综合考虑机器人的反应速度和通信正确率,选择9 600 b/s作为系统通信波特率。
经验证,机器人速度控制精确,反应迅速,在低速度下可进行原地旋转,满足采摘苹果的需求。但是车胎磨损比较严重,下一步要做的就是优化转向结构设计,采用车体和车轮弹性的连接方式,减少车胎损耗。
图17 机器人遥控实验
5 结 语
本文通过对轮式移动机器人模型的分析,确定了一种四轮驱动的差速转向模型,并对其进行了运动学和动力学分析,证明了差速模型的可行性,得出了能够实现原地旋转的必要条件,在此基础上,设计了一款以DSP为核心的驱动器以及AVR单片机为核心的无线遥控盒,通过制定通讯协议,在四轮驱动苹果采摘机器人上实现了可靠的运动控制。实验证明,本文设计的驱动器和无线遥控盒控制精准,响应速度快,能实现超远距离的可靠传输,当然,实验中还发现,虽然机器人能输出较大的转动力矩,但是轮胎磨损较为严重,如何改善转向机构将成为下一步的研究重点。
参考文献
[1] 陈欣,左志奇,王立操,等. 6×6无人地面车辆差速转向分析与优化[J].汽车实用技术,2011(9):57?61.
[2] 卢杉.基于单片机的差速驱动导引小车运动控制[D].西安:西安理工大学,2010.
[3] 刑洁.四轮驱动轮式机器人的差速转向及其力矩匹配[D].上海:同济大学,2008.
[4] 刘建清,孙保书,李凤伟,等.轻松玩转AVR单片机C语言[M].北京:北京航空航天大学出版社,2011.
[5] 洪利,吕敬伟,杨强生,等.AVR XMEGA高性能单片机开发及应用[M].北京:北京航空航天大学出版社,2013.
[6] 孙培刚.无线遥控系统的分析与应用[J].绥化学院学报,2012,32(1):190?192.
[7] 孟凡菲,王文君,俞竹青.基于DSP2812无刷直流伺服电机控制系统的设计[J].煤矿机械,2009,30(12):138?140.
[8] 叶郑凯,朱建鸿,李琳,等.基于单片机的无线遥控智能小车的设计与实现[J].计算机与现代化,2012(10):65?67.
[9] 黄建能,杨光杰.无线遥控小车[J].现代电子技术,2012,35(23):126?128.
[10] 姜宝华,齐强.基于单片机的无线遥控智能小车的设计与制作[J].电子世界,2013(3):24?25.