picマイコンなんて触った事もなかった素人のkazurockが、苦労しながらもコソコソ勉強してやっと位相制御による、ACモーターのフィードバック制御に成功いたしました!!

はじめは、PICマイコンでLEDピカピカからはじまり、割り込み処理、A/D変換、LCDパネルの表示と徐々にステップアップし、それらの複合技のPID制御という大台までなんとかいきつきました。

 

前回はハードケースを作るというもの

前々回はやっとACモーターを位相制御でき始めた程度です。

本体のほうは一応ですが、前々回より若干プログラムの見直しをしてさらにスムーズなフィードバック制御によりACモーターが動作するようになってます。

完全にうまくいきました。ワインで乾杯です。

 

まずは動作映像をばご覧ください。

 

 

ミニ人工心肺ケースの仕上げ

とりあえず、前回や前々回からの続きという事でACモーターを納めるケースの仕上げからです。

今回はそれに制御基盤や調節ツマミ、LCDパネルを設置し色を塗りまーす。

 

これにニスで色付けしてみました。

LCDパネルはホットボンドで固定します。

 

 

じゃーん!!こんな感じに仕上がりました。

 

制御基盤は全て同一ボード常に配置、これがなかなか大変で結構疲れました。

スポンサードリンク

 

ためしに動かしてみる、基盤をどうやってケース内に固定するか思案中です。

とりあえず動作確認はなんとかOK。

 

 

プログラムの見直しについて

前々回の記事にて、PID制御の制御量を何度となくカットアンドトライにより調整してきましたが、あまりうまくいかず結局制御範囲が0-255のところを40-140程度にまで落として設定してうまく行きましが・・・↓。

しかし、ACモーターの誘導電動機はトルクがかかると回転数が落ちるという特徴があり、本来255で100%位相なのに、MAX制御で140にすると54%程度位相出力の力しか出せないようじゃポンプとしての機能を果たす事ができないのです(トルクが足りない)。

ですから、再度制御量を調整してMAXを255、最小値を30程度としてPIDフィードバックが働くように再調整を施工しました。

 

 

PID制御のプログラム

今までの記事ではPID制御には触れていましたが、実際のプログラムの詳細については述べていなかったので、最終章の今回は考え方を記述します。

なんせ、私は1年前まではプログラム自体を書いた事のない素人だったので、わからない人の事がよくわかります。

PID制御の基本はここで勉強してください。

 

実際のプログラムは

本当に基本通りのプログラムになります。

 

調整の方法はまずはPIDのうちPだけを調整しました。

Pだけだと低回転時のモーター動作が波打つようになり、要は目標値を超えたり、下回ったりする動きになります。

任意の値をPの定数にしました。今回は3を入れています。Pだけの比例制御だけだと低域はまったく使い物になりませんね。

なぜこのようになるのか?というとACモーターの制御幅は短く比例的に制御量を増やしていくと突然モーターがMAXスピードまで回ったり、その逆にすぐにストップしたりするからです。

 

しかーし!!

この比例制御量に微分要素を取り入れるとすなわち、Dの入力オーバーシュートなどを是正してくれます。

今回はこの値を15という値にする事で低回転時のモーター動作がかなり安定しました。

 

 

 

プログラムはC言語でMPLABXで開発しています。

もしプログラムを見て見たい方はお問い合わせよりご連絡くださると対応いたします。

スポンサードリンク