第四组智能小车论文 - 图文

更新时间:2024-06-18 20:56:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

摘 要

430单片机是一款16位单片机,他的易用性和多功能性受到了广大使用者的好评。这里介绍的是如何用430单片机来实现控制模型小车运动的设计类课题。本系统以设计题目的要求为目的,采用430单片机为控制核心,利用红外线传感器检测小车是否在黑色跑道上,控制电动车的运动,快慢速行驶,以及自动停车,并可以自动记录控制左右电机的电压,自动寻迹和寻光功能。整个系统的电路结构简单,可靠性能高。实验测试结果满足要求,本文着重介绍了该系统的方案比较与选择部分及测试结果分析。 采用的技术主要有:

(1) 通过编程来控制小车的运动; (2) 传感器的有效应用;

(3) 使用PWM来控制小车的速度;

关键词: mps430F169单片机、光电检测器、PWM调速、电动小车、LCD12864

Abstract

430 single chip microcomputer is a 16-bit microcontroller, his versatility and ease of use has been well received by the majority of users. Here is how to use single-chip microcomputer to realize the control model of sports car design 430 class. This system in order to design the topic request, for the purpose of using 430 single-chip microcomputer as the control core, using infrared sensor detects whether the car in the black on the runway, control the movement of the electric car, fast speed, and automatic parking, and can automatically record about control of the motor voltage, automatic search and track light function. The circuit of the whole system has simple structure, reliable performance is high. Experimental test results meet the requirements, this paper introduces the scheme comparison and selection of parts and test results analysis. Using the technology are:

(1) through the programming to control the movement of the car; (2) the effective application of the sensor;

(3) the use of PWM to control the speed of the car;

第二章 方案设计与论证

根据题目的要求,确定如下方案:在现有小车模型的基础上,加装光电检测器,实现对模型小车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。这种方案能实现对模型小车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。

一 直流调速系统

方案一:串电阻调速系统。

方案二:静止可控整流器。简称V-M系统。 方案三:脉宽调速系统。

旋转变流系统由交流发电机拖动直流电动机实现变流,由发电机给需要调速的直流电动机供电,调节发电机的励磁电流即可改变其输出电压,从而调节电动机的转速。改变励磁电流的方向则输出电压的极性和电动机的转向都随着改变,所以G-M系统的可逆运行是很容易实现的。该系统需要旋转变流机组,至少包含两台与调速电动机容量相当的旋转电机,还要一台励磁发电机,设备多、体积大、费用高、效率低、维护不方便等缺点。且技术落后,因此搁置不用。

V-M系统是当今直流调速系统的主要形式。它可以是单相、三相或更多相数,半波、全波、半控、全控等类型,可实现平滑调速。V-M系统的缺点是晶闸管的单向导电性,它不允许电流反向,给系统的可逆运行造成困难。它的另一个缺点是运行条件要求高,维护运行麻烦。最后,当系统处于低速运行时,系统的功率因数很低,并产生较大的谐波电流危害附近的用电设备。

采用晶闸管的直流斩波器基本原理与整流电路不同的是,在这里晶闸管不受相位控制,而是工作在开关状态。当晶闸管被触发导通时,电源电压加到电动机上,当晶闸管关断时,直流电源与电动机断开,电动机经二极管续流,两端电压接近于零。脉冲宽度调制(Pulse Width Modulation),简称PWM。脉冲周期不变,只改变晶闸管的导通时间,即通过改变脉冲宽度来进行直流调速。

与V-M系统相比,PWM调速系统有下列优点:

(1)由于PWM调速系统的开关频率较高,仅靠电枢电感的滤波作用就可以获得脉动很小的直流电流,电枢电流容易连续,系统的低速运行平稳,调速范围较宽,可达1:10000左右。由于电流波形比V-M系统好,在相同的平均电流下,电动机的损耗和发热都比较小。

(2)同样由于开关频率高,若与快速响应的电机相配合,系统可以获得很宽的频带,因此快速响应性能好,动态抗扰能力强。

(3)由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率较高。

根据以上综合比较,以及本设计中受控电机的容量和直流电机调速的发展方向,本设计采用了H型单极型可逆PWM变换器进行调速。

脉宽调速系统的主电路采用脉宽调制式变换器,简称PWM变换器。脉宽调速也可通过单片机控制继电器的闭合来实现,但是驱动能力有限。为顺利实现电动小汽车的前行,我们在设计中使用了L298N芯片来控制小车的正反转、停止和启

