常见问题与解决方法 第 4 章
编译、连接、运行中常见报错的原因分析与解决方法,涵盖 RCP / HIL / PWM 中断等模式。
模型无法点击Build按钮

原因:
Simulink 自带的模板无法直接编译,需要配置若干参数后才能使用。建议直接使用 My Templates 中的 “RTScale CPU model template” 模板新建模型。
解决方法:
在 MATLAB 主界面点击 Simulink 按钮,在 My Templates 中选择 “RTScale CPU model template” 模板创建模型即可。

无法连接到设备

可按以下步骤逐项排查:
确认电脑与 RTScale 之间已用网线连接,且网线必须接在 RTScale 的 HOST 网口上;
查看 RTScale 的 HOST 网口指示灯是否点亮;若不亮,请检查电脑网口是否正常,或更换电脑重试;
确认电脑 IP 与 RTScale IP 处于同一网段;设置完成后,点击 INSREALM 插件栏中的 Check Connection 进行通讯测试;
检查模型的 IP 设置:打开 INSREALM 插件栏的 Model Settings,确认 Interface 页 MEX-file arguments 中的 IP,以及 InsRealm 页中的 IP Address,是否与 RTScale 处于同一网段。


模型IP设置
模型编译报错
报错内容为:Model cannot be built inside InsRealm path. Please change path.

原因:
当 MATLAB 的当前工作目录位于 INSREALM 插件的安装路径下时,模型会编译失败。
解决方法:
将工作目录切换到其他位置;建议直接在磁盘根目录下新建模型,然后重新编译。

报错内容为:There must be a System block in the model when firmware blocks are used.

原因:
模型中缺少 System 模块时无法编译。
解决方法:
在模型中添加 System 模块即可。
运行模型后PWM无输出
原因:
- 未使能 System 模块;
- 实际测量的 PWM 通道与模块中配置的通道不一致;
- System 模块的 GPIO Direction Setting 被配置为 Input(输入)。
解决方法:
- 将 System 模块的 en 输入置为 1(使能);

- 确认实际测量的 PWM 通道与配置一致;
- 确认相关 GPIO 的方向配置正确。
安装时显示找不到MATLAB

原因:
重装系统前未卸载 MATLAB,导致其注册信息失效。
解决方法:
重新安装 MATLAB,并重启电脑。
SCOPE波形断连
原因:
- 使用了百兆网线,上传带宽不足;
- USB 转网口速率不足,或被插在了电脑的 USB 2.0 接口上;
- 经过的网络交换机为百兆;
- 实时模型中放置了过多示波器。
解决方法:
- 将网线、交换机等设备全部更换为千兆规格;若使用 USB 转网口,请插在 USB 3.0 接口上;
- 在实时模型中注释掉不常用或无用的示波器;若仍然断波,可在 System 模块中将上传频率由默认的 10 K 降为 5 K。

RCP模式常见问题
模型步长设置不正确
1. 报错内容为:Step time of this model is too small or it is not correct, please check. \nIf you are using variable as step time, please make sure this variable is defined.

2. 报错内容为:Step time of this model cannot be assigned as auto, please check..

原因:
当模型步长被设为 auto 时会报错。在 RCP 模式下运行模型须同时满足两个条件:一是采用固定步长(Fixed-step)模式,二是步长不小于 1 微秒。
解决方法:
在 Model Settings 中将 Fixed-step size (fundamental sample time) 设置为合适的值。
实际输出的DAC频率与设定值不一致
原因:
若运行中 DAC 实际输出频率与设定值存在偏差,应首先确认界面右下角的时间显示是否处于实时运行状态,并检查 System 模块的输出值是否为负。输出为负通常意味着系统未满足实时性要求,可能存在计算超时。
解决方法:
适当增大模型步长。
HIL模式常见问题
路径不一致导致的报错
报错内容如下图所示:


