资讯动态

通感一体化融合架构:从OFDM波形到资源调度的工程实践

发布时间:2026/10/22 21:02:41 来源:尧图企业网站定制
简介这份文档资料聚焦5G-A与6G阶段的通感一体化融合架构及关键技术面向通信领域研究人员、标准化工作者及高校相关专业师生帮助读者系统理解通感融合的网络架构设计思路与技术演进路径。资源为1个docx文档压缩包约141KB内容围绕5G-A广域与局域场景下的通感融合架构、6G高低频协作及算力网络两种架构建议展开并深入分析新型一体化波形、全双工等关键技术。文档结合3GPP、IMT2020等标准化进展梳理了通感融合的研究需求与架构特征可为后续网络部署提供技术参考。目前已有834人学习下载适合需要快速把握通感融合整体框架、开展相关课题研究或技术预研的读者参考使用。1. 通感一体化融合架构为什么现在做的人都在聊“一张网既通信又感知”如果你最近在关注 6G 预研、车路协同或者低空经济大概率会反复撞见“通感一体化”这个词。它说的是同一套硬件、同一段频谱、同一帧信号既把数据传出去又把周围环境“看”回来——通信和感知不再是两套独立系统而是共用波形、共用基带、共用天线阵列。这件事的价值很直接基站密度已经很高再单独铺一张感知网成本和频谱都吃不消而通感一体化让现有站点顺手多干一份活。它适合谁做无线算法、雷达信号处理、边缘计算网关的工程师以及需要低成本区域感知能力的集成方。但“融合架构”四个字容易把人带偏以为只是把两个模块塞进一个机箱。真正的难点在波形设计、资源调度和干扰抑制三件事上下面按落地顺序拆开讲。2. 融合架构到底融在哪从波形到调度的三层拆解2.1 通感一体化的三个融合层级很多人第一次接触通感一体化会默认它是“通信模块 雷达模块”的物理拼装。实际做下来融合分三层层级越深收益越大但改动也越大。第一层是硬件与射频前端融合。通信和感知共用天线阵列、功放和收发链路靠时分或频分切换工作模式。这一层最容易落地改造成本低但感知和通信互相抢时间片效率上不去。第二层是波形与基带融合。用同一套 OFDM 波形同时承载数据和感知回波处理通信信息调制在子载波上感知靠回波时延和多普勒解算。这一层是当前主流研究方向也是“融合架构”真正区别于“共站部署”的地方。第三层是资源调度与协议融合。在 MAC 层统一分配时频资源根据业务需求动态倾斜——车流量大的路口多给感知资源数据回传高峰多给通信资源。这一层决定系统能不能在真实场景里跑稳。我一般建议从第二层切入因为第一层收益有限第三层依赖第二层的波形基础。下面给一个最小可跑的 OFDM 通感一体基带仿真骨架用 Python 写方便你直接改参数验证。import numpy as np # 系统参数子载波间隔 30kHz带宽 20MHzFFT 1024 点 N_fft 1024 N_cp 72 # 循环前缀长度约 2.4us scs 30e3 # 子载波间隔 fs N_fft * scs # 采样率 30.72MHz T_sym N_fft / fs # 有效符号时长 # 通信数据占用的子载波中间段感知占用边缘子载波 comm_subcarriers np.arange(200, 824) sens_subcarriers np.concatenate([np.arange(100, 200), np.arange(824, 924)]) def generate_isdac_symbol(comm_bits, sens_waveform): 生成一个通感一体 OFDM 符号 freq_grid np.zeros(N_fft, dtypecomplex) # 通信QPSK 映射到中间子载波 qpsk (2 * comm_bits[0::2] - 1) 1j * (2 * comm_bits[1::2] - 1) freq_grid[comm_subcarriers] qpsk[:len(comm_subcarriers)] / np.sqrt(2) # 感知边缘子载波放已知参考序列用于回波相关 freq_grid[sens_subcarriers] sens_waveform[:len(sens_subcarriers)] # IFFT 加 CP time_sym np.fft.ifft(freq_grid) * N_fft return np.concatenate([time_sym[-N_cp:], time_sym]) # 生成一帧14 个符号 frame [] for _ in range(14): bits np.random.randint(0, 2, 2 * len(comm_subcarriers)) ref np.exp(1j * 2 * np.pi * np.random.rand(len(sens_subcarriers))) frame.append(generate_isdac_symbol(bits, ref)) frame np.concatenate(frame) print(f一帧样本数: {len(frame)}, 时长: {len(frame)/fs*1e3:.3f} ms)这段代码的关键设计点通信和感知占用不重叠的子载波避免相互干扰。感知用已知参考序列接收端做匹配滤波就能提取时延。参数上N_cp决定最大无模糊感知距离按c * N_cp / (2 * fs)算这里约 350 米城市微站够用scs越大对多普勒越不敏感但覆盖半径缩小30kHz 是通感折中的常见选择。2.2 感知回波处理链路怎么接波形发出去只是第一步回波处理才是感知能力的来源。接收端要做的事去掉 CP、FFT 回到频域、在感知子载波上做参考序列的共轭相乘、再 IFFT 得到距离-多普勒二维图。def range_doppler_map(rx_frame, ref_seq, n_sym14): 从接收帧生成距离-多普勒图 sym_len N_fft N_cp rd_matrix np.zeros((N_fft, n_sym), dtypecomplex) for i in range(n_sym): seg rx_frame[i*sym_len N_cp : i*sym_len sym_len] freq np.fft.fft(seg) / N_fft # 只在感知子载波上做相关 corr freq[sens_subcarriers] * np.conj(ref_seq[:len(sens_subcarriers)]) # 补零到 N_fft 做距离维 IFFT full np.zeros(N_fft, dtypecomplex) full[sens_subcarriers] corr rd_matrix[:, i] np.fft.ifft(full) # 多普勒维 FFT rd_map np.fft.fftshift(np.fft.fft(rd_matrix, axis1), axes1) return np.abs(rd_map) # 模拟一个目标距离 bin 120速度对应多普勒 bin 3 rx frame.copy() delay 120 doppler_shift 3 rx np.roll(rx, delay) * np.exp(1j*2*np.pi*doppler_shift*np.arange(len(rx))/N_fft) rd range_doppler_map(rx, np.exp(1j*2*np.pi*np.random.rand(len(sens_subcarriers)))) peak np.unravel_index(np.argmax(rd), rd.shape) print(f检测到峰值: 距离bin{peak[0]}, 多普勒bin{peak[1]})逻辑说明range_doppler_map先逐符号做频域相关再在符号间做 FFT 提取多普勒。距离分辨率由带宽决定20MHz 对应约 7.5 米速度分辨率由帧时长决定一帧 0.5ms 对应约 ±30m/s 无模糊范围。参数上感知子载波数量越多相关增益越高但留给通信的资源越少一般感知占 10%~20% 子载波是常见配比。2.3 资源分配通信和感知怎么分才不打架固定分配简单但浪费。真实系统里通信业务是突发的感知需求也随场景变化。常见做法是设一个资源仲裁器按优先级和队列深度动态调整。分配策略通信吞吐损失感知检测概率适用场景固定 8:2约 12%0.92业务稳定、感知要求固定时分轮询约 8%0.88通信突发性强动态加权约 5%0.90车路协同、低空监测动态加权的核心是给感知资源设一个下限保证最小检测概率剩余资源按通信队列长度分配。实现上可以用一个滑动窗口统计过去 100ms 的通信缓冲占用率超过阈值就把感知子载波压缩到下限。3. 从仿真到半实物把通感一体链路跑起来的四个步骤3.1 用 SDR 搭最小验证平台仿真跑通后下一步是上软件无线电平台验证。常见组合是 USRP 或类似 SDR 加一台主机收发共用天线。步骤在主机上把上面的 Python 链路改成实时流式处理采样率对齐 SDR 能力一般降到 10MHz 以内。配置 SDR 中心频率和增益通信和感知共用同一射频通道。发送端循环发帧接收端持续采集用环形缓冲区分帧。在接收端跑range_doppler_map把结果实时画出来。# 以常见 SDR 工具链为例先确认设备识别和采样率设置 # 具体命令随平台不同这里只示意参数位置 sdr_tool --args typeb200 --rate 10e6 --freq 3.5e9 --gain 40 --ant TX/RX参数说明rate决定距离分辨率10MHz 对应约 15 米freq选在合法可用的实验频段gain太大会饱和太小感知回波淹没在噪声里一般从 30dB 起步看接收频谱调。3.2 同步与定时通感一体的隐形门槛通信对定时误差的容忍度是 CP 长度的一部分感知对定时误差更敏感因为时延直接映射距离。常见做法是用通信链路的同步信号做粗同步再用感知参考序列做精同步。def fine_sync(rx, ref): 用感知参考序列做滑动相关找精确起始点 corr np.correlate(rx[:len(ref)*4], ref, modevalid) return np.argmax(np.abs(corr)) # 粗同步后在 ±CP 范围内做精同步 coarse 0 fine fine_sync(frame[coarse:coarse5000], np.tile(ref[:100], 4)) print(f精同步偏移: {fine - coarse} 样本)逻辑粗同步给出大致帧头精同步在局部窗口内找相关峰。偏移量超过 CP 长度就会产生符号间干扰感知距离也会整体偏移。实测中采样时钟不同源时偏移会随帧数累积需要定期重同步。3.3 干扰抑制通信和感知互扰怎么压即使子载波不重叠功放非线性也会产生带外泄漏感知弱回波容易被通信强信号淹没。三个常用手段功率控制通信子载波功率回退 3~6dB感知子载波满功率发。保护带通信和感知子载波之间留 5~10 个空子载波。接收端滤波在感知相关前先对感知子载波做窄带滤波抑制通信泄漏。我一般先加保护带代价最小不够再上功率回退最后才动接收端滤波因为滤波会引入额外时延。4. 通感一体化落地避坑五个真实翻车点4.1 感知距离算出来总是偏大现象仿真里目标在 100 米实测解出来 130 米。原因射频链路和滤波器引入固定群时延没做校准。解决在已知距离放一个强反射体测出固定偏移从所有距离结果里减掉。这个校准值随温度和增益变化建议每次开机做一次。4.2 多普勒维出现假峰现象静止目标在多普勒图上出现对称的两个峰。原因I/Q 不平衡导致镜像干扰。解决在接收端做 I/Q 幅相校正或者用实数采样加希尔伯特变换。校正系数可以用一个单音信号提前标定。4.3 通信误码率在感知开启后飙升现象单独跑通信 BER 正常一开感知就恶化。原因感知子载波功率太高功放进入非线性区产生互调。解决降低感知子载波功率或者把感知子载波放在频谱边缘让互调产物落在带外。实测中感知功率比通信低 3dB 时互调影响基本可忽略。4.4 动态调度导致感知帧率不稳现象通信忙的时候感知结果更新明显变慢。原因资源仲裁器没有给感知设硬下限。解决在调度器里给感知资源设一个最小配额比如每 10ms 至少保证 2 个感知符号。这个下限按最小检测概率反推不要拍脑袋。4.5 长时间跑出现时钟漂移现象跑十几分钟后感知距离整体缓慢偏移。原因收发时钟不同源采样率有微小偏差。解决用通信链路的导频做时钟跟踪定期调整接收端重采样相位。或者直接用同一个时钟源给收发两端。5. 把通感一体做扎实的一个进阶习惯先定感知指标再调通信参数很多团队做通感一体习惯先把通信链路调通再往上加感知。这个顺序容易导致后期为了感知指标反复改通信参数返工量大。我踩过几次坑之后习惯反过来先定感知的最小可用指标再倒推通信参数的可调范围。具体做法是列一张指标对照表把感知的距离分辨率、速度分辨率、检测概率和通信的吞吐、时延、误码率放在一起标出哪些参数是共享的、哪些是独立的。指标决定参数与通信的耦合关系距离分辨率带宽带宽越大通信速率越高正相关速度分辨率帧时长帧越长通信时延越大负相关检测概率感知子载波数占用越多通信吞吐越低负相关通信误码率发射功率功率越高感知回波越强正相关但受非线性限制这张表的作用是当感知检测概率不达标时你知道可以动哪些参数以及动了之后通信会受什么影响。比如检测概率差 5%优先加感知子载波数而不是加功率因为加功率会先触发功放非线性通信先崩。另一个习惯是每次改参数只动一个并且记录改动前后的感知和通信指标。通感一体的参数耦合比纯通信或纯感知都强一次动两个出了问题根本分不清是谁引起的。我一般用一个简单的 CSV 记录时间、改动项、旧值、新值、感知检测概率、通信吞吐、误码率。跑上几十组参数敏感度就清楚了。最后说一个验证技巧在暗室或开阔场地放两个角反射器一个静止一个移动看距离-多普勒图上两个峰是否稳定分离。如果两个峰在距离维分不开说明带宽不够在多普勒维分不开说明帧太短。这个测试比看单一指标直观得多也更容易说服团队加资源。希望帮到你。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