VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(デモ操作①)

# 前回の記事
前回はOpen-RMF導入までを実施をしました。  
[VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(Open-RMF導入編)](https://qiita.com/SeagullShingo/items/59914f1a99acb0935f8a)

今回は簡単ですがデモ動かしていきたいと思います。
デモ操作が分かってきたら色々と応用させていきたいと思いますが、まずは動かすところから。

# 手順
1. ホストOS(Windows11)準備  
2. ゲストOS(Ubuntu 22.04(LTS))準備   
3. ROS2導入 
4. Open-RMF導入　
5. デモ操作　**←今回はここの内容**

思いのほか長くなりそうだったので、いくつかの記事に分割しています。

[VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(準備編)](https://qiita.com/SeagullShingo/items/2f3029b30d747da00afa)
[VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(ROS2導入編)](https://qiita.com/SeagullShingo/items/6e296a6f64c2bf9a56ea)
[VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(Open-RMF導入編)](https://qiita.com/SeagullShingo/items/59914f1a99acb0935f8a)
[VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(デモ操作①)](https://qiita.com/SeagullShingo/items/221d068ee872d0cd584a)
[VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(デモ操作②)](https://qiita.com/SeagullShingo/items/17a6c5c962287e97aaca)

## 5.デモ操作

下記を参考にデモを操作していきます。今回は「Hotel World」を試します。
https://github.com/open-rmf/rmf_demos


### デモ実行

ターミナルから下記のコマンドを実行します。
```
source ~/rmf_ws/install/setup.bash
ros2 launch rmf_demos_gz_classic hotel.launch.xml
```

RvizとGazeboが起動します。
両方の画面を通してL1階には4台程度のロボットが確認できました。

Rviz
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/225931/ae70b264-83cc-ac42-e03d-dd9270db010c.png)


Gazebo
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/225931/dec7b06d-56ed-4e48-a614-e702873c175d.png)

別のターミナルから下記のコマンドを実行し、ロボットに命令を出してみます。
```
source ~/rmf_ws/install/setup.bash
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby --use_sim_time
```

<!-- open属性あり -->
<details><summary>別ターミナルから命令を出すログ(一部抜粋)</summary>

```rb
ubuntu@ubuntu2204:~$ source ~/rmf_ws/install/setup.bash
ubuntu@ubuntu2204:~$ ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby --use_sim_time
[INFO] [1714644843.799054461] [task_requester]: Using Sim Time
[INFO] [1714644843.810183076] [task_requester]: Using 'dispatch_task_request'
Json msg payload: 
{
  "type": "dispatch_task_request",
  "request": {
    "unix_millis_earliest_start_time": 0,
    "category": "clean",
    "description": {
      "zone": "clean_lobby"
    }
  }
}

Got response:
{'state': {'booking': {'id': 'clean.dispatch-0', 'unix_millis_earliest_start_time': 0}, 'category': 'clean', 'detail': {'zone': 'clean_lobby'}, 'dispatch': {'errors': [], 'status': 'queued'}, 'status': 'queued', 'unix_millis_start_time': 0}, 'success': True}

ubuntu@ubuntu2204:~$ 

```
</details>

<!-- open属性あり -->
<details><summary>ROSが動いているターミナルのログ(一部抜粋)</summary>
タスクを受信しているのが確認できた。

```rb
[rmf_task_dispatcher-13] [INFO] [1714644844.738224134] [rmf_dispatcher_node]:  - Start new bidding task: clean.dispatch-0
[fleet_adapter-16] [INFO] [1714644844.738931149] [cleanerBotA_fleet_adapter]: [Bidder] Received Bidding notice for task_id [clean.dispatch-0]
[fleet_adapter-16] [INFO] [1714644844.739311142] [cleanerBotA_fleet_adapter]: Planning for [2] robot(s) and [1] request(s)
[fleet_adapter-16] [INFO] [1714644844.776491811] [cleanerBotA_fleet_adapter]: Submitted BidProposal to accommodate task [clean.dispatch-0] by robot [cleanerBotA_1] with new cost [197.326214]
[fleet_adapter-18] [INFO] [1714644844.743928768] [tinyRobot_fleet_adapter]: [Bidder] Received Bidding notice for task_id [clean.dispatch-0]
[fleet_adapter-20] [INFO] [1714644844.744694447] [deliveryRobot_fleet_adapter]: [Bidder] Received Bidding notice for task_id [clean.dispatch-0]

```
</details>

自分の構築したマシンが非力なのか、かなりゆっくりと動き始めました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/225931/4fd11c74-ae7e-5c4b-7899-7af7e096463c.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/225931/ea676dcb-9e3e-3043-dbe7-b60926396028.png)

かなりマシンが悲鳴を上げていましたが、無事にデモが動いてくれました。
メモリというよりCPUが100%張り付きになる感じだったので、リソースに余裕があればCPUを増やしてあげた方がよいと思いました。
　
色々とデモを動かしてみてもう少し深くOpen-RMFについて調査してみようと思います。
何か記事にできる内容あれば随時追加していきたいと思います。


←←[VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(Open-RMF導入編)](https://qiita.com/SeagullShingo/items/59914f1a99acb0935f8a)

→→[VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(デモ操作②)](https://qiita.com/SeagullShingo/items/17a6c5c962287e97aaca)