リンク

わたこさんの「ペンタ君」製作経過

わたこさんの「ペンタ君」製作の経過をまとめました
0
kern-gt @kern_gt

おそらく状態フィードバック制御っぽいです。 ただ、本体角度とホイール角度の微分値である角速度をフィードバックしてるのでPD制御の要素はあります。(自分素人なので話半分で) それにしてもこの可視化センス…すごい… twitter.com/WatakoLab/stat…

2020-03-13 17:52:37
わたこ @WatakoLab

VStoneさんの倒立振子「ビュートバランサー」の制御方法をブロック図にしてみました。 基本はPD制御で、左上の本体ゲインで立たせ、右上のタイヤゲインで位置固定、移動は左下の目標ホイール角速度を与え、右下のゲインで左右のタイヤ差を吸収、という理解でいいのかな…。間違ってたらごめんね。 pic.twitter.com/S0otGiOo0L

2020-03-12 19:50:57
kern-gt @kern_gt

@WatakoLab いえいえ、こちらこそ勉強になります! それと電流指示値の先に電流トルク制御をするためのPI制御が入ってるかなと思ってビュートバランサー2のソース読んで見たのですが、コンパイル済みのファイルのみ(libBalancer2_lib.a)でソースは非公開のようですね。ちょっと残念です

2020-03-13 18:36:07
わたこ @WatakoLab

@kern_gt 恐縮です😌 取説にブロック線図がありました。確かに、PI制御している?? pic.twitter.com/Wr0UZKS1mb

2020-03-13 18:42:00
拡大

かわいい UI

わたこ @WatakoLab

今日は進捗がないので、ペンタ君の地味なジャイロオフセット測定シーケンスでお茶を濁す作戦…。動画では台に置いてます(制御で倒立しているわけではない) 測定後の値はmicroSDに保存するんですが、その前に計測結果やMinMax値などの情報を表示して、保存か破棄かを選択できるほうが親切かな…。 pic.twitter.com/FqR3yJMY8h

2020-03-13 22:41:40
わたこ @WatakoLab

@AYouskin 表情と音声をつけたかったのですが、倒立時は処理時間的に余裕がないので、残念ながらあきらめました。

2020-03-14 21:03:46

実機動作

わたこ @WatakoLab

わたこ「…ペンタが立った!」 本体のピッチ角によるPID制御で、パラメータは動作をみながら適当に設定しました。 ついでに、車輪オドメトリと合わせてリアルタイム可視化をば。 デバイス的に倒立できることが分かったので、これでやっと物理シミュレーション勉強のスタートラインに立ったぞ…! pic.twitter.com/dqojcCdkT7

2020-03-14 16:51:18
わたこ @WatakoLab

実物と可視化したペンタ君を並べてみると、可視化したほうは高周波な動きが強すぎる?? ピッチ角はジャイロと加速度センサ値を一定の比率で混ぜて使っている(相補フィルタっていうのかな??)ので、ちとジャイロ成分が強いのかも…?

2020-03-14 16:59:30
わたこ @WatakoLab

制御や物理シミュレーションの勉強で数式ばっかり追っていると、心が折れる未来が見えるので、並行してペンタ君改造をば…。SLAM的なものも勉強したいのです…。 pic.twitter.com/uS1KyRPVTS

2020-03-14 19:42:01
拡大
わたこ @WatakoLab

@robotakao ありがとうございます😊 PID制御を試す前、傘を立てる要領で、手のひらでペンタ君の倒立を試みてたんですが、重心が低いせいか全然できずに「こんな適当な作りじゃだめかぁ」なんて諦めかけてました…。 意外と立つことができて、よかったです😆

2020-03-14 23:21:14
わたこ @WatakoLab

@M2fumi ちなみに、5Vですが爆走させるとこんな感じになります笑 これはこれで、面白いです😆ペンタダッシュ! ただ、倒立振子時の外乱に対して、どれくらい対応できるかはまだ分かりませんが…。 プロトタイプなので、これから色々と実験してみます😎 pic.twitter.com/JeJAuEhw9t

2020-03-14 23:53:02

制御理論

