You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Simulink OFDM中随机整数生成器替换为固定自定义输入数据

解决Simulink中替换Random Integer Generator为自定义固定序列的问题

嘿,我来帮你搞定这个Simulink OFDM模型的替换问题!你遇到的核心问题应该是Repeating Sequence Stair没有匹配原Random Integer Generator的帧结构、采样时间或者数据输出模式,导致输出格式不对。这里给你几个靠谱的替代方案,完美适配你的需求:

方案1:Constant + Reshape 组合(最直接无代码)

这是最简单的纯Simulink配置方案:

  • 拖入一个Constant模块,在参数设置里把「Value」改成你的自定义序列:[84 104 105 115 32 105 115 32 97 32 116 101 115 116 46]
  • 再拖入一个Reshape模块连接在Constant后面,根据原Random Integer Generator的帧大小设置Reshape的「Output dimensions」(比如原模块每帧输出15个整数,就设为[1 15])
  • 最后把Constant和Reshape的采样时间、数据类型(比如uint8)都设置成和原模块完全一致,这样就能循环输出固定序列,帧格式和原模块完全对齐。

方案2:From Workspace 模块(灵活可控)

如果需要后续更方便修改序列,这个模块更适合:

  1. 先在MATLAB工作区定义序列和时间向量(假设原模块采样时间为Ts):
    custom_seq = [84 104 105 115 32 105 115 32 97 32 116 101 115 116 46];
    time_stamps = (0:length(custom_seq)-1)*Ts;
    seq_timeseries = timeseries(custom_seq, time_stamps);
    
  2. 在Simulink中拖入From Workspace模块,把「Data」参数设为seq_timeseries
  3. 勾选「Repeat data after final time」,并设置输出的帧格式、数据类型与原模块一致,仿真时就会循环输出你的固定序列。

方案3:Signal Editor 模块(可视化操作友好)

如果你偏好可视化配置,这个模块上手更简单:

  • 拖入Signal Editor模块,双击打开编辑器
  • 点击「Import」导入你的自定义序列,设置采样时间和帧大小,完全匹配原Random Integer Generator的参数
  • 在模块参数里勾选「Repeat signal」,就能循环输出序列,帧结构和原模块完全兼容。

关键注意事项

不管用哪个方案,一定要确保这三个参数和原模块完全一致:

  • 采样时间:决定输出数据的时间间隔
  • 帧大小/输出维度:保证每帧输出的整数数量和原模块相同
  • 数据类型:比如原模块输出是uint8,新模块也要设置成同样的类型,避免后续模块出现类型不匹配错误

内容的提问来源于stack exchange,提问作者timcheen14

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:03:15