啁啾
产生频率变化的余弦信号(啁啾)。
类型: ChirpDSP
图书馆中的路径:
|
说明
啁啾*模块输出单位振幅和连续相位的变频余弦信号(啁啾信号)。要指定所需的输出啁啾信号,必须为其定义一个瞬时频率函数,也称为输出频率变化。频率变化可以是线性、二次或对数变化,默认情况下每*扫描时间*重复一次。有关 啁啾 块使用的算法说明,请参阅 算法。
端口
输出
端口_1 - 频率不断变化的余弦信号(啁啾声)
标量
频率可变的余弦信号(啁啾)。如果*频率扫描*参数设置为 "线性"、"对数 "或 "二次 "模式,则设备输出余弦变频信号,其瞬时频率值由频率和时间参数指定。在 "余弦扫频 "模式下,设备输出瞬时频率线性变化的余弦信号,其频率可能与频率和时间参数指定的频率不同。
有关该块如何计算输出信号的更多信息,请参阅 算法。
数据类型: Float32
, Float64
参数
频率扫描 - 频率扫描类型
线性(默认) | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |二次
Limitations.
如果需要频率线性变化的信号,建议使用 Frequency sweep 参数的 Linear
值。虽然 "余弦扫频 "值也能产生频率线性变化的信号,但输出信号可能会有意外的频率内容。
-
每*目标时间*的振荡次数不一定是*目标频率*。出现这种情况是因为用户指定的频率变化并不是输出余弦信号的实际频率变化,如 Method for Computing the output signal for varying frequency using the law of cosines所述。关于余弦输出信号在给定时间内的实际频率变化,请参阅 瞬时频率变化值。
-
在 "横扫余弦 "模式下,不要设置参数,以免 的值大大超过 *初始频率*和 *目标频率*参数的值。在这种情况下,输出余弦信号的实际频率变化可能更接近 ,大大超出 *初始频率*和 *目标频率*参数的值。
扫频模式 - 频率变化模式
单向(默认) | `双向
初始频率 (Hz) - 初始频率
1000(默认值) | `标量
如果 频率扫描 设置为 "线性"、"二次 "或 "余弦扫描",则 初始频率 (Hz) 值为 输出啁啾信号的初始频率。初始频率 (Hz)* 值指定为大于或等于零的标量。
如果*频率扫描*设置为 "对数",则*初始频率 (Hz)* 值将比初始频率的实际值小 1。在这种情况下,初始频率 (Hz) 必须小于*目标频率*。
更多信息,请参阅 设置瞬时频率变化值。
目标频率 (Hz) 是目标频率值
4000(默认)` | scalar
.
如果*频率扫描*设置为 "线性"、"二次 "或 "对数",则目标频率值是输出信号在*目标时间*的瞬时频率 , 。初始频率 (Hz)* 值指定为大于或等于零的标量。
如果 Frequency sweep 设置为 "Swept cosine"(余弦扫频),则 Target frequency 值为输出信号在 Target time 中点的瞬时频率 , 。
如果*频率扫描*设置为 "对数",则*目标频率*值必须大于*初始频率*值。
详见 设置瞬时频率扫描值。
目标时间(秒) - 目标频率变化时间值
1(默认)` | 标量
。
如果*频率扫描*设置为 "线性"、"二次 "或 "对数",则目标频率扫描时间值 是频率达到*目标频率*值的时间, 。
如果*频率扫描*设置为 "扫余弦",则*目标时间(秒)*值为频率达到 值所需的时间。
目标时间 (s)* 值设置为大于或等于零且小于或等于*扫频时间*值的标量, 。
详见 设置瞬时频率变化值。
扫频时间 (s) - 频率变化时间
1(默认)` | scalar
.
如果 Sweep mode 设置为 Unidirectional
(单向),频率变化时间 就是频率变化的周期。
如果*扫频模式*设置为 "双向",则频率变化时间 为频率变化周期的一半。
目标时间 (s)* 值设置为大于或等于 * 扫频时间 * 值的标量, 。
初始相位(rad) - 初始相位值
0(默认值)* | `标量
输出余弦信号在 时的相位 :
.
初始相位(rad)* 值指定为大于或等于零的标量。
采样时间 - 输出信号的采样周期
1/8000(默认值)* |"正标量"。
输出信号的采样周期。输出帧的周期等于 ,其中 是该帧的采样个数。
每帧采样数 - 每帧采样数
1(默认值) | 正标量
用于缓冲每个输出帧的每帧样本数,设置为整数正标量。
输出数据类型 - 输出数据类型
双(默认情况下)` | `单
如果选择 Double
参数,将使用 Float64
数据类型,如果选择 Single
- Float32
。
使用 Float64
计算将比使用 Float32
更精确,但需要更多内存和计算资源。
当需要的精度较低时,如存储大量数据时,`Float32`可能更有效。
更多信息
*频率变化的形成
瞬时频率变化的基本形状 由*频率扫描*和*扫描模式*参数控制。
参数名称 | 选择值 | 参数说明 |
---|---|---|
*频率扫描 |
线性 二次 对数 余弦扫频 |
指定频率扫描是线性、二次、对数还是余弦。 |
*扫频模式。 |
单向 双向"。 |
确定变化是单向还是双向。 |
下图显示了使用*频率扫描*和*扫描模式*参数可能获得的频率扫描形式。
有关如何设置频率值的信息,请参阅 设置瞬时频率扫描值。
*设置瞬时频率变化值
设置以下参数可设定输出信号的瞬时频率变化值:
-
初始频率(赫兹), ;
-
目标频率 (Hz), ;
-
目标时间(秒), 。
下表显示了所有 Frequency sweep 值在特定时间点的频率扫描值。有关用于计算其他时间点频率扫描值的公式信息,请参阅 算法。
Frequency sweep | 时间点的频率值 | 时间点的频率值 | 频率值等于 Target frequency (Hz) 时的时间、 |
---|---|---|---|
线性 |
|
|
|
二次 |
|
|
|
对数 |
|
|
|
扫余弦 |
|
|
|
算法
啁啾*模块使用两种公式之一计算输出信号,具体取决于*频率扫描*参数的设置。
*计算输出信号的公式。
下表总结了设备用于计算用户定义的输出频率扫频 、设备的输出扫频 以及实际输出频率扫频 的公式。用户指定的输出频率变化与实际输出扫频不一致的唯一情况是*频率扫频*参数设置为 "余弦扫频"。
以下公式仅适用于单向扫频,其中 。要推导其他情况的方程,请研究 频率扫描整形中的表格和图表。 |
模块使用的上述方程表包含以下变量:
-
- 用户定义的频率变化。
-
- 实际频率变化,通常等于 。
-
- 输出信号。
-
- 啁啾信号的相位,其中 和 是相位的导数: .
-
- 初始相位值 初始相位,其中 .
* 频率扫描* | 输出啁啾信号 | 用户定义的频率变化 | 实际频率变化 | |
---|---|---|---|---|
线性 |
|
|
|
|
二次"。 |
与 "线性 "相同。 |
|
|
|
对数 |
与 "线性 "相同。 |
其中 |
未使用 |
|
横余弦 |
|
与 "线性 "相同。 |
同 "线性"。 |
|
*计算频率发生线性、二次和对数变化时输出信号的方法。
啁啾函数相位的导数给出了啁啾函数的瞬时频率。当*频率扫描*参数设置为 "线性"、"二次 "或 "对数 "时,*啁啾*模块利用这一原理计算输出啁啾信号。
输出啁啾信号的相位 :
.
瞬时频率是相位的导数: .
例如,如果需要瞬时频率线性变化的啁啾信号,可将 *频率扫描 * 参数设置为 "线性",然后调整线性频率变化值,并相应设置其他参数。设备将输出一个啁啾信号,其相位导数与指定的线性频率变化相对应。这可确保输出信号的瞬时频率与指定的线性频率变化相匹配。描述线性、二次和对数频率变化的方程见 计算输出信号的方程。
*利用余弦定律计算不同频率输出信号的方法。
当*频率扫描*设置为 "余弦扫频 "时,设备按如下方式计算输出信号:
.
线性、二次和对数频率变化的输出计算方法中给出的瞬时频率方程对这种情况无效,因此用户指定的频率变化 与实际的 不同。因此,输出信号的表现可能与预期不同。详见 频率扫描 和 计算输出信号的方程。