当前位置:文档之家› (完整版)arduino循迹小车毕业设计

(完整版)arduino循迹小车毕业设计

目 录摘要 (2)引 言 ......................................................... 2 1 Arduino 智能小车设计方案与参数 (3)1.1 Arduino 智能小车设计方案简介 (3)1.1.1 功能要求 (3)1.1.2 基本原理 (3)1.2 循迹小车参数 (4)2 Arduino 与51单片机的区别 (5)2.1 Arduino 单片机 (5)2.1.1 Arduino 单片机的介绍 .................................. 5 2.1.2 Arduino 单片机的特色 .................................. 5 2.1.3 Arduino 单片机的功能 .................................. 5 2.2 51单片机 .. (6)2.2.1 51单片机的介绍 ....................................... 6 2.2.2 51单片机的功能 ....................................... 6 2.3 Arduino 比51更好的地方 (7)3 循迹小车设计 ...........................3.1 硬件设计 .........................3.1.1 单片机最小系统 .................3.1.2 灰度传感器模块 .................3.1.3 电机驱动电路 ...................3.2 软件设计 .........................3.2.1 系统主程序 .....................3.2.2 本系统编译器 ...................3.3 实物展示 .........................3.4 部分程序展示 .....................结 论 ...................................致 谢 ...................................参考文献 ................................. Arduino 循迹小车设计与实现摘要:循迹小车是Arduino 单片机的一种典型应用。

本智能小车是由ardiuno 单片机和外部电路组成,包括检测模块,控制模块,电源模块。

循迹车设计采用Arduino单片机作为小车的控制核心,采用灰度传感器作为小车的检测模块来识别绿色路面中央的黑色引导线,采集信号并将信号转换为能被ardiuno单片机识别的数字信号;采用驱动芯片L298N构成双H桥控制直流电机。

其中软件系统采用C程序。

关键词:Arduino单片机,自动循迹,驱动电路。

引言自第一台工业机器人诞生以来,机器人的民展已经遍及机械、电子、冶金、交通、宇航、国防等领域。

近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。

人们在不断探讨、改造、认识自然的过程中,制造能替代人工作的机器一直是人类的目标。

单片机是一种可通过编程控制的微处理器,虽其自身不能单独用在某项工程或产品上,但当其与外围数字器件和模拟器件结合时便可发挥强大的功能,现在单片机已广泛应用于众多领域。

例如:工业自动化,智能仪器仪表,消费类电子产品,通信方面,武器装备等。

作为与自动化技术和电子密切相关的理工科学生,掌握单片机是最基础的要求。

为进一步丰富和巩固单片机知识,也为能更好的联系实际应用,本次毕业设计选择了基于单片机Arduino循迹车,并做出实物。

鉴于电子技术、计算机技术以及各种更先进的仿真软件的出现,使用高级语言如C代替汇编语言进行编程和控制已成为现实,单片机C语言编程相对于MC51汇编语言编程有如下优点:对单片机的指令系统不需要有很深的理解就可以编程操作单片机。

寄存器分配、不同存储器的寻址及数据类型等细节完全由编辑器自动处理。

程序有规范的结构,可分为不同的函数,可使程序结构化。

库中包括许多标准子程序,具有较强的处理能力,使用方便。

具有方便的模块化编程技术,使已编好的程序便于移植,可极大缩短开发时间,增加程序的可读性和可维护性。

事实上,当今许多硬件的开发都已开始用C语言编程,如各种单片机、DSP、ARM等,用C语言进行工业控制也已成为一种趋势,为了更好的适应当今社会形势,为了更好的面对挑战、把握机遇,此次毕业设计决定尝试用C语言编程完成。

也希望能在进一步熟悉单片机控制的同时,对数字电子技术、模拟电子技术、计算控制技术以及常用外围芯片有更深层次的了解,提高自己的综合能力。

1 Arduino智能小车设计方案与参数根据设计要求,Arduino智能小车要沿着山道环山跑一圈。

Arduino智能小车主要由四部分组成:分别为大脑-微控制器Arduino、眼睛-灰度传感器、躯体-电机驱动模块和心脏-电源模块。

1.1 Arduino智能小车方案简介依据所需功能的要求,设计计价器系统的结构图和硬件电路,绘制出智能小车的电路图,再绘制程序框图,之后编程并烧录到单片机;将各模块组合进行调试。

1.1.1功能要求小车以Arduino 为控制核心, 用单片机产生PWM波,控制小车速度。

利用灰度传感器对路面黑色轨迹进行检测,并将路面检测信号反馈给单片机内。

