制御工学博士の日常+備忘録

ようやく制御工学で博士を手に入れたので真っ当な人間になるべく研究以外の事とか色々と備忘録的にやっていく。そんな感じ

scilabでシミュレーションするための楽になる設定

matlabが欲しい。でもお金がない。pythonで制御をやろう。でもプログラムベースだと全然わからん。そんな状況の改善に向けてScilabのシミュレーションブロックベースでの検証を考える。

 

しかし、scilabではmatlabと違って無料な分ちょっとわかりにくい操作方法がある。
ということで今回は、シミュレーションブロックを作るたびにパラメータ設定したり、グラフ描画の設定をいちいちいじるのは面倒なので、必要最低限のファイルをあらかじめ作っておこうと思う。

 

Plant Parameterの初期設定

まず、Scilabを導入したらコンソール画面が開くはず。

ここで、アプリケーションタブからSciNotesを選択して開く。

f:id:kwaz6:20210710012246p:plain

 

すると下の画像のように真っ白なウィンドウが出てくる。

ここに必要になるパラメータ設定、プラントや制御ゲイン等を定義して実行する。

 

f:id:kwaz6:20210710012233p:plain

 

パラメータを設定して実行すると下画像の右側に示すようにワークスペース上にパラメータが反映される。これで準備OK。

f:id:kwaz6:20210710012539p:plain

 

Xcosによるシミュレーションブロックの作成

同様に今度はアプリケーションタブからXcosを選択してシミュレーションブロック用のウィンドウを開く。

 

f:id:kwaz6:20210710012249p:plain

 

使い方は各自操作して覚えるしかないので、とりあえずPI速度制御系を作成してみた。

そちらの完成図を下に示す。

f:id:kwaz6:20210710012222p:plain

PI速度制御系のシミュレーションブロック

 

ここで、スコープとは別に 「To Workspace」ブロックがあるが、これはグラフ描画で使用するので置いている。

 

シミュレーション波形の描画

ということでシミュレーション波形をスコープ上で自由に観測できるようになっているわけだが、グラフの編集が面倒である。

そこで、パラメータ設定と同様にグラフプロット用のsceファイルを作って一括でやってしまうことにする。

 

実際に作ったsceファイルがこちら。

 

// プロット関数
// Xcosでシミュレーションした情報をto workspaceブロック経由でグラフ描画するファイル
data1 = MotVel;  //ここに観測したいデータを入れる
data2 = MotVelCMD;  //ここに観測したいデータを入れる

fontsize = 5;   //フォントサイズ設定
linewidth = 3;  //線の太さ
axd = gca(); //axd = get("current_axes");でも可。gcaは省略形

plot(data1.time, data1.values,'g-', data2.time, data2.values, 'k--', 'thickness', linewidth);
hl=legend(['Response';'Command']);  //凡例の描画
hl.font_size = fontsize;    //凡例のフォントサイズ
xlabel("Time [s]", "fontsize", fontsize);   //X軸タイトル
ylabel("Motor-side velocity [rad/s]", "fontsize", fontsize); //Y軸タイトル

axd.font_size = fontsize;  //メモリフォントサイズ
axd.grid=[1,1]; //gridの設定と色指定。-1はグリッド無。1は黒

axd.labels_font_size = fontsize; //凡例フォントサイズ

 

というわけで、実際に描画したものがこちら↓

f:id:kwaz6:20210710012218p:plain

PI速度制御系の応答波形

 

結構いい感じになっていると思います。0.1秒付近を拡大して表示するようにすれば目標値応答波形も拡大できますが、今回は外乱応答も含めてこんな感じに載せました。

上記ファイルを使えば今後も自由に描画が可能になるので良かったです。

 

今後必要に応じてここら辺の機能は拡張していきたい。

 

まとめ

今回はシミュレーションパラメータ設定からグラフ描画まで簡単に設定する方法をやってみました。

このほかにも例えば、

  • シミュレーションファイルを実行するコマンド
  • sceファイルを利用したサブ関数(matlabmatlab functionのようなもの)
  • Bode diagram, Nyquist等々

があるので、そういったものも一括でできるように改良を加えていきたい。

特に、制御の研究となると、安定性の解析、パラメータ変動等様々な比較検討を行う必要が出てくるのでそういった要素を作っておけるといいかなと思います。

 

次は実際に設計した制御系をまとめておきたいと思う。

【家庭菜園】進捗記録+にらの収穫

前回の家庭菜園からの進捗報告です。

梅雨入りとなりましたが、暑い日日が続いておりいい感じに野菜が成長しています。

今回はその途中経過とにらを収穫した報告です。

 

成長記録

それでは、それぞれの状況について

ピーマン

いい感じに大きくなってきました。花も咲いているのでこの調子で実がなってほしいです。

 

f:id:kwaz6:20210627174549j:plain

ピーマン
パプリカ

まだまだ緑色でピーマンと見分けがつきませんが色が変わってくれることを祈ります。

 

f:id:kwaz6:20210627174626j:plain

パプリカ

オクラ

オクラはどんな感じにみがなるのかまだわかりませんが、かなり成長してきました。

 

f:id:kwaz6:20210627174602j:plain

オクラ
トマト

この間洗濯物が落ちてしまい枝を折ってしまいました。

実が無事でよかったです。これがこのまま熟してくれるのを祈ります。

 

