ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:524.88KB ,
资源ID:7392443      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7392443.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电动汽车课程设计智能小车.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电动汽车课程设计智能小车.docx

1、电动汽车课程设计智能小车 工业自动化学院电动汽车实习报告(2014-2015学年第二学期) 实习题目:智能小车设计 姓 名: 学 号: 班 级: 指导老师: 实习时间: 2016年6月20日2016年7月1日成 绩: 电动汽车 实习任务书一、设计题目智能小车设计二、设计主要内容(1) 广泛查找文献资料,认真研究,反复论证,精心设计技术方案。(2) 严格遵守各项纪律,勤奋学习,认真思考,敢于挑战困难并勇于创新。(3) 较为深入的掌握51单片机的体系结构、指令系统、编程方法,初步了解51单片机应用系统的软硬件开发方法及手段,较熟练地掌握51单片机几种重要的片内外设的基本原理及编程方法,初步掌握51

2、单片机外围电路的扩展方法。(4) 在现有车模的基础上,以51单片机构成小车控制核心,同时加装声光电、红外线、超声波传感器、LED显示等外围设备,实现对小车的速度、位置、运行状况的实时测量,并将测量数据传送至处理器进行处理,然后由处理器根据所检测的各种数据实现对电动车的智能控制;(5) 设计的智能小车应该能够实时显示时间、速度、里程,具有自动寻迹、寻光、避障功能,可程控行驶速度、前进、后退、准确定位停车。并有相应的声光电设备发出相关的提示或警示信息。(6) 遥控方式可自选,系统通过遥控器可以控制小车的行驶方向、速度、起停等运行状态,要求要达到一定的控制精度、距离及范围,小车行驶速度应达到3m/s

3、以上。(7) 分析结果,独立撰写设计总结报告陈述自己的观点,格式应严格遵守学校规范。内容尽量翔实,其中必须要有自己独立的见解和认识。三、原始资料硬件资源:小车底盘、51单片机系统板、PC机。设计指导资料:51单片机系统板配套光盘四、要求的设计成果(1)在现有车模的基础上,以51单片机构成小车控制核心,同时加装声光电、红外线、超声波传感器、LED显示等外围设备,实现对小车的速度、位置、运行状况的实时测量,并将测量数据传送至处理器进行处理,然后由处理器根据所检测的各种数据实现对电动车的智能控制。(2)撰写说明书,要求简洁、通顺,格式规范,设计方案正确,实现技术路线明确,论述内容完整、清楚、规范,数

4、据、资料真实可靠,软件程序运行良好。(3)要求有完整的电路设计原理图及软件源代码。五、进程安排(1)第 1 天:任务布置及相关知识讲解(2)第2-3天:资料查阅与方案制定(3)第4-8天:硬件设计、程序编制与调试阶段(4)第 9 天:撰写设计报告(5)第 10 天:答辩与考核阶段课程设计成绩评定表成绩评定项 目比例得 分平时成绩30%答辩考核成绩10%实习报告成绩60%总评成绩(百分制记分)100%评定等级优 良 中 及格 不及格指导教师(签名):2016年7月1日第1章 设计任务(1)熟悉使用DXP 2004软件制作智能小车的PCB电路图。(2)了解小车的主要硬件模块组成及原理。(3)理解实

5、现智能小车各功能的程序及掌握单片机程序的烧写方面;(4)设计一个智能小车,要求能够遥控实现启动,停止,前进,后退,左转,右转。(5)小车速度可调。当发生故障时,按下故障报警按钮,蜂鸣器响,提醒故障。(6)小车能够实现循迹功能,按照道路循迹行驶,车速较高,摆动幅度较小,过弯道时,车身稳定性保持良好,没有明显存在冲出轨道的趋势。(7)根据个人能力设计人机交互界面,例如发光管,数码管,液晶显示屏显示等,表示小车工作状态。可加装超声波测距,躲避障碍物等功能。第2章 总体方案设计 2.1总体方案的设计思路 图2.1 总体设计思路2.2总体方案设计 2.2.1 控制器模块介绍 根据设计要求,我认为此设计属

6、于多输入量的复杂程序控制问题。采用单片机作为整个系统的核心,用其控制行进中的小车,以实现其既定的性能指标。充分分析我们的系统,其关键在于实现小车的自动控制,而在这一点上,单片机就显现出来它的优势控制简单、方便、快捷。这样一来,单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能、价格低廉等优点。因此,这种方案是一种较为理想的方案。针对本设计特点多开关量输入的复杂程序控制系统,需要擅长处理多开关量的标准单片机,而不能用精简I/O口和程序存储器的小体积单片机,D/A、A/D功能也不必选用。根据这些分析,我选定了P89C51RA单片机作为本设计的主控装置,51单片机具有功能强大的位

