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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

循迹避障小车毕业设计说明.docx

1、循迹避障小车毕业设计说明摘要自循迹避障小车是行走机器人的一种,这种小车可以适应不同环境,不受温度、湿度、磁场辐射、重力等条件的影响,在人类无法进入或生存的环境中完成人类无法完成的探测任务,适用于国防及民用等多个领域。本设计的主要任务是设计和实现基于ATMega128单片机的寻迹避障小车,包括硬件和软件两个部分。硬件电路部分主要包括控制器、循迹电路、避障电路、电机驱动电路、显示电路、电源电路等。自循迹避障小车的软件平台为ICCAVR开发环境。软件系统包含系统初始化程序、红外传感器循迹程序、超声波避障程序与显示程序等。车前部安装的红外传感器负责釆集道路信号,作为小车的循迹依据;超声波传感器负责测量

2、障碍物和小车之间的距离,作为避障依据。微控制器读取传感器当前状态,从而控制相应的电路,进而控制小车行进的速度和角度,最后实现小车在实验环境中自动循迹避障行驶的功能。在本设计中,系统硬件和软件都采用了模块化结构,整个系统的电路结构简单,可靠性高,并可按需求增加或删除功能。在实际的调试过程中,小车能自适应直道、弯道、交叉线等路况,并且能够避开跑道上的障碍物。关键词:ATMega128;循迹;避障;ICCAVRAbstractSelf-tracing and obstacle avoidance electric vehicle is a kind of mobile robot, which is

3、 able to adapt various environments, humidity, magnetic radiation and gravity. Consequently the vehicle take the place of human to implement many tasks in the environment where human cannot set foot, which is applicable in many fields in the national defence and civilian.The main job of this project

4、 is to design and implement based on ATMega128 single-chip microcomputer self-tracing and obstacle avoidance car, including its hardware and software in two parts. The hardware circuit part mainly comprises a controller, a signal detection circuit, obstacle avoidance circuit, motor drive circuit, di

5、splay circuit and power supply circuit. the software platform is ICCAVR. The software include initialization program, self-tracing program, obstacle avoidance program and display program. The road information is acquired for navigation by red sensor in the front of the vehicle. The red sensor recogn

6、izes the black line. The ultrasonic transducer recognizes the barriers. The micro controller acquires current state to control corresponding circuit and then the vehicles speed and angle. In this way the self-tracing driving function is realized in the experimental environment.The hardware and softw

7、are of this project are all the modular it has. The circuit is simple in structure and the function can be added or deleted according to requirement. In the experiment, the vehicle can autonomously adapt straight road, corners and crosses line. The target of the self-tracing and obstacle avoidance v

8、ehicle are met.Key words: ATMega128; infrared sensor; obstacle avoidance; ICCAVR0前言 1 1方案设计与论证 21.1整体硬件方案论证 21.2整体软件控制方案 32系统硬件设计 42.1单片机最小系统 42.2电源模块 82.3循迹模块 92.4超声波避障模块 202.5步进电机模块 232.6液晶显示模块 242.7 DS1302时钟模块253系统软件设计 273.1 AVR单片机C语言设计 273.2 ICCAVR编程器软件 273.3系统程序流程图 314系统总体调试 324.1硬件调试 324.2软件调试

9、 325系统抗干扰设计 336技术经济分析 357结论 36致 37参考文献 38附录A 译文 39附录B 外文文献 43附录C 设计程序 490 前言人们一直都想拥有一种能够自动驾驶,并且能够适应各种复杂路面情况和沿着指定道路(轨迹)行驶的车辆。多年来,随着企业生产技术不断提髙,自动化技术不断加深,电子智能控制技术在汽车工业上的应用越来越普遍,人们的这一梦想终于有望得到实现。现在,世界上许多国家都在对智能车辆进行研究和设计。循迹避障小车的研究是移动机器人的一个分支,是一项涉及到计算机技术,传感技术,通讯技术,自动控制技术,人工智能技术等相关技术的综合系统。当今的循迹避障小车技术的发展主要有两

10、个特点:第一,应用的领域不断扩大;第二,智能化程度越来越高。它的主要功能是能够自动识别路径,自动控制车速,自动转向等1。循迹避障小车是一个具有环境感知能力,规划决策能力的综合体,其主要特点是在复杂的道路情况下能自动的驾驶车辆并沿着预定道路行驶,特别适用于在人类无法工作的环境中工作。作为智能交通系统(ITS)2中的一部分,循迹避障小车技术已经渗透到社会各个领域并且成为该领域中的研究热点。对于循迹避障小车系统来说,它主要由路径识别、角度控制及车速控制等功能模块组成,它是一个集环境感知、规划决策等功能于一体的综合系统。本循迹避障小车由模型小车、传感器、单片机以及所需的硬件电路组成。其核心是自动控制系