动。

二 检测系统

检测系统主要实现光电检测,即利用各种传感器对电动车的位置、行车状态进行测量。

2、1行车起始、终点及光线检测:

本系统采用反射式红外线光电传感器用于检测路面的起始、终点(2cm宽的黑线),模型小车底盘上沿黑线放置一套,以适应起始的记数开始和终点的停车的需要。利用反射式红外线传感器检测障碍。光线跟踪,采用光敏三极管接收灯泡发出的光线,当感受到光线照射时,其c-e间的阻值下降,检测电路输出低电平,经LM393电压比较器整形后送单片机控制。

本系统共设计四个光电传感器,分别放置在电动车车头的左、中、中后、右四个位置(其中只要中、中后方传感器有一个在跑道上,那么小车就直走),用来控制电动车的行走方向。当左侧光电管受到光照时,单片机控制转向电机向左转;当右侧光电管受到光照时,单片机控制转向电机向右转;当左、中或者中后、右两侧光电管都受到光照时,单片机控制直行。行车方向检测电路采用反射接收原理配置了一对红外线发射、接收传感器。该电路包括一个红外发光二极管、一个红外光敏三极管及其上拉电阻。红外发光二极管发射一定强度的红外线照射物体,红外光敏三极管在接收到反射回来的红外线后导通,发出一个电平跳变信号。

此套红外光电传感器固定在底盘前沿,贴近地面。正常行驶时,发射管发射红外光照射地面,光线经白纸反射后被接收管接收,输出低电平信号;电动车经过黑线时,发射端发射的光线被黑线吸收,接收端接收不到反射光线,传感器输出高电平信号后再通过比较器L298N进行整形送到430单片机处理,判断执行哪一种预先编制的程序来控制模型小车的行驶状态。前进时,驱动轮直流电机正转,进入减速区时,由单片机控制进行PWM变频调速,通过软件改变脉冲调宽波形的占空比,实现调速。最后经反接制动实现停车。左右电机的转动是通过两个H电桥来控制的,电桥一端接电源,另一端接了一个三极管。三极管导通时,电桥通过三极管接地,电机电枢中有电流通过;三极管截止时,电桥浮空,电机电枢中没有电流通过。系统通过电桥的输出端为转向电机供电。通过对继电器开闭的控制即可控制电机的开断和转速方向进而达到控制模型小车前行与倒车的目的,实现随动控制小车的运动功能。

图2.2 L298N内部双桥电路(b)

通过L298N 芯片来实现控制左右电机的转动方式,电机的工作原理如下: 步进电机 信号输入 IN1 正转 IN2 IN3 IN4 IN1 反转 IN2 IN3 IN4 第一步 0 1 1 1 1 1 1 0 第二步 1 0 1 1 1 1 0 1 第三步 1 1 0 1 1 0 1 1 第四步 1 1 1 0 0 1 1 1 返回第一步 返回 返回 返回 返回 返回 返回 返回 返回 了解了L298N和直流电机的工作方式,我们不难理解L289N可以驱动两台直流电机。分别为M1和M2。引脚A,B可用于输入PWM脉宽调制信号对电机进行调速控制。(如果无须调速可将两引脚接5V,使电机工作在最高速状态,既将短接帽短接)实现电机正反转就更容易了,输入信号端IN1接高电平输入端IN2接低电平,电机M1正转。(如果信号端IN1接低电平, IN2接高电平,电机M1反转。)控制另一台电机是同样的方式,输入信号端IN3接高电平,输入端IN4接低电平,电机M2正转。(反之则反转),PWM信号端A控制M1调速,PWM信号端B控制M2调速。 2、2选择比较电路:

方案一:使用普通单级比例放大电路。其特点是结构简单、调试方便、价格低廉。但是也存在着许多不足。如抗干扰能力差、共模抑制比低等。

方案二:采用差动放大电路。选择优质元件构成比例放大电路,虽然可以达到一定的精度,但有时仍不能满足某些特殊要求。例如,在测量本设计中的光电检测信号时需要把检测过来的电平信号放大并滤除干扰,而且要求对共模干扰信号具有相当强的抑制能力。这种情况下须采用差动放大电路,并应设法减小温漂。

但在实际操作中,往往满足了高共模抑制比的要求,却使运算放大器输出饱和;为获得单片机能识别的TTL电平却又无法抑制共模干扰。

方案三:电压比较器方案。电压比较器的功能是比较两个电压的大小,例如将一个信号电压Ui和一个参考电压Ur进行比较,在Ui>Ur和Ui

