打印
[牛人杂谈]

超声波测距原理

[复制链接]
1105|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
超声波是一种频率高于20000赫兹的声波,它的方向性好,穿透能力强,易于获得较集中的声能,在水中传播距离远,可用于测距、测速、清洗、焊接、碎石、杀菌消毒等。在医学、军事、工业、农业上有很多的应用。超声波因其频率下限大于人的听觉上限而得名。此次实验室布置的任务为基于51最小系统;的单片机测距。

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

距离公式:s=ct/2

或表示为2*S=V*t


使用特权

评论回复
沙发
21mengnan|  楼主 | 2019-11-6 19:43 | 只看该作者
原理图:
一般发射接收模块如下图

或者4PIN


使用特权

评论回复
板凳
21mengnan|  楼主 | 2019-11-6 19:44 | 只看该作者

这个图说明为何是测量下降沿回波信号才中断。

使用特权

评论回复
地板
21mengnan|  楼主 | 2019-11-6 19:46 | 只看该作者
因为我们是持续发射一组波,持续发射,就会最后是个下降沿,所以我们检测的是下降沿信号的发射和接收到之间的时间。

使用特权

评论回复
5
21mengnan|  楼主 | 2019-11-6 19:46 | 只看该作者
这样也有个好处可以排除干扰。

使用特权

评论回复
6
21mengnan|  楼主 | 2019-11-6 19:47 | 只看该作者
发射代码一般是这样
                        Trig=1;
                        NOP();NOP();NOP();NOP();NOP();NOP();NOP();NOP();
                        Trig=0;

使用特权

评论回复
7
21mengnan|  楼主 | 2019-11-6 19:50 | 只看该作者
高电平,,,持续,,,然后结束低电平。
接下来就是等待计时器了,一般因为单片机运行很快,中间操作代码的时间是可以忽略的。如果追求极致还可以在这个时候再启动计时器。这样其实更科学。当读取完毕,在中断关闭计时器。第二轮时候再次开启。

使用特权

评论回复
8
21mengnan|  楼主 | 2019-11-6 19:52 | 只看该作者
        while(1)
        {
                 StartModule();
             while(!Echo);                //当RX为零时等待
             TR0=1;                            //开启计数
             while(Echo);                        //当RX为1计数并等待
             TR0=0;                                //关闭计数
         Conut();                        //计算
                 delayms(80);
        }

使用特权

评论回复
9
21mengnan|  楼主 | 2019-11-6 19:53 | 只看该作者
所以这么做更科学,因为可能发射时候会造成接收到发射管的信息,而不是回声,所以用了个while判断,是不是发射结束了,如果是,计时。等待接收到回波的结束信号。但是这个过程大家要考虑如果距离太近,发射和接收信号连接一起了,中间没有间隔就坏了,这就是距离太近而发射持续时间太长。就没法计算了。

使用特权

评论回复
10
21mengnan|  楼主 | 2019-11-6 19:57 | 只看该作者

经过计算发射持续时间为0.2ms
换算距离,这个时间测量路程为0.034m
距离就是0.017米。
大概不到2CM,也就是说测距是有限度的,必须大于2CM才能够测的准确。

使用特权

评论回复
11
21mengnan|  楼主 | 2019-11-6 19:58 | 只看该作者
如果按1MHz的时钟算,那么精度是多少呢?
结果是0.17毫米。嘿嘿,当然不可能这么精确了,不过也是差不多的了。

使用特权

评论回复
12
dongliushui| | 2019-11-6 20:04 | 只看该作者
总结的真不错。

使用特权

评论回复
13
dongliushui| | 2019-11-6 20:35 | 只看该作者
21mengnan 发表于 2019-11-6 19:57
经过计算发射持续时间为0.2ms
换算距离,这个时间测量路程为0.034m
距离就是0.017米。

这好科学,我查了一下淘宝的介绍,还真是,测量距离一般是2CM到4M。

使用特权

评论回复
14
dongliushui| | 2019-11-6 20:35 | 只看该作者

使用特权

评论回复
15
dongliushui| | 2019-11-6 20:36 | 只看该作者

使用特权

评论回复
16
dongliushui| | 2019-11-6 20:37 | 只看该作者

使用特权

评论回复
17
dongliushui| | 2019-11-6 20:43 | 只看该作者

这个性能比较好。

使用特权

评论回复
18
dongliushui| | 2019-11-6 20:43 | 只看该作者
测量范围比较大。

使用特权

评论回复
19
捉虫天师| | 2019-11-6 22:52 | 只看该作者
此贴甚好,讲的明白透彻,好久没搞测距了,差点忘了。

使用特权

评论回复
20
小明的同学| | 2019-11-6 23:44 | 只看该作者
比较好懂多了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

78

主题

978

帖子

1

粉丝