-
总体方案
本设计主要是进行距离的测量和报警
,
设计中涉及到的内容较多,
主要是将单片
机控制模块、超声波测距模块、蜂鸣器报警模块、
4
位数码
管显示模块这几个模
块结合起来。
而本设计的核心是超声波测距
模块,
其他相关模块都是在测距的基
础上拓展起来的,
测距模块是利用超声波传感器,
之后选择合适单片机芯片,
以
下就是从相关方面来论述的。
超声波测距仪
超声波是一种超出人类听觉极限的声波即其振动频率高于
20
kHz
的机械波。超
声波传感器在工作的时候就是将电压和超声
波之间的互相转换,
当超声波传感器
发射超声波时,
发射超声波的探头将电压转化的超声波发射出去,
当接收超声波
时,
超声波接收探头将超声波转化的电压回送到单片机控制芯片。
超声波具有振
动频率高、波长短、绕射现象小而且方向性好还能够为反射
线定向传播等优点,
而且超声波传感器的能量消耗缓慢有利于测距。
在中、
长距离测量时,
超声波传
感
器的精度和方向性都要大大优于红外线传感器,
但价格也稍贵。
从安全性,
成
本、方向性等方面综合考虑,超声波传感器更适合
设计要求。
综合上述三种测距仪的对比,本实验选着超声波测距仪。
系统方案
本系统选择
52
单片机作为控制系统核心,
所测得的距离数值由<
/p>
4
位共阴极数码管
显示,
与障碍物之间的不同距离利用蜂鸣器频率的不同报警声提示,
超声波发射
信号由
52
单片机的
P1.0
口送出到超声波发射电路,将超声波发送出去,报警系
统由蜂鸣器电路构成。
本设计中将收发超声波的探头分离这样不会使收发信号混
叠,从而能避免干扰,可以很好的提高系统的可靠性。系统框图如下:
超声波接收器
放大器
检波电路
显示模块
51
单片机
报警模块
超声波接收器
放大电路
硬件设计
超声波测距模块
模块功能
该模块利用超声波测距仪,
测试小车与障碍物之间的距离,当距
离小于某一给定值时,利用程序,将信号传递给单片
机的某个引脚。
其他控制模块检测该引脚的电平高低,
根据电平
的高低,
控制小车的
行驶状态。
基本实现原理
HC-
SR04
超声波测距模块简介
HC-
SR04
超声波测距模块可提供
2cm-400cm
的非接触式距离感测功能,
测距精度可达到
3mm
,模块包括超声波发射器,接收器与控制电路。
基本工作原理:
1
< br>)采用
IO
口
TRIG
触发测距,给至少
10us
的高电平信号;
p>
2
)模块自动发送
8
个
40khz
的方波,自动检测是
否有信号返回;
3
)有信号返回,通
过
IO
口
ECHO
输出一个高电平,高电平持续的时间就是超
声波从发射到返回的时间,测试距离
p>
=
(高电平时间
*
声速)
、
实物图
如上图接线,
VCC
供
5V
电源,
GND
为地线,<
/p>
TRIG
触发控制信号输入,
ECHO<
/p>
回响信号输出等四支线。
测距时序图
观察时序图可知,提供一个
10us
以上的脉冲触发信号给<
/p>
TRIG
引脚,模块内部
将发出
8
个
40KHZ
周期电
平并检测回波。检测到有回波信号则输出回响信号,
回响信号的脉冲宽度与所测的距离成
正比,
由此可通过回响信号的脉宽计算距离
系统模块
显示模块
数码管分动态显示和静态显示,这里选用动态显示
动态显示驱动:
< br>数码管动态显示接口是单片机中应用最为广泛的一种显示方式
之一,
动态驱动是将所有数码管的
8
个显示笔划
的同名端连在
一起,
另外
为每个数码管的公共极
COM
增加位选通控制电路,
位选通由各自独
立的
I/O
线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,
但究竟是那个数
码管会显示出字形,取决于单片机对位选通
COM
端电路的控<
/p>
制,
所以我们只要将需要显示的数码管的选通控制打开,
该位就显示出字形,
没
有选通的数码管就不会亮
。
通过分时轮流控制各个数码管的的
COM
端,
就使各
个数码管轮流受控显示,
这就是动态驱动。
在轮流显示过程中,
每位数码管的点
亮时间为
1
~
2ms
,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际
上
各位数码管并非同时点亮,
但只要扫描的速度足够快,
给人的印
象就是一组稳
定的显示数据,
不会有闪烁感,
< br>动态显示的效果和静态显示是一样的,
能够节省
大量的<
/p>
I/O
端口,而且功耗更低。
报警模块
根据距离显示结果的远近,
控制蜂鸣器的鸣叫
(利用
I/O
口产生一个频率的方波)
软件设计
系统程序设计的主要的功能
是发射超声波、
接受超声波、
计算测量距离、
< br>数据计
算、蜂鸣器报警和数码管显示
主程序流图
开始
单片机初始化
超声波复位
发送超声波并启动中断
接收到回波中断停止
显示距离同时蜂鸣器报警
延时
p>
主程序流程图如上,当发生中断时,则会进行中断处理。设计中断处理流程图
中断处理流程包括,报警处理和数码管扫描处理
计时停止
中断关闭
距离计算处理
显
p>
示
距
离
判
断是否报警
Y
报警声开启
返回
报警中断处理
N
误差分析
上述实际为
73cm
实验数据位
71cm
超声波测距误差分析
根据超声波测距的原理,测量误差的来源有:
1
、启动发射和启动计时之间的偏差;
2
、收到回波到被检测出的滞后;
<
/p>
3
、收到中断到中断响应停止计时之间的滞后;
< br>
4
、计时器本身的误差;
<
/p>
5
、温度对声波速度以及上述因素的影响。
第二项误差源于检测电路的灵敏度和判断偏差,
从收到实际回波到电路确认并输
出相应信号肯定存在滞后,
这和回波信号强弱、
检测电路原理以及判断电路的敏
感性相关,也是超声波测距的核心。
因为如果灵敏度过高,<
/p>
则会将一些干扰信号误作为回波,
导致测量出错,
如果过
低,又大大限制了检测距离,因为回波衰减是距离的平方关系。
这部分误差是导致数据不稳定的主要来源,
因
为判断滞后会随着回波的强弱而变
化。
代码
//
晶振
=12M