单片机对采集到的信号予以分析判断,及时控制驱动电机以调整小车转向,从而使小车能够沿着黑色轨迹自动行驶,实现小车自动寻迹的目的。

1.1.2基本原理智能小车系统主要由四部分组成:大脑-微控制器Arduino、眼睛-灰度传感器、手脚-电机驱动模块、能源-电源模块, 智能车循迹行驶过程是:首先灰度传感器将检测到黑线的信号传送给单片机最小系统,然后通过单片机最小系统的控制算法对信号进行计算处理,将此信号在通过控制算法驱动电机,最后实现对智能车运动轨迹进行实时控制。

微控制器-Arduino为内部核心处理处理单元,将外部给予的电平信号通过以植入的c语言程序为主进行处理。

灰度传感器为智能小车的眼睛,通过辨别地面的黑色线条的物理信号,灰度再将之转换为单片机能够处理的电平信号。

单片机将信号传输给电机驱动模块,即我们小车结构的手脚接受指令运行。

智能车总体模块设计图如图1-1所示。

它适用于爱好"互动"介面版,并且具、C语言的开发环境。

个主要的部分:硬来做电路连接的;另外一个则是的计算机中的程IDE中编写ArduinoArduino微处理控制器 (AVR系列控制器),可以采用USB接口供电,不需外接电源,也可以使用外部9VDC输入。

Arduino支持ISP在线烧,可以将新的"bootloader"固件烧入AVR芯片。

有了bootloader之后,可以通过串口或者USB to RS232线更新固件。

也可依据官方提供的Eagle格式PCB和SCH电路图简化Arduino模组,完成独立运作的微处理控制;可简单地与传感器,各式各样的电子元件连接(例如:红外线,超音波,热敏电阻,光敏电阻,伺服马达,…等)支持多种互动程序,如:Flash、MaxMsp、vvvv、PD、C、Processing等。

应用方面:利用Arduino,突破以往只能使用鼠标、键盘、CCD等输入的装置的互动内容,可以更简单地达成单人或多人游戏互动。

2.1.3 Arduino单片机的功能在功能上可以快速使用Arduino与Adobe Flash, Processing, MaxMSP, Pure Data, SuperCollider等软件结合,作出互动作品。

Arduino可以使用现有的电子元件例如开关或者传感器或者其他控制器件、LED、步进马达或其他输出装置。

Arduino也可以独立运行,并与软件进行交互,例如: Macromedia Flash, Processing, MaxMSP, Pure Data, VVVV或其他互动软件等。

Arduino 的IDE界面基于开放源代码,可以免费下载使用,开发出更多令人惊艳的互动作品。

在更多功能上有基于知识共享开放元源码的电路图设计,有基于知识共享开放源码的程式开发环境。

Arduino可使用ICSP线上烧入器,将「bootloader」烧入新的IC晶片,可依据官方电路图,简化Arduino模组,完成独立运作的微处理控制,可简单地与传感器,各式各样的电子元件连接(例如:红外线,超声波,热敏电阻,光敏电阻,伺服马达等),USB接口上,不需外接电源。

另外有提供9V直流电源输入。

2.2 51单片机2.2.1 51单片机的介绍51单片机是对所有兼容Intel 8031指令系统的单片机的统称。

该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。

很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。

51单片机是基础入门的一个单片机,还是应用最广泛的一种。

需要注意的是52系列的单片机一般不具备自编程能力。

2.2.2 51单片机的功能51单片机的功能特点分别有:8位CPU·4kbytes程序存储器(ROM)(52为8K),128bytes的数据存储器(RAM) (52有256bytes的RAM),32条IO口线·111条指令,大部分为单字节指令,21个专用寄存器,2个可编程定时计数器·5个中断源,2个优先级(52有6个),一个全双工串行通信口,外部数据存储器寻址空间为64kB,外部程序存储器寻址空间为64kB,逻辑操作位寻址功能·双列直插40PinDIP封装。

51单片机的内部结构分别为CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;ROM:用以存放程序、一些原始数据和表格;IO口:四个8位并行IO口,既可用作输入,也可用作输出;TC:两个定时记数器,既可以工作在定时模式,也可以工作在记数模式;五个中断源的中断控制系统; 一个全双工UART(通用异步接收发送器)的串行IO口,用于实现单片机之间或单片机与微机之间的串行通信;片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。

最佳振荡频率为6M-12M。

2.3 Arduino比51更好的地方Arduino与51单片机相比:变更人性化,编程相对人性化和直观,没有单片机基础的人也能很快上手。

相关主题