APP下载

基于MSP430智能小车的设计

2012-09-27李坤峰傅成华

电子设计工程 2012年5期
关键词:小车超声波语音

李坤峰,傅成华

(四川理工学院 四川 自贡 643000)

基于MSP430智能小车的设计

李坤峰,傅成华

(四川理工学院 四川 自贡 643000)

介绍一种基于MSP430F2274单片机为核心的智能小车。小车采用超声波测距技术实现自动避障,同时通过语音模块来播报出小车与障碍物的距离。为了使测距不受温度影响,用温度传感器实时检测小车周围环境的温度并修正距离计算公式的参数,采用光电编码器来检测小车的速度,运用PID控制算法和PWM来控制小车的精确稳定的运行,从而达到预期的设计目标。

MSP430F2274;超声波模块;光电编码器;PID控制算法

智能小车涉及到高级计算机控制、电子机械、自动化等诸多学科,随着科技的不断进步,智能电子产品发展步骤不断加快,各种应用层次的机器人等大量出现,目前应用在智能小车或机器人的微控制器主要是8/16单片机或ARM和数字信号处理器DSP[1-2]等。本设计采用TI公司生产的功耗低运行速度快且价格便宜的MSP430F2274为核心,避障检测采用测距精准的超声波传感器,该传感器采集小车周围的环境信息并传递给MSP430进行程序判断处理,从而达到控制小车自动避障的目的。

1 系统的总体结构框图

该系统主要由MSP430控制器,超声波避障模块,电机驱动,测速,语音模块,温度模块,小车的机械运动部分采用四轮差速转向式结构,前2个轮是驱动轮,分别由电机控制其运动,后两轮为随动轮。采用MSP430F2274单片机作为主控制单元,小车装有超声波模块来负责探测障碍物,做出避障决策。在小车的驱动轮上装有光电编码器对小车进行测速。为消除温度对测距的影响,使用温度传感器模块时刻检测小车周围的温度情况并修正。在小车上装配语音播报功能模块,能知道小车的位置和运行状态,总体结构框图如图1所示。

图1 系统的总体结构框图Fig.1 System block diagram of the overall structure

2 智能小车的硬件设计

2.1 主控芯片

该设计是以MSP430F2274单片机[3]为控制的核心部件。MSP430是一款16位的超低功耗单片机,采用了精简指令集(RISC)结构,具有丰富的寻址方式,片内资源丰富,处理能力强大、系统工作稳定,主要是它具有多路PWM输出,以作为该设计电机控制的有利资源,系统主控设计图如图2所示。

2.2 超声波模块

图2 系统主控设计图Fig.2 The design of the main control system

2.3 测温和电源模块

为了使计算的距离更精确而不受温度影响,该设计中加入了DS18B20温度传感器接在I/OP4.6上,实时检测机器人周围环境的温度T(T的值要精确到小数点后3位),以修正声速的传播公式V,从而提高测距的精确度。由于MSP430工作电压最大是3.3 V,电机驱动采用12 V电压,测速模块和超声波模块采用5 V电压,所以采用 LM7812、LM7805和LM1117组成稳压电路。

2.4 语音模块

语音电路采用ISD2560芯片为核心器件,结合外围电路与单片机接口连接,进行分段寻址,分析所测量数据,并设计出语音元素,包括前方、左前方、右前方、后方、厘米等语音元素,然后分别录制好语音元素,把这些信息存储在ISD2560的存储器单元内,测量的数据经过软件处理后,单片机发送语音地址和音控指令,通过和存储在ISD2560内的地址数据匹配,然后由语音电路通过扬声器播出测量数据的结果。语音芯片的地址码接口 A4、A5、A6、A7、A8 分别接在 I/OP2.2、I/OP3.0、I/OP3.1、I/OP3.2、I/OP3.3。

2.5 电机驱动模块

电机驱动模块是智能车的重要组成部分,它和电机共同组成智能小车的运动控制系统。该设计的驱动轮是由2个M1和M2交流永磁同步电机,因此采用的电机驱动器是高电压大电流高功率的L298N双H桥集成电路,L289N可以驱动两个电机,通过控制输入端IN1-IN4信号,来控制H桥的通断,使得电机形成正反转或停止,通过控制L298N的使能端EnA、EnB,采用技术成熟的PWM调速原理来控制电机的转速,从而达到控制小车运行的快慢和转向的目的。为了防止在启停电机的瞬间所形成的反馈电流损坏L298N,因此在L298N输出端与电机之间加入8个二极管形成续流达到保护的作用,再则为了防止L298N输出负载端电机对输入端信号传输产生影响,以及对MSP430芯片产生不利的干扰,在L298N的信号输入端通过连接TLP521可控制的光电电耦合器件,达到对L298N信号输入前端的信号电路与负载的完全隔离,从而增加了电路的安全性,减少了电路信号干扰。本设计中的驱动电机采用的是方波驱动的交流永磁同步电机,该电机的转速与驱动信号的频率成正比,结构简单,调速性能优良,运行可靠且便于维护。其电机驱动和控制模块电路如图3所示。

图3 电机驱动模块Fig.3 Motor-driven module

