版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程设计报告 课题:基于单片机的自动驾驶小车模型摘要:该设计采用单片机( ATmega16)作为智能小车的检测和控制核心。由按键输入地图,由L298控制驱动电机正反转的快速切换,控制小车的运动速度及运动方向,达到控制小车运动的路径和转角,以实现汽车模型依循特定路径自动驾驶的目的。一 、设计目的和用途: 在现实生活中,由于GPS导航定位系统的普及及应用,基于GPS所提供的地图和自我定位的自动驾驶技术的研究和应用会为我们未来的生活带来巨大的方便。 我们所涉及的自动驾驶小车可以通过按键输入地图和目的地,然后进行自动行驶,这种小车首先为自动驾驶小车提供了一种思路,而且对于接收地图和行驶方法都提供了后续
2、研究的基础。2、 设计的功能:本小车可以通过按键进行任意地图和目的地的输入,小车可以自动按照输入的地图进行自动行驶到达目的地。不同的地面的阻尼不同,我们还可以通过按键改变小车行驶使其可以适应当前的地面阻尼,使得小车的行驶路径更加符合我们的输入地图。3、 硬件设计:硬件电路总结:通过按键输入地图和目的地,以及路面阻尼系数,地图输入单片机经系统处理后,向L298输出逻辑信号,再由L298进行电机的控制。 输出电路的示意图如下:硬件单元使用: 1 车体框架在设计车体框架时,我们有两套起始方案,自己制作和直接购买玩具电动车。 方案一:自己设计制作车架 自己制作小车底盘,用两个直流减速电机作为主动轮,利
3、用两电机的转速差完成直行、左转、右转、左后转、右后转、倒车等动作但自己制作小车设计制作周期较长,且费用较高,因而我们放弃这一方案。 方案二:购买玩具电动车 玩具电动车价格低廉,有完整的驱动、传动和控制单元,其中传动装置是我们所需的,缩短了开发周期。考虑到利用玩具电动小车做车架开发周期短,所以我们买了一个电动小车,自己再稍作调整作为小车底盘,而动力则由两个直流电机提供。 2 电源及稳压模块方案一:采用交流电经直流稳压处理后供电采用交流电提供直流稳压电源,电流驱动能力及电压稳定性最好,且负载对电源影响也最小。但由于需要电线对小车供电,极大影响了小车行动的灵活性及地形的适应能力。故我们放弃了这一方案
4、。方案二:采用蓄电池供电蓄电池具有较强的电流驱动能力和较好的电压稳定性能,且成本低廉。可采用蓄电池经7812芯片稳压后给电机供电,再经过降压接7805芯片给单片机及其他逻辑单元供电。但蓄电池体积相对庞大,且重量过大,造成电机负载过大,不适合我们采用的小车车架。故我们放弃了这一方案。方案三:采用干电池组进行供电采用四节干电池降压至5V后给单片机及其他逻辑单元供电,另取六节干电池为电机供电。这样电机启动及制动时的短暂电压干扰不会影响到逻辑单元和单片机的工作。干电池用电池盒封装,体积和重量较小。在稳压方面,起始时考虑使用7805芯片对6V的电池电压进行降压稳压。但考虑到这样使得7805芯片消耗大量能
5、量,降低电池寿命;同时,由于mega16、小车电机对于供电电压要求并不苛刻,故我们将6V电池电压接一个二极管降压后直接给单片机及其他逻辑单元供电。而电机的电源不做稳压处理。 3 在选择芯片时我们直接选用了课程主要介绍的,Atmel公司的ATmaga16L单片机作为主控模块。Mega16是高性能、低功耗的 8 位AVR 微处理器,具有先进的RISC结构,内部集成两个具有独立预分频器和比较器功能的8 位定时器/ 计数器和一个具有预分频器、比较功能和捕捉功能的16 位定时器/ 计数器。可通过JTAG对MCU进行程序烧写及仿真。内置晶振,使用方便。单片机的PORTD用来接收八个按键的输入,PORTB.
6、0PORTB.3用来向L298输出数字信号,PORTA.0接喇叭。 4 电机驱动 我们使用L298N芯片驱动电机,L298N是一个具有高电压大电流的全桥驱动芯片,输出电压最高可达50V,可以直接通过电源来调节输出电压;可以直接用单片机的IO口提供信号,而且带有使能端,方便PWM调速,电路简单,性能稳定,使用比较方便。L298N芯片可以驱动两个二相电机,也可以驱动一个四相电机,正好符合我们小车两个二相电机的驱动要求。 电机有三种运动方式:电机正转、电机反转、电机急停。单片机控制信号通过高低电平的转换可以控制L298对电机的正反向供电,结合PWM程序可以实现对电机的调速,经过调试取值达到比较合适的
7、行车速度。为了使小车能够顺利转弯,我们采用电机一正一反的方机驱动模块主要功能是将主控芯片发出的信号通过L298N电机控制芯片转化为小车实际的动作。L298的5,7,10,12四个口接单片机的输出信号,2,3,13,14四个口接电动机的保护电路,对电动机进行驱动。图一:应用L298n芯片 驱动电机电路图 5 程序设计及调试,在调试过程中输出信号可由外接按键控制。八个按键接单片机的PORTD的八个口进行按键输入:图二:按键输入电路图 四、软件设计思想及流程本系统的软件是基于预先从键盘输入的地图,依靠小车的自动导航系统进行自动驾驶。因为这一设计没有什么先例可循,我们就自己想了一个几乎完全基于whil
8、e(cx) (/x代表某个数字以区分各控制变量)的导航驾驶系统(后来这一语句的应用又扩展到了整个程序)。用一个cx来控制各个运动函数的执行时间,一个c3控制总行驶函数的执行,每个运动函数先把总行驶函数对应的cx调为0,之后执行自身,到点执行完毕后会自动把该运动函数对应的cx调为0来停止执行并把总行驶函数对应的cx调为1。之后总行驶函数执行下一个运动函数。在各运动函数中用c来代表cx。具体的各运动函数的执行时间则通过形参int i从距离数组wlongthi传递给各个运动函数,各个运动函数用v=(wlongthi/velocity)来控制执行时间。运动函数输出预置电平,把v置为wlongth/an
9、gleiTurningnode是否被中断调为0否退出,把c3调为1是Drive-on函数判断方形地图的下一个方向0,退出3,4,5,6,分别执行forward, backward,turnleft,turnright函数 至于地图输入部分,则大致可以分为两小部分,地图的指向部分和数值部分。指向部分用3,4,5,6,分别在方向地图中代表forward,backward,turnleft,turnright各个运动函数,mapinput函数判断按键7,执行enter函数2,执行shift函数3,4,5,6,分别在方向地图中存入forward,backward,turnleft,turnright退
10、出mapinput函数数值部分独立为shift函数,统一从llongthm2数组来键入数值,分别enter2/3 /2angle函数,向长度数组wlongth12角度数组wangle12存入最后总值shift函数判断按键2,6,3执行enter2/3 /2angle函数,存入最后总值5,4,执行shift3/4函数,wm/m3+1退出mapinput函数7执行longthcal,llongthm2加11,执行shift2函数数位总体上,先执行mapinputt函数,然后按下按键2,执行drive-on函数,执行完毕后执行reset函数,重置各变量,等待下一次输入。Main函数判断按键2执行re
11、set函数,重置各变量执行mapinputt函数否执行drive-on函数五、软件功能本小车可以通过按键进行任意地图和目的地的输入(具体输入方法见前),按下按键2,小车开始按照输入的地图进行自动行驶到达目的地,播放一段音乐;如果在目的地受到阻碍,小车会自动沿原路径返回,播放另一段音乐。不同的地面的阻尼不同,我们还可以通过按键在shift操作阶段通过输入阻尼系数改变小车行驶使其可以适应当前的地面阻尼,使得小车的行驶路径更加符合我们的输入地图。源程序链接六、系统测试数据次别1目的 测试转弯系数地图int pr24=3,5,3,5,3,5,3,5 ;double wlongth24=2,240,24
12、0,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240 ;double 转角系数wangle24=80,80,80,80,80,80,80,80,80,80,80,80 ;实际转角 约170次别2目的 测试转弯系数地图int pr24=3,5,3,5,3,5,3,5 ;double wlongth24=2,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240 ;double 转角系数wangle24
13、=40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40 ;实际转角 约90次别3目的 测试转弯系数地图int pr24=3,5,3,5,3,5,3,5 ;double wlongth24=2,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240 ;double 转角系数wangle24=12,12,12,12,12,12,12,12,12,12,12,12 ;实际转角 约10次别4目的 测试转弯系数地图int pr24=3,5,3,5,3,5
14、,3,5 ;double wlongth24=2,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240 ;double 转角系数wangle24=24,24,24,24,24,24,24,24,24,24,24,24 ;实际转角 约45结论 瓷砖摩擦系数偏小,对规则转弯有影响,转角系数应设为20以上次别5目的 行驶系数测试地图int pr24=3,3,5 ;行驶系数double wlongth24=2,480, 480, 480, 480, 480,480, 480, 480, 480,
15、480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480;double wangle24=40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40 ;实际行驶约48cm次别6目的 行驶系数测试地图int pr24=3,3,5 ;行驶系数double wlongth24=2,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240 ;double wangle24=40,40,40,40,40,40,4
16、0,40,40,40,40,40,40,40,40,40,40 ;实际行驶约24cm次别7目的 行驶系数测试地图int pr24=3,3,5 ;行驶系数double wlongth24=2,120, 120, 120, 120, 120, 120,240, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,240, 120, 120;double wangle24=40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40 ;实际行驶约10cm结论 瓷砖摩擦系数偏小,而且有分界线,对行驶有影响,行驶系数应设为120以上七
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年资兴市市直事业单位第二次公开选聘工作人员备考题库及答案详解1套
- 2026年天津港集装箱码头有限公司招聘备考题库及答案详解一套
- 2026年北京金隅嘉业房地产开发有限公司招聘备考题库及1套参考答案详解
- 2026年云南云丘发展集团有限责任公司招聘备考题库及参考答案详解一套
- 2026年十堰市公安局武当山旅游经济特区分局招聘辅警备考题库含答案详解
- 2026年上海宋庆龄学校附属徐汇实验小学教师招聘备考题库及参考答案详解1套
- 2026年公开招聘中国农科院创新工程院级科研团队首席科学家的备考题库及答案详解参考
- 2026年东兴边检招聘辅警备考题库及答案详解一套
- 2026年广东大唐国际潮州发电有限责任公司招聘备考题库及一套完整答案详解
- 2026年佛山市第六中学招聘合同制道德与法治、地理教师备考题库含答案详解
- DB35T 2136-2023 茶树病害测报与绿色防控技术规程
- 盖板涵盖板计算
- 运输工具服务企业备案表
- 医院药房医疗废物处置方案
- 天塔之光模拟控制PLC课程设计
- 金属眼镜架抛光等工艺【省一等奖】
- 《药品经营质量管理规范》的五个附录
- ASMEBPE介绍专题知识
- 八年级上册地理期末复习计划通用5篇
- 初中日语人教版七年级第一册单词表讲义
- GB/T 9065.5-2010液压软管接头第5部分:37°扩口端软管接头
评论
0/150
提交评论