单片机应用-智能小车设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
智能小车设计
所谓智能系统,应该是在没有人为因素干预下,能够完全的或者部分的对外部刺激因素做出适当响应的系统。通常这种系统无论复杂还是简单,其硬件结构都可以分为传感、控制以及执行三个部分,好比人的各种感官、大脑以及四肢。下面就从这三个方面进行智能小车的设计,该小车具备自动循迹能力(非人为控制下按照指定路线行走),并且随着不同传感器的加入,能够完成更多的功能,比如壁障、走迷宫、寻光、通过电脑及手机等上位机控制等等。
一、控制部分:
图1 单片机最小系统原理图
图2 控制信号输入部分原理图
图3 控制部分电源输入开关
图4 显示接口
图5 DS18B20/1838一体化接口及ISP接口
该智能小车整个控制部分电路原理如以上5个图所示,可分为主控芯片最小系统、控制信号输入、电源以及各类接口四个部分。
1.主控芯片最小系统:
在本设计中所使用的主控芯片为51系列单片机,为保证其正常工作所必需的外围电路包括晶振电路、复位电路以及P0口上拉电阻。当然以上三个部分只能保证单片机正常运转,但若只是这样基本没有什么实际意义,根据不同的任务要求,需要让单片机在适当的引脚上连接相应的设备。这里结合智能小车所需的功能以及未来方便扩展的需要,除了设置4个3头插针连接红外光电开关、舵机(距离探测时会用到)以及给其他传感器供电外,还将单片机P0、P1、P2、P3口用排针引出,其中P1使用双排针,一排与8个LED灯相连,可在日后测试时方便观察信号变化。具体连接如图1所示。
2. 控制信号输入部分:
51系列单片机接收外部信号无非通过两个渠道,一个是其4个并行的I/O口,另一个就是其自带的串口,相较之下,串行口的拓展能力更强一些。如图2所示,在本设计中,利用单片机的I/O口设置了4个按键进行人机交互,同时在其串口上连接了一块USB/串口转换芯片PL2303。
PL2303:
是Prolific 公司生产的一种高度集成的RS232-USB 接口转换器,可提供一个RS232 全双工异步串行通信装置与USB 功能接口便利联接的解决方案。该器件内置USB 功能控制器、USB 收发器、振荡器和带有全部调制解调器控制信号的UART,只需外接几只电容就可实现USB 信号与RS232 信号的转换,能够方便嵌入到各种设备,该器件作为USB/RS232 双向转换器,一方面从主机接收USB 数据并将其转换为RS232 信息流格式发送给外设;另一方面从RS232 外设接收数据转换为USB 数据格式传送回主机。这些工作全部由器件自动完成,开发者无需考虑固件设计。PL2303 的高兼容驱动可在大多操作系统上模拟成传统COM 端口,并允许基于COM 端口应用可方便地转换成USB 接口应用,通讯波特率高达 6 Mb/s。
该器件具有以下特征:完全兼容USB1.1 协议;可调节的3~5 V 输出电压,满足3V、3.3V 和5V 不同应用需求;支持完整的RS232 接口,可编程设置的波特率:75b/s~6 Mb/s,并为外部串行接口提供电源;512 字节可调的双向数据缓存;支持默认的ROM 和外部EEPROM 存储设备配置信息,具有I2C 总线接口,支持从外部MODEM信号远程唤醒;支持Windows98, Windows2000,WindowsXP 等操作系统;28 引脚的SOIC 封装。
以上是PL2303芯片的基本介绍,通俗的讲就是该芯片通过驱动可以在PC机上虚拟出一个COM口,使USB接口模拟串口的功能,一般使用情况下主要关心1、5、15、16四个引脚,具体连接参看图2。
3.电源部分:
电源部分设计为双供电方式,从图3中可以看到,当切换开关上方闭合时,控制板通过电源接头供电,当切换开关下方闭合时,控制板通过USB接口供电。
4.各类接口部分:
这里所提供的接口分别为1602、12864LCD标准接口、DS18B20/1838一体化接口、ISP接口以及图2中所示的由PL2303芯片扩展的USB接口,保证了基本的输出扩展及传感器信号源扩展。由于已将单片机的I/O口引出,不必担心接口是否够用的问题,日后根据需要通过杜邦线可以随时扩展新的接口。
二、执行部分:
这里所说的执行部分指的是智能小车上能够表现出其对外部条件作出的反应的部分,这种反应可以是运动,也可以是声或者光。
图6 LED数码管显示
1.LED数码管显示:
图6所示为4位共阳极LED数码管显示电路,该部分可用于实时显示有关智能小车当前运行状态,比如速度、前方障碍物距离等等。如果根据实际需要进行相应的扩展,则可以用于显示更多类型的信息,比如加入A\D转换器可以显示当前电池的电压情况,加入温度传感器可以显示当前的工作温度等等。
图7 蜂鸣器
2.蜂鸣器
图7所示为简单的蜂鸣器电路,该蜂鸣器可用于对智能小车运行时的一些特定状况进行声音提示,如距离某物太近、转向、脱离轨道、电量过低等等,不同的状况可以使用不同的声音组合进行区分。
3.运动部分:
该智能小车的运动执行部分由减速直流电机、轮胎以及相应的驱动电路组成,具体如图8、9所示。该部分负责实时的执行小车所需的各种运动(左右转、前进、后退等),若将轮胎部分换成履带或者其它专用轮胎,则可以执行翻越等更为复杂的运动。下面就该部分原理做较为详尽的介绍。
图8 直流减速电机及轮胎
图9 双L298N驱动电路
直流减速电机:
直流减速电机相较于普通直流电机的最大区别就是加入了减速齿轮组,通过调整齿轮比可以在转速与扭矩之间进行权衡,降低转速则可以获得较大扭矩,带动更重的设备,反之扭矩则减少。本设计中整个小车质量相对于普通5V直流电机来说比较重,若选用较大功率的电机,则耗电量与驱动电路的负载将会增加,况且并不需要太高的速度,所以选用减速电机,在同样的功率下通过降低转速获得足够的扭矩。
轮胎:
最常见的轮胎如图8中所示的圆形轮胎,也是本设计中所使用的轮胎,其对于一般硬质平地来说非常适用,除此之外还有履带,适用于较软并且凹凸不平路面以及专门用于攀爬楼梯等特殊障碍物的异形轮胎等。
驱动电路:
小车直流电机工作电流一般是200-400mA 有些更大,该设计中是四个轮子,那么总的电流在800-1600mA 左右,这些电机轮子都是要接受单片机指令执行相应的动作,而单片机I/O 口一般只能提供5mA 到10mA 的电流,直接驱动不了电机,所以需要一个驱动模块,该驱动模块的作用就是根据单片机的指令提供足够的电流。对于工作电压12V以下,功耗25W 以内的设备可以选用专业的L298N,L293D 驱动芯片。这里我们选用L298N驱动芯片,该芯片可以同时驱动两个电机,所以采用双L298N方案。
L298N:
图10 L298N内部结构图
L298N是ST公司的L298系列的一款常见的15功能引脚Multiwatt15或PoweSO20封装的产品,如图11所示,内部包含4通道逻辑驱动电路,即内含两个H桥的高电压大电流双全桥式驱动器,如图10所示,可以方便的驱动两个直流电机,或一个四相步进电机。L298N 可接受标准TTL逻辑电平信号,输入电压范围为+2.5~46 V,输出电压最高可达50V,可以直接通过电源来调节输出电压,输出电流可达2.5 A,可驱动电感性负载,可接入电流采样电阻形成电流传感信号,可以直接用单片机的IO口提供信号,而且应用电路简单,使用比较方便。