声音信标发出白噪声和发出chirp信号的对比测距说明

article/2025/10/3 23:53:46

 
十五届全国大学生智能汽车竞赛 中安排后一个 声音信标导航 竞赛组别。参赛同学反馈,声音信标发送的 Chirp信号 在远处听起来会令人产生一种恐慌紧张的感觉,极大扰民。

如果将信标的声音改成同样宽带音频的白噪声信号,在听觉上与Chirp信号有很大区别,但在导航的效果上与Chirp信号相同。

下面是对比两种信号在声音导航效果的异同。

 

01 测试方式


通过 调频接收模块 接收信标发送的调频信号,与麦克接收到的信号通过相关运算,获得声音时间延迟。将两个麦克的延迟时间和调频接收模块获得的信号强度显示在LCD上。

▲ 车模上显示测试结果的液晶

▲ 车模上显示测试结果的液晶

1.显示屏显示说明:

  1. 第一行显示的是麦克风1到信标的距离,单位是3.14厘米,显示的6也就是距离:
    L 1 = 6 × 3.14 = 18.84 c m L_1 = 6 \times 3.14 = 18.84cm L1=6×3.14=18.84cm

  2. 第二行显示的是麦克风2到信标的距离,单位是3.14厘米,显示的11也就是距离:
    L 1 = 11 × 3.14 = 34.54 c m L_1 = 11 \times 3.14 = 34.54cm L1=11×3.14=34.54cm

  3. 第三行显示的FM的RSSI(信号强度)。

2.播放Chirp信号时的视频(附件1):

采用原始的chirp信号进行声音导航,从视频中每移动车模一段距离观察一次距离数据是否稳定,从视频中看出大概离信标3米多的时候代表距离的数据开始不稳定了。

▲ 信标播放chirp信号时接收端的信号

▲ 信标播放chirp信号时接收端的信号

  • 黄色波形是麦克风接收到的波形
  • 蓝色是FM收到的波形

3.播放随机白噪声时的视频(附件2):

采用matlab生成8192个随机白噪声数据,然后用单片机将随机数据按照40K的频率进行播放。8192个数据播放的时间为204.8毫秒。刚好与之前的chirp周期是一致的。

由于单片机的flash较小所以没有办法播放太长的序列。同样,视频中也采用每移动车模一段距离观察一次距离数据是否稳定,从视频中同样可以看出大概离信标3米多的时候代表距离的数据也开始不稳定了。

▲ 信标播放白噪声信号时接收端的信号

▲ 信标播放白噪声信号时接收端的信号

  • 黄色波形是麦克风接收到的波形

  • 蓝色是FM收到的波形并对波形做了一个1MHz 的低通滤波,便于观看波形。

测试的时候车模端的程序是没有改变的, 也就是说测距算法不变的情况下,仅仅只改变信标的声源通过视频我们可以看到两者的效果是比较接近的。

 

02 结果分析


从测试结果来看,播放白噪声的确也可以实现测距,当然也可以实现声音定位,但从实际测试中也有以下疑问

1.问题1:

从上面的白噪声波形看,如果由人直接判断接收到的波形,很难去分析当前接收到的波形质量是否可靠,因为信号源就是随机的白噪声,没有规律可循,从分析和写程序来说可能没有chirp信号那种波形能给人带来那么直观的感受。

▲ 播放Chirp信号进行测量声音延迟

▲ 播放Chirp信号进行测量声音延迟

2.问题2:

相对于chirp信号来说,随机白噪声听起来会更容易让人产生一种心烦的情绪,对做这个组别的同学来说也挺头大的,但相对于之前的chirp信号来说,穿透力确实要弱一些,对于其他人的影响确实要小不少,但也能传比较远。

▲ 播放噪声信号进行测量声音延迟

▲ 播放噪声信号进行测量声音延迟


http://chatgpt.dhexx.cn/article/2CshpQPC.shtml

相关文章

Chirp信号公式与对离散生成算法之间的差异

