趣味工房 HIRO-G




< カルマン 2輪倒立振子の製作 その4 >



 2輪倒立振子の本体が完成したので、取りあえず動かしてみることにしました。 


1.準備

 先ずは付録DVDの収録ファイル(写真1)一式を専用フォルダーを作成して保存します。 次いで、「3.カルマン・フィルターのソース・コード 」ファイルに収録されている、2輪倒立振子本体を制御するための制御プログラムのソース・コード(C言語)をコンパイルするための準備をします。 ソース・コード名(写真2)は次の通りです。

 ・ Inverted_Pendulum_Kalman.cpp


 コンパイルは、PCと「NUCLEO−F401RE」をUSBで接続した状態で、mbedのWebサイトへアクセスしますと写真3のような画面が表示されますので、画面上の「コンパイル」をクリックしますと、ダイレクトに開発環境ページへ移動できます。 尚、2輪倒立振子本体の電池は抜いておき、電源スイッチはレバーを押し下げた「OFF」の状態にしておきます。


2.バイナリ・ファイルの作成

 開発環境画面で「新規」をクリックしますと写真4のように「新しいプログラムの作成」のダイアログが表示されますので、プログラム名を決めて打込みます。 当方はソース・コード名と同じとしました。 ただしドット等は使えませんから、拡張子「.cpp」の部分は省略します。

 「OK」を押して再度、開発画面がアクティブになったところで、開発環境の画面を縮小画面とし、一方、エクスプローラでソース・コード一覧を表示させて縮小画面として、Inverted_Pendulum_Kalman.cpp」を編集画面へドラッグ&ドロップすれば、写真5のようにソース・コードが表示されます。

 次に、「コンパイル」をクリックするとコンパイルが実行され、特に問題がなければ写真6のように「success!」と表示され、バイナリ・ファイルが作成されます。 保存用のフォルダーを作成して、写真7のようにバイナリ・ファイルの確認をして、コピー&ペーストで保存します。

 

3.制御プログラムによる機能テス

 バイナリ・ファイルを表示させた縮小画面とNUCLEO-F401REボードを表示させた縮小画面を用意して、写真8のようにバイナリ・ファイルをドラッグ&ドロップしてNUCLEO-F401REボードへ書込みます。 書込みが終了すれば、写真9のように、ボードに増設した黄、緑、赤のLEDがそれぞれ点灯します。 LEDの点灯を確認した後、USBケーブルを切り離します。

 電源スイッチを「OFF」の状態で、単3アルカリ乾電池を4本をケースに収め、写真10のように手で2輪倒立振子本体を垂直に保持し、電源スイッチを「ON」にします。 「初期設定中」の黄色のLEDが点灯しますが、点灯している間はなるべく本体を動かさないようにします。

 黄色のLEDが消灯すれば、ゆっくり本体から手を放しますと、写真11〜写真15のように、前後に細かく動きながらバランスを取り、転倒することなく立ち続けました。

 表面の正規の位置ではスペース的に苦しかったので電池BOXを裏面に取付けましたが、今のところあまり問題は無いようです。


 以上で2輪倒立振子本体のテストが終了しましたので、次回はデータ通信、傾斜計、ジャイロ等のテストを実施して完了とします。





写真1 付録DVDの収録内容




写真2 倒立振子のソース・コード




写真3 mbed Home




写真4 新しいプログラム作成のダイアログ




写真5 「ソース・コード」のドラッグ&ドロップ




写真6 コンパイルの結果




写真7 「バイナリ・ファイル」の保存










< TREX450 SPORT >




 SDXに続き墜落。


 以下同文。








アラカルト No33



カルマン 2輪倒立振子の製作 その4
2019年12月11日



写真8 「NUCLEO−F401RE」への書き込み




写真9 書込み完了




写真10 初期設定中




写真11 初期設定終了直後




写真12 自立状況その1




写真13 自立状況その2




写真14 自立状況その3




写真15 自立状況その4