单片机超声波测距仪

合集下载

基于单片机AT89S52的超声波测距仪的设计与实现

基于单片机AT89S52的超声波测距仪的设计与实现

基于单片机AT89S52的超声波测距仪的设计与实现一、引言超声波测距仪是一种非接触式测距设备,通过发送超声波脉冲并接收超声波的回波来计算目标物体与测距仪之间的距离。

它在工业控制、智能车辆、机器人等领域有着广泛的应用。

本文将介绍基于单片机AT89S52的超声波测距仪的设计与实现,详细讨论硬件电路设计、软件程序编写以及实验测试等内容。

二、硬件设计1. 超声波模块超声波模块是测距仪的核心部件,它负责发射超声波脉冲并接收回波。

常见的超声波模块工作频率为40kHz,发送和接收分别采用单一的超声波传感器。

在本设计中,我们选用了HC-SR04型号的超声波模块,该模块具有精准测距、低功耗等优点,适合在单片机项目中使用。

2. 单片机AT89S52单片机AT89S52是一种高性能、低功耗的单片机芯片,它具有多种外设接口和丰富的功能,非常适合作为超声波测距仪的控制核心。

在本设计中,AT89S52的I/O口将分别连接超声波模块的Trig和Echo引脚,以完成数据的发送和接收。

3. 显示模块为了方便用户获取测距结果,我们设计了一个简单的数码管显示模块,用于显示测距仪测量到的距离数值。

利用AT89S52的数码管驱动功能,可以轻松实现距离数值的显示,并且可以根据需要扩展其他功能,比如显示单位、光线亮度调节等。

4. 电源电路为了保证整个测距仪系统的正常工作,我们设计了一个稳压电源电路,用于为AT89S52和超声波模块提供稳定的电压。

在实际应用中,我们可以选择直流电源输入或者电池供电,以满足不同场合的需求。

三、软件程序设计1. 初始化设置在软件程序设计中,首先需要对AT89S52的I/O口进行初始化设置,包括将Trig引脚设置为输出模式、将Echo引脚设置为输入模式,同时配置定时器和中断等功能。

这些初始化设置将为后续的超声波测距操作奠定基础。

2. 超声波信号发送当用户需要进行测距时,软件程序会向超声波模块的Trig引脚发送一个10us的高电平脉冲信号,启动超声波发送。

基于单片机超声波测距系统的设计和实现

基于单片机超声波测距系统的设计和实现

基于单片机超声波测距系统的设计和实现超声波测距系统是利用超声波传播速度较快的特性,通过发射超声波并接收其回波来测量距离的一种常见的测距方式。

在本文中,我们将介绍基于单片机的超声波测距系统的设计和实现。

一、系统设计原理超声波测距系统主要由超声波发射器、超声波接收器、单片机和显示器组成。

其工作原理如下:1.发送超声波信号:超声波发射器通过单片机控制,向外发射超声波信号。

超声波的发射频率通常在40kHz左右,适合在空气中传播。

2.接收回波信号:超声波接收器接收到回波信号后,将信号经过放大和滤波处理后送入单片机。

3.距离计算:单片机通过测量超声波发射和接收的时间差来计算距离。

以声速343m/s为例,超声波的往返时间与距离之间的关系为:距离=时间差×声速/2、通过单片机上的计时器和计数器来测量时间差。

4.数据显示:单片机将计算得到的距离数据通过显示器显示出来,实时展示被测物体与超声波传感器之间的距离。

二、系统设计步骤1.系统硬件设计:选择合适的超声波模块,其具有超声波发射器和接收器功能,并可通过接口与单片机连接。

设计好电源电路以及超声波传感器与单片机之间的连接方式。

2.系统软件设计:根据单片机的型号和编程语言,编写相应的程序。

包括超声波信号的发射和接收控制,计时和计数功能的编程,距离计算和数据显示的实现。

3.硬件连接和调试:将硬件连接好后,对系统进行调试。

包括超声波模块与单片机的连接是否正确,超声波信号的发射和接收是否正常,计时和计数功能是否准确等。

5.优化和改进:根据实际测试结果,对系统进行优化和改进。

如增加滤波和放大电路以提高信号质量,调整超声波模块的发射频率,改进显示方式等。

三、系统实现效果完成以上设计和实施后,我们可以得到一个基于单片机的超声波测距系统。

该系统使用简单,测距精度高,响应速度快,适用于各种距离测量的应用场景。

同时,该系统还可根据具体需求进行各种改进和扩展,如与其他传感器结合使用,增加报警功能等。

基于单片机的超声波测距仪的设计

基于单片机的超声波测距仪的设计

基于单片机的超声波测距仪的设计超声波测距仪是一种常见的测量距离的仪器,它使用超声波的反射原理来测量被测物体与测距仪之间的距离。

基于单片机的超声波测距仪可以实现更精确、更灵活的测距功能。

本文将详细介绍基于单片机的超声波测距仪的设计。

首先,我们需要选择合适的硬件平台。

单片机作为核心芯片,可以选择AT89C51或者STM32等。

超声波传感器可以选择HC-SR04或者JSN-SR04T等。

此外,我们还需要一块LCD显示屏用于显示测距结果,以及一些电路连接线等。

接下来,我们需要设计电路部分。

首先,将超声波传感器的VCC引脚连接到单片机的5V引脚,将GND引脚连接到单片机的GND引脚。

然后,将超声波传感器的Trig引脚连接到单片机的一些IO口,将Echo引脚连接到单片机的另一个IO口。

最后,将LCD的引脚连接到单片机的相应IO 口,至此电路部分完成。

接下来,我们需要编写相应的软件程序。

首先,我们需要初始化单片机的IO口,将Trig引脚设置为输出模式,Echo引脚设置为输入模式。

然后,我们需要设置中断,以便能够检测到Echo引脚电平的变化。

当超声波传感器发出一次超声波后,Echo引脚将会有一次脉冲输出,该脉冲的宽度与被测物体与测距仪之间的距离成正比。

我们可以通过测量脉冲的宽度来计算出距离。

在进行测距之前,我们需要先发出一段超声波。

通过设置Trig引脚为高电平,持续10us,然后将其设为低电平,即可发出一段超声波。

接下来,我们需要在中断服务函数中记录下Echo引脚电平变化的时间,即可以得到Echo引脚电平变化的时间间隔。

根据声速的传播速度,我们可以将时间间隔转换为距离。

最后,我们将测量到的距离结果显示在LCD屏幕上。

