nearlink_sdr.phy.uwb_pulse¶
超宽带脉冲波形与调制 (标准 6.2.1.4)。
实现 Kaiser 参考脉冲波形、码片载波调制和归一化互相关验证。
Module Contents¶
Classes¶
UWB 脉冲配置参数。 |
Functions¶
码片载波调制。 |
|
生成 Kaiser 参考脉冲波形 r(t)。 |
|
计算归一化互相关函数 |φ(τ)|。 |
|
验证发射脉冲波形是否满足标准要求。 |
API¶
- class nearlink_sdr.phy.uwb_pulse.UWBPulseConfig[源代码]¶
UWB 脉冲配置参数。
- 变量:
tp_ns -- 带宽参数 Tp (ns)
tw_ns -- 归一化互相关函数参数 Tw (ns)
beta -- Kaiser 波形形状参数
max_prf_mhz -- 最大脉冲重复频率 (MHz)
sample_rate_ghz -- 采样率 (GHz)
- classmethod bw_500mhz() nearlink_sdr.phy.uwb_pulse.UWBPulseConfig[源代码]¶
创建 -10dB 带宽 >= 500MHz 的配置。
- classmethod bw_1300mhz() nearlink_sdr.phy.uwb_pulse.UWBPulseConfig[源代码]¶
创建 -10dB 带宽 > 1300MHz 的配置。
- nearlink_sdr.phy.uwb_pulse.chip_modulate(chips: numpy.typing.NDArray[numpy.int8], cfg: nearlink_sdr.phy.uwb_pulse.UWBPulseConfig, fc_ghz: float) numpy.typing.NDArray[numpy.float64][源代码]¶
码片载波调制。
每个码片 c(n) ∈ {-1, 0, +1} 的调制信号为: c(n) · r(t - n·Tc) · cos[2π·fc·(t - n·Tc)]
- 参数:
chips -- 码片序列, 值为 -1, 0 或 +1
cfg -- UWB 脉冲配置
fc_ghz -- 载波中心频率 (GHz)
- 返回:
调制后的时域信号
- nearlink_sdr.phy.uwb_pulse.kaiser_pulse(cfg: nearlink_sdr.phy.uwb_pulse.UWBPulseConfig, num_samples: int | None = None) numpy.typing.NDArray[numpy.float64][源代码]¶
生成 Kaiser 参考脉冲波形 r(t)。
- 参数:
cfg -- UWB 脉冲配置
num_samples -- 采样点数, 默认根据脉冲持续时间和采样率计算
- 返回:
归一化的 Kaiser 脉冲波形采样值
- nearlink_sdr.phy.uwb_pulse.normalized_cross_correlation(r: numpy.typing.NDArray[numpy.float64], p: numpy.typing.NDArray[numpy.float64]) numpy.typing.NDArray[numpy.float64][源代码]¶
计算归一化互相关函数 |φ(τ)|。
- 参数:
r -- 参考脉冲波形
p -- 发射脉冲波形
- 返回:
归一化互相关函数的幅度
- nearlink_sdr.phy.uwb_pulse.validate_pulse(p: numpy.typing.NDArray[numpy.float64], cfg: nearlink_sdr.phy.uwb_pulse.UWBPulseConfig, main_lobe_threshold: float = 0.92, side_lobe_threshold: float = 0.1) tuple[bool, float, float][源代码]¶
验证发射脉冲波形是否满足标准要求。
- 参数:
p -- 发射脉冲波形
cfg -- UWB 脉冲配置
main_lobe_threshold -- 主瓣最低强度阈值 (默认 0.92)
side_lobe_threshold -- 旁瓣最高强度阈值 (默认 0.1)
- 返回:
(是否通过, 主瓣最小强度, 旁瓣最大强度)