7、操作指令,I/O口均可按位寻址,程序空间多达8K,对于本设计也绰绰有余,更可贵的是51单片机价格非常低廉。在综合考虑了传感器、两部电机的驱动等诸多因素后,我们决定采用一片单片机,充分利用STC89C52单片机的资源。2.2.2 电机驱动工作原理 采用功率三极管作为功率放大器的输出控制直流电机。线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管组成H型桥式电路。用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高,H型桥式电路保证了简单的实现转速和方向的控制,电子管的开关速度很快,稳定性也极强,是一种广泛采用的PWM

8、调速技术。现市面上有很多此种芯片,我选用了L298N。这种调速方式有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转等优点。因此决定采用使用功率三极管作为功率放大器的输出控制直流电机。2.2.3 寻迹模块 工作原理采用三只红外对管,一只置于轨道中间,两只置于轨道外侧,当小车脱离轨道时,即当置于中间的一只光电开关脱离轨道时,等待外面任一只检测到黑线后,做出相应的转向调整,直到中间的光电开关重新检测到黑线(即回到轨道)再恢复正向行驶。现场实测表明,小车在寻迹过程中有一定的左右摇摆不定,虽然可调试,摇摆情况会显著变好,但依然存在,且对速度

9、也会有相应的影响。2.2.4 遥控模块 工作原理红外遥控器共有5个有效信号键位:分别为左、右、前、后、停止。遥控控制信号由红外遥控器发出,由STC89C52RC单片机上的红外接收器接受控制信号,经单片机内部计算分析后,将执行指令发给电机,使小车完成我们预想的动作。经多次试验与调试发现,红外接收的有效灵敏距离大致在3米左右,超过极限距离,则会明显出现小车控制苦难的情况,同时环境也是干扰小车红外控制的一个重要因素。第3章 系统硬件设计 3.1系统的硬件组成 设计的主要硬件组成有:单片机开发板、遥控器、小车底盘、驱动电机、万向轮、PC机、液晶显示屏、超声波模块等。3.2 STC89C52单片机介绍S

10、TC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。主要特性如下: 增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051。 工作电压:5.5V3.3V(5V单片机)/3.8V2.0V(3V单片机)。 工作频率范围:040MHz,相当于普通8051的080MHz,实际工作频率可达48MHz。 用户应用程序空间为8K字节 片上集成512字节RAM 通用I/O口(32个),复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路

11、输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。 ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片。 具有EEPROM功能。 具有看门狗功能。 共3个16位定时器/计数器,即定时器T0、T1、T2。 外部中断4路,下降沿中断或低电平触发电路,PowerDown模式可由外部中断低电平触发中断方式唤醒。 通用异步串行口(UART),还可用定时器软件实现多个UART 工作温度范围:-40+85(工业级)/075(商业级)。 PDIP封装STC89C52RC单片机的

12、工作模式 掉电模式:典型功耗0.1A,可由外部中断唤醒,中断返回后,继续执行 原程序,掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备。 空闲模式:典型功耗2mA。 正常工作模式:典型功耗4Ma7mA。时钟电路 STC89C52内部有一个用于构成振荡器的高增益反相放大器。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.212MHz之间选择,电容值在530pF之间选择,电容值的大小可对频率起微调的作用。图3.1 时钟电路复位及复位电路复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初

13、始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。图3.2 复位电路芯片引脚主电源引脚(2根)VCC(Pin40):电源输入,接5V电源GND(Pin20):接地线外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外

14、部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。PO口(Pin39Pin32):8位双向I/O口线,名称为P0.0P0.7P1口(Pin1Pin8):8位准双向I/O口线,名称为P1.0P1.7P2口(Pin21Pin28):8位准双向I/O口线,名称为P2.0P2.7P3口(Pin10Pin17):8位准双向I/O口线,名称为P3.0P3.7图3.3 ST