通过调用LCD驱动程序中的相应函数,我们可以将距离结果以字符串的形式显示在LCD屏幕上。

综上所述,基于单片机的超声波测距仪的设计包括硬件电路的设计和软件程序的编写。

硬件电路主要包括超声波传感器、单片机、LCD显示屏等的连接,软件程序则主要包括初始化IO口、设置中断、发出超声波、测量脉冲宽度、计算距离和显示结果等的功能。

基于stm32单片机的超声波测距仪设计报告

基于stm32单片机的超声波测距仪设计报告

基于stm32单片机的超声波测距仪设计报告1. 引言超声波测距仪(Ultrasonic Distance Sensor)是一种常用的测距设备,通过发送超声波脉冲并接收其反射信号来测量目标与测距仪之间的距离。

本报告将详细介绍基于stm32单片机的超声波测距仪的设计过程。

2. 设计原理超声波测距仪的基本原理是利用超声波在空气中的传播速度和反射特性来计算目标物体与测距仪之间的距离。

其中,stm32单片机作为测距仪的控制核心,通过发射超声波脉冲并测量接收到的回波时间来计算距离。

2.1 超声波传播速度超声波在空气中的传播速度约为340m/s,可以通过测量超声波往返的时间来计算出距离。

2.2 超声波反射信号当超声波遇到障碍物时,会产生反射信号,测距仪接收到这些反射信号并测量其时间差,再通过计算即可得到距离。

3. 硬件设计本设计使用stm32单片机作为核心控制器,并搭配超声波发射器和接收器模块。

3.1 超声波发射器超声波发射器负责产生超声波脉冲,并将脉冲信号发送到待测物体。

3.2 超声波接收器超声波接收器负责接收从物体反射回来的超声波信号,并将其转换为电信号。

3.3 stm32单片机stm32单片机作为测距仪的核心控制器,负责发射超声波脉冲、接收反射信号并计算距离。

4. 软件设计本设计涉及的软件设计包括超声波信号发射、接收信号处理和距离计算等。

4.1 超声波信号发射使用stm32单片机的GPIO口控制超声波发射模块,产生一定频率和周期的脉冲信号。

4.2 接收信号处理通过stm32单片机的ADC模块,将超声波接收器接收到的模拟信号转换为数字信号,并对信号进行处理和滤波。

4.3 距离计算根据接收到的超声波反射信号的时间差,结合超声波的传播速度,使用合适的算法计算出距离。

5. 实验结果与分析经过实际测试,基于stm32单片机的超声波测距仪达到了预期的效果。

能够精确测量目标与测距仪之间的距离,并显示在相关的显示设备上。

基于单片机的超声波测距仪设计

基于单片机的超声波测距仪设计

基于单片机的超声波测距仪设计超声波测距仪是一种利用超声波测量距离的装置,具有测量速度快、精度高、非接触等特点,在机器人导航、自动控制、无损检测等领域得到了广泛的应用。

随着单片机技术的不断发展,基于单片机的超声波测距仪设计成为了可能,具有体积小、成本低、易于集成等优点。

本文将介绍一种基于单片机的超声波测距仪的设计与实现方法。

超声波测距仪的工作原理是利用超声波的传输特性来实现距离的测量。

超声波发射器发出超声波,超声波在空气中传播,遇到障碍物或被测物体后反射回来,被超声波接收器接收。

根据超声波的传播速度和传播时间,可以计算出超声波发射器与被测物体之间的距离。

一般来说,超声波的传播速度为340m/s,因此,距离计算公式为:距离 =传播速度×时间 / 2。

本设计选用STM32F103C8T6单片机作为主控制器,该单片机具有高性能、低功耗、丰富的外设接口等特点,满足系统的要求。

超声波测距仪的硬件部分包括超声波发射器、超声波接收器、单片机控制器和显示模块。

具体设计方案如下:(1)超声波发射器:采用HC-SR04模块,该模块集成了超声波发射器和接收器,输出脉冲宽度为5ms,驱动电压为5V。

(2)超声波接收器:同样采用HC-SR04模块,接收反射回来的超声波信号,并将其转换为电信号输出。

(3)单片机控制器:选用STM32F103C8T6单片机,接收超声波接收器输出的电信号,通过计算得到距离值,并将其输出到显示模块。

(4)显示模块:采用液晶显示屏,用于显示测量得到的距离值。

(1)初始化模块:对单片机、HC-SR04模块和液晶显示屏进行初始化。

(2)超声波发射模块:通过单片机控制HC-SR04模块发射超声波,并开始计时。

(3)超声波接收模块:接收反射回来的超声波信号,并输出到单片机。

(4)距离计算模块:根据超声波的传播速度和传播时间,计算出超声波发射器与被测物体之间的距离,并将其存储在单片机的存储器中。

(5)显示模块:将计算得到的距离值输出到液晶显示屏上。

基于单片机的超声波测距系统的设计

基于单片机的超声波测距系统的设计

基于单片机的超声波测距系统的设计引言超声波测距技术是一种常用的非接触式测距方法,广泛应用于工业自动化、无人驾驶、智能家居等领域。

本文将介绍基于单片机的超声波测距系统的设计原理和实现方法,以及其在实际应用中的优势和局限性。

一、设计原理基于单片机的超声波测距系统主要由超声波发射器、接收器、单片机和显示装置组成。

其工作原理如下:1.1 超声波发射器发射超声波信号,信号经过空气传播后,被目标物体反射返回。

1.2 超声波接收器接收到反射的超声波信号,并将信号转化为电信号。

1.3 单片机通过IO口控制超声波发射器的工作频率和接收器的工作模式,实现信号的发射和接收。

1.4 单片机通过计算超声波信号的往返时间,即可得到目标物体与传感器之间的距离。

1.5 显示装置将测得的距离信息显示出来,供用户参考和使用。

二、系统设计与实现2.1 硬件设计超声波发射器和接收器的选型是系统设计的关键。

通常情况下,超声波发射器和接收器的工作频率应匹配,常用的频率有40kHz和50kHz。

此外,还需选择合适的单片机和显示装置。

2.2 软件设计软件设计主要包括超声波信号的发射和接收控制以及距离计算等功能。

通过编程,可以实现以下功能:2.2.1 控制超声波发射器的工作频率和接收器的工作模式。

2.2.2 通过IO口读取接收器接收到的信号,并将其转化为数字信号。

2.2.3 使用定时器测量超声波信号的往返时间。

