Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
nearlink-sdr 1.0.9 文档
nearlink-sdr 1.0.9 文档
  • 快速入门
  • 操作指南
    • 运行链路仿真
    • 添加新的调制方式
    • QoS 服务质量管理
    • 使用 SLE 节点实体
    • Rust 加速模块
    • SDR E310 部署规划
    • 构建文档
  • 技术参考
    • nearlink_sdr
      • nearlink_sdr.mac
        • nearlink_sdr.mac.access
        • nearlink_sdr.mac.broadcast
        • nearlink_sdr.mac.crypto
        • nearlink_sdr.mac.frame
        • nearlink_sdr.mac.link_control
        • nearlink_sdr.mac.link_manager
        • nearlink_sdr.mac.power_control
        • nearlink_sdr.mac.qos
        • nearlink_sdr.mac.scheduler
        • nearlink_sdr.mac.security
        • nearlink_sdr.mac.security_manager
        • nearlink_sdr.mac.signaling
        • nearlink_sdr.mac.smf
        • nearlink_sdr.mac.smf_scheduler
      • nearlink_sdr.sim
        • nearlink_sdr.sim.link_sim
        • nearlink_sdr.sim.usrp_sim
      • nearlink_sdr.common
        • nearlink_sdr.common.bch
        • nearlink_sdr.common.code_block_seg
        • nearlink_sdr.common.crc
        • nearlink_sdr.common.m_sequence
        • nearlink_sdr.common.mcs
        • nearlink_sdr.common.polar
        • nearlink_sdr.common.prbs
        • nearlink_sdr.common.scrambler
      • nearlink_sdr.phy
        • nearlink_sdr.phy.channel
        • nearlink_sdr.phy.control_info
        • nearlink_sdr.phy.data_link
        • nearlink_sdr.phy.equalizer
        • nearlink_sdr.phy.frame
        • nearlink_sdr.phy.freq_hopping
        • nearlink_sdr.phy.gfsk
        • nearlink_sdr.phy.mac_interface
        • nearlink_sdr.phy.measurement
        • nearlink_sdr.phy.measurement_frame
        • nearlink_sdr.phy.measurement_tx
        • nearlink_sdr.phy.mock_backend
        • nearlink_sdr.phy.multitone
        • nearlink_sdr.phy.pilot
        • nearlink_sdr.phy.pluto_backend
        • nearlink_sdr.phy.preamble
        • nearlink_sdr.phy.psk
        • nearlink_sdr.phy.rf_compliance
        • nearlink_sdr.phy.rx_pipeline
        • nearlink_sdr.phy.sdr_backend
        • nearlink_sdr.phy.sync_sequence
        • nearlink_sdr.phy.tx_pipeline
        • nearlink_sdr.phy.uhd_backend
        • nearlink_sdr.phy.usrp
        • nearlink_sdr.phy.uwb_measurement_security
        • nearlink_sdr.phy.uwb_pulse
      • nearlink_sdr.node
  • 设计说明
    • SparkLink SLE 协议总览
    • 物理层原理
    • 物理层详解
    • MAC 层详解
    • 安全子系统详解
    • 端到端数据流
    • 系统架构
    • 标准条款映射
  • 更新日志
  • API Reference
    • nearlink_sdr
      • nearlink_sdr.mac
        • nearlink_sdr.mac.access
        • nearlink_sdr.mac.broadcast
        • nearlink_sdr.mac.crypto
        • nearlink_sdr.mac.frame
        • nearlink_sdr.mac.link_control
        • nearlink_sdr.mac.link_manager
        • nearlink_sdr.mac.power_control
        • nearlink_sdr.mac.qos
        • nearlink_sdr.mac.scheduler
        • nearlink_sdr.mac.security
        • nearlink_sdr.mac.security_manager
        • nearlink_sdr.mac.signaling
        • nearlink_sdr.mac.smf
        • nearlink_sdr.mac.smf_scheduler
      • nearlink_sdr.sim
        • nearlink_sdr.sim.link_sim
        • nearlink_sdr.sim.usrp_sim
      • nearlink_sdr.common
        • nearlink_sdr.common.bch
        • nearlink_sdr.common.code_block_seg
        • nearlink_sdr.common.crc
        • nearlink_sdr.common.m_sequence
        • nearlink_sdr.common.mcs
        • nearlink_sdr.common.polar
        • nearlink_sdr.common.prbs
        • nearlink_sdr.common.scrambler
      • nearlink_sdr.phy
        • nearlink_sdr.phy.channel
        • nearlink_sdr.phy.control_info
        • nearlink_sdr.phy.data_link
        • nearlink_sdr.phy.equalizer
        • nearlink_sdr.phy.frame
        • nearlink_sdr.phy.freq_hopping
        • nearlink_sdr.phy.gfsk
        • nearlink_sdr.phy.mac_interface
        • nearlink_sdr.phy.measurement
        • nearlink_sdr.phy.measurement_frame
        • nearlink_sdr.phy.measurement_tx
        • nearlink_sdr.phy.mock_backend
        • nearlink_sdr.phy.multitone
        • nearlink_sdr.phy.pilot
        • nearlink_sdr.phy.pluto_backend
        • nearlink_sdr.phy.preamble
        • nearlink_sdr.phy.psk
        • nearlink_sdr.phy.rf_compliance
        • nearlink_sdr.phy.rx_pipeline
        • nearlink_sdr.phy.sdr_backend
        • nearlink_sdr.phy.sync_sequence
        • nearlink_sdr.phy.tx_pipeline
        • nearlink_sdr.phy.uhd_backend
        • nearlink_sdr.phy.usrp
        • nearlink_sdr.phy.uwb_measurement_security
        • nearlink_sdr.phy.uwb_pulse
      • nearlink_sdr.node
