ブロックを積みながら(178) Scilab/Xcos、剛体の回転、回転エネルギーも表示

Joseph Halfmoon

前回は、剛体の回転運動モデルに任意のトルク波形を与えて回転させるようにしてみました。回転のアニメーション表示はするし、角速度も表示できるのですが、いくつか表示項目を増やしたい希望があります。まずは回転の運動エネルギー[J]ですかね。計算式そのものは単純、ブロックをいくつか追加するだけ。

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

※動作確認にはWindows 11の パソコン(64bit)上にインストールしたScilabの以下バージョンを使用しています。

    Scilab 2024.0.0

トルク波形

今回使用のフローも前回踏襲なので、「任意のトルク波形」はScilab側で計算し、Xcosフロー側に輸出するスタイルです。あらかじめScilab側で計算しておかないと、いざXcosでフローを起動するとそんな変数ないと怒られます。生成するのは定数で前回と同じ。

Torque.time = (0:10)';
Torque.values = [0; 0.2; 1; 1; 0.2; 0; -0.2; -1; -1; -0.2; 0];

上記を見れば分かるとおり、+のトルクも-のトクルも「とりあえず」同じ変数においてあります。後で駆動方向のトルク源と負荷方向を分けたいような。

今回運動エネルギーの表示を追加したフロー

前回フローとの主な変更部分を赤字で囲みました。RotFlow3

回転の運動エネルギーE[J]は、慣性モーメント I [kg*m2]、角速度ω[rad/s]から、rotEnergy

ということで良い筈なので。上記フローの上のブロックで計算できる筈。大丈夫か?

シミュレーション結果

上記のエネルギー計算を追加したシミュレーション結果(のグラフ)が以下に。

GraphAdded

まあ、それらしく計算はできておると。しかし、グラフの軸ラベル、画面上で編集することはできるのだけれども、プログラム中に埋め込こめないものか?やり方が分からんぞなもし。

ブロックを積みながら(177) Scilab/Xcos、剛体の回転、トルク波形を与える へ戻る

ブロックを積みながら(179) Scilab/Xcos、摩擦力、動き始めと止まるところメンド へ進む