水温変化プロセスモデルをSimulink® で作ってみた
このブログでは、自動車業界で普及してきている「モデルベース設計」を用いて、容器に入った水の温度変化をモデル化していきます。
まず物理モデルから微分方程式を導き、それを元にMathWorks社のSimulink® を使用してモデルを作成しました。作成したモデルを用いて水温変化の様子をシミュレーションで確認しました。
今回はモデル作成からシミュレーションによる評価を行う一連の流れを紹介します。
なお、実行した環境は以下の通りです。
OS | Microsoft Windows 10 Pro |
---|---|
MathWorks社製 | MATLAB® バージョン 9.8 (R2020a) |
Simulink® バージョン 10.1 (R2020a) |
目次
水温変化プロセスの物理モデル
水温変化プロセスの物理モデルを図 1に示します。
外気温Ta[℃]で、熱容量C[J/℃]の水が容器にあり、ヒータで熱量q1[W]を与えたときの水温T[℃]の変化をモデル化しています。このときの流出熱量はq2[W]、熱の伝わりにくさを表す熱抵抗はR[℃/W]としています。なお、時刻t=0で水は平衡状態にあると仮定しています。
図 1 水温変化プロセスの物理モデル
時間変動する物理量は以下の通りです。
また、パラメータは以下です。
物理モデルを微分方程式へ
図 1の物理モデルを微分方程式にしたものを以下に示します。
それぞれの式の意味は以下の通りです。
- ① 時刻tでの水温。時刻t=0の水温T0からの変化量⊿Tで表現
- ② 時刻tでの水の熱量。時刻t=0の熱量Q0からの変化量⊿Qで表現
- ③ エネルギー保存則から導出。(水の熱量の時間変化) = (流入熱量)- (流出熱量)
- ④ 熱容量C[J/℃]の物体を⊿T[℃]上昇させるのに必要な熱量
- ⑤ 熱抵抗をR[W/℃]、外気温Ta[℃]の時、水温T(t) [℃]の水からの流出熱量
微分方程式をSimulink® モデルへ
作成したものが、図 2のモデルです。
図 2 水温変化プロセスのSimulink® モデル
シミュレーションによる評価
図2のモデルに以下のパラメータを設定して、図 3の入力のようにヒータから熱量q1 = 200[W]のステップ入力を与えたときの、水温の変化のシミュレーション結果が出力の通りです。
水温は、時刻t=0での20[℃]から、t=100[s]でヒータから熱量q1が加えられると徐々に上昇しt=1800[s]にはおよそ40[℃]になることが分かります。
図 3 設定パラメータ
図 4 水温変化プロセスのシミュレーションの様子
終わりに
今回は「容器に入った水の水温変化」について、物理モデルから微分方程式を導き、それを元にMathWorks社のSimulink® を使用してモデルを作成しました。作成したモデルで、ヒータから熱量を与えたときの水温の経時変化の様子をシミュレーションで確認しました。時刻t=0で20[℃]の水にヒータから熱量q1 = 200[W]が加えられると徐々に上昇し、およそ40[℃]になることが確認できました。
モデルベースデザイン設計委託やお手元にあるSimulink® モデルのHDL化のご要望がございましたら、弊社デザインサービス事業までお気軽にお問い合わせください。
最後までお付き合いいただきありがとうございました。
参考文献[1]:山本透 他, “実習で学ぶモデルベース開発”,コロナ社 (2018)