2.2.4 根据往返时间计算目标物体与传感器之间的距离。

2.2.5 将测得的距离信息显示在显示装置上。

三、系统优势基于单片机的超声波测距系统具有以下优势:3.1 非接触式测距:超声波测距系统可以实现对目标物体的非接触式测距,无需直接接触目标物体,避免了传感器与目标物体之间的摩擦和磨损。

3.2 高精度:超声波测距系统通过测量超声波信号的往返时间,可以实现较高的测距精度,通常可达到毫米级别。

3.3 快速响应:超声波测距系统的测量速度快,响应时间短,适用于需要快速测量的应用场景。

基于单片机超声波测距仪的设计

基于单片机超声波测距仪的设计

基于单片机超声波测距仪的设计一、引言随着科技的进步和应用的广泛,超声波测距技术在各个领域中得到了广泛的应用。

超声波测距技术通过发送超声波并接收其反射信号,利用声波在空气中传播速度恒定的特性,可以精确地测量目标与传感器之间的距离。

基于单片机的超声波测距仪是一种常见的应用,本文将介绍该测距仪的设计原理、硬件和软件实现。

二、设计原理基于单片机的超声波测距仪的设计原理主要包括超声波发射与接收、信号处理和距离计算三个部分。

1. 超声波发射与接收该测距仪通过发送一定频率的超声波脉冲,并接收其反射信号来实现测距功能。

超声波发射器将电信号转换为超声波信号,并经过超声波传感器发射。

当超声波信号遇到目标物体后,一部分信号会被目标物体反射,经超声波传感器接收并转换为电信号。

2. 信号处理接收到的电信号经过放大、滤波和波形整形等处理,使信号能够被单片机准确识别和处理。

放大电路将微弱的接收信号放大到单片机能够处理的范围,滤波电路则去除掉噪声干扰,波形整形电路将信号整形为单片机可读取的数字信号。

3. 距离计算通过测量超声波的发射和接收时间,可以计算出目标物体与传感器之间的距离。

超声波在空气中传播速度恒定,通过测量超声波的往返时间,可以得到距离的数值。

三、硬件设计基于单片机的超声波测距仪的硬件设计主要包括超声波发射与接收电路、信号放大电路、滤波电路、波形整形电路和单片机控制电路等部分。

1. 超声波发射与接收电路超声波发射与接收电路由超声波发射器和超声波传感器组成。

超声波发射器将单片机输出的电信号转换为超声波信号,超声波传感器将接收到的超声波信号转换为电信号。

2. 信号放大电路信号放大电路用于放大传感器接收到的微弱信号,使其能够被后续的电路准确处理。

一般采用放大器电路来实现信号放大功能。

3. 滤波电路滤波电路用于去除信号中的噪声干扰,使后续处理的信号更加准确。

可以采用滤波器电路来实现滤波功能。

4. 波形整形电路波形整形电路将接收到的信号整形为单片机可读取的数字信号。

51单片机实现超声波测距报警系统

51单片机实现超声波测距报警系统

51单片机实现超声波测距报警系统超声波测距报警系统是一种基于51单片机的硬件电路和软件程序开发的测距设备。

本文将从设备原理和设计、电路连接和程序开发等方面进行详细介绍。

一、设备原理和设计超声波测距报警系统的原理是利用超声波传感器测量并计算被测物体与传感器的距离,并通过单片机采集和处理超声波信号,根据测量结果触发报警和显示等功能。

1.超声波传感器:超声波传感器是用来发射和接收超声波信号的装置,一般由发射器和接收器组成。

发射器发射超声波信号,接收器接收被测物体反射的超声波信号。

2.单片机:本系统采用51单片机作为控制核心,负责采集和处理超声波信号,控制报警和显示等功能。

3.报警器:当距离小于设定阈值时,触发报警器发出声音或闪光等警告信号。

4.显示屏:用来显示测量结果,一般为数码管或液晶显示屏。

5.电源和电路:提供系统所需的电源和信号连接电路。

二、电路连接超声波测距报警系统的电路连接主要包括超声波传感器、单片机、报警器、显示屏以及电源等模块。

1.超声波传感器连接:将超声波传感器的发射端和接收端分别连接到单片机的引脚上,发射端连接到P1口,接收端连接到P2口。

2.报警器连接:将报警器连接到单片机的一个IO口,通过控制该IO 口的高低电平来触发报警。

3.显示屏连接:将显示屏连接到单片机的相应IO口,通过向显示屏发送数据来显示测量结果。

4.电源连接:将电源连接到单片机以及其他模块的供电端,确保系统正常工作。

三、程序开发1.初始化设置:包括引脚和端口的初始化设置,包括超声波传感器引脚和单片机的IO口设置。

2.测量距离:通过单片机控制超声波传感器发射超声波信号,并通过接收器接收反射的超声波信号,计算出被测物体与传感器的距离。

3.报警触发:根据设定的阈值,当测量到的距离小于阈值时,通过控制报警器发出声音或闪光等警告信号。

4.显示结果:通过控制显示屏将测量结果显示出来。

5.循环检测:通过循环检测的方式,不断进行测量并处理数据,实时更新测量结果和触发报警。

基于单片机的超声波测距应用

基于单片机的超声波测距应用

基于单片机的超声波测距应用随着科技的不断发展,超声波测距技术已经被广泛应用于各种领域,例如汽车倒车雷达、无人机避障、医学诊断等。

本文将介绍一种基于单片机的超声波测距应用,旨在帮助读者了解这项技术,并为有兴趣研究该领域的读者提供参考。

一、超声波测距原理超声波是一种高频声波,其频率通常在20kHz~200kHz之间。

超声波在空气中传播的速度约为340m/s,而在水中传播的速度约为1500m/s。

超声波在遇到物体时,会发生反射、折射、透射等现象,这些现象可以被用于测量物体的距离。

超声波测距系统通常由发射器、接收器和信号处理器三部分组成。

发射器会发出超声波信号,经过一定时间后,接收器会接收到反射回来的超声波信号。

根据信号的传播时间,可以计算出物体与测距系统之间的距离。

二、基于单片机的超声波测距应用基于单片机的超声波测距应用通常采用了AT89C51单片机。

该单片机具有很好的性能和稳定性,可以实现超声波信号的发射、接收和处理。

具体实现步骤如下:1、超声波信号发射:将AT89C51单片机的一个IO口设置为输出模式,将超声波模块的发射端口连接到该IO口,通过控制该IO口的高低电平来控制超声波信号的发射。

