Simscapeの熱​要素ブロックパラメー​タについて

6 views (last 30 days)
Hiroaki Deguchi
Hiroaki Deguchi on 20 May 2020
Commented: Hiroaki Deguchi on 26 May 2020
質問、失礼します。
Simscapeのブロックパラメータ(熱伝導率なのですが)を温度に応じて変更する方法はないでしょうか
物体の温度を変化させ、その温度に合わせて物体の熱伝導率が変化するモデルを作成しいと考えています。
個人的には、温度と対応する値のテーブルをmファイルにして、熱伝導率としてブロックに読み込ませる(図)、と考えています。
が、やり方がわかりません。
私が考えているやり方、または別のやり方、の実現方法を教えて下さい。

Accepted Answer

Toshinobu Shintai
Toshinobu Shintai on 20 May 2020
Edited: Toshinobu Shintai on 21 May 2020
Simscapeのモデルをカスタムする手法を用いれば可能になります。
リンク先のドキュメントだけでは分かりにくいので、試しに作った添付のモデルと、以下の手順を確認してもらえますでしょうか。モデルはR2020aで作成しています。
  1. Conductive Heat Transferのソースコードを開いてコピーし、別ファイル(今回は「+MyHeat」フォルダ)に保存する。
  2. ファイルの拡張子を「.ssc」に設定し、添付ファイル内の「VariableConductiveHeatTransfer.ssc」のように修正する。
  3. 「+MyHeat」を含むフォルダ階層へ移動し、「ssc_build MyHeat」を実行する。
  4. 「MyHeat_lib.slx」に温度可変のモデルが作成されている。
作成されたブロックのパラメータを開いていただければ分かりますが、パラメータとしてルックアップテーブルのベクトル変数を指定できますので、別のmファイルで定義して入れることができます。
  8 Comments
Toshinobu Shintai
Toshinobu Shintai on 26 May 2020
簡単にモデルを拝見しましたが、温度ブレークポイントの範囲が270から330Kですので、シミュレーション開始してから200秒あたりでテーブルの上限に達しています。
「tablelookup」関数の引数が「extrapolation=nearest」になっていますので、それ以上は増加しないようになっていますが、想定通りでしょうか。
Hiroaki Deguchi
Hiroaki Deguchi on 26 May 2020
はい、設定は1000秒のままでしたが、
200秒間で質量ブロックの温度変化に応じて熱伝導率を変化させ
温度変化にどのような影響があるか見ていました。
extrapolation=nearest で大丈夫だと考えていました。
誤り等あれば、よろしくお願いします。

Sign in to comment.

More Answers (0)

Categories

Find more on カスタム コンポーネントとカスタム ライブラリの作成 in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!