Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

EV3 + MonoBrick + C#

1,181 views

Published on

LEGO Mindstroms EV3 に MonoBrick を入れて C# で倒立振子ロボットを動かします。

Published in: Technology
  • Be the first to comment

  • Be the first to like this

EV3 + MonoBrick + C#

  1. 1. EV3+MonoBrick+C# Microsoft MVP .NET Tomoaki Masuda Moonmile Solutions
  2. 2. 倒立振子ロボットを動かす  LEGO Mindstorms EV3 で 倒立振子ロボットを動かす
  3. 3. MonoBrickな話
  4. 4. LEGO Mindstorms EV で倒立振子  レゴ® マインドストーム® で地球を探査  ET ロボコン 用の EV3 サポートサイト  Microsoft の探査ロボットや ET ロボコンの制御に MonoBrick が使われている。
  5. 5. MonoBrickをインストール  BALANC3R のコードを C# に移植する  moonmile/MonoBalancer 移植コード
  6. 6. MonoBrickをインストール  MonoBrick.DK から SDメモリイメージをダウ ンロード  EV3 上に Linux + Mono 環境を 作れる。 .NET Framework 4.0 相当 async/await がない orz
  7. 7. Bluetooth で接続  Bleutooth で アクセスポイント接続  MonoBrick へ 10.0.1.1 で 接続できる
  8. 8. Xamarin Studio で起動  Xamarin Add-in を入れると Xamarin Studio からデバッグ実行できる
  9. 9. Visual Studio + WinSCP  Visual Studio 上でビルドして、 WinSCP でコピーする
  10. 10. Tera Term で起動  10.0.1.1 に SSH 接続  Tera Term で動く
  11. 11. 制御工学のキツイ話 倒立振子ロボットが、なぜ倒立するかを自力で解く
  12. 12. 制御工学な話  運動方程式  簡易的に二次元で解く  ラグラジュアン方程式で解く  (x, y) → (θ, φ)  状態方程式  車輪の角速度(θ), 本体の角度(φ)  PID制御  Kp, Ki, Kd  モーター制御(PWM パワー)
  13. 13. 座標系 R θ φ L M, Jφ m, Jw x y yb ym m: 車輪の質量 R: 車輪の半径 M: 車体の質量 L: 重心までの距離 Jw: mR2/2 車輪モーメント Jφ: ML2/3 車体モーメント
  14. 14. 運動方程式
  15. 15. 運動、位置、回転エネルギー
  16. 16. ラグランジュ方程式で (x,y)を(θ,φ)へ
  17. 17. 倒立状態なので φ≃0 と考える
  18. 18. 連立方程式を解くと状態方程式が出る(未)
  19. 19. 制御工学  現在値から目的の値へ近づける ブロック線図 フィードバック制御 はじめての制御工学から引用
  20. 20. PID制御  時刻tが入る  ラプラス変換する はじめての制御工学から引用
  21. 21. ナイキストの安定判別法で導出(未)  Kp: t時点での誤差  Ki: t時点までの誤差積分  Kd: t時点の微分値
  22. 22. 誤差を調節して倒立
  23. 23. 参考文献  ET ロボコン 用の EV3 サポートサイト http://sourceforge.net/p/etroboev3/wiki/MonoBrickWin/  レゴ® マインドストーム® で地球を探査 https://channel9.msdn.com/Series/Microsoft-Virtual-Academy-Japan/lego-mindstorms-programming-curriculum  MonoBrick EV3 Firmware & Xamarin Add-in http://www.monobrick.dk/software/ev3firmware/  NXTway-GS (Self-Balancing Two-Wheeled Robot) Controller Design http://www.mathworks.com/matlabcentral/fileexchange/19147-nxtway-gs--self-balancing-two-wheeled-robot--controller- design  ダウンロード - レゴ®マインドストーム LEGO.com http://www.lego.com/ja-jp/mindstorms/downloads  倒立振子の研究 http://www.instructables.com/id/%E5%80%92%E7%AB%8B%E6%8C%AF%E5%AD%90%E3%81%AE%E7%A0%94%E7%A9%B6/  みのくらロボット http://minokura.net/works/wheelpendulum.html  はじめての制御工学 (KS理工学専門書) http://www.amazon.co.jp/ebook/dp/B00TZ8X61I/  ラグランジュ方程式の利点 http://homepage2.nifty.com/eman/analytic/lagrange2.html

×