通常我们会设置一个定时器,控制超声波信号的发射时间,例如发射10ms的超声波信号。

2、超声波信号接收:将AT89C51单片机的另一个IO口设置为输入模式,将超声波模块的接收端口连接到该IO口。

当超声波信号被物体反射后,会被接收器接收到,并通过IO口传输到单片机中。

3、超声波信号处理:在单片机中,我们可以通过计算超声波信号的传播时间,来计算物体与测距系统之间的距离。

例如,如果发射的超声波信号为10ms,接收到反射信号的时间为5ms,那么物体与测距系统之间的距离就是5ms*340m/s/2=850cm。

三、应用场景基于单片机的超声波测距应用可以应用于多种场景,例如:1、智能家居:可以通过超声波测距技术,实现自动控制门的开关,智能窗帘的开合等。

基于51单片机超声波测距仪

基于51单片机超声波测距仪

基于51单片机超声波测距仪基于51单片机的超声波测距仪设计摘要利用超声波进行测距有许多优点比如不受光强度、色彩和电磁场等外界因素的影响,而且超声波传感器的价位较低、结构也较为简单,超声波以声速传播,方便收发与计算。

在汽车倒车雷达、移动机器人的避障、特别是测量距离等许多方面都已有了非常普遍的应用。

本次毕业设计的超声波测距仪是在STC89C51单片机的基础上设计的,在分析和了解了超声波的一些优点和特性后,又查看了利用超声波测距的基本原理。

最后决定使用51单片机系统和超声波传感器共同组成。

设计的超声波测距仪的硬件部分主要包括电源及复位模块、单片机与超声波模块组成的超声波发射模块、超声波接收模块、LED数码显示模块和扩展报警模块。

软件部分主要包括单片机主程序、根据超声波发射与接收计算距离程序、LED距离显示程序、按键控制程序和蜂鸣器报警程序,这样安排使得系统具有模块化的特点。

系统容易进行控制,具有可靠地的性能,具有较高的测量精度,最重要的是能对距离进行实时测量。

关键词:单片机,测距仪,超声波,实时测量Design of Ultrasonic Distance Meter Based on 51 MCMABSTRACTUsing ultrasonic ranging has many advantages for example, from the effects of light intensity, color and electromagnetic field and other external factors and price lower ultrasonic sensors, the structure is simple, ultrasonic sounds velocity, convenient transceiver and calculation. In the car reverse radar, mobile robot obstacle avoidance, especially measuring distance and many other aspects have been very common application.The graduation design of ultrasonic range finder based on STC89C51 MCU design, analysis and understanding of the some advantages and characteristics of ultrasonic and looked at the use of the basic principle of ultrasonic distance measurement. Finally, the composition of the 51 single-chip microcomputer system and ultrasonic sensor is decided.. The design of ultrasonic rangefinder hardware part consists of the power and reset module, SCM and ultrasonic module consists of ultrasonic emission module, ultrasonic receiving module, LED digital display expansion module and alarm module. Software part mainly includes MCU program, according to the ultrasonic transmitting and receiving computing program distance, the distance of LED display program, key control procedures and buzzer alarm procedures, this arrangement enables the system to have the characteristics of modular. The system is easy to control and has the reliable performance, and has the higher accuracy, and the most important is the real-time measurement of the distance.KEY WORDS: Single chip microcomputer,Range finder,Ultrasonic,Real-time measurement目录摘要 (I)目录 (III)第1章绪论 (1)1.1 研究背景 (1)1.2 研究的主要意义 (1)第2章系统电路设计 (3)2.1 系统结构设计 (3)2.2 电路总体设计方案 (3)发射与接收电路设计方案 (3)显示电路设计方案 (5)报警电路设计方案 (6)系统复位电路设计 (6)第3章系统硬件设计 (8)3.1 单片机概述 (8)STC89C51主要性能 (8)3.1.2 STC89C51外部结构及特性 (8)内部组成 (11)3.2 超声波测距模块 (12)3.2.1 超声波传感器介绍 (12)HC-SR04超声波测距芯片的性能特点 (12)超声波时序图 (15)3.3 驱动显示电路及报警电路 (15)LED数码管显示电路 (16)蜂鸣器报警电路 (17)3.4HC-RS04超声波测距原理 (17)3.5 按键设置电路 (18)第4章系统软件设计 (21)4.1 系统主程序 (21)4.2 显示距离子程序 (22)4.3 报警子程序 (22)4.4 按键子程序 (23)第5章系统仿真 (25)5.1 系统仿真环境——Proteus (25)5.2 仿真 (25)5.3 误差及特性分析 (26)结论 (28)谢辞 (29)参考文献 (30)第1章绪论1.1 研究背景超声波测距法是通过超声波测量从已知位置到被测物体表面的距离的利用超声波的方法。

基于单片机的超声波测距报警系统

基于单片机的超声波测距报警系统

基于单片机的超声波测距报警系统在现代科技飞速发展的时代,各种智能化的测量和监控系统层出不穷。

其中,基于单片机的超声波测距报警系统以其高精度、非接触式测量、实时性强等优点,在工业生产、机器人导航、汽车防撞、智能家居等领域得到了广泛的应用。

一、超声波测距的原理超声波是一种频率高于 20kHz 的机械波,它具有良好的方向性和穿透能力。

超声波测距的原理是利用超声波在空气中的传播速度和往返时间来计算距离。

当超声波发射器向某一方向发射超声波时,在发射的同时开始计时。

超声波在空气中传播,遇到障碍物后反射回来,被超声波接收器接收。

此时,停止计时。

超声波在空气中的传播速度约为 340 米/秒,根据计时时间 t 和传播速度 v,就可以计算出发射点与障碍物之间的距离 s,计算公式为 s = v × t / 2 。

二、单片机在系统中的作用单片机作为整个系统的控制核心,承担着至关重要的任务。

它负责控制超声波的发射和接收,对计时时间进行精确测量,并根据测量结果进行距离计算和报警判断。

同时,单片机还需要与其他外部设备进行通信,如显示屏、声光报警器等,将测量结果实时显示出来,并在距离达到设定的阈值时触发报警。

为了实现这些功能,需要选择一款性能合适的单片机。

常见的单片机有 51 系列、STM32 系列等。

在选择单片机时,需要考虑其处理速度、存储空间、IO 端口数量、定时器精度等因素。

三、系统硬件设计1、超声波发射模块超声波发射模块通常由超声波换能器和驱动电路组成。

