如何选择求解器,仿真启动和停止时间,实现simulink模型的自动代码生成??金宝app

3次查看(最近30天)
Dileepa B年代
Dileepa B年代 2020年3月6日
评论道: Dileepa B年代2020年3月10日
你好
我正在做一个SIMULI金宝appNK模型来估计电池组的电荷状态。我需要生成自动代码与我的真实系统集成。
我对如何选择求解器和如何设置开始和停止模拟时间感到困惑??
当我运行模型时,我设置停止时间为1000秒。在Powergui中,我选择了采样时间为50e-6的离散求解器。这个求解器的时间会影响实际系统的性能吗?请建议我如何选择求解器和采样时间来生成自动代码??

接受的答案

乔尔·Sickel
乔尔·Sickel 2020年3月6日
你好Dileepa,
如果您正在为控制器生成代码,则应该使用模型引用。这将允许您有一个模拟工厂模型(电池包的电源gui模型)以较小的时间步长运行,在本例中为50e-6,同时允许您为控制器生成代码,以较慢的时间步长运行。我建议从这里开始学习simulink基础知识:金宝app
下面是模型参考的开始链接:
如果你的目标是控制器的实时系统,你将需要Simulink Coder。金宝app如果你的目标是一个嵌入式控制器,你将需要embedded Coder。如果您使用的是FPGA,那么您将使用HLD编码器。
控制器的采样时间应该与您希望运行控制算法的速率相同。对于一个典型的电池SOC,这应该比50e-6慢,而你应该离开你的工厂模型在50e-6。您可以使用速率转换块来控制模型的哪些部分在不同的时间步骤中运行。
问候,
乔尔

答案(1)

是一家
是一家 2020年3月6日
嗨Dileepa,
这个例子向您展示Joel Van Sickel谈到的概念。使用模型引用、速率转换块等。
除了电池,你们还模拟了哪些其他电气元件?
还有,你的最终目标是什么?我们有一些例子可以帮助你开始。
对于电池算法,50e-6的采样时间非常小。您可能不想每50微秒计算一次SOC。您可以使用多速率建模以较慢的速率运行SOC估计算法。
是一家

社区

更多答案请参阅电力电子控制

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!