11、统,它是一个由传感器和处理器组成的网络,可以对路径识别并做出反应,能够自动调节行驶方向和速度,而无须遥控。本课题有助于解决现实问题,有很强的研究价值。1 方案设计与论证1.1 整体硬件设计方案根据设计任务的要求,确定如下方案:通过高发射功率红外光电二极管和高灵敏度光电晶体管组成的传感器循迹模块判断黑线路径,通过超声波模块测量出障碍物和小车之间的距离,并将测量数据传送至单片机进行处理,然后由单片机通过IO口控制L298N驱动模块改变两个直流电机的工作状态,实现对小车的控制。1.1.1 系统基本组成小车主要由ATMega128单片机电路、TCRT5000循迹模块、超声波模块、液晶显示模块、L298

12、N驱动模块、直流减速电机、小车底板、电源模块、DS1302模块等组成。ATMega128超声波避障模块循迹模块液晶显示模块电源模块驱动模块DS1302模块 图1-1 单片机控制系统原理框图Fig.1-1 single-chip microcomputer control system principle1)单片机电路:采用ATMega128芯片作为控制单元。ATMega128是ATMEL公司的 8位系列单片机,稳定性高,应用广泛。所有I/O端口都具有真正的读-修改-写功能;具有两个独立的预分频器和比较器功能的8位定时器/计数器;具有两个预分频器、比较功能和捕捉功能的16位定时器/计数器;具有独

13、立预分频器的实时时钟计数器;能够产生两路8位PWM、6路分辨率可编程(1到16位)的PWM;可以通过SPI实现系统编程3。2)TCRT5000循迹模块:采用反射式红外发射接收器作为循迹传感器,由红外传感器完成黑线识别并产生高、低电平信号,经过LM324整形后传送到单片机,单片机通过程序控制驱动模块来控制两个直流电机的工作状态,完成自动循迹3。3)电机驱动模块:采用L298N作为电机驱动芯片。L298N具有高电压、大电流、响应频率高的全桥驱动芯片,一片L298N可以控制两个直流电机,并且带有控制使能端。该电机驱动芯片驱动能力强、操作方便,稳定性好,性能优良。L298N的使能端可以外接电平控制,也

14、可以利用单片机进行软件控制,满足各种复杂电路的需要。另外,L298N的驱动功率较大,能够根据输入电压的大小输出不同的电压和功率,解决了负载能力不够的问题。 4)直流电机:采用ASLONG JGA25-370直流减速电机。直流减速电机,即齿轮减速电机,是在普通直流电机的基础上,加上配套齿轮减速箱。齿轮减速箱的作用是提供较低的转速,较大的力矩。同时,齿轮箱不同的减速比可以提供不同的转速和力矩。5) 超声波避障模块:采用超声波测距模块(HC-SR04),利用单片机PC6控制HC-SR04的Trig引脚产生一个10us以上的高电平,用单片机外部中断6(INT6)检测接收口Echo高电平输出。一有输出则

15、引起外部中断,在外部中断开定时器0计时,当Echo端口变为低电平时再次触发外部中断6,在中断停止定时器0计数。最后读出定时器的值,该时间值2超声波传播速度=障碍物和小车的距离。当障碍物与小车的距离小于规定值时,小车在行进中会绕开障碍物,沿着另一条跑道前进。6)液晶显示模块:采用HG12232带中文字库的液晶显示屏显示小车运行状态。主要显示小车运行时间,实时运行状况。该液晶屏可以并行传输,也可以串行传输。在这个设计中,考虑到ATMega128有足够的引脚,故采用并行传输。7)DS1302时钟模块:DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、

16、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用DS1302对小车运行时间计时。8)电源模块:电机电源由四个串联的1.5V碱性电池作为电源。单片机系统由四个串联的1.5V碱性电池,然后串接一个IN4007,最后用0.1uF电容进行滤波。电机电源和单片机系统电源分开供电,提高了系统供电稳定性。1.2 整体软件控制方案黑线是小车跟踪的目标,检测系统检测车的相对路径,然后将此信息输入到单片机,单片机处理此信息后,将控制命令输出到驱动模块,以控制小车的直流减速电机,保证小车平稳地沿预先设定好的路线行驶。同时,超声波模块实时监测跑道上障碍物和小车之间的距离,当距离小于规定

