---
title: Virtual Tsukuba Challenge on Unity について
tags: 
author: [Unity Technologies Japan](https://www.docswell.com/user/UnityJapan)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/4VEP523QE8.jpg?width=480
description: 自律移動ロボットの公開実験大会である「つくばチャレンジ」は2020年，コロナウイルスの影響によりオンラインでの開催が決定し，シミュレータを用いた実験（Virtual Tsukuba Challenge（VTC））が案内されています．本講演では，VTCをUnity上に再現し，かつRobot Operating System（ROS）との連携を行うための方法をご紹介します．ロボットモデルの再現，センサのシミュレート，Unityとの通信方法についてご紹介し，Unityにおける利点や課題，将来展望について発表します。
published: October 19, 20
canonical: https://www.docswell.com/s/UnityJapan/ZWLYRK-virtual-tsukuba-challenge-on-unity-238911580
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/4VEP523QE8.jpg)

Virtual Tsukuba Challenge on Unity
2020.10.10
筑波大学
田中 良道
桑野 僚大


# Page. 2

![Page Image](https://bcdn.docswell.com/page/L27VPD4P7Q.jpg)

自己紹介
1
田中 良道（Ryodo Tanaka）
•
•
•
•
所属：筑波大学（学生）
研究：Multi Contact Motion Planning
趣味：クラリネット演奏
Twitter：@Ryodo Tanaka
↑最近買った犬ロボ
← 高2の頃の様子
現在はここから +20kg...
桑野 僚大（Tomohiro Kuwano）
• 所属：某自動車メーカー
• 趣味：電子工作，プログラミング … etc
• Twitter：@calm0815


# Page. 3

![Page Image](https://bcdn.docswell.com/page/Z5JGPY1QJL.jpg)

Virtual Tsukuba Challenge on Unity ... ? 2
つくばチャレンジ
•
•
•
•
•
2007年より開催
つくば市内で開催
自律移動ロボットの大実験大会
交通規制などは無し！
安全・確実に動作するロボットの開発
つくばチャレンジ2018のコース．全長約2kmある
Virtual Tsukuba Challenge • 2020年はコロナの影響で実機大会中止…
• シミュレーション環境での開催
• 千葉工業大学 fuRo により 2018年から提唱・開発
• 2020年大会の公式シミュレータ（UE4）
Virtual Tsukuba Challenge on Unity
Virtual Tsukuba Challenge の様子（公式Githubより引用）
• Virtual Tsukuba Challenge の Unity 版
• 2020年大会の公式シミュレータに….！


# Page. 4

![Page Image](https://bcdn.docswell.com/page/V47Q2MDWEP.jpg)

つくばチャレンジで使われる機体（例）
3
ハードウェア
• 動き回れる（２～６時間）
• 歩道を走破できる
• 周辺環境認識センサがついている
• 自律移動のための計算機がついている
ソフトウェア
• プログラムの統合・通信がやりやすい
• プログラムの再利用を行いたい … etc


# Page. 5

![Page Image](https://bcdn.docswell.com/page/DKE4LVZ1E1.jpg)

ROSとシミュレータについて
• Robot Operating System の略称
• OSというよりミドルウェア
ツール ………… 分散型計算システム
基盤
起動，監視，デバッグ，視覚化，… etc
…………… 移動，操作，認識， … etc
を中心としたライブラリを提供
エコシステム … 世界中の開発者とライブラリを共有
パッケージリリース規則なども充実
Gazebo
Ignition
•
•
•
•
•
4
ROSとのインテグレーションが簡単
Unityに比べると重たい（動作・起動共に）
大規模環境は作りづらい
簡単なAsset追加がやりづらい
レンダリングが貧弱
• レンダリング等良くなりそう
• インテグレーションが現段階では大変


# Page. 6

![Page Image](https://bcdn.docswell.com/page/PL71L3R57G.jpg)

なぜUnityを使うのか？
•
•
•
•
•
•
5
大規模マップが作れる！
Gazeboに比べて軽量
Asset Store が利用できる
レンダリングがキレイ
VRとのインテグレーションもできそう…！
Unity触ってみたい
Unity + ROS で Virtual Tsukuba Challenge
をやると面白そう！


# Page. 7

![Page Image](https://bcdn.docswell.com/page/8G7WVP1WE2.jpg)

vtc_unity の概要
Unity
6
Rviz，rqt


# Page. 8

![Page Image](https://bcdn.docswell.com/page/W4JZ4KP2E3.jpg)

パッケージ構成
7
vtc_unity
vtc_world_unity
統合パッケージ
sensors_unity
unit04_unity
環境パッケージ
センサパッケージ
ロボットパッケージ
点群から生成
つくば市役所周辺
公園はUpdate中！
•
•
•
•
•
•
3D LiDAR
RGB Camera
IMU (6 Axis)
•
•
ROS# を利用
URDFから作成可能
環境・センサ・ロボット
自由に組み合わせ可能！（※ROS1 の利用が前提）


# Page. 9

![Page Image](https://bcdn.docswell.com/page/KYE63Q46EV.jpg)

環境データの構築
Point Cloud Data
約1,400万点
by 防衛大学 冨沢研究室（Stencil 2.0）
8
Blender (≥2.8)
メッシュ化
less than 10,000ポリゴン
モデル化
オブジェクト配置


# Page. 10

![Page Image](https://bcdn.docswell.com/page/5GE5LRQ5J4.jpg)

ロボットモデルの構築
9
• テクスチャ
• 衝突モデル
• Joint設定
URDF
（Unified Robot Description Format）
• xml記法のファイル
• あらゆるプログラムが参照
API[1]
は自動生成
• 質量情報
は手動生成
• センサモデル
[1] https://github.com/siemens/ros-sharp/wiki/User_App_ROS_TransferURDFFromROS


# Page. 11

![Page Image](https://bcdn.docswell.com/page/V972LDPGER.jpg)

センサモデルの構築
10
sensors_unity[2]
3D LiDAR
6Axis IMU
RGB Camera
RGBD Camera
2D LiDAR・Wheel Odometry
は近日実装予定
Inamura, T et. at. al [3] Figure.3 より引用
[2] https://github.com/Field-Robotics-Japan/sensors_unit
[3] Inamura, T. and Mizuchi, Y., 2020. SIGVerse: A cloud-based VR platform for research on social and embodied human-robot
interaction. arXiv preprint arXiv:2005.00825.


# Page. 12

![Page Image](https://bcdn.docswell.com/page/5DJYQ25GEM.jpg)

UnityとROSの通信
11
通常のトピック通信と同じ
Publish/Subscribe
rosbridge_server
HTTP
複数PC間での通信が可能
websocket
Serialize/Deserialize
Unityが起動する
すべてのOSで起動可能！！


# Page. 13

![Page Image](https://bcdn.docswell.com/page/2V7NK8N878.jpg)

シミュレータ構築の難所（環境づくり）
12
同じ木のモデルでも
計測したものは平たいメッシュを観測している…
上：点群，下：メッシュモデル
木等の複雑形状の計測はどうする？
そもそも木の除去も大変！


# Page. 14

![Page Image](https://bcdn.docswell.com/page/GYJ9VKRX73.jpg)

シミュレータ構築の難所（環境づくり）
13
同じ木のモデルでも
計測したものは平たいメッシュを観測している…
上：点群，下：メッシュモデル
木等の複雑形状の計測はどうする？
そもそも木の除去も大変！


# Page. 15

![Page Image](https://bcdn.docswell.com/page/5GJ8PRW9JD.jpg)

シミュレータ構築の難所（環境づくり）
単純化（手動）した領域
まだ単純化
していない領域
点群
三角メッシュ化（再近傍）
メッシュの単純化
大事な処理のほとんどが手動…とても大変…orz
14


# Page. 16

![Page Image](https://bcdn.docswell.com/page/MLJL1KNMJR.jpg)

シミュレータ構築の難所（通信）
15
Publish/Subscribe
rosbridge_server
Serialize / Deserialize
でJSON（Text）に変換…
HTTP
websocket
Serialize/Deserialize
通信速度が下がる原因に


# Page. 17

![Page Image](https://bcdn.docswell.com/page/547MW2X6JW.jpg)

シミュレータ構築の難所（LiDAR）
VTC on Unity
平面プレート
の形状を観測…
16
• 通信速度が遅い（前述）
• 葉っぱなどのモデルが単調
• レーザー強度モデル無し
VTC (UE4) by fuRo
• 通信速度が速い（並列処理）
• レーザー強度モデル有り[4]
[4] 吉田 智章, 原 祥尭, “移動ロボットシミュレータにおける 3D Lidar の受光強度シ
ミュレーション”, ROBOMECH 2020, 2020.


# Page. 18

![Page Image](https://bcdn.docswell.com/page/ZP7RYMNNJ9.jpg)

今後のUpdate（予定）
17
vtc_world_unity（環境）
• 公園エリアの作りこみ
• 各種Objectの配置
sensors_unity（センサ）
•
•
•
•
レーザー強度（LiDAR）の実装
ノイズの付加
GPSセンサの追加
通信規格の修正・軽量化
更新内容は
Twitterにて公開！
＠RyodoTanaka
unit04_unity（ロボット）
• URDFからのモデル作成方法マニュアルの追加
その他
• NPCの追加
• オンラインNPC・ロボットの追加


# Page. 19

![Page Image](https://bcdn.docswell.com/page/NPJXGVN8EX.jpg)

公開場所（LICENSE : Appache 2.0）
vtc_world_unity（環境）
https://github.com/Field-Robotics-Japan/vtc_world_unity
sensors_unity（センサ）
https://github.com/Field-Robotics-Japan/sensors_unity
unit04_unity（ロボット）
https://github.com/Field-Robotics-Japan/unit04_unity
vtc_unity（統合）
https://github.com/Field-Robotics-Japan/vtc_unity
お気軽にContributeお願いします！
18


# Page. 20

![Page Image](https://bcdn.docswell.com/page/63JK4QNLED.jpg)

今後の展望と募集
19
• VRを使ってWorldの中に入りたい！
• Assetを増やしてリアルな街をもっと作りこみたい！
• NAT超えで複数人・複数台オンラインシミュレーションしてみたい！
• 重機のシミュレーションもやってみたい！ ⇒
Mogu Live : https://www.moguravr.com/cluster_repo/
https://arav.jp/
Vortex Simulator : https://www.youtube.com/watch?v=TkiekFf5970
ゲームエンジニアの方大募集中！！！


