ラズパイ日記...19日目...9軸センサ(その3)

倒立振子のためにESP32をもう1個買いました。
あわせて片側6穴のブレッドボードも購入です。これで両側に配線が可能です。
左が新規購入した6穴、右がこれまで使ってた5穴です。5穴だとESP32の横幅が収まらずどちらかサイドのピンが使えなくなります。

 あとは、ArduinoIDEの新しいのは、シリアルデータをグラフにしてくれる機能があるようで、1.6.4から1.8.9にアップデートしました。
 
シリアルプロット試してみました。シリアルモニターからコマンド打って、シリアルにCSVデータが出力する状態でシリアルモニターをクローズして、シリアルプロットを立ち上げます。シリアルモニタとシリアルプロットは同時オープンできません。データ毎に色を変えてグラフにしてくれました。
加速度のx,y,z、ジャイロのx,y,xの6軸の状況です。センサをx方向とかy方向とか動かすと、それなりに反映されている感じです。

新規購入したESP32にもmicropythonを入れて、センサーを移し変えて配線をし直します。pythonコードもそのままコピーしてやれやれと思ったら、 センサ情報が出力されず、謎のエラーがでます。いろいろと確認したらI2CのSDA、SCLが逆になってました。
確認したつもりが、見直すと誤配線。配線は、少し間を置いて気分をリフレッシュしながら何度も要確認です。
モーター回路にも接続してモーター回ることを確認します。こちらは問題ありませんでした。
ということで、9軸センサとDCモータードライバーの配線は新しいESP32へ引越し終わりました。

センサーは、1方向の加速度とジャイロしか使わないので、x軸のみ加速度とジャイロ出力をグラフに出力して見てみます。

傾きが青線、加速度が赤線です。傾きにあわせて青線が動きます。早く動かすと赤線が上昇し、ゆっくり動かすと加速度は動きません。赤線は、微妙にオフセットされているので、これも補正しないとですね。
あとは、動かさなくても値が微妙に変化するので、感度を調整するか、制御ソフトで取捨選択するか考えないといけません。

2 件のコメント:

  1. 順調に進んでいるようですね。私のほうは小型で速いステッピングモータの到着待ちです。例によって購入先が中国なので、入手まで少し時間がかかりそうです。

    返信削除
    返信
    1. 少しずつ確認していかないと、不具合時の対処に結局時間がかかります。今日は1日モーターコントローラーと格闘してました。GW中には倒立してくれると予期してます。

      削除

ラズパイ日記...esp32(arduino)+mpu6050

# esp32で6軸センサー読み出し esp32で6軸センサーを読み出し、値をグラフ表示して動作を確認します。 ## 準備 ハード的な接続は、センサーが3.3V駆動できるので、3.3VとGNDの2線で電源供給します。I2C用にSDAとSCLのデータ線が必要ですが、esp...