15、C89C52RC引脚图3.3电机驱动模块电路设计 图3.4 电机驱动电路模块3.5 报警模块电路设计图3.5 报警电路模块3.6循迹模块电路设计图3.6 循迹电路模块3.7遥控模块电路设计图3.7 红外接收电路模块3.8供电电路设计图3.8 供电系统电路第4章 系统软件设计系统的软件设计分为对双直流电机的控制和对传感器信号的处理其关键部分在于对直流电机的控制,前轮电机的正转和反转分别决定小汽车方向的左拐弯、右拐弯及直线行驶。在检测黑线过程中,单片机始终使用增量控制的方案,即在调整拐弯或速度控制以及纠偏的过程中,路面信号采样速度、行驶速度、方向调整幅度等都是需要随时调整的,而且都是以一定步进值连

16、续增加或者连续减少这些参数值的。传感器部分的控制主要负责从外界采集信息,不同的信息对应不同的处理方案。系统流程图如图4.1所示。图4.1系统流程图4.1 主程序设计程序内容见附录。4.2 循迹程序设计程序内容见附录。(主要注意部分是PWM的调试)4.3遥控程序设计 程序内容见附录。(小车在实现转弯后会马上回复直线行走程序)第5章 调试结果及分析循迹黑线循迹功能的实现主要调试的是主要电机转速及程序中的PWM调试部分及传感器的灵敏度。最理想的状况是小车能快速且稳定地按照黑色路线行走。在调试过程中,因为每次调节PWM,所以几乎都要调节一次传感器灵敏度电阻,从而实现理想的黑线循迹。调试结果(PWM最大

17、为20):(1) 前进时:左右电机为8;(2) 左转时:右电机占空比为8,左电机停止运转;(3) 右转时:左电机占空比为8,右电机停止运转;主要结果分析:传感器灵敏度正常,小车速度较快且摆动幅度较小,循迹功能正常,不会冲出跑道。 红外遥控控制红外遥控控制部分的程序和传感器灵敏度都没问题。程序主要包括左右电机左右停转,单边电机运转,左右电机同时运转等。命令智能小车完成前进、后退、左转、右转等动作。红外遥控功能实现的注意事项:(1)排除循迹、蔽障信号输入干扰;(2)使用遥控器时要注意拿掉电池上的塑胶片;(3)尽量避免在有红外光线干扰的环境下使用;主要结果分析:遥控器主要的灵敏控制极限范围在3-4米

18、之间。 第6章 总结心得 本次课程设计我学到了很多东西,如循迹功能和红外控制功能分别由哪些模块组成;在红外遥控控制过程中,循迹信号和蔽障信号会干扰到遥控控制,如果程序部分不加入PWM电机调试,电机会一般默认以最高速运转;同时还掌握了用DXP 2004软件画PCB电路板的技能。在整个过程中,受益最深的是在调试阶段。在调试阶段中,很熟练的了解了各个器件的功能,在测试中也明白各个电路实现什么功能等。该设计通过单片机控制PWM直流电机驱动以及与多个传感器的配合应用,实现了两辆小车按规定跑道进行交替领跑功能。在经过多次实验后,基本达到了预期的效果。但是其智能化程度还远远不够,车体设计以及程序设计方面都有

19、待于继续完善,以使两辆小车行驶速度更快,更平稳。通过这次课程设计,加深了我对电子方面的兴趣,使我对电子知识有了更深的了解,同时也提高了我们自主学习的能力、动手操作的能力,很多事情,都是在做后才发觉有没有意义,有没有收获。我想我会在今后的学习生活中学习更多、更深,我也会做得更好。参考文献1 谢自美电子线路设计.试验.测试 M 华中科技大学出版社,20042 宗光华机器人的创意设计与实践 M 北京航空航天大学出版社,20043 肖景和红外线热释电与超声波遥控电路M 人民邮电出版社,20034 靳 桅单片机原理及应用M 西南交通大学出版社,20045 王毅编单片机器件手册M 人民邮电出版社,1994

20、6 何立民 .单片机应用技术选编(8) 北京航空航天大学出版社,20007 丹尼斯 .克拉克机器人设计与控制M 科学出版社,20048 苏凯等 .MCS-51系列单片机系统原理与设计.冶金工业出版社,20039 杨帮文新编传感器实用宝典M 机械工业出版社,2005 10 周坚编单片机C语言轻松入门M 北京航空航天大学出版社,200611 张毅坤 .单片微型计算机原理及应用 . 西安电子科技大学出版社,199812 张立科 .单片机典型模块设计实例导航 .人民邮电出版社, 200413 李光飞 .单片机课程设计实例指导 .北京航空航天大学出版社, 200414 张 鑫 .单片机原理及应用 .电子

