2倒立振子「2WV」開発

高橋 貴大 氏, 神奈川工科大学 創造工学部 自動車システム開発工学科 石濱研究室

"LabVIEW用いることにより、データ測定、車体情報グラフ表示、プログラム(サンプリング時間ゲイ値)容易変更できるシステム作ることできした。"

- 高橋 貴大 氏, 神奈川工科大学 創造工学部 自動車システム開発工学科 石研究室

課題:

以下の条件を含む2輪型倒立振子車(2WV)を制作する。 • 本体の構想、設計、製作を8ヵ月間、制御プログラム開発を約2ヶ月間で完成させる • 走行実験等における各種データの取り出し(保存)や、試走後に制御ゲインのチューニングを容易に行える • 稼働中の車体の情報をリアルタイムにグラフ表示でき、稼働状態によってサンプリング時間やゲイン値をリアルタイムに変更できる • アスファルト地面での走行でも制御システムの安全性を確保する

ソリューション:

制御システムの開発には、直観的なインタフェース(グラフィカル)でシステムを構築でき、 しかも実機がなくても開発が可能なLabVIEWを、また、実機をコントロールする段階では、開発したシステムをそのまま2WVへ実装可能であり、スタンドアロンで動作するCompactRIOを用いて、2WV制御システムのマシンインターフェイス、データ測定、制御プログラムを開発しました。

1.背景

大学3年次に履修したプロジェクト授業において、人が乗車可能な移動体を製作するという課題が与えられました。私たちはこの課題について議論を行い、2輪型倒立振子車(以下、2WVと称します)を製作することに決定しました。2WVは人の体重移動による車体の角度変化等をセンサーで検出、倒立振子の原理を用いて操作量を算出し、左右のモーターをコントロールすることにより移動することができます。2WVは不安定で制御システムが必須ですが、制御回路を製作する知識や技能も特になく、限られた期間内で、車両本体の設計製作と制御システムの開発等をすべて行わなければならなりませんでした。そこで、制御システムの開発では、直観的なインタフェース(グラフィカル)でシステムを構築でき、しかも実機がなくても開発が可能なLabVIEWを用いることにしました。また、実機をコントロールする段階では、開発したシステムをそのまま2WVへ実装可能であり、スタンドアロンで動作するCompactRIOを用いることにしました。
これらを用いて2WV制御システムのマシンインターフェイス、データ測定、制御プログラムを開発しました。

 

2.課題

2WVを制作するうえで、課題として次の5点が挙げられました。

(1) 本体の構想(コンセプト)、設計、製作が8ヵ月間、制御プログラム開発約2ヶ月間という期間で完成させなくてはならなかった。
(2) 従来、制御プログラムを開発する際、PICマイコン等を使った複雑な制御回路を開発しなくてはならなかったため多くの時間と専門的な知識が必要だった。また実機のモデルをPICに組み込むことが容易に行えないと推測された。
(3) 走行実験等における各種データの取り出し(保存)や、試走後に制御ゲインのチューニングを容易に行える。
(4) 稼働中の車体の情報をリアルタイムにグラフ表示でき、稼働状態によってサンプリング時間やゲイン値をリアルタイムに変更できる。
(5) 坂道を除くアスファルト地面での走行でも制御システムの安全性を確保する。

 

3.ソリューション

3-1 システム構成

 

システム構成をFig.2に示します。2WVの制御システムはCompactRIO+Cモジュールを用いることにより非常にシンプルなものとなりました。車体の情報を得るためのセンサーとしてジャイロセンサー1個、傾斜角センサー1個の計2個を搭載しています。これらのセンサーはアナログ電圧で情報を出力するためNI 9215を介してNI cRIO-9014に取り込みます。NI cRIO-9014ではセンサーからの入力と姿勢の目標値から制御ゲインを算出し、指令電圧をNI 9263を介してモータードライバに出力します。NI cRIO-9014はボルトによる完全固定はせず、本体とマジックテープで固定しました。システムが不安定になった場合の対策として、ハンドル付近に制御プログラムの緊急停止スイッチも設置しています。このスイッチは制御プログラムの指令電圧のON/OFFを切り替えるスイッチ(VI)と接続されているのでデータ計測中でもcRIOの電源を切ることなくモーターを停止させることができます。

 

3-2 ソフトウェア構成

Fig.4にフロントパネルに示します。フロントパネルでは角度、オフセット後の角度、角速度の表示グラフが3個、左右モーターへの指令電圧の表示グラフが2個あります。姿勢センサーのキャリブレーションをプログラム起動時にいつも行うことで常に正しい角度で制御を実行することができます。そしてキャリブレーション(初期姿勢校正)中であるかを確認できるよう、LEDが2個設置してあります。使用したモータードライバが0V~5Vの指令電圧であったため、計算した操作量を変換するVIを作りました。

 

 

 

3-3 結果

・課題(1)(2)
プログラムの予定開発期間2ヶ月の間で完成し、走行テストを行うことができました。本体が完成する前にFig.6 で示す実験機をNI cRIO-9014と接続して使うことで、倒立振子のシミュレーションや実際にプログラムを使った制御実験を行い、大まかな挙動やゲインを取得しておくことができました。その結果、本体の製作と制御プログラムの製作を同時進行で行うことで開発期間を短縮することができたと思います。

 

・課題(3)(4)
同様に、LabVIEWを用いることにより、データ測定、車体情報のグラフ表示、プログラムの値(サンプリング時間やゲイン値)を容易に変更できるシステムを作ることができました。

 

・課題(5)
NI cRIO-9014を本体内部に固定し実装することで、坂道を除くアスファルト地面での走行でも制御システムの安全性を確保することができました。スタンドアロンでの制御における安全性に関しても、緊急停止スイッチをプログラムに組み込むことで確保することができました。

 

 

 

Fig.1  2WV
Fig.2  システム構成
Fig.3  2WV制御部拡大
Fig.4 フロントパネル
Fig.5  走行風景
Fig.6 実験機