How to create a conditionally executed subsystem in SimScape?

6 ビュー (過去 30 日間)
Wilfred
Wilfred 2017 年 4 月 7 日
コメント済み: Wilfred 2017 年 4 月 7 日
To get insight into the effect of door openings on the performance of a fridge, I've been trying to modify the ssc_refrigeration model that is provided with Matlab/Simulink as a demo. My idea was to have two different enabled subsystems in the Refrigerator Compartment block between which the simulation can switch, like this:
However, it turns out that an enabled subsystem is considered to be "nonvirtual", which means that it cannot be used to contain Simscape blocks, unless the whole Simscape model is contained by it (but that wouldn't help me).
Any ideas how this can be resolved? Some kind of adjustable heat transfer block that is controlled by a Simulink signal might also be an option, but the only thermal elements in Simscape that accept signals as input are the Ideal Heat Flow and Temperature sources and I have no idea how these could help.

採用された回答

Sebastian Castro
Sebastian Castro 2017 年 4 月 7 日
You can do this with by creating custom components with the Simscape language.
For a simple door open/door closed relationship, I would likely implement this component in a way similar to the regular electrical switch block, but in thermal version. What I would do is:
  • Create a local copy of the built-in conduction/convection blocks (as needed), so you can start from there and make modifications.
  • Add an input signal to your custom block.
  • Then, add the following logic to the equations section: If the door is open, use a high conductivity/convectivity value; else, if closed, use a much smaller conductivity/convectivity.
Of course, you can get as complicated as you need with the dynamics/modes of this door open/close relationship.
- Sebastian
  1 件のコメント
Wilfred
Wilfred 2017 年 4 月 7 日
Thanks! I wasn't aware of the possibility to create custom components. Sounds good. We'll look into it.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDiscrete Events and Mode Charts についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by