Simulink Data Store Memory模块用法

本文介绍了Simulink中Data Store Memory模块的使用场景,包括何时需要使用,与Inport/Outport的区别,用作bus信号的情况,以及使用时的弊端。文章通过实例说明了如何在特定需求下替代Inport/Outport,并探讨了如何在模型测试中处理DataStoreRead/Write模块。
摘要由CSDN通过智能技术生成

两年前写的一篇文章,先拿来撑下门面。后面可能会出一个基于模型开发相关的系列,欢迎大家关注。

MBD过程中,有时候需要用到Data Store Read/Write模块。

1,什么时候必须用该模块

在simulink建模过程中,不提倡使用Data Store Read/Write 模块,因为它会降低模型可读性,且给后续的模型测试带来问题。但是,有时候为了实现某些策略,又不得不使用该模块,比如:需要在一个模块中实现对同一个全局变量的读取和赋值。举个项目实例:

空调控制器有一条需求,空调关闭前,需要记录当前鼓风机的挡位(比如有0挡,1挡,2挡,3挡),以备下次打开空调时,鼓风机能直接工作在上次关闭前的挡位上。

如果空调鼓风机挡位用一个全局变量BlowerLevel表示,那么为了在simulink中实现上面的的需求,则需要用到DataStoreRead/Write.

再比如,一个芯片供应商提供的一段demo代码:

Fig 1 芯片供应商代码

变量Motor_fault_status是模块A的输出(该变量在A模块中定义),同时该变量是模块B的输入,且上述代码是在模块B中实现的。也就是对于模块B来说,需要读取变量Motor_fault_status,还需要对该变量赋值。这时候使用inport/outport进行建模难以实现,需要用到DataStoreRead/Write协助实现。如下图:

Fig2 Simulink Model for demo code

<
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值