如何使用Simulink模型导入工具导入状态机中类型为Inherit:Same as Simulink的端口
技术分享
发布于 2025-08-05 10:55:21
查看 13过去328天
问题描述
在使用Simulink模型导入工具导入状态机时,报错提示数据类型为Inherit: Same as Simulink的端口无法导入,在输出窗口和生成的报告中包含如下提示:


由于上述问题导致状态机未生成对应端口,连接线也导入错误,如下图所示:

解决方案
目前版本中,Sysblock状态机暂不支持数据类型推导。目前的处理办法是在Simulink中运行对应的状态机调试功能,确认数据类型并修改Simulink模型后再进行导入。
具体步骤如下:
1,打开Simulink模型。

2,在调试页中选择叠加信息选项并打开,选择端口中的基本数据类型。

3,Simulink将进行端口数据类型推导,推导结果将显示在端口位置。切换到状态机所在子系统中查看如下图所示。这里以状态机1为例,状态机1中输入端口m的数据类型为double,其他输入端口数据类型为single,输出端口数据类型为single。

4,进入状态机1中,在菜单栏建模页中选择模型资源管理器

5,打开模型资源管理器后,将对应端口的数据类型进行编辑,修改为上述推导出的数据类型。
修改前:

修改后:

6,同理,对Simulink模型中的其他状态机的数据类型进行指定,并保存模型。
7,再次使用Simulink模型导入工具导入模型。
导入完成后模型如下图所示。

查看状态机数据,数据正常导入:

案例模型文件
所使用的案例Simulink模型版本为2021b
修改前模型见附件1(SVPWM.slx);修改后模型见附件2(SVPWM_new.slx)。
所属专栏:Sysblock基础平台
产品信息:Sysblock 嵌入式代码生成工具