Back to top
View this page

nearlink_sdr.phy.measurement_tx¶

测量链路传输与测量量计算 -- TXS-10002-2025 标准 6.7/6.8。

实现窄带跳频和超宽带脉冲测量链路的参数配置、时间资源调度和测量量计算:

  • 6.7.2/6.7.3: 测量/感知链路参数模型

  • 6.7.4: 时间资源配置 (事件组调度)

  • 6.7.5/6.8.5: 测量量 (飞行时间/角度/CIR/距离多普勒)

Module Contents¶

Classes¶

AntennaOrderType

天线对次序类型 (6.7.2)。

CIRConfig

信道冲击响应测量配置。

CSIFeedback

信道状态信息反馈 (6.7.5)。

ChannelSpliceMode

信道拼接方式 (6.8.3)。

EventFrameType

事件中传输的帧类型。

HoppingOrder

跳频方式 (6.7.2)。

MeasBandwidth

测量信号带宽 (6.7.2)。

MeasDirection

测量方向。

MeasLinkParams

测量/感知链路参数 (6.7.2/6.7.3)。

NodeMeasConfig

单个节点的测量参数。

SecurityType

安全类型。

TimeRefType

初始时间参考类型 (6.8.5.4)。

UWBMeasLinkParams

超宽带脉冲测量链路参数 (6.8.3/6.8.4)。

UWBMeasMode

超宽带脉冲测量模式 (6.8.1)。

Functions¶

angle_estimate

根据相位差估计到达角/出发角 (6.8.5.3)。

compute_csi_feedback

从接收功率和信道 IQ 估计值生成 CSI 反馈。

csi_to_rx_power

从 CSI 反馈恢复接收信号功率。

ds_twr_2msg

双边两消息飞行时间估计 (6.8.5.1)。

ds_twr_3msg

双边三消息飞行时间估计 (6.8.5.2)。

event_schedule

生成一个事件组内的事件调度序列。

event_start_times

计算一个事件组内各事件的起始时刻 (us)。

extract_cir

从接收信号中提取信道冲击响应测量量 (6.8.5.4)。

range_doppler

距离多普勒测量量计算 (6.8.5.5)。

uwb_event_count_per_mode

每个测量事件中包含的 UWB 帧数。

uwb_event_sender

确定指定事件中谁先发。

Data¶

