ブロックを積みながら(221) OpenModelica 並進運動、Sensors

Joseph Halfmoon

OpenModelica付属のデモのうち、まずはMechanics>Translational を経めぐってます。前回は弁の開閉などに使用されるスプールでした。今回はOpenModelicaの「仮想的な」部品でもあるSensorです。何か物理量を測定するだけでなく、測定値や計算値を「信号」として出力してくれるもの。

※「ブロックを積みながら」投稿順 index はこちら

※動作確認にはWindows 11の パソコン(64bit)上にインストールした、The Open Source Modelica Consortium(OSMC)様の以下のバージョンを使用させていただいてます。(なお、ModelicaはModelica Association様の登録商標です。)

Openmodelica v.1.25.1  (Official Release版)

Sensor

ライブラリ・ウインドウの中を漁ると、Sensorsというカテゴリの中に部品の一群があり。
Sensors
どれも、他の部品のフリンジに接続することで所望の物理量などを測定したり、計算したりしてくれるもの。わざわざSensor部品としてある一つの理由は、測定値や計算値を信号として出力する機能があるということみたいです。

Sensorsデモ

今回「鑑賞の」デモはOMEditのライブラリ・ウインドウから以下の赤矢印の項目を選択することでロード可能です。selectSensors

ロードしたダイアグラムが以下です。モデルの中に、各種のセンサが6個も含まれております。これを見れば、センサー部品の使い途が分かるだろ~ってこってすか?
SensorsDiagram

シミュレーション結果

上記のダイアグラムをシミュレーションした結果をプロットしたものが以下に。上のPlot2ウインドウは、massとpositonSensor1、positonSensor2の中の変数をプロットしたもの。下のPlot3ウインドウは、中央付近の multiSensorなるセンサと、一番左のforceSensorの出力をプロットしたもの。plot

上のプロットを見ると、massの位置(s)は、0から始まって段々動いていってますな。それと平行にpositonSensor1、positonSensor2で測定している(s)の値も動いていきます。動きは平行だけれども初期値が異なります。massは0、これはmassのサイズが1m、その初期位置は0mと設定されているからみたい。一方、左のフリンジに接続されているpositonSensor1はmassのサイズの半分 0.5m だけ左にいるので初期値 -0.5m とな。右のフリンジに接続されているpositonSensor2はmassのサイズの半分 0.5m だけ右にいるので初期値 +0.5m。

下のプロットを見ると、力 f[N] は、forceSensorもmultSensorも一致しており、これはさかのぼれば sinForce の発する力とイコールです。

一方 multSensorは、右から左に通過していく力 f だけでなく、右フリンジの位置[s] も検出することができ、それから仕事 W と速度 v も計算してくれるみたい。

センサ類を何に使うかはあなた次第ってか?大丈夫か?

ブロックを積みながら(220) OpenModelica 並進運動、PreLoad、スプール へ戻る

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です