f:id:kwaz6:20210627174647j:plain

トマト
枝豆

枝豆がなっていますが、水分が足りないせいだったのか実が入っていないようです。

一日水やりを忘れてしまった時があったのでそれが原因かもしれません。

 

f:id:kwaz6:20210627174636j:plain

枝豆

 

にら

最後ににらです。いい感じに大きくなっていたので、収穫しました。

スーパーでみるよりは全然小さいですが、おいしそうです。

明日の味噌汁に使う予定です。ちゃんとにらのにおいがしていたので、よかったです。

 

f:id:kwaz6:20210627174614j:plain

にら

f:id:kwaz6:20210627174529j:plain

収穫後

まとめ

今回はにらを収穫しました。

次回はトマトとパプリカが収穫できるといいなー。

それでは。

 

前回の記事

kwaz6.hatenablog.com

 

 

 

 

【python】【ロボット】mycobot-piで遊んでみる。

今回はmycobot-piを頂いたこともあり、さっそく遊んでみることにしました。

実際はROSをやりたいんですが、まだ不安なうえによくわからないのでとりあえずpythonで確認します。

 

確認したpython program

確認したサンプルプログラムは2つです。

  1. ロボット先端にあるAtomのLチカ
  2. ロボットダンス

参考にしたリンクを下記に示す。

www.elephantrobotics.com

 

続きを読む

モータの仕組みについてわかりやすかった動画やリンクのまとめ

モータの制御方法は知っていたので、その通りにプログラムすれば回るということは体験していた。例えばmyway社製のインバータでSPMSM駆動とか、サーボアンプを用いてモータ駆動で実際にギアードモータを駆動するなどです。

 

しかし、直流モータや誘導機、リラクタンスモータ等の回転原理や構造をしっかり理解したことが無かったので改めて色々と調査したので参考になった動画、サイトをまとめておきたいと思います。

 

 

参考になった動画

基本的に以下の二つのYoutubeチャンネルがやはり勉強になります。

モータの原理を理解するには電気磁気学の基礎知識が必要です。

頭で何となくわかっていたのですが、ちゃんと説明できるほどではなかったので今回改めて動画で再認識することにしました。

特に動画を見る前に事前知識として

  • レミング左手・右手則
  • ファラデーの電磁誘導
  • 右ねじ則
  • 磁束の向きに対するN/S極の極性
  • 三相交流の基本的な関係
  • 整流器の動作原理

このあたりが分かっていれば楽しく理解が進むと思います。

 

直流モータ

www.youtube.com

www.youtube.com

 

直流モータにはステータ(界磁側)に永久磁石を利用するタイプや巻き線による電磁石を利用した他励式や直巻、分巻、複巻などの自励式がある。

直巻式は電動工具などでも使用されるユニバーサルモータ(直流、交流両方で駆動可能)としてでも利用されているらしい。

 

誘導電動機

www.youtube.com

 

同期モータ(ブラシレスDCモータ)

www.youtube.com

 
同期リラクタンスモータ

www.youtube.com

www.youtube.com

 

オルタネータ

www.youtube.com

www.youtube.com

 

他参考になる動画

www.youtube.com

 

まとめ

今回はモータの説明動画で参考になるリンクをまとめてみました。

ブラシレスDCモータの説明以外は日本語ですが、Lesicsの動画は英語なので専門知識の英語の勉強にもなると思います。

他にも勉強になる動画やリンクがたくさんあるので後々追加していきたいと思います。

 

 

【100均】100均のソーラパネルライトについて調べてみた

どうも。kwaz6です。

今回は100均のソーラーパネルライトの仕組みについて調べたりしてみたのでその備忘録です。

やったことは回路図をおこしてオシロスコープで充放電を確認しただけです。

 

目的

発電電力からモータを回したりLEDをPWM調光したいという願望があります。

これを実現するためにいきなり色々と買いそろえてもよいですが、壊しても問題なさそうなところから始めたいと思いました。

 

特に太陽光発電を考えるとソーラーパネルが1000円~2000円ほどの物が安いものでありました。ただどんな感じか確認したかっただけなので今回は100均のソーラーパネルを利用することにしました。

 

続きを読む

【家庭菜園】【100均】ベランダ家庭菜園の進捗状況

前回春菊がうまくいき、他のアスパラガス等の種はうまく発芽しなかったことを言いましたが、苗から新たにパプリカ、トマト、枝豆、ピーマンを植え替え、再度経過観察をしていたところ、種が発芽していたのでその進捗も含めて鉢の植え替えをしました。そういう進捗です。

準備物

苗:トマト、枝豆、パプリカ、ピーマン(ホーマック)

追加の鉢:セリア

 

続きを読む

【家庭菜園】【100均】今年最初の家庭菜園の成果

どうも。kwaz6です。去年とは住む場所が変わり新天地で新たに今年最初の家庭菜園を始めることにしました。

引っ越しの際に全部捨ててきたのでまた道具も全て買い直しです。

準備物

鉢植え:100均(ダイソー)

栄養剤:100均(ダイソー)

鹿沼土 :1.5kg (ダイソー)

鉢底土: 1.5kg(ダイソー)

培養土2種: 14Lずつ(コメリパワー)

スコップ: 100均(ダイソー)

野菜の種色々(100均以外でコメリホーマック)

 

続きを読む