讨论产生线性频率变化的公式和它的离散公式之间的差异,并提出Chirp信号的修改方案。 Chirp信号的公式 对于固定频率 f 1 f_1 f1​的信号,它的表达式为: r ( t ) cos ⁡ ( 2 π ⋅ f 1 ⋅ t ) r\left( t \right) \cos \left( {2\pi \cdot …

matlab啁啾信号,啁啾信号chirp(扫频余弦信号)

Chirp信号 Generate swept-frequency cosine (chirp) signal Chirp信号是一个典型的非平稳信号,在通信、声纳、雷达等领域具有广泛的应用, Chirp译名:啁啾(读音:“周纠”),是通信技术有关编码脉冲技术中的一种术语,是指对脉冲进行编码时,其载频在脉冲持续时间内线性地增加…

77GHz毫米波雷达快速chirp信号技术(一):测距原理

快速chirp信号指的是发射天线发射如下图所示信号: 单个chirp的解析式为 x ( t ) = s i n ( 2 ∗ p i ∗ ( f 0 + 0.5 ∗ S ∗ t ) . ∗ t ) x(t)=sin(2*pi*(f_0+0.5*S*t).*t) x(t)=sin(2∗pi∗(f0​+0.5∗S∗t).∗t)。 其中斜率 S S S达到 M H z / u s MHz/us MHz/us的数量级…

语音信号预处理3——计算原始chirp信号与滤波后chirp信号的相关性

写在前面:仅作为个人学习笔记,便于以后查阅,如对你有帮助,荣幸之至,如有错误,欢迎评论指正 编程软件:matlab R2018b 系统: win10 系列文章目录 chirp信号的生成与接收对接收到的c…

MATLAB学习笔记之chirp信号的产生

chirp信号即线性调频信号,是指瞬时频率随时间呈线性变化的信号。 chirp信号的matlab程序实现方法如下: 1.可利用matlab自带的chirp函数生成。 chirp(t,f0,T,f1); T表示脉冲宽度&…

chirp信号频谱(三角波和锯齿波)

普通chirp信号 ​​​​​​​ 频谱 图中信号载波3.2GHz,采样率256MHz,带宽100MHz,脉宽64us %% --------仿真数据--------------- fs256e6; Nr16384; ts 1/fs; fc3.2e9; B10…

USB chirp信号测试

1 信号及原理分析 1.1 KJ信号说明 USBchirp信号分为K信号和J信号。根据USB速率将chirp信号做如下区别: USB速率 Chirp DP DM 空闲状态 Low Speed K 1 0 K J 0 1 Full Speed K 0 1 J J 1 0 High Speed K 0 1 SE0 J 1 0 SE0 0 0 1…

chirp信号相关

1、frft 基于分数阶傅里叶变换的chirp信号检测与参数估计(原理附代码)_非 常 道的博客-CSDN博客_chirp基 求相关性最好的阶数: 其中fs是采样频率,arccot这个在matlab中有相应的函数,B是chirp信号的带宽。 2、在实际工作…

基于分数阶傅里叶变换的chirp信号检测与参数估计(原理附代码)

线性调频信号(chirp信号) 顾名思义,该信号的频率随着时间线性变换,其复数表达形式如下: s ( t ) e 2 j π ( f 0 t 0.5 μ t 2 ) s(t)e^{2j\pi(f_0 t 0.5\mu t^2)} s(t)e2jπ(f0​t0.5μt2) 根据欧拉公式&#xff…

Chirp信号及其生成

Chirp信号是一个典型的非平稳信号,在通信、声纳、雷达等领域具有广泛的应用。 简介 Chirp译名:啁啾(读音:“周纠”),是通信技术有关编码脉冲技术中的一种术语,是指对脉冲进行编码时,其载频在脉冲…

什么是chirp信号

什么是chirp信号?(翻译自维基百科) 维基百科是这样说的: A chirp is a signal in which the frequency increases (up-chirp) or decreases (down-chirp) with time。 也就是说:是频率随着时间增加或减小的信号。 …

Chirp信号简单介绍

1.定义:chirp指的是频率随时间增加或减少的信号。它通常应用于声纳、雷达和激光系统,以及其他应用,如扩频通信。(大多数情况也可称为线性chirp信号,但其实chirp信号未必是线性的) 2.公式推导理解&#xff…

Chirp信号基础知识及matlab实现

Chirp信号的表达式如下: x ( t ) e x p ( j 2 π ( f 0 t 1 2 k t 2 ) ) x(t)exp(j2\pi (f_0t\frac{1}{2} kt^2)) x(t)exp(j2π(f0​t21​kt2)) 其中, f 0 f_0 f0​ 称作起始频率,k为调频率 对相位进行求导,得到角频率以及频率随时间的线…

项目通信之RPC调用——java简单实现

微服务项目通信方法很多,有像springcloud解决方案的http通信,还有像阿里Dubbo的RPC通信,这里简单实现RPC调用。一共2个端,客户端server和客户端client.项目demo很简单,就不多讲了,看代码好了。 下面是服务…

RabbitMQ消息队列之RPC调用

我们知道现在市面上的RPC框架很多,但是如何用我们的RabbitMQ去实现一个RPC调用呢?这就是我们这篇文章所要讲解的内容。 如果有阅读过我写的博客的大兄弟们,可能会知道,我有个习惯就是学习技术喜欢去看官方文档,同样对于…

rpc调用过程原理分析以及Dubbo、Feign调用过程

RPC简介 RPC是远程过程调用(Remote Procedure Call)的缩写形式。 RPC调用流程图 客户端方法:服务调用方所调用的接口 客户端代理:将接口封装成代理对象,并序列化请求参数、反序列化响应结果,使用远程传输…

SpringBoot+RabbitMQ 实现 RPC 调用

说到 RPC(Remote Procedure Call Protocol 远程过程调用协议),小伙伴们脑海里蹦出的估计都是 RESTful API、Dubbo、WebService、Java RMI、CORBA 等。 其实,RabbitMQ 也给我们提供了 RPC 功能,并且使用起来很简单。 …

消息中间件RabbitMQ(五)——实现RPC调用

文章目录 1. RPC2. 实现原理3. 代码实现3.1 客户端实现3.2 服务端实现3.3 测试 4. 小结 1. RPC 对于微服务开发者,对于 RPC(Remote Procedure Call Protocol 远程过程调用协议)并不会陌生吧, RESTful API、Dubbo、WebService等都…

springcloud 远程rpc调用接口

springcloud 如果想要从注册中心中调用已经注册的接口,需要用如下方法。 我们现在已经将一个微服务注册到了注册中心。端口是8083的那个 并且里面有个member的RequestMapping 首先,创建一个微服务,将需要的依赖放入pom.xml和配置好apppli…

浅谈RPC调用过程

RPC(Remote Procedure Call) - 远程过程调用,是一个计算机通信协议,它允许运行于一台计算机的程序调用另一台计算机的子程序,而无需额外地为这个交互作用编程。RPC主要应用在分布式系统架构中不同的系统之间的远程通信和相互调用。 举个例子…