2016-05-05 5 views
0

私はarduino mega2560を搭載した2輪のセルフバランシングロボットを実装しようとしています。 セルフバランシングロボットの実装方法

  • は、回転速度を正確
  • に設定された2つの車輪の回転速度を取得するロボット
  • の傾斜角度を取得

    • はこれまでのところ、私がすることができました

      私の計画は、PIDコントローラによって角度に応じて25msごとに車輪の速度を変更することでした。 しかし、多くのPIDパラメータを試した結果、ロボットがバランスをとることは不可能だとわかりました。

      私の質問は以下のとおりです。

      • は私の計画のいずれかの致命的なエラーがありますか?
      • もしそうでなければ、私はどのように私のPIDコントローラを調整できますか?
  • +0

    これは前にいくつかの研究が必要です...試行錯誤で実装しようとすると、正しいパラメータを見つける前にかなり古くなる可能性があります。システムのモデルを作成し、正しい制御手法を実装する必要があります。そして、あなたが尋ねる前に、私は理論的な情報しか持っていないので、私はそれをすることができません(私はそれを実装しようとは決してしませんでした;) – frarugi87

    +0

    ありがとう!私は試してみるよ! –

    答えて

    0

    あなたはほぼ正しい軌道に乗っています。本質的には、ジャイロスコープが必要です。これは角度誤差を与え、PIDコントローラで前後速度ベクトルを調整します。適切なパラメータで、それは動作するはずです。実際、これはすでにArduRollerというMake Magazineプロジェクトで行われています。ここでsource code on Githubとともにステップの詳細によって完全な手順は次のとおりです。

    http://makezine.com/projects/arduroller-self-balancing-robot/

    あなたは、このようなロボットを制御する方法の背後にある純粋な理論に取得したい場合、私はまた、MITの優れたコースUnderactuated Roboticsをお勧めします。