原因:
HIL 模块的相关参数保存在 discretestatespace.mat 文件中,该文件默认位于:
hdlsrc\Model_Name\discretestatespace.mat
系统运行时,将自动执行如下命令进行参数加载:
load('hdlsrc\ Model_Name \discretestatespace.mat');
因此必须确保当前 MATLAB 工作目录正确,且与上述路径一致。若工作目录有误,系统可能无法读取该文件,导致参数加载失败,进而影响 HIL 模块的正常运行。
此外还需保证 RCP 模型与 HIL 模型的工程路径一致;若两者不一致,执行 Link Solver 时可能报错、导致链接失败。
解决方法:
确保工作目录与模型工程路径一致,并保证 RCP 模型与 HIL 模型位于一致的工程路径下。
软件更新导致的报错
更新软件之后重新执行Link Solver报错内容如下图所示:

原因:
软件更新后,库中相应模块也会随之更新,因此在旧模块上执行 Link Solver 可能报错。请删除旧版本的 FPGA Solver 模块,并插入新版本模块,以避免该问题。
解决方法:
删除旧的 FPGA Solver 模块,并重新插入新版本模块。
运行模型之后波形和离线的对不上
原因:
- 确认 PWM 引脚分配与模块参数设置是否一致;
- 检查 System 模块的 I/O 方向配置是否正确;
- 确认 DAC 增益(DAC Gain)参数设置是否合理。
以上任一配置异常,都可能导致实时输出与离线仿真结果不符。
PWM interrupt模式下的常见问题
报错内容为:The adc trigger is selected as PWM1, but there is no that block in this model. Please check the adc trigger in system block.

报错内容为:In PWM interrupt mode, the trigger of adc should be selected as PWM.

报错内容为:In the current configuration of adc trigger, the period of PWM1 must be the same with model step time.

原因:
当 Tick Trigger 选择为 PWM Interrupt 模式时,ADC 的采样由 PWM 模块触发并与之同步,因此模型中必须包含 PWM 模块;同时需将模型步长设置为与 PWM 开关周期相等的值,以保证系统时序与开关频率一致。
模型运行中无法实时修改Constant等模块的参数

原因:
Model Settings 中的 Default parameter behavior 被设置为了 Inlined。

解决方法:
将其改为 Tunable 即可。

错误使用库导致的编译报错
报错内容:Firmware blocks for other targets should not exist in this model for RTScale target. Please remove them.

原因:
RTPI 与 RTScale 两款产品的 Simulink 库中都包含 PWM 等同名功能模块。如果通过在模型空白处双击并直接搜索 “PWM” 的方式插入模块,可能因库路径优先级或模块来源不同,插入与当前目标平台不匹配的模块,从而引发配置错误或运行异常。
因此,建议始终从对应产品的专用库目录中选择并拖入 PWM 模块,确保模块版本与目标硬件平台一致,避免后续编译或运行问题。
解决方法:
检查模块来源,确保插入的所有模块均来自 RTScale 库。
编译(Build)按钮为灰色无法点击
安装路径选择不当导致插件安装不完整
若将 InsRealm 安装到 MATLAB 根目录等受系统权限保护的目录,安装过程中部分文件可能无法正常写入,导致插件安装不完整、Build 按钮无法点击。
解决:卸载后重新安装到独立的普通目录(路径不含中文与空格,如 D:\InsRealm),并确保安装过程顺利完成。
MATLAB 未正确授权
即便 InsRealm 依赖的工具箱均已安装齐全,若 MATLAB 本身缺少有效授权(License),仍无法完成代码生成与编译。
解决:确认所使用的 MATLAB 为正版且授权有效。


误改运行模式点亮按钮
普通 Simulink 模板未经配置无法直接编译。若通过在 Model Settings 中手动勾选外部模式来强行点亮 Build 按钮,会导致后续编译异常。
解决:请使用 My Templates 中的 RTScale 模板新建模型,详见本章「模型无法点击 Build 按钮」一节。

离线模型搭建限制(生成网表 / 比特流前)
使用了不支持的元件类型
电阻、电容等若使用了 Parallel RLC Branch,InSolver 无法支持——请改用库中支持的 Series RLC Branch;直流侧的电容需改为 RC 串联形式。

模型含连续采样时间的模块
报错 “Continuous sample time is not supported in non-classic interface”,说明模型中存在采样时间为 0(连续)的模块。
解决:将相关模块(如 Sin)的采样时间由 0 改为 -1(由 Simulink 自动推断);若确需连续模式,可改用 classic 接口。