UWB_CONFIG_TIME_GRANULARITY_TC

API¶

nearlink_sdr.phy.measurement_tx.UWB_CONFIG_TIME_GRANULARITY_TC¶

256

class nearlink_sdr.phy.measurement_tx.AntennaOrderType[源代码]¶

Bases: enum.IntEnum

天线对次序类型 (6.7.2)。

Initialization

Initialize self. See help(type(self)) for accurate signature.

SEQUENTIAL¶

0

RANDOM¶

1

class nearlink_sdr.phy.measurement_tx.CIRConfig[源代码]¶

信道冲击响应测量配置。

time_ref: nearlink_sdr.phy.measurement_tx.TimeRefType¶

None

delay_offset_ns: float¶

0.0

delay_length_ns: float¶

100.0

sample_rate_hz: float¶

499200000.0

class nearlink_sdr.phy.measurement_tx.CSIFeedback[源代码]¶

信道状态信息反馈 (6.7.5)。

接收信号功率(dBm) = 20*lg(abs(相对IQ值/1024)) + 参考接收功率值

ref_power_dbm: float¶

None

relative_iq: complex¶

None

class nearlink_sdr.phy.measurement_tx.ChannelSpliceMode[源代码]¶

Bases: enum.IntEnum

信道拼接方式 (6.8.3)。

Initialization

Initialize self. See help(type(self)) for accurate signature.

NONE¶

0

OVERLAP¶

1

CONTINUOUS¶

2

NON_CONTINUOUS¶

3

class nearlink_sdr.phy.measurement_tx.EventFrameType[源代码]¶

Bases: enum.IntEnum

事件中传输的帧类型。

Initialization

Initialize self. See help(type(self)) for accurate signature.

INIT¶

0

TYPE_1¶

1

TYPE_2¶

2

class nearlink_sdr.phy.measurement_tx.HoppingOrder[源代码]¶

Bases: enum.IntEnum

跳频方式 (6.7.2)。

Initialization

Initialize self. See help(type(self)) for accurate signature.

LOW_TO_HIGH¶

0

HIGH_TO_LOW¶

1

ALGORITHMIC¶

2

class nearlink_sdr.phy.measurement_tx.MeasBandwidth[源代码]¶

Bases: enum.IntEnum

测量信号带宽 (6.7.2)。

Initialization

Initialize self. See help(type(self)) for accurate signature.

BW_1MHZ¶

0

BW_2MHZ¶

1

BW_4MHZ¶

2

class nearlink_sdr.phy.measurement_tx.MeasDirection[源代码]¶

Bases: enum.IntEnum

测量方向。

Initialization

Initialize self. See help(type(self)) for accurate signature.

UNIDIRECTIONAL¶

0

BIDIRECTIONAL¶

1

class nearlink_sdr.phy.measurement_tx.MeasLinkParams[源代码]¶

测量/感知链路参数 (6.7.2/6.7.3)。

event_group_start_us: float¶

0

event_group_period_us: float¶

10000

ft1_inter_event_us: float¶

500

ft2_inter_event_us: float¶

300

init_inter_event_us: float¶

400

intra_event_us: float¶

100

inter_event_us: float¶

200

inter_group_us: float¶

1000

event_count: int¶

4

ft1_period: int¶

2

has_init_phase: bool¶

False

direction: nearlink_sdr.phy.measurement_tx.MeasDirection¶

None

first_sender: int¶

0

hopping_order: nearlink_sdr.phy.measurement_tx.HoppingOrder¶

None

bandwidth: nearlink_sdr.phy.measurement_tx.MeasBandwidth¶

None

init_channel: int¶

0

first_node: nearlink_sdr.phy.measurement_tx.NodeMeasConfig¶

'field(...)'

second_node: nearlink_sdr.phy.measurement_tx.NodeMeasConfig¶

'field(...)'

antenna_switch_interval_us: float¶

10

first_sub_signal_length: int¶

0

antenna_order_type: nearlink_sdr.phy.measurement_tx.AntennaOrderType¶

None

antenna_random_k: int¶

0

security_random_seed: int¶

0