超声波换能器将电信号转换为超声波信号发射出去,驱动电路则为换能器提供足够的功率和激励信号。

2、超声波接收模块超声波接收模块由超声波换能器和信号调理电路组成。

换能器将接收到的超声波信号转换为电信号,信号调理电路对电信号进行放大、滤波等处理,以提高信号的质量和稳定性。

3、单片机最小系统单片机最小系统包括单片机芯片、时钟电路、复位电路和电源电路等。

它为单片机的正常工作提供了必要的条件。

基于51单片机的超声波测距

基于51单片机的超声波测距

基于51单片机的超声波测距超声波:超声波是由机械振动产生的, 可在不同介质中以不同的速度传播, 具有定向性好、能量集中、传输过程中衰减较小、反射能力较强等优点。

超声波传感器可广泛应用于非接触式检测方法,它不受光线、被测物颜色等影响, 对恶劣的工作环境具有一定的适应能力, 因此在水文液位测量、车辆自动导航、物体识别等领域有着广泛的应用。

超声波测距原理:超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波, 从而测出发射和接收回波的时间差Δt , 然后求出距离S 。

在速度v 已知的情况下,距离S 的计算,公式如下:S = vΔt/ 2。

在空气中,常温下超声波的传播速度是334 米/秒,但其传播速度V 易受空气中温度、湿度、压强等因素的影响,其中受温度的影响较大,如温度每升高1 ℃, 声速增加约0. 6 米/ 秒。

因此在测距精度要求很高的情况下, 应通过温度补偿的方法对传播速度加以校正。

已知现场环境温度T 时, 超声波传播速度V 的计算公式如下:V = 331.5 + 0. 607T这样, 只要测得超声波发射和接收回波的时间差Δt 以及现场环境温度T,就可以精确计算出发射点到障碍物之间的距离。

超声波测距模块:(1):采用IO口TRIG触发测距,给至少10us的高电平信号;(2):模块自动发送8个40khz的方波,自动检测是否有信号返回;(3):有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。

测试距离=(高电平时间*声速(340M/S))/2。

例程:/******************超声波测距1602显示******************单片机型号:STC89C52RC*开发环境:KEIL*名称:超声波测距液晶1602显示/**********************包含头文件*********************/#include <reg52.h>#define LCD_Data P0#define Busy 0x80/**********************宏定义*************************/#define SPEED_30C 3495 //30摄氏度时的声速,声速V=331.5+0.6*温度;#define SPEED_23C 3453 //23摄氏度时的声速,声速V=331.5+0.6*温度;/**********************位定义*************************/sbit ECHO=P1^6;sbit TRIG=P1^5;sbit BEEP=P2^3;sbit LCD_RS=P1^0;sbit LCD_RW=P1^1;sbit LCD_E=P2^5;/********************定义变量和数组*******************/long int distance=0; //距离变量unsigned char code table0[]={" SL-51A "};unsigned char code table1[]={" NO ECHO "};unsigned char code table2[]={"Distance:xxx.xcm"};unsigned char count;void Delay5Ms(void);void delay(int In,int Out);void WriteDataLCD(unsigned char WDLCD);void WriteCommandLCD(unsigned char WCLCD,BuysC);unsigned char ReadDataLCD(void);unsigned char ReadStatusLCD(void);void LCDInit(void);void DisplayOneChar(unsigned char X,unsigned char Y,unsigned char DData);void DisplayListChar(unsigned char X,unsigned char Y,unsigned char code *DData);void delayt(unsigned int x){unsigned char j;while(x-->0){for(j=0;j<125;j++){;}}}void Delay5Ms(void){unsigned int TempCyc=3552;while(TempCyc--);}void delay(int In,int Out){int i,j;for(i=0;i<In;i++){for(j=0;j<Out;j++){;}}}void Alarm(unsigned char t){unsigned char i;for(i=0;i<t;i++){BEEP=0;delay(10,1000);BEEP=1;delay(10,1000);}}void Init_timer(void){TMOD=0x01;TL0=0x66;TH0=0xfc;ET0=1;EA=1;}void Init_Parameter(void){TRIG=1;ECHO=1;count=0;distance=0;}void display(int number){unsigned char b,c,d,e;b=(number/1000);c=(number/100)%10;d=(number/10)%10;e=number%10;DisplayOneChar(9,1,(0x30+b));DisplayOneChar(10,1,(0x30+c));DisplayOneChar(11,1,(0x30+d));DisplayOneChar(13,1,(0x30+e));}void Trig_SuperSonic(void){TRIG=1;delayt(1);TRIG=0;}void Measure_Distance(void){unsigned char l;unsigned int h,y;TR0=1;while(ECHO){;}TR0=0;l=TL0;h=TH0;y=(h<<8)+l;y=y-0xfc66;distance=y+1000*count;TL0=0x66;TH0=0xfc;delayt(30);distance=SPEED_30C * distance / 20000;}void WriteDataLCD(unsigned char WDLCD){ReadStatusLCD();LCD_Data=WDLCD;LCD_RS=1;LCD_RW=0;LCD_E=0;LCD_E=0;LCD_E=1;}void WriteCommandLCD(unsigned char WCLCD,BuysC) {if (BuysC)ReadStatusLCD();LCD_Data=WCLCD;LCD_RS=0;LCD_RW=0;LCD_E=0;LCD_E=0;LCD_E=1;}unsigned char ReadDataLCD(void){LCD_RS=1;LCD_RW=1;LCD_E=0;LCD_E=0;LCD_E=1;return(LCD_Data);}unsigned char ReadStatusLCD(void){LCD_Data=0xFF;LCD_RS=0;LCD_RW=1;LCD_E=0;LCD_E=0;LCD_E=1;while (LCD_Data & Busy);return(LCD_Data);}void LCDInit(void){LCD_Data=0;WriteCommandLCD(0x38,0);Delay5Ms();WriteCommandLCD(0x38,0);Delay5Ms();WriteCommandLCD(0x38,0);Delay5Ms();WriteCommandLCD(0x38,1);WriteCommandLCD(0x08,1);WriteCommandLCD(0x01,1);WriteCommandLCD(0x06,1);WriteCommandLCD(0x0C,1);}void LCD_Clear(void){WriteCommandLCD(0x01,1);Delay5Ms();}void DisplayOneChar(unsigned char X,unsigned char Y,unsigned char DData){Y&=0x1;X&=0xF;if(Y)X|=0x40;X|=0x80;WriteCommandLCD(X,0);WriteDataLCD(DData);}void DisplayListChar(unsigned char X,unsigned char Y,unsigned char code *DData) {unsigned char ListLength;ListLength=0;Y&=0x1;X&=0xF;while(DData[ListLength]>=0x20){if(X<=0xF){DisplayOneChar(X,Y,DData[ListLength]); ListLength++;X++;}}}void main(void){LCDInit();Init_timer();Init_Parameter();Alarm(2);DisplayListChar(0,0,table0);DisplayListChar(0,1,table1);while(1){Trig_SuperSonic();while(ECHO==0){;}Measure_Distance();DisplayListChar(0,1,table2);display(distance);Init_Parameter();delayt(100);}}void timer0 (void) interrupt 1{TF0=0;TL0=0x66;TH0=0xfc;count++;if(count==18){TR0=0;TL0=0x66;TH0=0xfc;count=0;}}。