17、值时,小车进入岔道,然后继续沿着黑线前进。2 系统的硬件设计2.1 单片机最小系统设计2.1.1 单片机的功能特性描述本设计采用ATMega128A单片机,该单片机是ATMEL公司的8位系列单片机,稳定性高,应用广泛。1)主要特性高性能、低功耗的AVR 8位微处理器;先进的RISC结构;133条指令大多数可以在一个时钟周期完成;32x8通用工作寄存器;芯片工作于16MHz时性能高达16MIPS;只需两个时钟周期的硬件乘法器;非易失性的程序和数据存储器;128K字节的系统可编程Flash(寿命:10000次写/擦除周期);具有独立锁定位、可选择的启动代码区;通过片的启动程序实现系统编程;真正的读

18、-修改-写操作;4K字节的EEPROM(寿命:100000次写/擦除周期);4K字节的部SRAM;多达64K字节的优化的外部存储器空间;可以对锁定位进行编程以实现软件加密;可以通过ISP实现系统编程;JTAG接口(与IEEE 1149.1标准兼容);遵循JTAG标准的边界扫描功能;支持扩展的片调试;通过JTAG接口实现对Flash、EEPROM、熔丝位和锁定位的编程。2)外设特点两个具有独立的预分频器和比较器功能的8位定时器/计数器;两个具有预分频器、比较功能和捕捉功能的16位定时器/计数器;具有独立预分频器的实时时钟计数器;两路8位PWM;6路分辨率可编程(1到16位)的PWM;输出比较调制

19、器;8路10位ADC;8个单端通道;7个差分通道;两个可编程的串行USART;可工作于主机/从机模式的SPI串行接口;具有独立片振荡器的可编程看门狗定时器;片模拟比较器。3)特殊的处理器特点上电复位以及可编程的掉电检测;片经过标定的RC振荡器;片/片外中断源;6种睡眠模式:空闲模式、ADC噪声抑制模式、省电模式、掉电模式、Standby模式以及扩展的Standby模式;可以通过软件进行选择的时钟频率;通过熔丝位可以选择ATmega103兼容模式;全局上拉禁止功能。2.1.2 ATMega128各引脚功能1)Vcc:数字电路的电源。2)GND:地。3)端口A(PA7PA0)、端口B(PB7PB0

20、)、端口C(PC7PC0)、端口D(PD7PD0)、端口E(PE7PE0)、端口F(PFTPF0)、端口G(PG4PG0):这些端口均为双向I/O口并具有可编程的部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若部上拉电阻使能,则端口被外部电路拉低时将输出电流。复位发生时端口为三态。端口也可以用作其他不同的特殊功能。4)RESET:复位输入引脚。超过最小门限时间的低电平将引起系统复位。低于此时间的脉冲不能保证可靠复位。5)XTAL1:反向振荡器放大器及片时钟操作电路的输入。6)XTAL2:反向振荡器放大器的输出。7)AVCC:AVCC为端口F以及ADC转换器的

21、电源。需要与Vcc相连接,即使没有使用ADC也应该如此。使用ADC时应该通过一个低通滤波器与Vcc连接。8)AREF:AREF为ADC的模拟基准输入引脚。9)PEN:PEN是SPI串行下载的使能引脚。在上电复位时保持为低电平将使器件进入SPI串行下载模式。在正常工作过程中PEN引脚没有其他功能。2.1.3 ATmega128的中断向量表2-1 复位和中断向量Tab.2-1 reset and interrupt vectors向量号程序地址中断源中断定义1$0000RESET外部引脚、上电复位、掉电检测复位、看门狗复位2$0002INT0外部中断请求03$0004INT1外部中断请求14$00

22、06INT2外部中断请求25$0008INT3外部中断请求36$000AINT4外部中断请求47$000CINT5外部中断请求58$000EINT6外部中断请求69$0010INT7外部中断请求710$0012TIMER2 COMP定时器/计数器2比较匹配11$0014TIMER2 OVF定时器/计数器2溢出12$0016TIMER1 CAPT定时器/计数器1捕捉事件13$0018TIMER1 COMPA定时器/计数器1比较匹配A14$001ATIMER1 COMPB定时器/计数器比较匹配B15$001CTIMER1 OVF定时器/计数器1溢出16$001ETIMER0 COMP定时器/计数器