property has_multi_antenna: bool¶
class nearlink_sdr.phy.measurement_tx.NodeMeasConfig[源代码]¶

单个节点的测量参数。

sync_signal_type: int¶

0

sync_signal_length: int¶

64

meas_signal_length: int¶

128

switch_interval_us: float¶

0

ft1_duration_us: float¶

200

ft2_duration_us: float¶

100

security_type: nearlink_sdr.phy.measurement_tx.SecurityType¶

None

antenna_count: int¶

1

class nearlink_sdr.phy.measurement_tx.SecurityType[源代码]¶

Bases: enum.IntEnum

安全类型。

Initialization

Initialize self. See help(type(self)) for accurate signature.

NONE¶

0

SECURE¶

1

class nearlink_sdr.phy.measurement_tx.TimeRefType[源代码]¶

Bases: enum.IntEnum

初始时间参考类型 (6.8.5.4)。

Initialization

Initialize self. See help(type(self)) for accurate signature.

FIRST_PATH¶

0

STRONGEST_PATH¶

1

TX_TIME¶

2

class nearlink_sdr.phy.measurement_tx.UWBMeasLinkParams[源代码]¶

超宽带脉冲测量链路参数 (6.8.3/6.8.4)。

mode: nearlink_sdr.phy.measurement_tx.UWBMeasMode¶

None

event_group_period_us: float¶

10000

event_count: int¶

4

intra_event_us: float¶

100

inter_event_us: float¶

500

inter_group_us: float¶

2000

first_sender: int¶

0

alternate_sender: bool¶

False

channels: list[int]¶

'field(...)'

splice_mode: nearlink_sdr.phy.measurement_tx.ChannelSpliceMode¶

None

code_length: int¶

31

cyclic_shift: int¶

0

tx_antenna_count: int¶

1

rx_antenna_count: int¶

1

antenna_switch_start_seg: int¶

0

sub_segment_gap_us: float¶

5.0

secure_mode: bool¶

False

aggregate_events: int¶

1

property total_antenna_pairs: int¶
class nearlink_sdr.phy.measurement_tx.UWBMeasMode[源代码]¶

Bases: enum.IntEnum

超宽带脉冲测量模式 (6.8.1)。

Initialization

Initialize self. See help(type(self)) for accurate signature.

ONE_WAY¶

0

DS_TWR_2MSG¶

1

DS_TWR_3MSG¶

2

nearlink_sdr.phy.measurement_tx.angle_estimate(delta_phi: float, wavelength: float, antenna_spacing: float) → float[源代码]¶

根据相位差估计到达角/出发角 (6.8.5.3)。

参数:
  • delta_phi -- 两天线接收/发送信号的载波相位差 (rad)。

  • wavelength -- 信号波长 (m)。

  • antenna_spacing -- 天线间距 (m)。

返回:

角度估计值 (rad), 范围 [0, pi]。

nearlink_sdr.phy.measurement_tx.compute_csi_feedback(rx_power_dbm: float, channel_iq: complex) → nearlink_sdr.phy.measurement_tx.CSIFeedback[源代码]¶

从接收功率和信道 IQ 估计值生成 CSI 反馈。

参数:
  • rx_power_dbm -- 接收信号功率 (dBm)。

  • channel_iq -- 信道估计的复数 IQ 值。

返回:

CSIFeedback 实例。

nearlink_sdr.phy.measurement_tx.csi_to_rx_power(feedback: nearlink_sdr.phy.measurement_tx.CSIFeedback) → float[源代码]¶

从 CSI 反馈恢复接收信号功率。

参数:

feedback -- CSI 反馈数据。

返回:

接收信号功率 (dBm)。

nearlink_sdr.phy.measurement_tx.ds_twr_2msg(ra: float, db: float) → float[源代码]¶

双边两消息飞行时间估计 (6.8.5.1)。

参数:
  • ra -- 先发节点测量的往返时间差 Ra = Ra2 - Ra1。

  • db -- 后发节点测量的处理时间差 Db = Db2 - Db1。

返回:

单向飞行时间估计 T_prop (与 ra/db 相同时间单位)。