时,比较器的输出将从一个电压跳变到另一个电平。如图2.4 电压比较器电路:

在本设计中,光电传感器只输出一种高低电平信号且伴有外界杂波干扰,所以我们尝试采用了一种滞回比较器。简单电压比较器结构简单,而且灵敏度高。很适合我们学生在训练时候的使用,而且它也基本能达到我们的实验设计要求。 三 显示电路

在本次实验过程中,我们小组是通过LCD12864来显示传感器经过AD转换而得来的电压值,在校车行驶的过程中,显示屏上同时会显示小车对应的状态。例如当小车在左转弯,显示屏上会显示left。其他对应的状态可以从后面的程序中知道的。 四 系统原理图

简易智能电动车采用430单片机进行智能控制。开始检测小车电路是否完好然后给小车通上7V的电压,当经过规定的起始黑线,由红外光电传感器检测,通过单片机控制小车开始记数显示给电机通电的瞬时数字电压、调速;系统的自动拐弯功能通过红外光电传感器左中右侧检测,由单片机控制实现;在模型小车行驶过程中,采用双极式H型PWM脉宽调制技术,以提高系统的静动态性能;采用LCD12864显示屏显示小车的行驶状况和当时加在左右电机两边的电压。其系统原理图如下: 电 源

光电传感器 单 电动机1 光电传感器2 片 光电传感器3 机 电动机2 光电传感器4

2、5系统原理图

第三章理论分析与计算

一、小车行驶理论

小车遇到黑线则判断为1,遇到白线则为0。这个跑道中有两个T字路口和两个十字路口。小车在这路线上行驶时会出现偏离轨道的问题,我们一般的处理办法是在小车有偏离轨道的地方立即通过编程进行调整。例如在传感器传来0001的右偏信息后(在实际的运动中“上”位置的传感器没什么大的作用),单片机马上调节 P4、3,P4、6及P5、1和P5、3控制口,使用PWM调整输出方波的占空比使小车左转回来。如小车的传感器分布如图3、1所示,右图3、2所示是小车的跑道。。

图3、1红外线光电传感器排列 图3、2小车跑道

由于小车在快速行驶时,有可能会全部偏离轨道,并且会出现十字路口和T字路口的特殊状态 。我们组的具体控制方法是将前后两个状态一起分析后再做行驶轨迹的处理,例如当上一次状态是0001而此刻状态是0000时就判为右全偏了,然后进行左调整。

在十字和T字路口的时候处理方法如下:当上面的红外传感器为0,其他全为1,时,记住此时的状态,当下一个状态为全0的时候,我们就暂时判为T字路口,此时,让小车直走0.5s,如果,此时依然为全0,则就是T字路口,小车就马上倒退到终点处,开始进行旋转360度,此时会出现碰到T形黑线的地方,我们做的处理是让它先旋转0.5s摆脱那个黑线,然后继续让它旋转,直到有传感器碰到黑线,小车就会自动调整到回去的直道上去;当没有出现刚才T字情况或者出现全1时判为十字路口,就让它直走下去。如下表所示: 红外传感器探测 P6.1中 0 0 0 1 1 1 P6.2右 P6.3左 P6.4上 小车状态 0 0 × 全偏 0 1 0 1 1 1 0 0 1 1 × × 1 0 1 右偏 左偏 直走 T字路口 十字路口 P4.3左 占空比0% 占空比80% 占空比100% 占空比100% 占空比100% 电机驱动控制引脚 P5.1左 P4.6右 P5.3右 占空比80% 占空比0% 占空比0% 占空比50% 占空比100% 电机动作 保持 左转 右转 正常行驶 旋转360 前进 二、用pwm调节小车的速度

PWM脉冲宽度调制技术就是通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值)的技术。下式是占空比计算公式: t1D?

T式中t1表示一个周期内开关管导通的时间,T表示一个周期的时间。 占空比D表示了在一个周期里,开关管导通的时间与周期的比值,变化范围为0≤D≤1。由上式可知,当电源电压不变的情况下,电枢的端电压的平均值为

VD=Vmax*D,因此改变占空比D就可以改变端电压的平均值,从而达到调速的目

的,这就是PWM调速原理。

第四章硬件与软件设计部分

一、硬件部分

4、1反射式红外线感光电路

红外发射管发射的红外线具有一定的方向性,当红外线照射到白色地面时会有较