わたこ @WatakoLab

Datasheetからトルク定数を算出しようとして、混乱しています…。いくつか電流とトルク値のポイントがあるのですが、それぞれで算出される定数の値が異なってしまい…。ギアードモータだから、考慮すべき要因が別途あるのか、そもそも考え方が間違っているのか…。 ど素人丸出しでお恥ずかしい…。 pic.twitter.com/3juWLdovhf

2020-03-15 15:22:13
拡大
拡大
わたこ @WatakoLab

stall時が一致しないのは目をつむるとして、他の二つが一致しないのは…??? 実測する前に、データシート上での理論値を知りたかったんですが、とりあえず実測してみようかな…。

2020-03-15 15:34:18
FrostyDesign @FrostyDesign_JP

@WatakoLab 試験装置の構成が分からないので、負荷の与えかたの問題かわからないのですが、ギアの機械損失が回転数高いと大きくなっている可能性はありますね。

2020-03-15 15:38:01
わたこ @WatakoLab

@FrostyDesign_JP なるほど、回転数依存のギアの機械損失が影響している可能性も否定できないわけですね…。 ご助言頂き、ありがとうございます!

2020-03-15 15:43:54
わたこ @WatakoLab

@FrostyDesign_JP なるほど、回転数依存のギアの機械損失が影響している可能性も否定できないわけですね…。 ご助言頂き、ありがとうございます!

2020-03-15 15:43:54
botamochi @botamochi6277

@WatakoLab @FrostyDesign_JP あくまで,トルクが電流に比例するのは摩擦(機会損失)のない理想状態の話ですね. 減速機を入れれば,ギヤの数だけ摩擦によってトルクが落ちていきます.

2020-03-15 16:00:35
わたこ @WatakoLab

@botamochi6277 ご指摘ありがとうございます😌 そりゃそうですよね…。現状だと付け焼き刃感があるので、そもそもの基本的な所から勉強しようと思います😅ご助言、ありがとうございました😊

2020-03-17 03:54:33
わたこ @WatakoLab

知識の無さから、少し腰を据えて勉強する必要性を感じ…。 こちらの本で基礎知識を付けつつ、こちらの素晴らしい記事(qiita.com/fumiya_sato/it…)を参考に、まずはペンタ君のDCモータのパラメータ同定を目指そうと思います。 Matlab/Simulinkと、その関連書籍も購入したので、色々と頑張るぞ! pic.twitter.com/ynIiah8e1Y

2020-03-17 17:41:29
拡大
拡大
拡大
わたこ @WatakoLab

ペンタ君、ふと思いついた処理があって、実装してみたら意外と前後走行でけたゾ。 (コントローラで遠隔操作しています) しかし、今は適当にパラメータ決めてるだけなので、妥当性の確認と後学の為にも、ちゃんと勉強します…。 pic.twitter.com/2LqaVlsM04

2020-03-18 21:42:24
わたこ @WatakoLab

@lovyan03 SD内のデータをPCから普通に上書きしたり、新しく追加したりを何回か繰り返してると、ファイルが断片化するのか、読み出しが遅くなる現象に出くわします(当たり前っちゃ当たり前なのかしら🤔)。なので、何回かに一回はフォーマットしちゃってます😅

2020-03-20 15:48:42
わたこ @WatakoLab

@mongonta555 そうなんです、私もSD読み込みの間にウェイトを入れるようなモーションを作っていたときに「ファッ?!なんだかシーケンスのウェイト間隔が変わった!?」みたいにハマったことがあって😅 それ以来、ファイルの入れ替えを何回かしたらフォーマットするようにしています😋

2020-03-20 17:40:15
わたこ @WatakoLab

ペンタ君、結局五角形をどこに入れるか決まらぬまま、ほぼ完成してしまった…。 なので、最後にネコ耳ならぬペンタ耳をつけました。(ちょっと雑…🤔) これにて、ペンタ君のハードは完成としようと思います。 次の屈伸型二輪倒立振子に向けて、この子で色々評価してみる予定です😌 pic.twitter.com/RGtu8hPifn

2020-03-21 16:49:49
拡大