nearlink_sdr.phy.measurement_tx.ds_twr_3msg(ra: float, rb: float, da: float, db: float) → float[源代码]¶

双边三消息飞行时间估计 (6.8.5.2)。

参数:
  • ra -- 先发节点 Ra = Ra2 - Ra1。

  • rb -- 后发节点 Rb = Rb2 - Rb1。

  • da -- 先发节点 Da = Da2 - Da1。

  • db -- 后发节点 Db = Db2 - Db1。

返回:

单向飞行时间估计 T_prop。

nearlink_sdr.phy.measurement_tx.event_schedule(params: nearlink_sdr.phy.measurement_tx.MeasLinkParams) → list[tuple[int, nearlink_sdr.phy.measurement_tx.EventFrameType]][源代码]¶

生成一个事件组内的事件调度序列。

参数:

params -- 测量链路参数。

返回:

列表, 每个元素为 (事件索引, 帧类型)。

nearlink_sdr.phy.measurement_tx.event_start_times(params: nearlink_sdr.phy.measurement_tx.MeasLinkParams, group_index: int = 0) → list[float][源代码]¶

计算一个事件组内各事件的起始时刻 (us)。

参数:
  • params -- 测量链路参数。

  • group_index -- 事件组序号。

返回:

各事件的起始时刻列表 (us)。

nearlink_sdr.phy.measurement_tx.extract_cir(rx_signal: numpy.typing.NDArray[numpy.complex128], config: nearlink_sdr.phy.measurement_tx.CIRConfig, ref_sample: int = 0) → numpy.typing.NDArray[numpy.complex128][源代码]¶

从接收信号中提取信道冲击响应测量量 (6.8.5.4)。

参数:
  • rx_signal -- 接收到的时域 IQ 信号。

  • config -- CIR 测量配置。

  • ref_sample -- 参考时间点对应的采样索引。

返回:

截取的 CIR (I+jQ 复数数组)。

nearlink_sdr.phy.measurement_tx.range_doppler(cir_frames: numpy.typing.NDArray[numpy.complex128]) → numpy.typing.NDArray[numpy.complex128][源代码]¶

距离多普勒测量量计算 (6.8.5.5)。

对多帧 CIR 数据在慢时间维度做 FFT 获取距离-多普勒图。

参数:

cir_frames -- 形状 (n_frames, n_delay_bins) 的多帧 CIR 数据。

返回:

形状 (n_frames, n_delay_bins) 的距离-多普勒矩阵。

nearlink_sdr.phy.measurement_tx.uwb_event_count_per_mode(mode: nearlink_sdr.phy.measurement_tx.UWBMeasMode) → int[源代码]¶

每个测量事件中包含的 UWB 帧数。

nearlink_sdr.phy.measurement_tx.uwb_event_sender(params: nearlink_sdr.phy.measurement_tx.UWBMeasLinkParams, event_index: int) → int[源代码]¶

确定指定事件中谁先发。

参数:
  • params -- UWB 测量参数。

  • event_index -- 事件索引。

返回:

0=配置方先发, 1=对端先发。

