Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転

covao
November 25, 2022

 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転

2022年11月25日 Design Solution Forum 2022 発表資料

Design Solution Forum 2022
https://dsforum.jp/2022/seminer/

畳一畳で走る!ミニ四駆ベースAIカー TatamiRacer
https://github.com/covao/TatamiRacer

covao

November 25, 2022
Tweet

Other Decks in How-to & DIY

Transcript

  1. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 ミニ四駆とラズベリーパイ、OSSの DonkeyCarを使ったDIY自動運転 小林 弘一(Koichi Kobayashi) Design Solution Forum

    2022 1
  2. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 はじめに 個人としてミニ四駆を使ったAIカー「TatamiRacer」を製作しています! 内容は、DonkeyCarといったAIカー、TatamiRacerの紹介です 2 タミヤさんのAIカー ミニ四駆ベースのTatamiRacer

  3. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 AIカーをはじめたきっかけ • ルネサスマイコンカーラリー(2008) • H8マイコンと赤外線センサーによるライントレース カー • 社内大会(エンジニア教育の一環)への参加

    • AIカーのイベント参加 (2020.1) • 「AIカー、虎ノ門で走る、駆け抜ける」 金沢工業大学虎ノ門キャンパス • AIカーの自作(2020.4~) • コロナ渦に突入… 自宅の狭いスペースで走るAIカーを模索 • 3Dプリンタを使い、ミニ四駆ベースの 畳一畳で走るAIカー「TatamiRacer」を製作 3
  4. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 ミニ四駆でAIカーを作りはじめたころ 4 • ミニ四駆にステアリングをつけ、ラジコンカーをつく るところから始めた • 2020年 ステイホーム、テレワークがはじまり、

    在宅時間が増える • 自宅の3Dプリンターフル稼働!→試作品の山
  5. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 ミニ四駆※ • タミヤの1/32スケール レーシングカーのプラモデル • カスタムパーツでオリジナルマシンを仕立て、コースでの速さを競う • 40年の歴史、ちびっこから大人まで…ブーム世代あり(アニメの影響?)

    5 ※ミニ四駆は株式会社タミヤの登録商標です https://www.youtube.com/c/MINI4WDチャンネル公式 https://www.youtube.com/watch?v=6F_3vcJ-Rpw
  6. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 DonkeyCar • オープンソースの自動運転AIカー(ホビー向け) • 3D Robotics社 クリスアンダーソン氏のコミュニティー •

    ラジコンカーを改造し、カメラ、コンピュータを載せて自動走行 • ディープラーニングにPythonベースのTensorflowを使用 • Pythonクラスのパーツでセンサやアクチュエータを組み合わせ ることで、カスタマイズ可能 6 https://www.donkeycar.com/ https://github.com/autorope/donkeycar/tree/main/donkeycar
  7. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 DonkeyCarのコミュニティー(Discord) • 最新のソフトウエアのアップデート情報など • ユーザーが自由に参加、投稿できる 7 Donkey Car

    Community https://www.donkeycar.com/community.html
  8. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 AIカーの仕組み(DonkeyCarの場合) 8 • ディープラーニングを使った画像認識技術(CNN)を応用 予測:ステアリング量、アクセル量 分類:犬 or 猫

    出力 入力 DonkeyCar
  9. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 TatamiRacer • ミニ四駆キット(VZシャーシ)を使った小型AIカー • DonkeyCarのソフトウエアを利用して自動走行 • 3Dプリンターで造形したパーツを使用 •

    オープンソースで公開(3Dデータ、部品表、コード) • 必要なパーツはすべてAmazonで購入可能 • 畳一畳スペース(Tatamiサーキット)で走行可能 • 好きなミニ四駆のボディ取り付けが可能 9 https://github.com/covao/TatamiRacer
  10. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 TatamiRacerのハードウエア • Raspberry Pi4搭載 • 電源はモバイルバッテリーのみ • 前方にカメラ

    • 低回転型130モーター使用(低電流化) • ステアリングは3Dプリントしたパーツとマイクロ サーボで実現 10
  11. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 海外でTatamiRacerを製作した例 11 • オープンソースハードウエアとしてGitHubで公開 3Dプリンタがあれば世界中どこでも作れる? • Discordでやりとりしながら、海外でパーツをプリ ントして作った人も

  12. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 デジタルファブリケーションサービスによるプチ量産 12 3Dパーツ (DMM.make クリエーターズマーケット) • 3Dデータを造形してくれるサービス •

    個人で3Dデータを登録、造形物を販売できる オリジナルのサーキットコース (REALFABRIC) • 生地のプリントサービス(手芸用など) • オリジナルのデザインを登録、生地の販売ができる データ登録するだけで一品から生産と販売が可能 https://make.dmm.com/item/1379287/ https://realfabric.jp/view.php?num=34273
  13. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 DMM.makeプリントサービスによるキット製作 • 産業用3Dプリンタのため高精度、高品質 • 3Dデータチェックあり 例)複数パーツのプリントにはランナーをつける必要がある • ボリュームを小さくすると費用を抑えられる

    13 https://make.dmm.com/blog/3dprinting-factory/
  14. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 TatamiRacerのソフトウエア • Pythonで記述されたDonkeyCarのソフトを使用 • manage.py(コントローラ)とmyconfig.py(パラメータ)のみカスタマイズ • ソースコード、セットアップ方法をGitHubに公開 14

    myconfig.py https://github.com/covao/TatamiRacer/blob/master/raspi/mycar/myconfig.py manage.py https://github.com/covao/TatamiRacer/blob/master/raspi/mycar/manage.py
  15. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 コントローラとキャリブレーション TatamiRacerのコントローラ ・発進時、コーナーリング時の出力アップとトルクの改善 キャリブレーション(TatamiRacer Test) • GUIで設定可能 •

    ステアリングのセンターポジションなどを調整 • 設定パラメータをmyconfig.pyに保存可能 15
  16. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 ユーザーインターフェース(Web UI) • DonkeyCopilot スマホでTatamiRacerを操作しやすくするためUIを改良 16 DonkeyCar標準WebUI 改良したUI

    https://github.com/covao/DonkeyCopilot
  17. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 自宅にTatamiサーキットを作って学習走行 • 畳一畳くらいのスペースでの走行可能 • ディープラーニングの学習用データは5周分くらい 17

  18. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 ディープラーニング学習 • 一般的には、GPUのあるPCやクラウドの環境で学習するのが効率的 • TatamiRacerでは、Raspberry Pi上のCPUで学習も可能(30分~1時間程度/5周分) 18

  19. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 走行会イベントの参加 19 • 2021.11 「AIでRCカーを走らせよう@秋葉原3331」に参加(Facebookコミュニティ) • もくもくと作業したり、RCカーが走行しているのを見学するだけでも楽しめる •

    TatamiRacerではビニールシートの”シワ”乗り越えが大変 AIでRCカーを走らせよう! https://www.facebook.com/groups/2249059025382644
  20. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 AIカーレースにチャレンジ! • Maker Faire Tokyo 2022 「AIでRCカーを走らせよう」 DonkeyCarの他、JetRacerなど本格的なマシンも多い

    • トヨタ技術会(有志団体) 自動運転ミニカーバトルのコース 20 https://www.youtube.com/watch?v=s3ll8Y1OPn8
  21. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 シミュレーターによる自動運転レース • 物理世界と仮想世界が融合し、デジタルツインのレースと なっていく可能性あり • 事例 Ansys社、自動車技術会など 21

    https://www.ansys.com/ja-jp/experiences/iacrace https://www.jsae.or.jp/PR/2022/PR22016/
  22. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 DonkeyCarのシミュレーターレース • Discordコミュティーで定期的に開催 • オープンソースのDonkeySim(Unityベース)を使用 • プレイヤーがシミュレータサーバーに接続し、レース走行 •

    トーナメント方式で対戦 22 https://www.youtube.com/watch?v=2vZBCjuhW8U https://www.meetup.com/diyrobocars/events/288881129/
  23. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 MATLAB Deep Learning Toolboxによる学習 23 • MATLABでDonkeyCarのディープラーニングのモデル(keras)を読み込み可能 •

    Deep Network Designerでニューラルネットワークを可視化、編集、学習ができる Qiita記事 DonkeyCarのディープラーニングモデルをMATLABでトレーニングしてみる https://qiita.com/covao/items/9f0c13106fa5bf4bb5de
  24. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 MATLAB/Simulinkを使ったAIカーのコントローラー • トップ階層だけのモデル規模で、シンプルに記述可能、理解しやすい • MATLAB用RaspbianイメージにDonkeyCarソフトをインストール可能 • コード生成により、Raspberry Piへ実装可能

    ※MATLAB Homeでも実装可能 Simulink Coderなどのライセンス不要 24 Qiita記事 DonkeyCarのディープラーニングモデルを MATLAB/Simulinkを使ってRaspberry Piに実装する https://qiita.com/covao/items/91bbb8a09c5462508b47
  25. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 ホビー向けAIカー(DonkeyCar)と自動運転車の比較 • ホビー向けAIカー(Donkey Car) • ディープラーニングで入力画像とステアリングやア クセル操作を学習させるだけで、そこそこ走る •

    機能分割がなく、シンプル(End to End) • DIYが容易 • 自動運転車 • 複数センサ(Lidarやカメラ)使用、複雑なシステム • 機能が分割がされている 自己位置推定、物体認識、車線認識など • DIYのハードルは高い 研究用途の改造RCカーでは、高度な自動運転車もあり 25 https://github.com/autowarefoundation/autoware
  26. A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転 さいごに 特別企画 AIカー製作体験 26 • Design Solution Forumのメンバーと準備

    • キットを組み立て、ディープラーニングによる走行を体験 https://dsforum.jp/2022/news/3329/