倒立振子の母体は完成し、センサー出力とDCモーターは連動することまでは確認できました。ただ、このままでは倒立しません。センサーとモーター出力を調整する必要があります。
とりあえず、センサー出力を可視化して眺めてみます。
ジャイロの出力が急峻なのでLPFで滑らかに、加速度は出力をそのまま使うのではなく、角度情報に変換して活用します。
加速度センサーから角度への変換はこちらを参考に
https://garchiving.com/angle-from-acceleration/
micropythonでCtrl-Cを掴んで、終了処理をする方法については以下を。これをいれないとモーターが動きっぱなしになります。
https://qiita.com/keisuke-nakata/items/e77b123d75d4b52aac77
当初のセンサー出力です。センサー出力そのままです。
青線が加速度、赤線がジャイロの出力です。傾きとジャイロの方向は合っています。
このジャイロ出力にLPFを、加速度はatan2(dx,dy)を計算すると角度になるということで、その結果を入れたのがこちら。
ジャイロ出力がマイルドになり、加速度も角度に変換したので、滑らかに角度を表してます。
これで、加速度とジャイロの係数、LPFの係数、モーターの駆動時間等を変化させながら、最適値を探りましたが、最適値にはたどり着かずです。
これで最適値を探す旅もつらい感じなので、まずはボディーの低重心化をして再挑戦したいと思います。
ざくっとは、こんな感じです。結構重心は下がりました。
BEFORE(高重心版)
AFTER(低重心版)
小型PCのRasspberyPiや各種マイコン(ESP32,STM32)をベースに、Ambientクラウドを連携させたり、モーターやセンサーを連動させたりします。環境構築や出来ましたをまとめたblogです。
登録:
コメントの投稿 (Atom)
ラズパイ日記...esp32(arduino)+mpu6050
# esp32で6軸センサー読み出し esp32で6軸センサーを読み出し、値をグラフ表示して動作を確認します。 ## 準備 ハード的な接続は、センサーが3.3V駆動できるので、3.3VとGNDの2線で電源供給します。I2C用にSDAとSCLのデータ線が必要ですが、esp...
-
師匠に触発されて、9軸センサー購入しました。 動き系のセンサーは、どんなものか調べてみるのと、動力系と合わせて倒立振子をつくってみようと思ってます。 どんなものかは、Youtubeに沢山出てます。 センサー情報を元にモーターを制御するのはいろいろと難しい感じですが、結構...
-
# STM32F303K8ボードでCAN通信を しばらく「ラズパイ日記」の更新滞っていましたが、また始めます。昨年バイクを買ったのでそのデータを吸い出して 走行データと一緒に可視化できればと思い始めました。マイコンも新しい小型なものを購入し動作確認から始めたいと思います。 ...
-
一通りの配線確認を行い、それなりにセンサーの値を読み取り、モーターも正転、逆転できるところまではきました。 本体を組み立てていきます。 まずは、ギヤボックス。ネジ位置が板とあわないので、カッターでちょっと切り欠きます。後ろにプラスチックの板でユニバーサルプレートをネジ...
0 件のコメント:
コメントを投稿