前回までで、
という最低限の流れを確立することができました。
今回は簡単ですが車体の組立と試運転の状況を紹介しようと思います。
実はブログにまとめる作業が億劫で半年以上放置してしまいまして、既に当時のことを思い出せない状態になっています。
これ以降、残念ですが観念的な説明に終始することになりそうです。
車体の組立
基本的な部品構成等の話はこのシリーズの初期に書いた通りです。
部品についても大方紹介したとおりで、その通り組み立てていきます。
青いフレームはmakeblockのシリーズです。
非常に便利なのですが、最近個別の部品単位での購入ができなくなってしまいました・・・
モータ等の取り付けは黄色の部品で、友人に頼んで3Dプリンタで出力してもらいました。
車体の下段向かって右にマイコン系を配置しています。
スイッチサイエンスで売られているESP32の開発者キットを、20mmの足長ピンソケットでシールド対応にして使っています。
プリント基板を2階層にしており、上層がESP32、モータドライバ、エンコーダケーブルのコネクタが配置されています。下層はIMUと、シングルボードコンピュータに給電するためのDCDCコンバータが載っています。
下段向かって左側はUbuntuが載るシングルボードコンピュータであるUPBoardを搭載しています。
まだ使用はしておらず、後述する試運転では、ホストPCとしてデスクトップPCを使っており、当該PCに有線で繋がったまま倒立振子を動かしています。
up-board.org
下段中央、車体の前後方向に伸びる青いmakeblockの梁は、転倒時に回路やコネクタが地面にぶつからないようにするためのバンパーです。実験の時は、この部分にクッションを巻いて使っていました。
上段は3セルのLiPoバッテリ、右上はモータへの給電をON-OFFするスイッチです。
スイッチはいわゆるミサイルスイッチと呼ばれるもので、非常停止スイッチとは少々異なりますが、
- 赤い蓋を開けてトグルを操作しないとONにならない(誤ってONにしづらい)
- 赤い蓋を閉じればトグルが自動的にOFF側に切り替わる(OFFにし易い。更に確実ではないが、強い衝撃が加わってもその弾みで蓋が閉じてOFFになってくれる)
という優れものです。通電時は赤いLEDが光ります。
モータ駆動のためのPIDゲイン調整用ノードとGUIの整備
この部分は、倒立振子ロボットver1で作ったノードを流用します。
(参考)
ktd-prototype.hatenablog.com
上記記事にも書きましたが、何個かのwebサイトから見様見真似で作ったため、自分でもなぜ動いているのかあまり説明ができません。
従って恥ずかしい話ですが、このノードについての解説は省略します・・・
とりあえず、ノードが立ち上がるとスライドバーでゲイン調整ができるGUIが立ち上がり、ゲインを調整するたびに、ROSメッセージとしてそれをPublishします。
Publishされたノードは、前回説明したマイコンとのI/FノードでSubscribeされ、シリアル通信でマイコンに送信されます。
将来的には
- 長時間放置してもその場に留まってくれる機能
- 外部入力により遠隔操縦できる機能
等を実装したいので、それら用のゲイン調整バーも準備してあります(後述の試運転では未使用)