2.6 测速模块和PID控制

对速度的检测、调节控制能够保证小车稳定的运行,避免小车在避障时由于车速过高来不及躲避等问题。该设计中采用256线光电编码器作为速度检测,2个编码器和电机同轴相连。它直接利用光电转换原理输出3组方波脉冲A、B和Z相,A、B两组脉冲相位差90°,从而可方便地判断出旋转方向,而Z相为每转一个脉冲,用于基准点定位。在此采用M/T法测速,单片机通过定时器对电机速度进行10 ms定时采样,把采样所得速度信息与给定的速度信息所得的速度差传给PID控制器,来实现对电机速度的最佳闭环控制。从而在小车在前进、后退、转弯、刹车等动作能快速响应且超调量小,因此系统采用积分分离的PID控制算法,开始取消积分作用,当被调量相差不大时再引入积分作用,实现算法的具体步骤[5]如下:

1)根据实际情况,人为的设定一个值 w>0,E(k)=R(k)-H(k), 其中 R(k)为给定值,H(k)为测量值。

2)当 E(k)>w时,采用 PD控制调节,可以避免超调过大,还可以使系统有较快的反应。

3)当E(k)

此时:

式中:E为速度的误差值,T为采样时间,β取值如下:

3 软件的设计

MSP430单片机实时监控超声波模块传送的信号并对其信号进行避障决策判断,小车在不需要做出避障时沿直线行驶或停止,并且等待定时器的中断信号产生,当需要避障时,小车就向有障碍物相反的方向调整出(左转、右转、倒退并转向)最佳的运行路线,软件主要采用C语言[6]进行编程。主控程序流程图如图4所示。

在小车运行的速度调控中加入PID算法来调控PWM对小车的运行速度进行决策控制,能够很好的实现小车运行的稳定性和可靠性,PID调控PWM的程序流程图如图5所示。

4 实验结果

该智能小车做成后对其性能测试:小车的正常运行速度约为0.11 m/s,在遇到的障碍物后做出的避障决策,跟程序中预先设定避障距离15 cm相差不多,根据试验的测量数据,小车预先设定的避障距离和实际的情况上下浮动0~3 cm,到达了预期设计的目标。

5 结 论

图4 主程序流程图Fig.4 Flow chart of main program

图5 PID调控PWM流程图Fig.5 Flow chart PID regulate the PWM

该设计采用的以MSP430单片机为平台智能小车,能够满足控制要求,采用的超声波避障、PID控制算法以及PWM速度控制,使得小车稳定灵活可靠的运行。后续研究为改进小车实现更高智能化,采用ARM嵌入式、Linux操作系统和DSP,并加入各种智能传感器等来实现小车的更高的人性化智能化。

[1]闫晶,周浚哲,刘喜梅.基于DSP的智能小车避障系统的设计[J].沈阳理工大学学报,2008(1):37-41.

YAN Jing,ZHOU Jun-zhe,LIU Xi-mei.Design of the obstacle avoidance system for intelligent car based on the DSP[J].Shenyang University of Technology,2008(1):37-41.

[2]孙亮,阮晓钢,常青.嵌入式移动机器人控制器设计[J].计算机工程与应用,2007,34(22):96-98.

SUN Liang,RUAN Xiao-gang,CHANG Qing.Embedded mobile robot controller design[J].Computer Engineering and Applications,2007,34(22 ):96-98.

[3]沈建华,杨艳琴,翟骁曙.MSP430系列16位超低功耗单片机原理与应用[M].北京:清华大学出版社,2010.

[4]巫付专,王晓雷.控制电机及其应用[M].北京:电子工业出版社,2008.

[5]徐丽娜.数字控制—建模与分析、设计与实现[M].北京:科学出版社,2007.

[6]胡大可.MSP430系列单片机C语言程序设计与开发[M].北京:航空航天大学出版社,2003.

Design of the intelligent car based on the MSP430

LI Kun-feng,FU Cheng-hua
(Sichuan University of Science&Engineering,Zigong643000,China)

An intelligent car is described,which is based on the MSP430F2274.The car uses ultrasonic ranging technology to achieve automatic obstacle avoidance,and at the same time through voice module to broadcast the distance between the car and the obstacle.In order to make the distance not effected by temperature,the temperature sensor with real-time detection of the environmental temperature around the car and corrected the distance formula parameters,using photoelectric encoder to test the speed of the car, using PID control algorithm and PWM to control the car’s running accuracy and stability, so as to achieve the expected design goals.

MSP430F2274; ultrasound; optical encoder; PID control algorithm

TP23

A

1674-6236(2012)05-0033-03

2011-12-01稿件编号:201112004

李坤峰(1985—),男,河南许昌人,硕士研究生。研究方向:智能控制。

猜你喜欢

小车超声波语音
大车拉小车
自制小车来比赛
魔力语音
基于MATLAB的语音信号处理
基于MQ3与MP3的价廉物美的酒驾语音提醒器
对方正在输入……
刘老师想开小车
蝙蝠的超声波
基于Niosll高精度超声波流量计的研究
两轮自平衡小车的设计与实现