基于超声波测距的智能小车设计 - 图文

发布时间 : 星期一 文章基于超声波测距的智能小车设计 - 图文更新完毕开始阅读

小车的目的。采用这种控制器+数据采集独立式的结构,其优点是很明显的,具体表现为:分工明确,可以使各部分各司其责,工作效率高,设计方便,可移植性好。本设计采用该独立式结构方案可行。

3.3 微处理器的选择

方案一:使用51单片机。

51单片机是初学者首选的,具有指令多,编程易等优点。典型代表为AT89S51、AT89S52,由美国ATMEL公司生产,后授权给中国台湾某公司生产和销售。

方案二:使用AVR ATMEGA系列单片机。

ATMEGA系列是美国ATMEL公司生产的AVR 8位单片机中的高端产品,由于市场和技术原因,市场占有率挺高,采用精简指令集系统。具有功耗低、处理速度快、性价比高等优点,但是其价格昂贵,目前市场上不易买到。

方案三:使用MPS430,凌阳61单片机等16位单片机或者ARM系列单片机。 由于本系统控制功能简单,没有必要为了提高性能而增加成本和开发难度。 经过综合考虑,本题目采用第一套方案,选取IO口个数和ROM大小适合本系统的AT89S52单片机。

3.4 显示方式的选择

方案一:采用LCD1602液晶屏显示

LCD1602能够显示两行字符或数字,每行8个,可视面积较小。 方案二:采用LCD12864液晶屏显示

LCD12864能够显示4行汉字,每行显示8个汉字或16个字符。可视面积大,但是价格昂贵,程序设计较为麻烦。

方案三:采用NOKIA5110 LCD液晶屏显示

NOKIA5110 LCD具有84*48点阵图形显示能力,可同时显示4行,每行7个的12*12汉字,或者显示6行,每行14个的6*8 ASCII码字符。显示信息量一般,且不带字库,显示信息量过大时,需占用单片机大量ROM或RAM空间。电路设计和程序设计都较为复杂。

方案四:采用四位数码管显示

数码管只能够显示数据,不能够显示汉字,不过数码管显示直接数据,易懂,而且程序设计比较简单。

9

综合考虑:本系统采用数码显示,方便直接,性价比高,功耗低。采用四位共阳极数码管,动态扫描。位选采用三极管电流驱动和开关的选择。

3.5 小车电机驱动电路的选择

方案一:采用三极管组成的分立式H桥电路。

每个电机都采用有四个三极管组成的H桥电路,三极管价格低廉,电路原理易懂。实际使用的时候,用分立元件制作H桥式是很麻烦的。

方案二:采用集成电路L298NH桥电路。

L298N是专用的驱动集成电路,属于H桥集成电路,其输出电流大,功率大,可以驱动感性负载,如大功率直流电机,步进电机等特别是器输入端可以与单片机之间相连,从而很方便地受单片机控制,可以之间驱动两个直流电机,并可以实现电机的正反转。

综合考虑:本系统采用集成电路L298N,通过单片机输出逻辑电平就可以控制小车电机的运动状态。

3.6遥控器的选择

红外遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。

方案一:采用自制矩阵遥控器

采用矩阵键盘、主控器和光电二极管设计一个遥控器,电路设计较为复杂,而且还得编程。

方案二:采用有2262和2272组成的四路遥控器 市场有销售的四路这样的遥控器,不过价格较为昂贵。 方案三:采用目前最为流行软包9012电视机遥控器

这种电视机遥控器,组成简单,应用方便,在主电路中用一个接收头,接受信号。通过单片机进行数据的处理,实现解码,予以控制。

综合考虑:本系统采用采用9012电视机遥控器,方便简单,而且市场上较多,价格便宜。

10

第四章 硬件电路的设计

硬件系统主要有超声波数据采集模块、红外遥控接收模块、小车驱动模块、距离显示模块、报警模块和主控器组成。系统硬件部分的整体框图4.1如下所示:

超声波数据显示模块超声波数据采集模块超声波数据采集主控器报警系统模块小车运动状态主控器L298N电机驱动模块红外遥控模块直流稳压电源模块模块

4.1系统硬件部分的整体框图

4.1控制器

本设计经过第三章的论证,选用了ATMEl公司生产的AT89S52单片机,AT89S52是一个低电压,高性能CMOS 8位单片机,片内含8kB的可反复擦写的Flash只读程序存储器和128 B的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89S52提供了高性价比的解决方案。

AT89S52是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89S52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。

I/O 端口的编程实际上就是根据应用电路的具体功能和要求对 I/O 寄存器进行编程。具体步骤如下:

(1) 根据实际电路的要求,选择要使用哪些 I/O 端口,用 EQU 伪指令定义

11

其相应的寄存器;

(2) 初始化端口的数据输出寄存器,应避免端口作为输出时的开始阶段出现不确定状态,影响外围电路正常工作;

(3) 根据外围电路功能,确定 I/O 端口的方向,初始化端口的数据方向寄存器。对于用作输入的端口可以不考虑方向初始化,因为 I/O 的复位缺省值为输入;

(4) 用作输入的 I/O 管脚,如需上拉,再通过输入上拉使能寄存器为其内部配置上拉电阻;

(5) 最后对 I/O 端口进行输出(写数据输出寄存器)和输入(读端口)编程,完成对外围电路的相应功能。

图4.2 AT89S52单片机芯片

XTAL1:接外部晶振的一个引脚。在单片机内部,它是一个反相放大器输入端,这个放大器构成了片内振荡器。它采用外部振荡器时,此引脚应接地。

XTAL2:接外部晶振的一个引脚。在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端。当采用外部振荡器时,则此引脚接外部振荡信号的输入。

RST:AT89S52 的复位信号输入引脚,高电位工作,当要对芯片复位时,只要将此引脚电位提升到高电位,并持续两个机器周期以上的时间,AT89S52便能完成系统复位的各项工作,使得内部特殊功能寄存器的内容均被设成已知状态。具体的硬件原理图如图4.3:

12

联系合同范文客服:xxxxx#qq.com(#替换为@)