单片机竞赛报告(智能小车)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三届单片机综合应用设计竞赛
参赛题目智能小车
专业电信信息工程技术,电子信息工程
班级1406142,140201Z
姓名朱思东,柏秋利
2016年12 月
摘要
本设计是基于STM32主控制芯片的智能小车。该小车主要实现以下功能:小车在自动行驶的过程中,能够灵活地避开有障碍物和车底下有悬崖的地方且能够被遥控。电源模块是通过7.4V锂电池实现;避障模块是通过超声波传感器和红外传感器实现;遥控模块是通过HC05蓝牙主从一体模块和手机APP实现;电机驱动模块是通过L298N实现;编程软件为MDK5。整体系统结构简单,可靠性高。
关键词:单片机,传感器,避障,遥控
1.总体设计方案及论证
1.1 系统组成原理
根据功能,确定如下方案:在现有车模底盘的基础上,加装超声波传感器,红外避障传感器模块检测小车周边障碍物的实时情况。然后,把数据返回给单片机,单片机发送相应的指令实现对电动小车的自动避障、运行状况的实时测量,从而达到利用单片机对小车智能控制,自动避障的目的。
这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。
(1)STM32作为主控芯片核心,ARM 32位的Cortex-M3™CPU,36MHz,1.25DMIPS/MHz(Dhrystone2.1),0等待的存储器访问,单周期乘法和硬件除法。存储器,从 32K字节至 128K字节闪存程序存储器,从 6K字节至 16K字节SRAM。时钟、复位和供电管理。2.0至 3.6伏供电和 I/O管脚。上电 / 断电复位(POR / PDR)、可编程电压监测器(PVD)内嵌 4至 16MHz高速晶体振荡器。内嵌经出厂调校的 8MHz RC振荡器。低功耗,睡眠、停机和待机模式,VBAT为 RTC和后备寄存器供电。调试模式,串行线调试(SWD)和JTAG调试接口。DMA,7通道DMA 控制器,支持的外设:定时器、ADC、SPI、I2C,USART。多达 80个快速 I/O口,6/37/51/80个多功能双向 5V兼容的 I/O口,所有 I/O口可以映像到 16个外部中断。多达 6个定时器,多达 3个 16位定时器,每个定时器有多达,4个用于输入捕获 / 输出比较 / PWM或脉冲计数的通道,2个 16位看门狗定时器(独立的和窗口型的)等。
图1-1 STM32F103C8T6原理图
(2)直流电机驱动芯片
对于直流电机驱动芯片的选择首先我要考虑它的输出功率能不能很好的驱动小车的四个直流电机。然后,考虑它的外围电路是否简单。还有就是考虑它的价格是否相对比较便宜。综合这些我最终选择以前用过的大家都比较熟悉的电机驱动芯片L298。
电机驱动部分主要采用一片L298N和单片机直接相连够成驱动电路。L298N 芯片直插式的15个引脚,其中有两个使能端ENA和ENB,两个反馈端SA和SB,四个输入端IN1、IN2、IN3和IN4,四个输出端OUT1、OUT2、OUT3和OUT4,一个接地端GND,一个VSS(5V时性能最好)逻辑电源电压输入端和一个VS(最大承载电压46V,鉴于7805和电机电压,选取12V电源供电)功率电源电压输入端。L298N可同时驱动两个电机,最大输出电流为2A,鉴于它的良好性能和价格,选取L298N作为电机驱动芯片,L298N芯片如图2-2。AT89C52的P1.6端口作为pwm脉冲输出,同时与L298N的两个使能端ENA、ENB相连,达到控制小车速度目的。P1^2~P1^5端口分别与L298N的引脚IN1、IN2、IN3、IN4相连通过电平变化控制电机在持续高速状态下的转向。L298N的四个输出端直接与两个电机相连驱动电机。
图1-2 L298N芯片实物图和引脚图
(3)超声波传感器
超声波测距原理:超声波发射器向某一方向发射超声波,在发射时刻的
同时开始计时,空气中传播,途中碰到障碍物就立即返回来,超声波接收器
收到反射波就立即停止计时。超声波在空气中的传播速度为340m/s,根据
计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:
s=340t/2这就是所谓的时间差测距法。超声波传感器结构如图2-3所示。
共振板
电板
图1-3超声波传感器结构
超声波在本设计中的原理分析:由于自己用分立元器件焊接比较麻烦,所以本设计采用现成的US-100超声波模块,US-100 超声波测距模块可实现0~4.5m 的非接触测距功能,拥有 2.4~5.5V 的宽电压输入范围,静态功耗低于 2mA,自带温度传感器对测距结果进行校正,同时具有GPIO,串口等多种通信方式,内带看门狗,工作稳定可靠。US-100模块如图2-4所示。
US-100正面图US-100背面图
图1-4超声波实物图
超声波探测模块US-100的使用方法为:IO口触发,给Trig口至少10us的高电平,启动测量;模块自动发送8个40Khz的方波,自动检测是否有信号返
回;有信号返回,通过IO 口Echo 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间,测试距离=(高电平时间*340)/ 2,单位为m 。
程序中测试功能主要由两个函数完成,即measure()负责计算一次测量小车障碍物的距离,然后shouldTurn()确定前方有障碍物采取避障措施,根据车体大小及系统的反应,经过测试,取20cm 的反应距离效果较为明显。另外,US-100超声波探测模块探测的间隔周期推荐值是64ms (图2-5),但经过试验,我们发现在我们的小系统中取800ms 较为适宜,使主程序有足够的时间来驱动小车前进,而不至于出现前进不流畅的现象。
触发信号
10uS 的TTL
循环发出8个40KHz 脉冲
模块内部
发出信号
输出回响信号
回响电平输出与
检测距离成比例
图1-5 超声波检测原理
(4)红外传感器模块
避障传感器基本原理,利用物体的反射性质。在一定范围内,如果没有障碍物,发射出去的红外线,因为传播距离越远而逐渐减弱,最后消失。如果有障碍物,红外线遇到障碍物,被反射到达传感器接收头。传感器检测到这一信号,就可以确认正前方有障碍物,并送给单片机,单片机进行一系列的处理分析,协调小车两轮工作,完成一个漂亮的躲避障碍物动作 。
(5)遥控模块
蓝牙模块BT-HC05模块是一款高性能的蓝牙串口模块。
1、可用于各种带蓝牙功能的电脑、蓝牙主机、手机、PDA 、PSP 等智能终端配对。
2、宽波特率范围4800~1382400,并且模块兼容单片机系统。