智能超声波壁障小车设计
【摘要】本文介绍一个基于STC89C52单片机控制的智能超声波壁障小车设
计。本次设计采用STC89C52单片机作为小车的检测和控制核心;采用LCD1602显示行驶路程、剩余路程、行驶时间、模式设置、壁障参数等信息;采用3144霍尔传感器测量行驶路程;采用TDL-9915无线遥控发送、接受模块遥控小车;采用M325SP-7NP型5轴步进电机带动超声波探头转动;采用L298N电机专用驱动芯片驱动小车电机行驶。实现了集自动壁障、测距、定时定路程控制功能为一体的智能小车设计。
关键词:超声波;单片机;壁障;测距;遥控
1 设计要求 ………………………………………………………………………………………3 2 总体设计方案 …………………………………………………………………………………3 2.1系统控制模块设计方案论证…………………………………………………………… 3 2.2 超声波壁障设计方案论证 ………………………………………………………………3 2.3 显示模块设计方案论证………………………………………………………………… 4 3 元器件介绍…………………………………………………………………………………… 4 3.1 L298N电机专用驱动芯片……………………………………………………………… 4 3.2 CX20106A超声波接收芯片………………………………………………………………5 3.3 3144霍尔传感器…………………………………………………………………………7 3.4 ULN2003达林顿驱动器………………………………………………………………… 7 4 系统硬件电路………………………………………………………………………………… 9 4.1 超声波发送接收电路…………………………………………………………………… 9 4.2 步进电机驱动电路……………………………………………………………………… 9 4.3 串口下载电路……………………………………………………………………………10 4.4 整体系统硬件电路………………………………………………………………………10 4.5系统PCB图……………………………………………………………………………… 11
5 系统软件设计…………………………………………………………………………………11 5.1 设计思路…………………………………………………………………………………11 5.2步进电机带动探头测距壁障流程图……………………………………………………12 5.3主程序流程图……………………………………………………………………………13 5.4系统总程序…………………………………………………………………………… 14 6 总结与体会…………………………………………………………………………………14 7设计实物图…………………………………………………………………………… 14 参考文献…………………………………………………………………………………………15 附录………………………………………………………………………………………………15
1
一、设计要求
1、自动壁障,且壁障距离可调; 2、测距精度为1cm; 3、可遥控小车行驶; 4、可测小车行驶路程
5、可以定时、定路程控制小车停止或启动
二、设计方案
2.1系统控制模块设计方案论证
方案一:采用STC12C5410单片机控制系统。STC12C5410单片机带有PWM脉宽调制输出端口,可直接用来控制电机转速,且其运行速度是8051单片机的8~12倍;但其I/O口少,即使是32管脚的芯片也只有27个,不够用时需要扩展I/O口,比较麻烦。
方案二:采用STC89C52单片机控制系统。主要是通用I/O口多,一般不需要扩展,而且控制指令简单。
由于对8051系列单片机应用比较熟悉,且系统需要用到的I/O口较多,而控制电机转速的PWM信号用1个定时器即可模拟。所以此次设计选择采用STC89C52单片机来控制。 2.2超声波壁障设计方案论证
方案一:采用多方向超声波测距分析来实现壁障。分别在小车的左、中、右三方向放置超声波探头,通过对三个方向超声波的测距数据分析对比确定障碍物位置,再通过调节小车左右电机转速差控制小车行驶方向实现壁障。
方案二:通过步进电机带动一对超声波探头旋转进行各方向测距,将各方向测得数据通过单片机对比分析可得到障碍物方向,然后也是通过调节小车左右电机转速差控制小车行驶方向实现壁障。
方案一需要3对的超声波探头,为了防止信号相互干扰各个超声波发送信号要相互间隔,显得繁杂,而且当障碍物与左右侧的超声波探头大于一定角度时将不能接收到超声波信号,方案二通过180度扫描可以很好地检测到各个方向的障碍物,障碍物判断更可靠,壁障效果更好。因此选用方案二设计。 2.3 显示模块设计方案论证
2
方案一:采用七段LED数码管显示相关数据。数码管显示具有高亮、可视距离远、寿命长的优点,但是一位数码管只能显示一位数据,要想同时显示多个数据,只能增加数码管数目来实现,而且数码管的PCB布线繁杂,数目越多布线越困难。
方案二:采用LCD1602液晶显示。液晶显示具有耗能少、可同时显示数据多、控制指令简单、PCB布线简单等优点。
通过对比两种显示方案的优缺点,本次设计决定采用方案二。
三、元器件介绍
3.1 L298N电机专用驱动芯片:
L298是SGS(通标标准技术服务有限公司)公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部包含4通道逻辑驱动电路。是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。其引脚排列如上图中所示。 L298N的引脚9为LOGIC SUPPLY VOLTAGE Vss,即逻辑供应电压。引脚4为SUPPLY VOLTAGE Vs,即驱动部分输入电压。Vss电压要求输入最小电压为4.5V,最大可达36V;Vs电压最大值也是36V,但经过我的实验,Vs电压应该比Vss电压高,否则有时会出现失控现象。它的引脚2,3,13,14为L298N芯片输入到电动机的输出端,其中引脚2和3能控制两相电机,对于直流电动机,即可控制一个电动机。同理,引脚13和14也可控制一个直流电动机。引脚6和11脚为电动机
3
的使能接线脚。引脚5,7,10,12为单片机输入到L298N芯片的输入引脚。下表是其使能、输入引脚和输出引脚的逻辑关系:
EN A(B) H H H L
IN1(IN3) H L
同IN2(IN4) X
IN2(IN4) L H
同IN1(IN3) X
电机运行情况 正转 反转 快速停止 停止
控制使能引脚ENA或者ENB就可以实现PWM脉宽速度调整。1脚和15脚可单
独引出连接电流采样电阻器,形成电流传感信号,也可以直接接地。在可设计中就将它们直接接地。引脚8为芯片的接地引脚,它与L298N芯片的散热片连接在一起。由于本芯片的工作电流比较大,发热量也比较大,所以在本芯片的散热片上又连接了一块铝合金,以增大它的散热面积。 该芯片的一些参数如下: (1) 逻辑部分输入电压:6~7V (2) 驱动部分输入电压Vs:4.8~46V (3) 逻辑部分工作电流Iss:≤36mA (4) 驱动部分工作电流Io:≤2A (5) 最大耗散功率:25W(T=75℃)
(6) 控制信号输入电平:高电平:2.3V≤Vin≤Vss,低电平:-0.3V≤Vin≤1.5V (7) 工作温度:-25℃~+130℃ (8) 驱动形式:双路大功率H桥驱动 3.2 CX20106A超声波接收芯片 (1)CX20106A内部结构图:
4