大的反射,如果距离取值合适,红外接收管接收到反射回的红外线强度就较大;如果红外线照射到黑色标志线,黑色标志线会吸收大部分红外光,红外接收管接收到红外线强度就很弱。寻迹时,引导线是黑颜色,不宜反光,当红外发射管输出信号照射到黑色引导线上时输出一个非常微弱的低电平,这个过程是一个负跳变过程,通过对此信号高低电平的检测就可以知道小车是正在沿着引导线行驶,若不是沿着引导线行驶,单片机根据传感器送回的信号可以判断并驱动电机正确转向,从而使小车沿着正确的轨道行驶。其结构图如下3、1(a)

3、1(a)红外线传感器工作原理图

4、2 LCD12864显示屏

在本次试验过程中,考虑到实验要显示的字符数字比较的多和实验条件的提供,我们选择用单片机控制LCD12864来显示小车的状态和供电的瞬时电压。

二、软件设计部分

在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。因此,软件设计在微机控制系统设计中占重要地位。对于本系统,软件更为重要。在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。模块程序设计法的主要优点是:

1、 单个模块比起一个完整的程序易编写及调试;

2、 模块可以共存,一个模块可以被多个任务在不同条件下调用;

3、 模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。

本系统软件采用模块化结构,由主程序﹑定时子程序、中断子程序显示子程序﹑调速子程序﹑算法子程序构成。程序见后面的附录表,下面是判断小车行驶的流程图: 初始化 Y N

按键是否安

按下? Y

是否检测到黑线 控制小车行驶 Y 结束 第五章 测试数据、测试结果分析及结论 测试方法与仪器:

1、测试仪器

测试仪器包括秒表、数字万用表、信号发生器、示波器、直流稳压电源等 2、测试方法

数字万用表主要用来测试分立元件的电阻、压降、漏电流、截止/导通状态等参数;信号发生器与示波器用于测试各光电传感器信号的接收与传输;直流稳压电源在测试期间为各待测系统供电;秒表用于产品测试,按照任务书的基本要求对制成的电动车进行产品测试。 测试数据及测试结果分析:

通过观察小车的行驶和lcd的显示,可以看出我们的智能车基本上达到了预期的效果,能够沿着跑道跑,当偏出跑道时,也能够在程序的控制下再回到跑道,不足之处是小车在拐弯和停止的时候不太稳。我们在使用pwm进行调速时设置的数据,调整的占空比还不太精确。 3、结论

历时一个星期设计过程中,我首先边查资料,边编写控制小车的程序,在其中遇

到很多没有预料的问题。在解决这些问题的的过程中,我的能力得到了很好地锻炼。各方面学到了很多。

参考文献

一、康华光主编的第五版电子技术基础模拟部分 二、康华光主编的电子技术基础数字部分 三、谭浩强主编的C程序设计教程

四、利尔达策划的msp430系列16位单片机原理与应用

附录表一

主程序:

void main() {

WDTCTL=WDTPW+WDTHOLD;//关闭看门狗 InitClock();//初始化时钟 InitPort();//初始化端口

fnLCMInit();//LCD12864初始化 InitADC12();//初始化ADC cls();//清12864LCD InitTimerA();//A初始化 Initpwm();//pwm占空比

_EINT();//开中断 cls();//清12864LCD

printf(1,0,0x36);//V printf(1,1,0x4D);//m printf(1,2,0x1A);// : printf(1,10,0x36);//V

printf(2,0,0x36);//V printf(2,1,0x52);//r printf(2,2,0x1A);// : printf(2,10,0x36);//V

printf(3,0,0x36);//V printf(3,1,0x4C);//l printf(3,2,0x1A);// : printf(3,10,0x36);//V

printf(4,0,0x36);//V printf(4,1,0x41);//a printf(4,2,0x1A);// : printf(4,10,0x36);//V

while(1) {

display();

left=P3IN&0x10;//判断P3.4口的输入电平 right=P3IN&0x08; middle=P3IN&0x04; ahead=P3IN&0x20 ;

if(keyvaluep1==1) {

for(uint n=0;n<16;n++) printf(6,n,0x00); think(); }

if(keyvaluep1==0) {

P5OUT=0x00;P4OUT&=~BIT3;P4OUT&=~BIT6; } } }

附录表二

图一反射式射式红外线光电传感器工作原理

图二光电隔离及电动机电路图

图三msp430底座原理图

图四msp430底座pcb

图五系统的实物图

本文来源:https://www.bwwdw.com/article/rjq3.html

Top