n_shinichi’s blog

★記事一覧★から見てください...(すみません、メニュー、リンク、カテゴリー分けがうまくできてません) 日々の備忘録、誤記多し... 名古屋大学:非常勤講師、小学5年生:電磁石単元理科講師、学生フォーミュラ:EV技術指導員、魔改造の夜:Dンソーアドバイザ、CQ出版_Interface:制御技術関連執筆

MENU

★倒立振子ロボ スティックくん、構造は超簡単♪、制御は超難しい! です...

最近、時々問い合わせも頂くようになって・・・

 でもちょっと誤解されてるとこもあるので。

 

今まで何度も細切れに紹介してたけど、

 電子工作でやってみようかな・・・って人向けに紹介です。

 

倒立振子ロボ スティックくん、 もう初号機から5年ほど経ちます。

 M5SticKC_Plusが出て、これはイケてる!って始めた。

   

                スティックくんのアイコンは娘が作ってくれたモノ♪

 

誤解されてそうってのは表題に書いたところ。

 そこそこ電子工作やってるよって人でも。。。

 倒立振子ロボ スティックくん、構造は超簡単♪、制御は超難しい!

  です...

 

倒立振子って何? って方はこちらの

イチケンさんがとてもわかりやすい解説してるので見てください。

【電気電子工学と制御工学の融合「倒立振子」を作ってみた! 難しすぎだろ!!】

www.youtube.com

 

イチケンさんが 難しすぎだろ! って言ってます。。。

 イチケンさんが作ってる 倒立振子ロボ はおよそ標準的な倒立振子ロボです。

 制御工学学習の教材で販売されている物もおよそそんな感じです。

 説明通りに製作すれば電子工作になれた人ならそれなりに立ちます。

 

難しすぎだろ! とはありますが 倒立振子ロボ工作的には、、、

  ”スティックくんと比べると”、、まだあれは、とても簡単な方なんです。

 

ぼくのスティックくんとの大きな違いは

 イチケンさんのとか教材ものはちゃんと立つように余裕のある設計が

 されています。  

 でもって

 その手の教材でも設計について詳しく書かれてることはあまり見掛けません。

 そういうのは触れてるのは大学の制御工学の 論文とかみるとあります。

 

”ちゃんと立つように余裕のある設計” というのは、

 倒立振子ロボの大きさ、重さ、重心位置など考慮、調整して、

 ・固有振動数・・・正立振子、フツーに車輪でロボをぶら下げた時に

  振子として振動する周波数 (ほんとはちょっと違うけど...)は調整して、

  でもって、十分余裕をもって応答できる速度で回転する

  ギヤモータの選定してます。

  ギヤモータも十分にバックラッシュの少ない品質のいいモノ使ったり。

 ・センサ類

  姿勢制御にIMU、・・・ジャイロ、加速度センサを使いますが

  教材ものはセンシングするのにいい位置、

   回転動作してる時に、前後加速度信号の出ない回転中心付近に配置とかします。

   中心からずれてるとロボが回転しただけで前後加速度がノイズとして乗ります。

 等々、他にもいろいろ、倒立振子ロボとして工夫された設計になってます。

 

でも・・・スティックくん は 

 倒立振子ロボとして最適設計は全くしてません。

 外付け回路は一切なし、

 RC用の連続回転型サーボ接続だけ。

 シンプルさ、かわいさ、を最優先での設計です。

 で、、、その最適設計から外れたところは

    ソフト、制御を駆使して補う。。。です。

 

RC用のサーボ、(中華の500円程度の格安品とか)

 トルクは大きいですが回転速度は非常に遅いです。 

 およそ 最高速度で毎秒2回転弱程度です。

  なのでロボが走る速度は(車輪のサイズで変えれるけど)

  スティックくんの直径3cmでは毎秒15cm程度です。

  教材ものはいいもの使ってて一桁ほど速いくらいです。

 ただ、回転速度こそ遅いですが、実際に重要なのは回転”加"速度です。

 

前方に倒れかけた時など前進加速度と重力加速度の合成ベクトル加速度が

 車輪の床接地点より後方にあればロボは起き上がっていきます。

 なので・・・

  倒れかけた時、即座に加速できればそこそこなんとかなります。

  RCサーボと同じ構成のギヤモータ(サーボより安い)を

  モータドライバを使ってM5SticKCで倒立振子ロボ、これは

  けっこうやってる方います。

  ぼくも最初はモータドライバDRV8830使ってやってみました。

 

でもってRCサーボ、ローテーションサーボと動き比べたら・・・

  もちろん、サーボは反応遅いですがなんとかなるかなって感じがあって、、、

 ネットでみたとこRCサーボでやってるのは見当たらなかったので

  これは超簡単構成でちょいと自慢もできそう♪って始めたんです。

 

p.s.

そうそう。。。書いてて思い出した。。。

 メイカフェア東京で展示で簡単にできるんですねって話されては

 いや、実はこれ、電子工作教材の倒立振子ロボよりずっと難しいんですって

 興味持たれた方にはいろいろ説明してて、 言われたこと...

「完成度が高すぎるんです」 でした。

 電子工作感がまったくない。

  組立てもスナップフィットで簡単、電子部品的な物が表面にも

  全く出てない

  でもってディスプレイ表示にはニコニコ顔が出てる。

 「おもちゃ感しかない」でした。

  なもんで、M5Stack知らない

   子連れのお母さんとかにこれいくらくらいで

   売れそうですとか聞いたら 500円くらいかな? とか言われる。

 マイコンとか原価で4000円程掛かってますって言うとびっくりしてたな。。。

 

こちらなどは いかにも ”電子工作”  ですね...

 

M5SticKCを使ったキットもあります。

 こちらは駆動はモータドライバ、STMで制御され

 車輪が大きく加速もよく、固有振動数が低い構成

  車輪が大きいと等価振子半径が大きくなるので、

  見掛けの重心~接地点距離の半径よりゆっくり倒れます。

  倒れるのが接地点中心では倒れられなくて車輪が回って移動しないと

  倒れられない。。。

  倒れる回転運動エネルギーだけじゃなく水平移動にも運動エネルギーが

  必要なので、倒れる時の位置エネルギーが分散され遅くなります。。。

  なのでとても立たせやすくなるんです♪

 

たとえば・・・

そのBALA-C、仮にギヤモータの回転速度が3倍に上げれたとして、

その代わりに車輪を1/3の直径にすると速度、加速度は同じだけ出せても、

重心も低くなって振子等価長さも短くなるし、、、で

倒れる速さ、時間はかなり短くなるので制御は難しくなっていきます。