基于单片机AT89S52的超声波测距仪的设计与实现

基于单片机AT89S52的超声波测距仪的设计与实现

基于单片机AT89S52的超声波测距仪的设计与实现一、引言超声波测距仪是一种常用的测距工具,它通过发射超声波并测量超声波的回波时间来计算距离。

在实际生活中,超声波测距仪被广泛应用于各种领域,如工业自动化、智能车辆、安防监控等。

而在这些应用中,单片机作为控制中心扮演着重要的角色,它可以接收超声波传感器发送的信号并进行数据处理,从而实现测距功能。

本文将介绍基于单片机AT89S52的超声波测距仪的设计与实现过程,以及具体的电路原理和程序代码。

二、超声波测距原理超声波测距仪的工作原理是利用超声波在空气中的传播速度来计算距离。

当超声波传感器发射超声波后,超声波会在空气中传播,当超声波碰到障碍物时,会发生反射并返回到传感器。

通过测量超声波的发射和接收时间差,可以计算出被测物体到传感器的距离。

三、硬件设计1. 超声波模块:超声波测距仪主要的传感器部分是超声波模块,常用的超声波传感器型号为HC-SR04。

它包括一个发射超声波的发射器和一个接收超声波的接收器,并能够精准地测量距离。

2. 单片机:本设计采用单片机AT89S52作为控制中心,它具有强大的数据处理能力和丰富的外设接口,非常适合控制超声波测距仪。

3. 显示部分:为了方便用户观察测距结果,设计了LED或数码管显示模块,用于显示测得的距离数值。

4. 电源部分:超声波测距仪需要一个稳定的电源供电,通常使用5V直流电源。

四、电路连接超声波测距仪的电路连接如下:1. 连接超声波模块:将超声波模块的Trig引脚连接到AT89S52的某一GPIO口,Echo 引脚连接到另一GPIO口,VCC引脚连接到正电源,GND引脚连接到地。

2. 连接LED或数码管显示模块:将LED或数码管显示模块的相应引脚连接到AT89S52的GPIO口,接入适当的电阻限流,并连接到电源。

3. 连接电源:将电源模块的正负极分别连接到系统电源,保证电源供电稳定。

五、软件设计1. 超声波测距算法:当单片机接收到超声波传感器发来的信号时,通过测量发射和接收的时间差,可以利用以下公式计算距离:Distance = High Level Time × (声速 / 2)2. 显示功能:通过编程控制LED或数码管的显示功能,将测得的距离数据以数值形式显示。

基于单片机的超声波测距

基于单片机的超声波测距

基于单片机的超声波测距在现代科技的快速发展中,距离测量技术在众多领域都有着至关重要的应用。

从工业生产中的自动化控制,到日常生活中的汽车倒车雷达,再到机器人的自主导航,准确的距离测量都是实现这些功能的关键。

而基于单片机的超声波测距技术,以其高精度、非接触式测量、成本低等优点,成为了一种广泛应用的距离测量方法。

超声波测距的原理其实并不复杂。

它是利用超声波在空气中的传播速度恒定这一特性,通过测量超声波从发射到接收的时间间隔,再根据速度与时间的关系计算出距离。

就好比我们向远处喊一声,然后根据听到回声的时间来估算我们与障碍物之间的距离。

在这个过程中,单片机扮演着“大脑”的角色。

它负责控制超声波的发射和接收,精确测量时间间隔,并进行数据处理和计算,最终得出距离值。

为了实现这一功能,我们需要一系列的硬件和软件支持。

先来说说硬件部分。

首先是超声波传感器,这是整个系统的“眼睛”和“耳朵”,负责发射和接收超声波信号。

常见的超声波传感器有收发一体式和收发分体式两种。

收发一体式传感器结构紧凑,使用方便;收发分体式传感器则在某些特定场景下能够提供更好的性能。

然后是驱动电路,它的作用是为超声波传感器提供足够的能量,使其能够发射出强度足够的超声波信号。

接下来是接收电路,用于将传感器接收到的微弱信号进行放大、滤波等处理,以便单片机能够准确识别。

单片机则是整个系统的核心,负责协调各个部分的工作,并进行数据处理和计算。

此外,还需要一些辅助电路,如电源电路、晶振电路等,为整个系统提供稳定的电源和时钟信号。

再看看软件部分。

编写单片机程序是实现超声波测距功能的关键。

在程序中,首先需要初始化各个硬件模块,设置相关的寄存器和参数。

然后,通过控制单片机的引脚,产生一定频率和脉冲宽度的信号,驱动超声波传感器发射超声波。

在发射的同时,启动定时器开始计时。

当传感器接收到回波信号时,触发中断,停止定时器,并读取计时值。

根据计时值和超声波在空气中的传播速度,就可以计算出距离。

基于51单片机超声波测距仪设计

基于51单片机超声波测距仪设计

基于51单片机超声波测距仪设计超声波测距仪是一种应用较为广泛的测量设备,可以用于测量物体与超声波传感器之间的距离。

本文将基于51单片机设计一个简单的超声波测距仪,并介绍其原理、硬件电路和程序设计。

一、原理介绍:超声波测距仪的工作原理是利用超声波传感器发射超声波,并接收其反射回来的波,通过计算发射和接收之间的时间差,从而确定物体与传感器之间的距离。

超声波的传播速度在空气中近似为331.4m/s,根据速度与时间关系,可以通过测量时间来计算距离。

二、硬件电路设计:1.超声波模块:选用一个常见的超声波模块,包括超声波发射器和接收器。

2.51单片机:使用51单片机作为控制器,负责控制超声波模块和处理测距数据。

