STM32单片机的高精度超声波测距系统的设计
相比于传统的单片机,STM32单片机具有更高的时间测量分辨率,其主频与定时器频率高达72MHz,且该单片机在开启定时器的同时,会启动PWM通道驱动超声波发射器和通道捕捉回波信号,提高了测量的精度和准确性。超声波测距是一种典型的非接触测量方式,在不同的传播介质中具有不同的传播速度其系统结构简单、成本低。只有了解超声波测距的原理、了解STM32单片机才能设计出性能良好的STM32单片机的高精度超声波测距系统。
超声波测距的原理及检测方法
超声波检测技术是基于非接触测量方式而逐渐发展起来的一门技术,这种非接触测量方式会经常出现在材料学、电子科学、测量学等学科当中。超声波的产生是通过机械振动而得到,其传播速庶会随着传播介质的变化而变化。超声波测距的实现主要是通过超声波的产生、传播与接收回波这三个主要过程。
目前,声波幅值检测法、渡越时间检测法和相位检测法是超声波测距的三种主要检测方法。声波幅值检测法,容易受到传播介质的干扰,所以其测量精度较差。渡越时间检测法,与其他两种检测方法相比,成本较低,测量范围较广,且实现简单,因此本文高精度超声波测距系统的设计决定采用渡越时间检测法。相位检测法,在实际测量过程中,其测量精度要高于其他两种检测方法,但测量范围具有一定的局限性田。
STM32单片机的高精度超声波测距系统设计
一、系统组成STM32单片机的高精度超声波测距系统的设计主要由STM32 单片机、超声波发射电路、接受电路、补偿电路和软件等构成。该系统将STM32单片机作为整个系统的核心,通过协调各部分电路工作,进而实现高精度的超声波测距口。
二、系统硬件设计1.超声波发射电路
超声波发射电路两个最主要的组成部分就是超声波探头和超声波激励电路。超声波探头不仅是超声波发射电路的一个重要组成部分,更是整个超声波测距系统的重要组成部分。它是超声波测距系统中用以发射或接受超声波信号的主要器件。超声波激励电路的基本工作原理是首先利用相应的机理信号对一特定形式的电压进行处理之后,将其加载到超声波探头上,然后再通过超声波探头压电晶片将其自身所具有的电能转化为超声波信号图。
2.超声波縷收电路
超声波接收电路由超声波信号采集与超声波信号处理两部分组成,该电路主要负责对超声波回波信号进行捕捉。由于电脉冲信号是由超声波传感器在接收到超声波回波信号之后经过转变而形成的,所以在正常情况下,它是无法直接进人到STM32单片机当中的。另外,超声波在传播过程中,往往会有部分超声波因为在辅助介质中传播而发生耗损现象,且超声波回波信号减小的幅度也会随着被测物体距离的增大而增大。
受声波的反射、散射和(2.2.3超声波补偿电路)声束本身扩散等的影响,使得超声波在传播过程中其大小将会随着传播距离的改变而改变,传播距离越大,超声波信号则越小。在STM32单片机的高精度超声波测距系统设计过程中,为了提高测量结果的精度,设计人员通常会对衰减的超声波回波进行时间增益补偿,这就需要将超声波补偿电路加人到系统设计之内,超生波补偿电路的设计基本上都是采用具有时司增益控制功能的接收放大器。
3.超声波补偿电路
受声波的反射、散射和(2.2.3超声波补偿电路)声束本身扩散等的影响,使得超声波在传播过程中其大小将会随着传播距离的改变而改变,传播距离越大,超声波信号则越小。在STM32单片机的高精度超声波测距系统设计过程中,为了提高测量结果的精度,设计人员通常会对衰减的超声波回波进行时间增益补偿,这就需要将超声波补偿电路加人到系统设计之内,超生波补偿电路的设计基本上都是采用具有时司增益控制功能的接收放大器。
4.主控器
该系统的核心组成部分采用STM32单片机,该单片机对主控器主频与定时器的控制是通过PLL进行陪频,从而让主控器的频率可以达到72MHz。主控器拥有如此高分辨率的定时器,可以实现超声波测距的高精度测量巧]。 2.3系统软件设计
STM32单片机的高精度超声波测距系统,其软件设计的主要流程如下:首先,对系统各个馍块进行初始化,通过STM32单片机的 PWM产生频率为40KHz的、具有8个周期的脉冲方波,并将要在漠块中进行捕捉的超声波回波输人到捕捉指令当中;其次,待超声波回波顺利进人到接收电路之后,利用整形电路和放大电路等硬件对其进行相应的处理并传送到STM32单片机内,当STM32单片机捕捉到回波触发信号时,利用软件滤波和峰值时间检测法来计算出峰值时刻回波的到达时间;最后,借助相关计算公式得出被测距离值。
结语
通过文章对STM32单片机的高精度超声波测距系统设计的介绍可知,该系统不仅可以实现距离的准确测量,而且反应速度决、成本低、稳定性高,能够较好的满足各领域的日常需求。利用网络技术和计算机技术等来设计STM32单片机的高精度超声波测距系统,并对超声波检测技术进行不断的完善与革新,在提高STM32单片机性能的基础上,设计出能够适应与满足未来各领域日常生产与发展需要的超声波测距系统,对我国各领域来说都具有重要的意义。
相位差检测的算法研究-为什么不用CCP检测边沿
经过上一篇文章的分析,我们知道,当不存在待测物时,发射线圈的等效阻抗为:
当发射线圈产生的磁场内存在待测物时,发射线圈的等效阻抗为:
根据 的数值,可以分辨出待测物的类型;
涡流示意图
直接检测相位差可行吗
假设施加发射线圈的电压复数形式为,则接收电压
如果检测接收信号与发射信号的幅度,以及接收信号与发射信号的相位差,则可以算出发射线圈的阻抗。
因为发射信号与接收信号的为单一频率的信号,而且频率相同,检测相位差比较简单的办法为:
分别将发射信号与接收信号通过过零比较器处理成50%占比空的数字方波信号。
将两路方波信号送入单片机的CCP捕捉功能脚,利用单片机的CCP功能,分别捕捉发射信号的跳变时间以及接收信号的跳变时间,将两个时间相减,再与信号的周期进行运算即可以得到相位差。
这里的问题在于:
相对于和,和是比较大的数值,小的阻抗的变化导致的相位变化小,如果采用CCP捕捉,需要单片机通过数值计算滤除干扰进行分析,早期性能差的单片机难以胜任。
相位差检测的数值处理方法
随着近些年单片机技术的发展,特别是性价比极高的cortex-m内核处理器的普及应用。
对模拟信号进行高速采样并对数值进行处理已不成问题。
按照下述步骤实现相位差数值检测的算法:
1) 以为采样率对接收信号采样 N+N/4个数据,得到一组数组A,
2) 根据发射信号的频率,在一个周期内对信号采样N个点,保存为一个数组B,
3) 计算的数值,记为R;
4) 计算的数值,记为X;
5) 在多个周期内计算R和X的滑动平均值,记为以及;
6) 计算 的数值,根据这一数据判断待测物的类型。
R, X的变化波形
相关问答
单片机 如何通过ADC模块采集模拟信号?朋友们好,我是电子及工控技术,我来回答这个问题。众所周知单片机是一种超大规模的集成电路,它只能“读懂”并处理数字信号,对于连续量的模拟信号则无能为力。...
目前在学 单片机 ,已经学会做流水灯了,怎么做红外遥控灯?用单片机制作遥控灯的方法还是比较多的,可以用无线电遥控灯、可以用蓝牙技术控制灯、还可以用无线发射模块nRF24L01实现无线射频遥控遥控灯。当然我们根据题目的...
郭天祥 单片机 ?@0083853抓个猫怎么这么难。@0083853抓个猫怎么这么难。
什么是 单片机 的数字时钟信号?单片机的数字时钟信号是指用于驱动单片机(微控制器)执行各种操作和计算的时钟信号。这些时钟信号通常由外部晶振或内部电路产生,并以固定的频率和周期性脉冲的...
超声波测距电路的种类_作业帮[回答]kHz与测距的超声波频率40kHz较为接近,可以利用它制作超声波检测接收电路.3.通过单片机的输入捕捉功能,如用PIC16F87单片机,将输入的超声波信号放大...
DSP芯片和 单片机 有什么区别?dSP与单片机的区别1存储器结构不同单片机使用冯.诺依曼存储器结构。这种结构中,只有一个存储器空间通过一组总线(一个地址总线和一个数据总线)连接到处理器核...
at89s51可以多线程工作吗?1、51单片机无法实现多线程任务,只能实现单线程。这是由51单片机的硬件决定的,否则多线程芯片就没有必要设计出来了。2、51单片机的硬件资源,如:定时器、计...
如何选择合适的 单片机 ?[回答]8位单片机提供2~3个定时/计数器,有些定时/计数器还具有输入捕获、输出比较和PWM(脉冲宽度调制)功能,利用这些模块不仅可以简化软件设计,而且能少占...
大神们有什么好的,深圳脉冲检测多少钱,脉冲检测排行榜?[回答]干簧管输出为干接点信号,将一端接地,另一端通过电阻接电源,接电阻端与单片机IO口(计数器计数输入引脚、计数器捕获引脚、外部中断引脚或普通IO口均...
各位老铁 求解,基于 单片机 原理的实验室智能控制系统研究有...[回答]之前和新宸实验室合作过,他们家的产品挺齐全的,可以了解一下诚以经商,信以持业,一个客户,一个样板。设计理念:本公司设计人员都是经过数十年的实验...