2023年8月14日、TOPPERS箱庭WG主催の箱庭合宿に参加してきましたので、今回はその中で議論した内容についてお話ししたいとお思います。
テーマ
- 大阪万博出展に向けた作戦会議
- SWEST25の出展内容・準備について
- ROSConJP2023の出展内容・準備について
- hakoniwa-baseのリファクタリングについて
- 箱庭のドローンシミュレーション対応について
大阪万博出展に向けた作戦会議
TOPPERS/箱庭WGでは、結成当初から、大阪万博出展を目標にしてきました。今回の合宿では、箱庭WGとしての出展の狙いや目的について話し合いをしました。これまで、箱庭のユーザは開発エンジニアがメインでしたが、大阪万博向けには一般来場者の方向けに箱庭のコンセプトを体験してもらえるように仕立てていく必要があります。話し合いの中では、以下のような内容の展示を目指したいというところでタイムアップとなりました。今後は、万博関係者の方々と話し合いしながら、調整・具体化を進めていく予定です。乞うご期待ください!
- 大阪万博出展を目指す背景・目的
- 「箱庭」という新しい開発スタイルや技術を大阪万博という場で体感してもらいたい
- 概要
- ターゲット:大阪万博入場者(親子)
- 内容:親子が一緒に箱庭空間に入って、モノづくりを体験する
- イメージ:
- 江戸時代にはやった箱庭のように、一般家庭でも試せる
- 心理療法で使われている箱庭のように、親子の間で新しい気づきが得られる • 大阪万博来場後も楽しめる
- ご家庭に帰られても、箱庭を同じように体験できる
- 体験できること:
- 箱庭というリアルとバーチャルを融合した環境で、親子の共同作業を促進できる
- 箱庭AIバディとのコラボレーションから、親子のコミュニケーションの促進や新しいの気づきがうまれる
SWEST25の出展内容・準備について
TOPPERS/箱庭WGでは、SWEST25のインタラクティブセッションにて、「複数ロボットシミュレーションのSTAMP/STPAでの活用」というタイトルにて、箱庭シミュレーション環境の展示を行います。
箱庭は、開発手法が異なる多様なシステムを混在してシミュレーションできます。そのため、STAMP/STPAが想定する複数のシステムが相互動作する仮想環境の構築に向いており、うまく適用できれば、安全分析分野での活用が期待できます。インタラクティブセッションでは、安全分析の事例にある踏切制御システムを構築して、想定するシナリオを実行できるシミュレーション環境を展示する予定です。
現在、鋭意開発中ですが、マイコンシミュレータAthrill上で動作する制御プログラムが、Unity上の電車と踏切に指示を出し、下図のように踏切を横断できるようになってきました。SWEST25に参加予定の方は、ぜひお立ち寄りください!
ROSConJP2023の出展内容・準備について
2023年9月26日(火)に開催されるROSCon JP 2023に、TOPPERSプロジェクトはブロンズスポンサーとして協賛しています。ROSCon JPは、ロボット開発プラットフォームであるROS(Robot Operating System)に関する開発者会議の日本版です。
今回の合宿では、箱庭WGの出展内容や準備物などについてディスカッションを行いました。
現在、箱庭のROS対応は新しいフェーズに入っています。これまでの箱庭(hakoniwa-ros2sim)では、Unityのプラグインを利用していましたが、次の箱庭では、mROS2 を組み込む予定です。これが実現できると、箱庭は mROS2 がサポートする組み込み機器とも連携できるようになりますので、箱庭の可能性が広がります。箱庭が、mROS2 を積極的に採用したいと思っている理由は以下のとおりです。
- 軽量であること
- 汎用OS上でも動作可能であること
- MacでもネィティブのROS2の通信ができるようになること
- 組込み機器との連携をROS2ベースで行えること
現時点の構想は下図のとおりですが、ROSCon JP 2023 の展示では、この一端をお見せできると思いますので、来場される方は是非お立ち寄りください!
hakoniwa-baseのリファクタリングについて
2023年1月の箱庭合宿にて誕生した hakoniwa-base という新リポジトリの話をしてきました。このリポジトリは、箱庭の基地(base)という位置付けから、このようなネーミングとなっています。箱庭は、さまざまな要素技術を組み合わせた統合分散シミュレーション環境ですので、それらをどう組み合わせして、実現したいシミュレータを作り上げるかというのが課題となってきます。
そこで、hakonwia-baseでは、やりたいことを json 等の定義ファイルで記述してジェネレータを起動すると、自動的に必要なリポジトリや Unity プラグインなどをインストールされてくるような環境にしたいと。そのためには、hakoniwa-baseは、さまざまな環境・構成に適応できるようなテンプレートを持つようなリポジトリになるだろう、と1月くらいに話し合っていました。
そして、2023年8月時点での箱庭開発を振り返ってみて、私の方から課題提起をさせていただきました。
- 箱庭のユースケースが定まっていない状態では、テンプレートの形を決めるのが難しい
- そのため、hakoniwa-baseの開発は、手を出しづらい
- 一方で、箱庭のUnity側の共通化/プラグイン化を見据えた以下のリポジトリはうまく行っている。
- https://github.com/toppers/hakoniwa-unity-ev3model
- https://github.com/toppers/hakoniwa-unity-drone-model
- 現時点では、hakoniwa-baseは、hakoniwa-conductorや hakoniwa-core-cpp-client 等の共通部品をサブモジュールとして管理しておくのが良いのではないだろうか?
上記課題に対して、ディスカッションした結果は以下のとおりです。
- hakoniwa-baseを共通部品として捉えるのは同意(今後、mros2を含めたhakoniwa-ros2pduも部品として統合していきたい)
- とはいえ、テンプレートも、よく使うものは共通部品として配置しておきたいので、現状の構想は将来的に育てていけば良いのではないか。
箱庭のドローンシミュレーション対応について
箱庭のアーキテクチャでは、物理シミュレータは選択できる構成にしています。現時点で、以下の物理シミュレータを利用できます。
1. Unity
2. Pybullet
上記に対して、より物理シミュレーションの精度が求められるドローンのシミュレーションに対して、箱庭がどう取り組むかをディスカッションしてきました。アイディアとしては、下図のようなアーキテクチャで望むのはどうかと話し合ってきました。
ドローンの物理モデルをMATLAB/Simulinkでコード生成し、箱庭と繋げるというアイディアです。この場合、Unityの位置付けは、ドローンの位置や姿勢をもとにビジュアライズするものになります。
上図の実現は、これまでの箱庭の要素技術を組み合わせすれば、それほど敷居は高くなく実現できてしまいます!と話したところ、方向性はOKということになりましたので、今後の箱庭ラボの活動としても是非取り組んでいきたいと考えています。乞うご期待ください!
最後に
今回お集まりいただいた合宿参加者の方々と議論している最中の風景です(左から、細合さん、福田さん、高瀬先生、高田光さん、久保秋さん)。手前に見えるのは、久保秋さんが、SWEST向けに作成された実機環境です。自分はいつもシミュレーション環境しか作っていなくて、実物をまだ直に見たことがありません。SWESTで実物が見れるとしたら楽しみです!
コメントを残す