3.LCD显示屏:连接一个LCD显示屏,用于显示测距结果。

4.连接电路:将超声波发射器和接收器分别连接到单片机的引脚,将LCD显示屏连接到单片机的相应引脚。

三、程序设计:1.初始化:包括初始化单片机的GPIO引脚、定时器以及其他必要的设置。

2.发送信号:发射一个超声波信号,通过超声波模块的引脚控制。

此时,启动定时器开始计时。

3.接收信号:当接收到超声波的反射信号时,停止定时器,记录计时的时间差。

根据超声波传播速度,可以计算出距离。

4.显示结果:将测得的距离数据显示在LCD显示屏上。

四、实现效果:通过以上设计,可以实现一个简单的超声波测距仪。

在实际应用中,可以根据需求扩展功能,例如增加报警功能、计算速度等。

总结:本文基于51单片机设计了一个超声波测距仪,包括硬件电路设计和程序设计。

通过该设备可以实现对物体与超声波传感器之间的距离进行测量,并将结果显示在LCD显示屏上。

该设计只是一个基本的框架,可以根据需要进行进一步的改进和优化。

单片机超声波测距仪

单片机超声波测距仪

单片机超声波测距仪51 系列单片机为许多控制提供了高度灵活和低成本的解决办法。

充分利用他的片内资源,即可在较少外围电路的情况下构成功能完善的超声波测距系统。

1 单片机实现测距原理单片机发出超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差tr,然后求出距离S=Ct/2,式中的C 为超声波波速。

限制该系统的最大可测距离存在4 个因素:超声波的幅度、反射的质地、反射和入射声波之间的夹角以及接收换能器的灵敏度。

接收换能器对声波脉冲的直接接收能力将决定最小的可测距离。

为了增加所测量的覆盖范围、减小测量误差,可采用多个超声波换能器分别作为多路超声波发射/接收的设计方法。

由于超声波属于声波范围,其波速C 与温度有关,表1。

列出了几种不同温度下的波速。

在测距时由于温度变化,可通过温度传感器自动探测环境温度、确定计算距离时的波速C,较精确地得出该环境下超声波经过的路程,提高了测量精确度。

波速确定后,只要测得超声波往返的时间r,即可求得距离5。

其系统原理框图如图2 所示。

单片机(AT89C51)发出短暂的40kHz 信号,经放大后通过超声波换能器输出;反射后的超声波经超声波换能器作为系统的输入,锁相环对此信号锁定,产生锁定信号启动单片机中断程序,得出时间t,再由系统软件对其进行计算、判别后,相应的计算结果被送至LED 显示电路进行显示,若测得的距离超出设定范围系统将提示声音报警电路报警。

AT89C51 通过外部引脚P2.0 输出脉冲宽度为25/us、载波为40kHz 的超声波脉冲串,加到射随器的基级,经功率放大推动超声波发射器发射出去。

超声波接收器将接收到的反射超声波送到放大器进行放大,然后用锁相环电路进行检波。

经处理后输出低电平,送到AT89C51 的引脚。

利用该原理设计的实例:汽车防撞雷达2 系统硬件设计汽车防撞雷达可以帮助驾驶。

单片机的超声波测距

单片机的超声波测距

基于单片机的超声波测距仪LED显示电路的设计本设计主要是基于AT89S51芯片为核心的超声波测距仪,并有超声波处理模块CX20106A、CD4069组成的超声波发射电路、数码管显示等器件组成,包括单片机系统、超声波发射电路、超声波接收电路、单片机复位电路、LED显示电路。

主要实现超声波测距并指示功能。

依据实际的测量精度要求还可以添加温度补偿电路。

本系统成本低廉,功能实用。

1 引言随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。

但就目前技术水平来说,人们可以具体利用的测距技术还十分有限,因此,这是一个正在蓬勃发展而又有无限前景的技术及产业领域。

展望未来,超声波测距仪作为一种新型的非常重要有用的工具在各方面都将有很大的发展空间,它将朝着更加高定位高精度的方向发展,以满足日益发展的社会需求,如声纳的发展趋势基本为:研制具有更高定位精度的被动测距声纳,以满足水中武器ž施全隐蔽攻击的需要;继续发u采用低频线谱检测的潜艇拖￳线列阵声纳,实现超远程的被动探测和识K;研制更适合于浅海工作的潜艇声纳,特别是解决浅海水中目标识别问题;大力降低潜艇自噪声,改善潜艇声纳的工作环境。

无庸置疑,未来的超声波测距仪将与自动化智能化接轨,与其他的测距仪集成和融合,形成多测距仪。

随着测距仪的技术进步,测距仪将从具有单纯判断功能发展到具有学习功能,最终发展到具有创造力。

在新的世纪里,面貌一新的测距仪将发挥更大的作用。

随着科技的发展,人们生活水平的提高,城市发展建设加快,城市给排水系统也有较大发展,其状况不断改善。

但是,由于历史原因合成时间住的许多不可预见因素,城市给排水系统,特别是排水系统往往落后于城市建设。

因此,经常出现开挖已经建设好的建筑设施来改造排水系统的现象。

城市污水给人们带来了困扰,因此箱涵的排污疏通对大城市给排水系统污水处理,人们生活舒适显得非常重要。

而设计研制箱涵排水疏通移动机器人的自动控制系统,保证机器人在箱涵中自由排污疏通,是箱涵排污疏通机器人的设计研制的核心部分。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于51单片机超声波测距器设计
类别:测试仪表阅读:8135
来源:21IC中国电子网作者:中国矿业大学徐海学院电子04-1 鲍海鸿
摘要超声波测距器,可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。

要求测量范围在0.10-5.00m,测量精度1cm,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。

由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。

利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在移动机器人的研制上也得到了广泛的应用。

关键词单片机AT82S51超声波传感器测量距离
一、设计要求
设计一个超声波测距器,可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。

要求测量范围在0.10-3.00m,测量精度1cm,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。

二、设计思路
超声波传感器及其测距原理
超声波是指频率高于20KHz的机械波。

为了以超声波作为检测手段,必须产生超生波和接收超声波。

完成这种功能的装置就是超声波传感器,习惯上称为超声波换能器或超声波探头。

超声波传感器有发送器和接收器,但一个超声波传感器也可具有发送和接收声波的双重作用。

超声波传感器是利用压电效应的原理将电能和超声波相互转化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。

超声波测距的原理一般采用渡越时间法TOF(timeofflight)。

