SIL软件在环学习笔记

什么是SIL

SIL:Software in Loop:在PC上验证模型模型是否与代码功能一致,感觉在项目开展中,用在需要将控制器生成移植到硬件前,把控制器的模块生成代码,与对应的控制器模块做等效性测试。

使用需要安装包

官网下载地址,点我点我

操作步骤

操作十分简单,类似于生成代码,虽然代码生成只需要Ctrl+B,但需要先进行一些基础配置。

新建一个简单的模型

新建一个文件夹(为啥?后续就知道了),模型如下。

在这里插入图片描述
红色框中部分创建为子系统
在这里插入图片描述

Configuration Parameters基础配置

第一步,设固定步长
在这里插入图片描述
第二步,选代码生成系统文件(ert.tlc选嵌入式的,也就是Embedder Coder),不选嵌入式的那个会报错,不知道为啥;另外Generate code only不要勾选,因为要生成SIL。
在这里插入图片描述
第三步,选择生成SIL模型
在这里插入图片描述

生成SIL模块

右击子系统,选择build this subsystem
在这里插入图片描述
点击Build
在这里插入图片描述稍等几秒后,会自动生成一个新的模型文件,里面就是生成的SIL文件:在这里插入图片描述
把SIL模块复制到自建模型中,进行等效性测试,结果如下图(当然效果是一样的啦,因为模型简单):
在这里插入图片描述

遇到的问题

在上述操作结束后,自动代码生成过程中会出现一个slprj文件,我在使用过程中有时候第一次可以生成SIL,后面生成会出现这个错误“引用了不存在的字段 ‘Version’”,在matlab官方网站论坛找到的解决答案,把slprj文件删除了就行了,答案地址在这里。
但是在删除slprj文件会遇到只能管理员才能删除的问题,在这个博主这里找到的解决办法点这里

感觉生成SIL或者是把模块转为S-function也可以作为黑箱交付模型时候使用。

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值