Next
nearlink_sdr.phy.mock_backend
Previous
nearlink_sdr.phy.measurement_frame
Copyright ©
Made with Sphinx and @pradyunsg's Furo
On this page
  • nearlink_sdr.phy.measurement_tx
    • Module Contents
      • Classes
      • Functions
      • Data
      • API
        • UWB_CONFIG_TIME_GRANULARITY_TC
        • AntennaOrderType
          • AntennaOrderType.SEQUENTIAL
          • AntennaOrderType.RANDOM
        • CIRConfig
          • CIRConfig.time_ref
          • CIRConfig.delay_offset_ns
          • CIRConfig.delay_length_ns
          • CIRConfig.sample_rate_hz
        • CSIFeedback
          • CSIFeedback.ref_power_dbm
          • CSIFeedback.relative_iq
        • ChannelSpliceMode
          • ChannelSpliceMode.NONE
          • ChannelSpliceMode.OVERLAP
          • ChannelSpliceMode.CONTINUOUS
          • ChannelSpliceMode.NON_CONTINUOUS
        • EventFrameType
          • EventFrameType.INIT
          • EventFrameType.TYPE_1
          • EventFrameType.TYPE_2
        • HoppingOrder
          • HoppingOrder.LOW_TO_HIGH
          • HoppingOrder.HIGH_TO_LOW
          • HoppingOrder.ALGORITHMIC
        • MeasBandwidth
          • MeasBandwidth.BW_1MHZ
          • MeasBandwidth.BW_2MHZ
          • MeasBandwidth.BW_4MHZ
        • MeasDirection
          • MeasDirection.UNIDIRECTIONAL
          • MeasDirection.BIDIRECTIONAL
        • MeasLinkParams
          • MeasLinkParams.event_group_start_us
          • MeasLinkParams.event_group_period_us
          • MeasLinkParams.ft1_inter_event_us
          • MeasLinkParams.ft2_inter_event_us
          • MeasLinkParams.init_inter_event_us
          • MeasLinkParams.intra_event_us
          • MeasLinkParams.inter_event_us
          • MeasLinkParams.inter_group_us
          • MeasLinkParams.event_count
          • MeasLinkParams.ft1_period
          • MeasLinkParams.has_init_phase
          • MeasLinkParams.direction
          • MeasLinkParams.first_sender
          • MeasLinkParams.hopping_order
          • MeasLinkParams.bandwidth
          • MeasLinkParams.init_channel
          • MeasLinkParams.first_node
          • MeasLinkParams.second_node
          • MeasLinkParams.antenna_switch_interval_us
          • MeasLinkParams.first_sub_signal_length
          • MeasLinkParams.antenna_order_type
          • MeasLinkParams.antenna_random_k
          • MeasLinkParams.security_random_seed
          • MeasLinkParams.has_multi_antenna
        • NodeMeasConfig
          • NodeMeasConfig.sync_signal_type
          • NodeMeasConfig.sync_signal_length
          • NodeMeasConfig.meas_signal_length
          • NodeMeasConfig.switch_interval_us
          • NodeMeasConfig.ft1_duration_us
          • NodeMeasConfig.ft2_duration_us
          • NodeMeasConfig.security_type
          • NodeMeasConfig.antenna_count
        • SecurityType
          • SecurityType.NONE
          • SecurityType.SECURE
        • TimeRefType
          • TimeRefType.FIRST_PATH
          • TimeRefType.STRONGEST_PATH
          • TimeRefType.TX_TIME
        • UWBMeasLinkParams
          • UWBMeasLinkParams.mode
          • UWBMeasLinkParams.event_group_period_us
          • UWBMeasLinkParams.event_count
          • UWBMeasLinkParams.intra_event_us
          • UWBMeasLinkParams.inter_event_us
          • UWBMeasLinkParams.inter_group_us
          • UWBMeasLinkParams.first_sender
          • UWBMeasLinkParams.alternate_sender
          • UWBMeasLinkParams.channels
          • UWBMeasLinkParams.splice_mode
          • UWBMeasLinkParams.code_length
          • UWBMeasLinkParams.cyclic_shift
          • UWBMeasLinkParams.tx_antenna_count
          • UWBMeasLinkParams.rx_antenna_count
          • UWBMeasLinkParams.antenna_switch_start_seg
          • UWBMeasLinkParams.sub_segment_gap_us
          • UWBMeasLinkParams.secure_mode
          • UWBMeasLinkParams.aggregate_events
          • UWBMeasLinkParams.total_antenna_pairs
        • UWBMeasMode
          • UWBMeasMode.ONE_WAY
          • UWBMeasMode.DS_TWR_2MSG
          • UWBMeasMode.DS_TWR_3MSG
        • angle_estimate()
        • compute_csi_feedback()
        • csi_to_rx_power()
        • ds_twr_2msg()
        • ds_twr_3msg()
        • event_schedule()
        • event_start_times()
        • extract_cir()
        • range_doppler()
        • uwb_event_count_per_mode()
        • uwb_event_sender()