SlideShare a Scribd company logo
1 of 39
OpenModelicaミニ講習会
Motorサンプル
オープンCAE学会
西 剛伺
ミニ講習会の内容
モータのサンプル(Modelica.Thermal.HeatTransfer.Examples.Motor)を用いて,
OpenModelicaの使用方法基礎を学ぶ.
1.Motorサンプルを使ってみる
2.Modelicaのコンポーネントについて
3.自分でMotorサンプルを作ってみる
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など) 2
ミニ講習会参加のための事前準備
OpenModelicaをインストールしたPCを持参してください.
(PCなしでも参加可能ですが,内容の大半がハンズオンであるため.)
OpenModelicaは,以下のページからダウンロード可能です.
https://www.openmodelica.org/
Downloadのリンクからインストール
する環境(OS)を選ぶと,ダウンロー
ドページに移動します.
※ ミニ講習会の内容は,Windows
版OpenModelica v1.9.3で動作確認
しています.
32016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
4
サンプルの内容を調べるには
ドキュメントビューアイ
コンをクリックすると,
ドキュメントブラウザ
に説明が表示される.
本講習会ではHeatTransfer
のモータサンプルを題材に
しますが,使い方に慣れた
ら,さまざまなサンプルを試
してみてください.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Motorサンプルを使ってみる
Motorサンプルを開く
1.OpenModelica Connection Editor(OMEdit)を起動する.
2.ウィンドウ内左側にあるライブラリブラウザのModelica ->
Thermal -> Heat Transfer -> Examples -> Motorをダブルクリッ
クすると,以下のサンプルが開く.
62016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Motorサンプルの構成
Gc = hA
Tw
TA
熱伝達 Q = Gc(Tw-TA)
発熱
熱コンダクタンス
Q = G・ΔT
7
銅損 鉄損
巻線の
熱容量
鉄心の
熱容量
熱伝導
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Motorサンプルを使ってみる
3.トップメニューのシミュレーション -> シミュレートを選択すると,以下のようなウィン
ドウが開いてコンパイルが開始される.
4 . コ ン パ イ ル が 正 常 に 終 了 す る と , コ ン パ イ ル が 100% に 到 達 し ,
Simulation process finished successfully.というメッセージが表示される.
8
使用するPCにも依りますが,コンパイルとシミュレーションの完了には数分か
かります.その間に,少しModelicaのコンポーネントについて学びましょう!
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Modelicaのコンポーネントについて
Motorサンプルの構成
Gc = hA
Tw
TA
熱伝達 Q = Gc(Tw-TA)
発熱
熱コンダクタンス
Q = G・ΔT
10
銅損 鉄損
巻線の
熱容量
鉄心の
熱容量
熱伝導
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Modelica.Thermal.HeatTransferの構成
Modelica.Thermal.HeatTransferはサンプル(Examples)の他,以下のコンポーネント
が含まれる.主に使用するのはComponents(伝熱経路),Sensors(モニタ),
Sources(境界条件).
112016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Modelica.Thermal.HeatTransfer
- Components & Sources
伝熱経路を構築するにはComponentsとSourcesが必要.
熱抵抗 [K/W]
熱容量 [J/K]
熱コンダクタンス [W/K]
伝熱量 [W]を入力として受ける
熱伝達(熱コンダクタンス入力=hA [W/K])
熱伝達(熱抵抗入力=1/hA [k/W])
熱放射(要確認)
複数の伝熱経路を接続
固定伝熱量 [W]
固定温度 [K]
温度 [K]を入力として受ける
122016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Modelica.Thermal.HeatTransfer
- Sensors
Sensorsは温度もしくは伝熱量を確認するのに利用する.
条件付き固定伝熱量センサ [W] ※
温度センサ [K]
温度差センサ [K]
伝熱量センサ [W]
※ useFixedTemperatureがfalseのとき,伝熱量センサと同じ.
useFixedTemperatureがtrueのとき, 伝熱量(Q_flow)を
ゼロとし,センサ温度を293.15 [K]にセット.
132016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Modelica.Thermal.HeatTransfer
- 温度表示
Sources,Sensorsに含まれるブロックでは,温度単位はK(ケルビン)なので,それ以
外の温度単位を使用したい場合には,Celsius等にある同じアイコンのコンポーネン
トを使用する.
degC(摂氏)表示
degF(華氏)表示
degRk(蘭氏)表示
K(ケルビン)表示
K(ケルビン)表示
142016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Motorサンプルの結果を確認する
5.ウィンドウ内右側の変数ブラウザでTcore(鉄心の温度)とTwinding(巻線の温度)
のチェックボックスをオンにすると,グラフにこれらの温度がプロットされる.
152016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Modelica.Blocks.Sources
- 定数とコンビタイムテーブル
Blocksには,さまざまな入出力コンポーネントがある.
定数
コンビ
タイム
テーブル
162016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Motorサンプルの構成
定数
17
コンビタイムテーブル
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
鉄損と銅損を確認する
18
6.ウィンドウ内右側の変数ブラウザで, Tcore(鉄心の温度)とTwinding のチェック
ボックスをオフにし,coreLossesのQ_flow(鉄損)とwindingLossesのQ_flow(銅損)
のチェックボックスをオンにすると,グラフにこれらの値がプロットされる.
鉄損は一定値
銅損は600秒を1周期として,0〜
360秒 は100W,360〜600 秒 は
1000Wと変動している.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
コンビタイムテーブルのパラメータ
19
コンビタイムテーブル
7.ウィンドウ内右下にある「モデリング」タブを
選択すると,Motorサンプルが再表示され
る.
8.Motorサンプルのコンビテーブルを右クリッ
クし,右クリックメニューのパラメータを選択
すると,「コンポーネントパラメータ」が表示
される.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
コンビタイムテーブルの設定
20
tableに設定値が入って
いる.改行して見やすく
すると・・・
[0, 100, 500;
360, 100, 500;
360, 1000, 500;
600, 1000, 500]
つまり,右のようなテーブルになる.
ExtrapolationでPeriodicが選択され
ているので,これを周期的に繰り返す.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
シミュレーション時間等の設定は?
21
9.ウィンドウ内左側のライブラリブラウザで,
Motorサンプルを右クリックし,右クリックメ
ニューの「シミュレーションのセットアップ」
を選択すると,「シミュレーションのセット
アップ」が表示される.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
TemperatureSensorの記述
222016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
自分でMotorサンプルを作ってみる
Motorサンプルの構成
242016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
Modelicaクラスを新規作成
25
1.ファイル -> Modelicaクラス
新規作成を選択すると,
「新規Modelicaクラス作成」
が表示される.
2.名前を付け,[OK]ボタンを
クリックすると,ライブラリブ
ラウザにクラスが表示され
る(以下のキャプチャ画面
では,myModelという名前
にしている).
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「熱伝導」部分の作成
26
最初に「熱伝導」部分を作りま
す.
3.使用するコンポーネントをド
ラッグアンドドロップすると,
「モデリング」タブ内に配置
できる.下の黒枠内のコン
ポーネントを配置しましょう.
ドラッグアンドドロップ
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「熱伝導」部分の作成
27
4.向きを変えたいコンポーネントがある場合には,
コンポーネント上で右クリック,右クリックメニュー
の回転や反転を選択することで,好みの向きにコ
ンポーネントの表示を変更する.
5.コンポーネント同士を接続する.接続したい一方の
コンポーネントの■もしくは□をドラッグし,別の場
所でドロップした後,もう一方のコンポーネ
ントの■もしくは□の上でクリックすること
でコンポーネント同士をコネクタでつなぐ.
※ 特定点を通るようにコネクタを配線したい場
合には,もう一方のコンポーネントにつなぐ前
に通過させたい場所でクリックする.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「熱伝導」部分の作成
28
6.各コンポーネントに値を設定する.
コンポーネントをダブルクリックする
と,パラメータウィンドウが開く.
以下のように,コンポーネントに値
を設定しましょう.
heatCapacitor1 : C = 2500 [J/K]
heatCapacitor2 : C = 25000 [J/K]
thermalConductor1 : G = 10 [W/K]
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
29
7.各コンポーネントに名前を付ける.
コンポーネントを右クリックし,右クリックメ
ニューで属性を選択すると,属性ウィンド
ウが開く.
以下のコンポーネントの名前をそれぞれ
変更しましょう.
heatCapacitor1 → winding
heatCapacitor2 → core
thermalConductor1 → winding2core
temperatureSensor1 → Twinding
temperatureSensor2 → Tcore
「熱伝導」部分の作成
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「熱伝導」部分の作成 ー モデルのチェック
30
8.モデルに誤りがないかチェックする.
トップメニューのシミュレーション -> モデルチェックを
クリックするか,右図のモデルチェックアイコンをクリッ
クして,モデルチェックを実行しましょう.
(ある程度の規模のモデルを作成する際,入力ミスがあると
どこがエラーの原因か分かりにくくなる.こまめにモデル
チェックを実行することで早めに入力ミスを修正するようにし
ましょう.)
エラーがなければ,以下のようなメッセージが表示される.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「熱伝達」部分の作成
31
次に、「熱伝達」部分を作ります.
9 . Convection コ ン ポ ー ネ ン ト を 配 置 し ,
winding2coreと接続する(※1).続いて,
FixedTemperatureコンポーネントを配置し,
先 に 配置済 み の convection1 と 接 続する
(※1).
※1 必要に応じて、配置したコンポーネントを回転もしくは反転させ、見やすくしておきましょう。
※2 分からなくなったら,「熱伝導」部分の作成の手順を確認しましょう。
10.(Blocks.Sourcesの下にある)Constantコンポーネントを配置
し,先に配置済みのconvection1と接続する(▼と▽をコネクタ
で接続する)(※2).
11.fixedTemperature1とconstに以下の値を設定する.
fixedTemperature1 : T = Tamb
const : k = 25
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「熱伝達」部分の作成
32
12.以下のコンポーネントの名前をそれぞれ変更する.
convection1 → convection
fixedTemperature1 → environment
const → convectionConstant
ここまでで,以下のようになっているはずです.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「熱伝達」部分の作成 - モデルのチェック
33
13.モデルに誤りがないかモデルチェックをかけてチェックする.
すると,メッセージブラウザに以下のようなエラーが表示されるはずです.
※ 分からなくなったら,「熱伝導」部分の作成の手順を確認しましょう。
エラーの記述Variable Tamb not
found in scope mvModel.による
と,Tambが定義されていないよう
である.
environment コ ン ポ ー ネ ン ト に
Tambを設定したにもかかわらず,
Tambを定義していませんでした.
Modelica で は , 定 義 済 み の 型
(SIunits)が用意されており,それ
を利用することで簡単に変数を利
用できる.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
変数の宣言
14.Text Viewアイコンをクリックすると,Modelicaのプログラムが表示さ
れる.
15.プログラムの冒頭”model”の次の行に,以下の行を挿入する.
16.再度モデルチェックを実行する.
今度はエラーが出ないはずです.
parameter Modelica.SIunits.Temperature Tamb(displayUnit = "degC") =
293.15 "Ambient temperature";
※ 分からなくなったら,「熱伝導」部分の作成の手順を確認しましょう.
342016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「発熱」部分の作成
35
最後に,「発熱」部分を作ります.
17.ダイヤグラムビューアイコンをクリックして,再びコンポーネント
配置画面に戻る.
18.(Blocks.Sourcesの下にある)CombiTimeTableコンポーネント
を配置する.
※ 分からなくなったら,「熱伝導」部分の作成の手順を確認しましょう.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「発熱」部分の作成
36
19.combiTable1コンポーネントに値を設定する.
コンポーネントをダブルクリックすると,パラメータウィンドウが開く.パラメー
タウィンドウが開いたら,以下の2つの欄に値を入力する.
table [0, 100, 500; 360, 100, 500; 360, 1000, 500; 600, 1000, 500]
extrapolation Modelica.Blocks.Types.Extrapolation.Periodic
(periodicを選択しても良い.)
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「発熱」部分の作成
37
20.PrescribedHeatFlowコンポーネントを2つ配置する.
(winding側に置くものをprescribedHeatFlow1 ,core側に置く
ものをprescribedHeatFlow2とする.)
21.CombiTimeTableコンポーネントをprescribedHeatFlow1と
prescribedHeatFlow2に接続する(▽と▼をコネクタで接続します)(※1).この
とき,以下のような配列の接続ウィンドウが開くので,prescribedHeatFlow1の
場合には1を,prescribedHeatFlow2の場合には2を入力し、OKボタンを押す.
22.prescribedHeatFlow1をwindingに,2つ目prescribedHeatFlow2をcoreに接
続する(□と■をコネクタで接続する)(※1).
※1 必要に応じて,配置したコンポーネントを回転もしくは反転させ,見やすくしておきましょう.
※2 分からなくなったら,「熱伝導」部分の作成の手順を確認しましょう.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
「発熱」部分の作成
38
23.以下のコンポーネントの名前をそれぞれ変更する.
ここまでで,以下のようになって
いるはずです.
24.再度モデルチェックを実行
し,エラーが出ないないこと
を確認する.
combiTimeTable1 → lossTable
prescribedHeatFlow1 → windingLosses
prescribedHeatFlow2 → coreLosses
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)
シミュレーション時間の設定と実行
39
25.トップメニューのシミュレーション -> シミュ
レーションのセットアップをクリックするか,
右図のシミュレーションのセットアップアイコ
ンをクリックすると,「シミュレーションのセッ
トアップ」が表示される.
26.終了時刻を7200に変更したら,シ
ミュレートボタンを押す.
27.グラフをプロットし,Motorサンプル
と同じ結果になっているか確認する.
以上で,ミニ講習会は終了です.
2016/2/20 OpenModelicaミニ講習会 - オープンCAE勉強会@関東(流体など)

More Related Content

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 

OpenModelicaミニ講習会