2022年11月25日 Design Solution Forum 2022 発表資料
Design Solution Forum 2022 https://dsforum.jp/2022/seminer/
畳一畳で走る!ミニ四駆ベースAIカー TatamiRacer https://github.com/covao/TatamiRacer
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転小林 弘一(Koichi Kobayashi)Design Solution Forum 20221
View Slide
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転はじめに個人としてミニ四駆を使ったAIカー「TatamiRacer」を製作しています!内容は、DonkeyCarといったAIカー、TatamiRacerの紹介です2タミヤさんのAIカーミニ四駆ベースのTatamiRacer
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転AIカーをはじめたきっかけ• ルネサスマイコンカーラリー(2008)• H8マイコンと赤外線センサーによるライントレースカー• 社内大会(エンジニア教育の一環)への参加• AIカーのイベント参加 (2020.1)• 「AIカー、虎ノ門で走る、駆け抜ける」金沢工業大学虎ノ門キャンパス• AIカーの自作(2020.4~)• コロナ渦に突入…自宅の狭いスペースで走るAIカーを模索• 3Dプリンタを使い、ミニ四駆ベースの畳一畳で走るAIカー「TatamiRacer」を製作3
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転ミニ四駆でAIカーを作りはじめたころ4• ミニ四駆にステアリングをつけ、ラジコンカーをつくるところから始めた• 2020年 ステイホーム、テレワークがはじまり、在宅時間が増える• 自宅の3Dプリンターフル稼働!→試作品の山
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転ミニ四駆※• タミヤの1/32スケール レーシングカーのプラモデル• カスタムパーツでオリジナルマシンを仕立て、コースでの速さを競う• 40年の歴史、ちびっこから大人まで…ブーム世代あり(アニメの影響?)5※ミニ四駆は株式会社タミヤの登録商標ですhttps://www.youtube.com/c/MINI4WDチャンネル公式https://www.youtube.com/watch?v=6F_3vcJ-Rpw
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転DonkeyCar• オープンソースの自動運転AIカー(ホビー向け)• 3D Robotics社 クリスアンダーソン氏のコミュニティー• ラジコンカーを改造し、カメラ、コンピュータを載せて自動走行• ディープラーニングにPythonベースのTensorflowを使用• Pythonクラスのパーツでセンサやアクチュエータを組み合わせることで、カスタマイズ可能6https://www.donkeycar.com/https://github.com/autorope/donkeycar/tree/main/donkeycar
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転DonkeyCarのコミュニティー(Discord)• 最新のソフトウエアのアップデート情報など• ユーザーが自由に参加、投稿できる7Donkey Car Community https://www.donkeycar.com/community.html
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転AIカーの仕組み(DonkeyCarの場合)8• ディープラーニングを使った画像認識技術(CNN)を応用予測:ステアリング量、アクセル量分類:犬 or 猫出力入力DonkeyCar
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転TatamiRacer• ミニ四駆キット(VZシャーシ)を使った小型AIカー• DonkeyCarのソフトウエアを利用して自動走行• 3Dプリンターで造形したパーツを使用• オープンソースで公開(3Dデータ、部品表、コード)• 必要なパーツはすべてAmazonで購入可能• 畳一畳スペース(Tatamiサーキット)で走行可能• 好きなミニ四駆のボディ取り付けが可能9https://github.com/covao/TatamiRacer
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転TatamiRacerのハードウエア• Raspberry Pi4搭載• 電源はモバイルバッテリーのみ• 前方にカメラ• 低回転型130モーター使用(低電流化)• ステアリングは3Dプリントしたパーツとマイクロサーボで実現10
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転海外でTatamiRacerを製作した例11• オープンソースハードウエアとしてGitHubで公開3Dプリンタがあれば世界中どこでも作れる?• Discordでやりとりしながら、海外でパーツをプリントして作った人も
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転デジタルファブリケーションサービスによるプチ量産123Dパーツ (DMM.make クリエーターズマーケット)• 3Dデータを造形してくれるサービス• 個人で3Dデータを登録、造形物を販売できるオリジナルのサーキットコース (REALFABRIC)• 生地のプリントサービス(手芸用など)• オリジナルのデザインを登録、生地の販売ができるデータ登録するだけで一品から生産と販売が可能https://make.dmm.com/item/1379287/https://realfabric.jp/view.php?num=34273
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転DMM.makeプリントサービスによるキット製作• 産業用3Dプリンタのため高精度、高品質• 3Dデータチェックあり例)複数パーツのプリントにはランナーをつける必要がある• ボリュームを小さくすると費用を抑えられる13https://make.dmm.com/blog/3dprinting-factory/
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転TatamiRacerのソフトウエア• Pythonで記述されたDonkeyCarのソフトを使用• manage.py(コントローラ)とmyconfig.py(パラメータ)のみカスタマイズ• ソースコード、セットアップ方法をGitHubに公開14myconfig.pyhttps://github.com/covao/TatamiRacer/blob/master/raspi/mycar/myconfig.pymanage.pyhttps://github.com/covao/TatamiRacer/blob/master/raspi/mycar/manage.py
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転コントローラとキャリブレーションTatamiRacerのコントローラ・発進時、コーナーリング時の出力アップとトルクの改善キャリブレーション(TatamiRacer Test)• GUIで設定可能• ステアリングのセンターポジションなどを調整• 設定パラメータをmyconfig.pyに保存可能15
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転ユーザーインターフェース(Web UI)• DonkeyCopilot スマホでTatamiRacerを操作しやすくするためUIを改良16DonkeyCar標準WebUI 改良したUIhttps://github.com/covao/DonkeyCopilot
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転自宅にTatamiサーキットを作って学習走行• 畳一畳くらいのスペースでの走行可能• ディープラーニングの学習用データは5周分くらい17
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転ディープラーニング学習• 一般的には、GPUのあるPCやクラウドの環境で学習するのが効率的• TatamiRacerでは、Raspberry Pi上のCPUで学習も可能(30分~1時間程度/5周分)18
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転走行会イベントの参加19• 2021.11 「AIでRCカーを走らせよう@秋葉原3331」に参加(Facebookコミュニティ)• もくもくと作業したり、RCカーが走行しているのを見学するだけでも楽しめる• TatamiRacerではビニールシートの”シワ”乗り越えが大変AIでRCカーを走らせよう! https://www.facebook.com/groups/2249059025382644
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転AIカーレースにチャレンジ!• Maker Faire Tokyo 2022 「AIでRCカーを走らせよう」DonkeyCarの他、JetRacerなど本格的なマシンも多い• トヨタ技術会(有志団体) 自動運転ミニカーバトルのコース20https://www.youtube.com/watch?v=s3ll8Y1OPn8
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転シミュレーターによる自動運転レース• 物理世界と仮想世界が融合し、デジタルツインのレースとなっていく可能性あり• 事例 Ansys社、自動車技術会など21https://www.ansys.com/ja-jp/experiences/iacrace https://www.jsae.or.jp/PR/2022/PR22016/
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転DonkeyCarのシミュレーターレース• Discordコミュティーで定期的に開催• オープンソースのDonkeySim(Unityベース)を使用• プレイヤーがシミュレータサーバーに接続し、レース走行• トーナメント方式で対戦22https://www.youtube.com/watch?v=2vZBCjuhW8Uhttps://www.meetup.com/diyrobocars/events/288881129/
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転MATLAB Deep Learning Toolboxによる学習23• MATLABでDonkeyCarのディープラーニングのモデル(keras)を読み込み可能• Deep Network Designerでニューラルネットワークを可視化、編集、学習ができるQiita記事 DonkeyCarのディープラーニングモデルをMATLABでトレーニングしてみるhttps://qiita.com/covao/items/9f0c13106fa5bf4bb5de
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転MATLAB/Simulinkを使ったAIカーのコントローラー• トップ階層だけのモデル規模で、シンプルに記述可能、理解しやすい• MATLAB用RaspbianイメージにDonkeyCarソフトをインストール可能• コード生成により、Raspberry Piへ実装可能※MATLAB Homeでも実装可能 Simulink Coderなどのライセンス不要24Qiita記事 DonkeyCarのディープラーニングモデルをMATLAB/Simulinkを使ってRaspberry Piに実装するhttps://qiita.com/covao/items/91bbb8a09c5462508b47
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転ホビー向けAIカー(DonkeyCar)と自動運転車の比較• ホビー向けAIカー(Donkey Car)• ディープラーニングで入力画像とステアリングやアクセル操作を学習させるだけで、そこそこ走る• 機能分割がなく、シンプル(End to End)• DIYが容易• 自動運転車• 複数センサ(Lidarやカメラ)使用、複雑なシステム• 機能が分割がされている自己位置推定、物体認識、車線認識など• DIYのハードルは高い研究用途の改造RCカーでは、高度な自動運転車もあり25https://github.com/autowarefoundation/autoware
A2 ミニ四駆とラズベリーパイ、OSSのDonkeyCarを使ったDIY自動運転さいごに 特別企画 AIカー製作体験26• Design Solution Forumのメンバーと準備• キットを組み立て、ディープラーニングによる走行を体験https://dsforum.jp/2022/news/3329/