21、工业出版社,2005.815 何立民 .MCS-51系列单片机应用系统设计系统配置与接口技术北京航空航天大学出版社,199016 任 涛 .闪速存储器数据及应用简明速查手册 .电子工业出版社,199717 张毅刚 .MCS-51单片机应用设计 .哈尔滨工业电子出版社,199618 邬宽明 .单片机外围器件实用手册 .北京航空航天大学出版社,199819 王幸之 .单片机应用系统抗干扰技术 .北京航空航天大学出版社,200020 张 凯 .MCS-51单片机综合系统及其设计开发 .科学出版社,1996附录附录1: 硬件图硬件图1-智能小车底盘电路图硬件图2-STC89CRC单片机系统电路图附录2

22、: 源程序1.循迹程序#include /包含51单片机头文件,内部有各种寄存器定义#include /包含HL-1蓝牙智能小车驱动IO口定义等函数/主函数 void main(void) unsigned char i; P1=0X00; /关电机 for(i=0;i50;i+) /判断K4是否按下 delay(1); /1ms内判断50次,如果其中有一次被判断到K4没按下,便重新检测 if(P3_7!=0)/当K4按下时,启动小车前进 goto B; /跳转到标号B,重新检测 BUZZ=0;/50次检测K4确认是按下之后,蜂鸣器发出“滴”声响,然后启动小车。 delay(50); BUZZ

23、=1;/响50ms后关闭蜂鸣器 TMOD=0X01; TH0= 0XFc; /1ms定时 TL0= 0X18; TR0= 1; ET0= 1; EA = 1; /开总中断while(1) /无限循环 if(Left_1_led=0&Right_1_led=0) run(); /调用前进函数 else if(Left_1_led=1&Right_1_led=0)/左边检测到黑线 leftrun(); /调用小车左转 函数 if(Right_1_led=1&Left_1_led=0) /右边检测到黑线 rightrun(); /调用小车右转 函数 左右车轮调试程序/hj-4ws_pwm.h#ifn

24、def _LED_H_#define _LED_H_sbit IN1=P12;sbit IN2=P13;sbit IN3=P16;sbit IN4=P17;sbit EN1=P14;sbit EN2=P15;sbit BUZZ=P23; /蜂鸣器接线定义#define Left_1_led P3_3 / 左传感器 #define Right_1_led P3_2 /右传感器 #define Left_moto_pwm P1_5 /PWM信号端#define Right_moto_pwm P1_4 /PWM信号端#define Left_moto_go P1_2=0,P1_3=1; /左电机向前

25、走#define Left_moto_back P1_2=1,P1_3=0; /左边电机向后转#define Left_moto_Stop P1_5=0; /左边电机停转 #define Right_moto_go P1_6=1,P1_7=0; /右边电机向前走#define Right_moto_back P1_6=0,P1_7=1; /右边电机向后走#define Right_moto_Stop P1_4=0; /右边电机停转 unsigned char pwm_val_left =0;/变量定义unsigned char push_val_left =0;/ 左电机占空比N/20unsi

26、gned char pwm_val_right =0;unsigned char push_val_right=0;/ 右电机占空比N/20bit Right_moto_stop=1;bit Left_moto_stop =1;unsigned int time=0;/*/ /延时函数 void delay(unsigned int k) unsigned int x,y; for(x=0;xk;x+) for(y=0;y2000;y+);/*/前速前进 void run(void) push_val_left=8; /速度调节变量 0-20。0最小,20最大 push_val_right=8

27、; Left_moto_go ; /左电机往前走 Right_moto_go ; /右电机往前走/左转 void leftrun(void) push_val_right=8; Right_moto_go ; /右电机往前走 Left_moto_Stop ; /左电机停止/右转 void rightrun(void) push_val_left=8; Left_moto_go ; /左电机往前走 Right_moto_Stop ; /右电机往前走 /* PWM调制电机转速 */* 左电机调速 */*调节push_val_left的值改变电机转速,占空比*/ void pwm_out_left_

28、moto(void) if(Left_moto_stop) if(pwm_val_left=20) pwm_val_left=0; else Left_moto_pwm=0; /* 右电机调速 */ void pwm_out_right_moto(void) if(Right_moto_stop) if(pwm_val_right=20) pwm_val_right=0; else Right_moto_pwm=0; /*TIMER0中断服务子函数产生PWM信号*/ void timer0()interrupt 1 using 2 TH0=0XFc; /1Ms定时 TL0=0X18; time+; pwm_val_left+; pwm_val_right+; pwm_out_left_moto(); pwm_out_right_moto(); #endif2. 遥控程序 #include #define Left_moto_go P1_2=0,P

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1