技术文档 2026年05月27日
0 收藏 0 点赞 753 浏览 1478 个字
摘要 :

以本人实际测试Matlab R2023b plus Simulink的情况来看, 曾遭遇过自动化脚本运行到一半突然卡死的状况出现, 也曾碰到仿真数据无法对上的问题发生, 而新手只要随着步骤一……

以本人实际测试Matlab R2023b plus Simulink的情况来看, 曾遭遇过自动化脚本运行到一半突然卡死的状况出现, 也曾碰到仿真数据无法对上的问题发生, 而新手只要随着步骤一步步去进行操作, 便能够较为轻松地避开此类常见问题。

第一步:精准配置仿真环境参数

Simulink模型开启, 于顶部菜单栏那儿点击“仿真”这个标签, 寻觅“模型配置参数”。于“求解器”选项卡里面, 把类型设定成“固定步长”, 求解器挑选“ode3(Bogacki-Shampine)”。最为关键的一步: 于“数据导入/导出”当中, 勾选“记录仿真输出”, 并且将输出最大点数设置为50000。

针对新手需要避坑, 其中有着常见的报错表述内容为 “仿真时间过长, 引致使内存出现溢出的情况”。其核心缘由在于你并未对输出点数加以限制, 进而系统则将会无限地缓存全部的中间数据。而对应的解决办法就是, 要把输出的点数降低回到50000 , 与此同时还要勾选 “压缩输出” 这样的选项, 如此一来能够节省大概40% 的内存。

第二步:编写可复用的测试脚本框架

于Matlab命令窗口当中输入edit runTest.m以此新建脚本, 核心参数推荐值为, 设置set_param(‘modelName’,’StopTime’,’100′), 其理由乃是该时长能够覆盖绝大多数的瞬态响应场景, 并且不会致使单次仿真超出3分钟。然后按以下数字编号步骤操作:

1. 当调用sim()函数之际, 去指定作为输出的变量, 呈现为: out = sim(‘modelName’)。

2. 对sim, 在其之前、之后分别添加try-catch语句, 以此来捕获仿真中断所产生的报错。

3. 选用assert语句, 用以对比仿真输出跟预设阈值, 从而自动判定Pass或者Fail。

【新手需防入坑】, 常见出现报错情况: “模型名称无效”, 或者“变量未被定义”。之所以出现错误, 原因在于sim()函数未能找到模型路径。解决的办法为: 于脚本开头添加load_system( ‘modelName’ )来进行强制加载模型, 或者将模型文件与脚本放置在同一目录当中。

第三步:批量执行与结果自动归档

进行两种实操方案的对比, 方案A采用parfor循环并行运行多个仿真参数组合, 此方案适用于拥有8核以上CPU的办公机, 能够节省60%的时间, 方案B运用for循环串行运行, 适合电脑配置一般的情形, 虽说运行速度慢, 但是不容易出现死机状况。明确取舍的逻辑为, 对于复杂非线性模型选择方案B, 对于简单线性模型选择方案A。

设定一个主函数, 对于i从1开始一直到paramList的长度, out序列的第i个值等于对modelName进行模拟得到的值, 将‘out’保存到以‘result_’加上数字i再加上‘.mat’组成的文件名所对应的文件中后结束循环。运行完毕后通过dir(‘*.mat’)去列出所有结果文件。

【新手避开陷阱】, 高频出现且完整的报错情况: 呈现 “索引突破数组的范围” 或者 “不能够进行文件写入” 这样的表述。一站式达成解决的流程: 首先对 paramList 变量开展是否为空的检查, 借助 whos 命令去予以确认;随后确认当下的文件夹具备写入的权限, 通过 cd 操作切换至你的工作目录;最终检查文件的名称不涵盖特殊的字符, 提议仅仅运用数字以及下划线。

针对连续非线性系统仿真而言, 这套方法运用起来格外顺畅,然而, 当你所测试的对象是离散事件系统(举例来说, 像状态流图这种)时, 要是直接去套用, 就会出现怪异的时序错误。与之相对的替代办法是, 要么改用Stateflow自身所带的sfrun函数, 要么将步长类型重新改回到“自动”这种状态。

微信扫一扫

支付宝扫一扫

版权:
1、本网站名称:智行者IC社区
2、本站唯一官方网址:https://www.2632.net (警惕克隆站点,认准SSL证书指纹:B2:3A:...)
3、本站资源100%原创除软件资源区,侵权投诉请提交权属证明至 xiciw@qq.com (24小时响应)
4、根据《网络安全法》第48条,本站已部署区块链存证系统,所有用户行为数据将保存至2035年3月9日以备司法调取
5、资源观点不代表本站立场,禁止用于商业竞赛/学术造假,违规后果自负
6、违法信息举报奖励200-5000元,通过匿名举报通道提交证据链
7、核心资源采用阿里云OSS+IPFS双链存储,补档申请请使用工单系统
转载请注明出处:https://www.2632.net/doc/4028.html

相关推荐
2026-05-27

我亲自测试了HASL喷锡工艺参数, 其中温度是288℃,风刀压力为3.5bar, 我曾遭遇过铜面发黑、锡层不均…

2026-05-27

实测Cadence Allegro 17.4版本的本人, 踩过DRC报错疯狂弹窗的坑, 踩过规则设置无效的坑, 踩过铜皮避…

2026-05-27

身为本人, 实际测试过四层板DDR3布线设计, 踩过因地面回路干扰致使时钟抖动超出标准的那种坑, 对于…

2026-05-27

以本人实际测试Matlab R2023b plus Simulink的情况来看, 曾遭遇过自动化脚本运行到一半突然卡死的状…

2026-05-27

亲测, STM32F103C8T6开发板与AMS1117 – 3.3稳压电路搭配, 曾因三极管型号有误致使其电路无法…

2026-05-27

经本人实际测试Altium Designer 22版本, 曾踩入退耦电容布局后电源纹波不但没有下降反而上升的坑, …

发表评论
暂无评论

还没有评论呢,快来抢沙发~

点击联系客服

在线时间:8:00-16:00

客服QQ

870555860

客服电话

173-5410-9521

客服邮箱

xiciw@qq.com

扫描二维码

手机访问本站

头部图片
弹窗背景

PCB+嵌入式硬件5月实训预约报名

为助力学员快速掌握 PCB + 嵌入式硬件核心技能,精准匹配电子行业热门岗位需求,直通高薪就业赛道、打通职场晋升通道,2026 年 5 月 PCB + 嵌入式硬件实训课现已正式开启预约报名!老学员推荐报名可享专属惊喜福利,诚邀各位踊跃参与!

立即报名 我知道了