加入了不支持的模型
在离线电路模型中直接放入了不支持的电机等模型会导致网表生成失败。电路本体请使用支持的库模块搭建。

纯数学模型的正确生成方式
纯数学模型不应使用 InSolver Config;否则会报 “网表缺少编号为 0 的全局参考地节点”。
解决:数学模型请使用 INSREALM 插件栏中的 Generate HDL 按钮生成。
接地要求(含隔离拓扑)
模型必须包含参考地节点。对于隔离拓扑(如 DAB),生成网表时两侧都需要接地——两侧接地仅用于网表解析,实际计算时仍保持隔离。

注释或无关部分导致解析异常
模型中被注释掉的部分,在网表解析时仍可能被识别,从而导致解析出错。请移除模型中无关或注释的元件后再生成网表。

元件参数使用了变量
报 “网表中存在若干行最后一列非数字值,请检查” 或无法识别,通常是元件参数使用了变量。生成网表时,元件参数必须填写具体数值,不能使用变量。
综合与比特流编译报错
MATLAB 安装路径含空格
报 “aarch64-xilinx-elf-gcc.exe error: No such file or directory” 等错误,通常是 MATLAB 安装路径中含有空格所致。请将 MATLAB 安装到不含空格的路径。

综合资源占用超限
综合时若资源占用超过 100%,会导致比特流编译失败,运行时进而提示找不到 InSolver.bit。请精简模型规模,或升级到最新版本后重试。

提示 PWM 序号越界或未注册自定义插件
形如 “PWMxx is out of range”,或 “未注册自定义插件定义,请检查 firmware/fpga/rtl/custom_plugin 目录中是否存在 IP JSON 文件” 等提示,多为旧版本打包遗漏所致,升级到最新版本即可解决。


实时波形与离线仿真不一致
信号数据类型不匹配
例如 PWM 模块输入为 double,而调制信号输出为 single,类型不一致会导致波形完全错误。请统一相关信号的数据类型。


定标设置不当
为将某信号通过 DAC 输出而在生成 bit 时修改了定标,可能导致模型数值异常甚至发散。修改定标需谨慎,务必确保离线模型定标正确;若仅需输出模拟量,直接在 CPU 模型中添加 DAC 模块即可,无需改动定标。
CPU 算力不足
模型算法过于复杂时,CPU 可能无法在一个步长内完成计算,导致运行异常。可适当增大模型步长,或对模型不同部分采用不同步长解算。

电机、旋变与外部接线
旋变输出的电角度无变化
转动电机时旋变输出的电角度不变,通常是旋变接口接错(例如实际接入 Resolver2,而模型配置为 Resolver1)。请核对实际接线与模型配置一致。


开环给定 ud/uq 时电机不转
常见原因有:
- 误将 RTScale 的 12V / 5V / 3.3V 供电当作功率电源使用——这些仅为信号电平,本身没有带载能力;
- 杜邦线转接板与 RTScale 之间连接不牢固,导致输出信号缺失;
- 电机 U、V 相接反。
连接、固件与设备状态
编译时提示“上传比特流失败”
可能是设备处于异常状态。重启 RTScale 后重试即可。

升级后 ping 不通 / 设备无响应
跨较大版本升级固件存在风险,误操作可能导致设备自锁。
建议:升级固件前请先联系技术支持确认版本匹配,避免因固件与硬件不匹配导致设备自锁。
点击 Inscope 无反应
通常是模型工程路径中包含中文所致。请将工程移动到纯英文、无空格的路径下。
数据记录与 Inscope 使用
勾选记录后无法进行 FFT 分析
对带时间的结构体变量做 FFT 分析时无数据,多因未正确保存 .mat 数据文件。请参阅《Simulink Scope 导出数据设置》教程正确导出数据后再进行分析。
监控电流与模型电流大小不一致
请检查 DAC 输出增益(DAC Gain)设置是否正确,并与控制器侧的换算系数核对。
数字通道能否重复使用
可以。
录制表头缺失、波形缩小后起点时间变化
属于已知的显示类问题,将在后续版本修复;如遇到请联系技术支持。
