>100 Views
January 04, 26
スライド概要
箱庭はコア機能と5つのサブ機能で構成され、共有メモリでシミュレーションと通信を分離しリアルタイム性を確保しています。ドローンシミュレータはMAVLinkで外部フライトコントローラと連携し、XRデバイスやUnity/Unrealでの可視化、Python APIによる環境変化の制御が可能です。
おすすめタグ:シミュレーション,ドローン,ROS,MAVLink,XR
組込みエンジニアを30年以上やってます。 最近は、ドローンシミュレータの開発を行っており、箱庭ドローンシミュレータの開発をしています。
箱庭ドローンシミュレータ オーバービュー 箱庭を理解する上で最初に知っておくことの解説
目次 1. 最初に知っておこう 箱庭のアーキテクチャ 2. 次に理解しておこう 箱庭ドローンシミュレータの仕組み 2
箱庭のアーキテクチャ • 箱庭は様々な機能を統合して、統一した時間で動作させることを目的に作 られた「シミュレーション・ハブ」です。 3
箱庭の主要な機能 • 箱庭は、主に5つの機能から成り立ってます!! • 中核の機能「箱庭コア」 • 5つの機能を統合してリアルタイムOSのように各機能の「指揮者」の役割をします。 4
箱庭の主要な機能 • 箱庭機能のポイント:箱庭APIと箱庭PDU ROS IDL(Interface Definition Language)という 概念で実現されており、利用するROS IDLのmsg を定義することで、箱庭PDU生成プロセスが多言 語対応や通信ミドルに合わせた定義が生成してく れる。 箱庭PDUの概念を使うことで、異なる言語でもデータを やり取りが可能になる。 異なるPC間もユーザは意識することなく箱庭PDUを使っ てデータのやり取りが可能になる。 5
箱庭の主要な機能 • 箱庭機能のポイント:箱庭APIと箱庭PDU • シミュレータの柔軟性と拡張性 各アセット間での箱庭PDUのやり取りは共有メモリを 利用している。 共有メモリの利用によりシミュレーションランタイム と通信ランタイムを分離できることでリアルタイム性 を担保している。 UDP通信の例) 通信プロトコルを抽象化することでアセット側は通信 方法を意識することなく、共有メモリへのPDUデータ の読み書きだけで通信が実現できる。 6
箱庭ドローンシミュレータの仕組み 箱庭ドローンシミュレータの構造を学び、どんな仕組みで動作 しているかを学ぼう!! 7
箱庭ドローンシミュレータの仕組み • 箱庭ドローンシミュレータは「箱庭アセット」の1つとして実現されています。 8
箱庭ドローンシミュレータの仕組み • 箱庭ドローンシミュレータのアセット内の構成 9
箱庭ドローンシミュレータの仕組み • 離陸時の動作 10
箱庭ドローンシミュレータの仕組み • 飛行時の動作 11
箱庭ドローンシミュレータの仕組み • 着陸時の動作 12
箱庭ドローンシミュレータの仕組み • 外部のフライトコントローラとの連携 • commを介してmavlink通信にてドローン制御ができます。 13
箱庭ドローンシミュレータの仕組み • Quest3などXRデバイス単体での動作ができます。 • 箱庭ドローンシミュレータの最小構成を使うことで可能になります。 14
箱庭ドローンシミュレータの仕組み • 箱庭コアと連携することで様々なシーンのシミュレーションができます。 15
箱庭ドローンシミュレータの仕組み • 箱庭コアと連携することで様々なシーンのシミュレーションができます。 風・温度など 環境変化 Pythonを使った API制御 Unity/Unreal を使った視覚化 16
さて、この次は? 箱庭ドローンシミュレータを深堀していくよ! 乞うご期待! 17