首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的声源与障碍物之间的距离
测量距离的方法有很多种,短距离的可以用尺,远距离的有激光测距等,超声波测距适用于高精度的中长距离测量。

因为超声波在标准空气中的传播速度为331.45米/秒,由单片机负责计时,单片机使用12.0M晶振,所以此系统的测量精度理论上可以达到毫米级。

由于超声波指向性强,能量消耗缓慢,在介质中传播距离远,因而超声波可以用于距离的测量。

利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方面也能达到要求。

超声波发生器可以分为两类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。

本课题属于近距离测量,可以采用常用的压电式超声波换能器来实现。

根据设计要求并综合各方面因素,可以采用AT89S51单片机作为主控制器,用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器完成,超声波测距器的系统框图如下图所示:
超声波测距器系统设计框图
三、系统组成
硬件部分
主要由单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分组成。

采用AT89S51来实现对CX20106A红外接收芯片和TCT40-10系列超声波转换模块的控制。

单片机通过P1.0引脚经反相器来控制超声波的发送,然后单片机不停的检测INT0引脚,当INT0引脚的电平由高电平变为低电平时就认为超声波已经返回。

计数器所计的数据就是超声波所经历的时间,通过换算就可以得到传感器与障碍物之间的距离。

软件部分
主要由主程序、超声波发生子程序、超声波接收中断程序及显示子程序等部分。

四、系统硬件电路设计
1.单片机系统及显示电路
单片机采用89S51或其兼容系列。

采用12MHz高精度的晶振,以获得较稳定的时钟频率,减小测量误差。

单片机用P1.0端口输出超声波转化器所需的40KHz方波信号,利用外中断0口检测超声波接受电路输出的返回信号。

显示电路采用简单实用的4位共阳LED数码管,段码用74LS244驱动,位码用PNP三极管驱动。

单片机系统及显示电路如下图所示
单片机及显示电路原理图
2.超声波发射电路原理图参考期刊如图所示:
超声波发射电路原理图
压电超声波转换器的功能:利用压电晶体谐振工作。

内部结构上图所示,它有两个压电晶片和一个共振板。

当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动产生超声波,这时它就是一超声波发生器;如没加电压,当共振板接受到超声波时,将压迫压电振荡器作振动,将机械能转换为电信号,这时它就成为超声波接受转换器。

超声波发射转换器与接受转换器其结构稍有不同。

3.超声波检测接受电路
参考红外转化接收期刊的电路采用集成电路CX20106A,这是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。

考虑到红外遥控常用的载波频率38KHz与测距超声波频率40KHz较为接近,可以利用它作为超声波检测电路。

实验证明其具有很高的灵敏度和较强的抗干扰能力。

适当改变C4的大小,可改变接受电路的灵敏度和抗干扰能力。

超声波接收电路图
五、系统程序设计
超声波测距软件设计主要由主程序,超声波发射子程序,超声波接受中断程序及显示子程序组成。

下面对超声波测距器的算法,主程序,超声波发射子程序和超声波接受中断程序逐一介绍。

1.超声波测距器的算法设计
下图示意了超声波测距的原理,即超声波发生器T在某一时刻发出的一个超声波信号,当超声波遇到被测物体后反射回来,就被超声波接收器R所接受。

这样只要计算出发生信号到接受返回信号所用的时间,就可算出超声波发生器与反射物体的距离。

距离计算公式:d=s/2=(c*t)/2
*d为被测物与测距器的距离,s为声波的来回路程,c为声速,t为声波来回所用的时间
声速c与温度有关,如温度变化不大,则可认为声速是基本不变的。

如果测距精度要求很高,则应通过温度补偿的方法加以校正。

声速确定后,只要测得超声波往返时间,即可求得距离。

在系统加入温度传感器来监测环境温度,可进行温度被偿。

这里可以用DS18B20测量环境温度,根据不同的环境温度确定一声速提高测距的稳定性。

为了增强系统的可靠性,应在软硬件上采用抗干扰措施。

不同温度下的超声波声速表
温度/
-30
-20
-10
10
20
30
100
声速c(m/s)
313
319
325
323
338
344
349
386
2.主程序
主程序首先对系统环境初始化,设置定时器T0工作模式为16位的定时计数器模式,置位总中断允许位EA并给显示端口P0和P2清0。

然后调用超声波发生子程序送出一个超
声波脉冲,为避免超声波从发射器直接传送到接收器引起的直接波触发,需延迟0.1ms(这也就是测距器会有一个最小可测距离的原因)后,才打开外中断0接收返回的超声波信号。

由于采用12MHz的晶振,机器周期为1us,当主程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按下式计算即可测得被测物体与测距仪之间的距离,设计时取20℃时的声速为344m/s则有:
d=(C*T0)/2=172T0/10000cm(其中T0为计数器T0的计数值)
测出距离后结果将以十进制BCD码方式LED,然后再发超声波脉冲重复测量过程。

主程序框图如下
3.超声波发生子程序和超声波接收中断程序
超声波发生子程序的作用是通过P1.0端口发送2个左右的超声波信号频率约40KHz
的方波,脉冲宽度为12us左右,同时把计数器T0打开进行计时。

超声波测距器主程序利用外中断0检测返回超声波信号,一旦接收到返回超声波信号(INT0引脚出现低电平),立即进入中断程序。

进入该中断后就立即关闭计时器T0停止计时,并将测距成功标志字赋值1。

如果当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0关闭,并将测距成功标志字赋值2以表示此次测距不成功。

六.软硬件调试及性能
超声波测距仪的制作和调试,其中超声波发射和接收采用Φ15的超声波换能器
TCT40-10F1(T发射)和TCT40-10S1(R接收),中心频率为40kHz,安装时应保持两换能器中心轴线平行并相距4~8cm,其余元件无特殊要求。

若能将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰能力。

根据测量范围要求不同,可适当调整与接收换能器并接的滤波电容C4的大小,以获得合适的接收灵敏度和抗干扰能力。

硬件电路制作完成并调试好后,便可将程序编译好下载到单片机试运行。

根据实际情况可以修改超声波发生子程序每次发送的脉冲宽度和两次测量的间隔时间,以适应不同距离的测量需要。

根据所设计的电路参数和程序,测距仪能测的范围为0.07~5.5m,测距仪最大误差不超过1cm。

系统调试完后应对测量误差和重复一致性进行多次实验分析,不断优化系统使其达到实际使用的测量要求。

相关文档
最新文档