23、0比较匹配17$0020TIMER0 OVF定时器/计数器0溢出18$0022SPI,STCSPI串行传输结束19$0024USART0,RXUSART0,RX结束20$0026USART0,UDREUSART0数据寄存器空21$0028USART0,UDREUSART0,TX结束22$002AADCADC转换结束23$002CEE READYEEPROM就绪24$002EANALOG COMP模拟比较器25$0030TIMER1 COMPC定时器/计数器1比较匹配C26$0032TIMER3 CAPT定时器/计数器3捕捉事件27$0034TIMER3 COMPA定时器/计数器3比较匹配A28

24、$0036TIMER3 COMPB定时器/计数器3比较匹配B29$0038TIMER3 COMPC定时器/计数器3比较匹配C30$003ATIMER3 OVF定时器/计数器3溢出31$003CUSART1,RXUSART1,RX结束2.1.4 系统时钟ATMega128单片机的XTAL1和XTAL2分别为用作片振荡器的反向放大器的输入和输出,这个振荡器可以使用石英晶体,也可以使用瓷谐振器。熔丝位CKOPT用来选择这两种放大器模式的其中之一。当CKOPT被编程时振荡器在输出引脚产生满幅度的振荡。这种模式适合于噪声环境,而且这种模式的频率围比较宽。当保持CKOPT为未编程状态时,振荡器的输出信号幅

25、度比较小。其优点是大大降低了功耗,但是频率围比较窄。图2-1 晶体振荡器连接图Fig.2-1 crystal oscillator connections2.1.5 复位电路复位是单片机芯片本身的硬件初始化操作,以便CPU以及其他部功能部件都处于一个确定的初始状态,并从这个初始状态开始工作。AVR单片机复位操作的主要功能是把程序计数器PC初始化为$0000,使单片机从$0000单元开始执行程序。同时绝大部分的寄存器(通用寄存器和I/O寄存器)也被复位操作清零。外部复位:当外部引脚/RESET为低电平时且低电平持续一定的时间时,单片机复位。图2-2 外部复位Fig.2-2 external re

26、set2.1.6 串行编程方式(ISP)串行编程方式是通过AVR芯片本身的SPI串行口来实现的,由于编程时只需要占用比较少的外围引脚,所以可以实现芯片的在线编程,不需要将芯片从PCB板上取下来。当RESET位低电平时,可以通过串行SPI总线对Flash行编程。串行接口包括SCK、MOSI(输入)及MISO(输出)。RESET为低之后,应在执行编程/擦除操作之前执行编程允许指令。尽管SPI编程接口重用SPI I/O模块,但其中有一点不同:MOSI/MISO引脚映射到SPI的I/O模块的PB2与PB3在编程接口并不使用,而PE0与PE1用来传递数据。图2-3 SPI系统编程Fig.2-3 SPI

27、interface for in-system programming2.1.7 ATmega128的熔丝位在AVR部有多组与器件配置和运行环境相关的熔丝位,可以通过设定和配置熔丝位,使AVR具备不同的特性,以更加适合实际的需要。在AVR的器件手册中使用已编程(Programmed)和未编程(Unprogrammed)定义加密位和熔丝位的状态。Unprogrammed表示熔丝位的状态为“1”(禁止),Programmed表示熔丝位的状态为“0”(使能)4。需要从新下载程序时,或芯片被加密锁定后,或发现熔丝位配置不正确时,都必须先在编程状态下使用芯片擦除命令,然后重新下载运行代码和数据,修改和配

28、置相关的熔丝位。ATMega128在出厂时M103C默认状态为“0”,即默认以ATmega103兼容方式工作。当用户系统设计使芯片以ATmega128方式工作时,应首先将M103C的状态配置为“1”。表2-2 晶体振荡器工作模式Tab.2-2 crystal oscillator operating modes熔丝位工作频率围/MHzC1、C2容量/pF(仅适用于石英晶振)CKOPTCKSEL3:01101x0.4-0.9仅适用于瓷振荡器1110x0.9-3.012-221111x3.0-8.012-220101x,110x,111x1.012-22图2-4 ATMega128单片机最小应用系

29、统Fig.2-4 the least application system about ATMega128 2.2 电源模块为了确保供电的稳定性和提高系统的抗干扰能力,电机电源和单片机系统电源分开供电。电机电源由四个串联的1.5V碱性电池作为电源。单片机系统由四个串联的1.5V碱性电池,利用IN4007导通压降0.7V左右的性质,在电路中串接一个IN4007,使得输出电压5至5.5V。最后用0.1uF电容进行滤波。为了得到3.3V电压,用AMS1117稳压模块将5V电压降为3.3V。为了确保AMS1117的稳定性,输出端需要连接一个至少22F的电容。图2-5 电源模块Fig.2-5 power module 2.3 循迹模块系统结构 循迹模块是由传感器阵列检测到小车的位

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2