You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: setup/discovery_server.md
+56-44Lines changed: 56 additions & 44 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -339,30 +339,49 @@ You may also need to call `ros2 topic list` twice to get a full list of topics.
339
339
340
340
## Example Configuration
341
341
342
+
### 2 Robots and 1 User Computer
343
+
344
+
#### Recommended Architecture
345
+
342
346
{% tabs discovery %}
343
347
{% tab discovery galactic %}
344
348
```warning
345
349
**ROS 2 Galactic is no longer supported.** Please consider upgrading to a newer release
346
350
```
347
351
348
352
There is currently no example for Galactic.
349
-
350
353
{% endtab %}
351
354
{% tab discovery humble %}
355
+
Each robot is always configured with its own discovery server. This allows each robot to operate independently even if the WiFi is disconnected. Since there are two robots and therefore two discovery servers in the system, the discovery servers must be assigned unique server IDs. In this case, the first robot will be assigned server ID 0 and the second robot will be assigned server ID 1. Similarly, the robots need unique namespaces in order for their topics to be distinguished from each other. In this case they will be assigned as `/robot1` and `/robot2`.
352
356
353
-
### 2 Robots and 1 User Computer
357
+
Although both robots are present in the same system, this example will not include direct inter-robot communication. Each robot's discovery server will be isolated from the other. Instead, the robots will both communicate with the user computer which can be thought of as a command center. This allows for the number of robots to be scaled up while minimizing the load on the network.
354
358
355
-
#### Recommended Architecture
359
+
The user computer will connect to both discovery servers, allowing the user computer to see all of the ROS nodes / topics from each of the robots. Each of the robots will be able to see all of the ROS nodes / topics from the user computer as well. This allows the user computer to send commands to each of the robots, coordinating the system and sharing information across the fleet as necessary.
360
+
361
+
Although one could run another discovery server on the user computer, this would add significant load on all of the robots unless done in such a way that the server was isolated from the robot servers. This is not recommended for most use cases.
362
+
{% endtab %}
363
+
{% tab discovery jazzy %}
356
364
Each robot is always configured with its own discovery server. This allows each robot to operate independently even if the WiFi is disconnected. Since there are two robots and therefore two discovery servers in the system, the discovery servers must be assigned unique server IDs. In this case, the first robot will be assigned server ID 0 and the second robot will be assigned server ID 1. Similarly, the robots need unique namespaces in order for their topics to be distinguished from each other. In this case they will be assigned as `/robot1` and `/robot2`.
357
365
358
366
Although both robots are present in the same system, this example will not include direct inter-robot communication. Each robot's discovery server will be isolated from the other. Instead, the robots will both communicate with the user computer which can be thought of as a command center. This allows for the number of robots to be scaled up while minimizing the load on the network.
359
367
360
368
The user computer will connect to both discovery servers, allowing the user computer to see all of the ROS nodes / topics from each of the robots. Each of the robots will be able to see all of the ROS nodes / topics from the user computer as well. This allows the user computer to send commands to each of the robots, coordinating the system and sharing information across the fleet as necessary.
361
369
362
370
Although one could run another discovery server on the user computer, this would add significant load on all of the robots unless done in such a way that the server was isolated from the robot servers. This is not recommended for most use cases.
371
+
{% endtab %}
372
+
{% endtabs %}
363
373
364
374
#### Example Robot Setup
365
375
376
+
{% tabs example21 %}
377
+
{% tab example21 galactic %}
378
+
```warning
379
+
**ROS 2 Galactic is no longer supported.** Please consider upgrading to a newer release
380
+
```
381
+
382
+
There is currently no example for Galactic.
383
+
{% endtab %}
384
+
{% tab example21 humble %}
366
385
<table>
367
386
<trstyle="text-align:center">
368
387
<th>Robot 1</th>
@@ -417,46 +436,8 @@ Although one could run another discovery server on the user computer, this would
417
436
</td>
418
437
</tr>
419
438
</table>
420
-
421
-
422
-
#### Example User Computer Setup
423
-
From the robot configuration the robot server IDs and the ROS Domain ID are known, and from the robots themselves or the router the IP addresses are known. It is recommended that the robot IPs be reserved on the router so that they always remain the same and this process does not need to be repeated. Running the user computer configuration script as described above, would look as follows:
424
-
425
-
```
426
-
ROS_DOMAIN_ID [0]: 0
427
-
Enter the information for the first discovery server
428
-
Discovery Server ID [0]: 0
429
-
Discovery Server IP: 192.168.131.5
430
-
Discovery Server Port [11811]:
431
-
Re-enter the last server (r), add another server (a), or done (d): a
432
-
Enter the information for the next discovery server
433
-
Discovery Server ID [0]: 1
434
-
Discovery Server IP: 192.168.131.6
435
-
Discovery Server Port [11811]:
436
-
Re-enter the last server (r), add another server (a), or done (d): d
Each robot is always configured with its own discovery server. This allows each robot to operate independently even if the WiFi is disconnected. Since there are two robots and therefore two discovery servers in the system, the discovery servers must be assigned unique server IDs. In this case, the first robot will be assigned server ID 0 and the second robot will be assigned server ID 1. Similarly, the robots need unique namespaces in order for their topics to be distinguished from each other. In this case they will be assigned as `/robot1` and `/robot2`.
451
-
452
-
Although both robots are present in the same system, this example will not include direct inter-robot communication. Each robot's discovery server will be isolated from the other. Instead, the robots will both communicate with the user computer which can be thought of as a command center. This allows for the number of robots to be scaled up while minimizing the load on the network.
453
-
454
-
The user computer will connect to both discovery servers, allowing the user computer to see all of the ROS nodes / topics from each of the robots. Each of the robots will be able to see all of the ROS nodes / topics from the user computer as well. This allows the user computer to send commands to each of the robots, coordinating the system and sharing information across the fleet as necessary.
455
-
456
-
Although one could run another discovery server on the user computer, this would add significant load on all of the robots unless done in such a way that the server was isolated from the robot servers. This is not recommended for most use cases.
457
-
458
-
#### Example Robot Setup
459
-
440
+
{% tab example21 jazzy %}
460
441
<table>
461
442
<trstyle="text-align:center">
462
443
<th>Robot 1</th>
@@ -511,9 +492,19 @@ Although one could run another discovery server on the user computer, this would
511
492
</td>
512
493
</tr>
513
494
</table>
514
-
495
+
{% endtab %}
496
+
{% endtabs %}
515
497
516
498
#### Example User Computer Setup
499
+
{% tabs computer21 %}
500
+
{% tab computer21 galactic %}
501
+
```warning
502
+
**ROS 2 Galactic is no longer supported.** Please consider upgrading to a newer release
503
+
```
504
+
505
+
There is currently no example for Galactic.
506
+
{% endtab %}
507
+
{% tab computer21 humble %}
517
508
From the robot configuration the robot server IDs and the ROS Domain ID are known, and from the robots themselves or the router the IP addresses are known. It is recommended that the robot IPs be reserved on the router so that they always remain the same and this process does not need to be repeated. Running the user computer configuration script as described above, would look as follows:
518
509
519
510
```
@@ -534,6 +525,27 @@ Configuring:
534
525
[sudo] password for cpr-1234:
535
526
Source your ~/.bashrc file to apply changes
536
527
```
528
+
{% endtab %}
529
+
{% tab computer21 jazzy %}
530
+
From the robot configuration the robot server IDs and the ROS Domain ID are known, and from the robots themselves or the router the IP addresses are known. It is recommended that the robot IPs be reserved on the router so that they always remain the same and this process does not need to be repeated. Running the user computer configuration script as described above, would look as follows:
537
531
532
+
```
533
+
ROS_DOMAIN_ID [0]: 0
534
+
Enter the information for the first discovery server
535
+
Discovery Server ID [0]: 0
536
+
Discovery Server IP: 192.168.131.5
537
+
Discovery Server Port [11811]:
538
+
Re-enter the last server (r), add another server (a), or done (d): a
539
+
Enter the information for the next discovery server
540
+
Discovery Server ID [0]: 1
541
+
Discovery Server IP: 192.168.131.6
542
+
Discovery Server Port [11811]:
543
+
Re-enter the last server (r), add another server (a), or done (d): d
Copy file name to clipboardExpand all lines: setup/simple_discovery.md
+22-27Lines changed: 22 additions & 27 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,11 +18,10 @@ To use the TurtleBot 4 with Simple Discovery, the Create® 3 should be connected
18
18
The Create® 3 can only be connected to 2.4 GHz Wi-Fi networks.
19
19
```
20
20
21
-
{% tabs wifi %}
22
-
{% tab wifi galactic %}
23
-
24
21
### Wi-Fi Setup
25
22
23
+
{% tabs wifi %}
24
+
{% tab wifi galactic %}
26
25
Access the [Create® 3 webserver](./basic.md#accessing-the-create-3-webserver), then navigate to the <b>Connect</b> tab.
27
26
Enter your Wi-Fi SSID and password, and then click 'Connect'. Wait for it to initiate the WiFi connection, and then play a "happy sound" to signal successful connection. This may take a couple minutes. Click on the <b>Connect</b> tab once again and it should now show an IP address if the connection was successful. If the light ring turns yellow during this process, it indicates an error in connection. See [the Create® 3 documentation](https://iroboteducation.github.io/create3_docs/hw/face/) to understand what the different light ring colors indicate.
28
27
@@ -34,22 +33,8 @@ If the Create® 3 is unable to connect to your 2.4 GHz WiFi network and the ligh
<figcaption>Connecting the Create® 3 to Wi-Fi</figcaption>
36
35
</figure>
37
-
38
-
### Application Configuration
39
-
40
-
Access the [Create® 3 webserver](./basic.md#accessing-the-create-3-webserver), then navigate to the <b>Application Configuration</b> tab.
41
-
Set ROS 2 Domain ID to 0, ROS 2 Namespace to an empty string, and RMW_IMPLEMENTATION to the [default](networking.md#dds) for your ROS 2 version. Additionally, make
42
-
sure that the Fast DDS discovery server is disabled.
<figcaption>Configuring the Create® 3 application for Galactic</figcaption>
47
-
</figure>
48
36
{% endtab %}
49
37
{% tab wifi humble %}
50
-
51
-
### Wi-Fi Setup
52
-
53
38
Access the [Create® 3 webserver](./basic.md#accessing-the-create-3-webserver), then navigate to the <b>Connect</b> tab.
54
39
Enter your Wi-Fi SSID and password, and then click 'Connect'. Wait for it to initiate the WiFi connection, and then play a "happy sound" to signal successful connection. This may take a couple minutes. Click on the <b>Connect</b> tab once again and it should now show an IP address if the connection was successful. If the light ring turns yellow during this process, it indicates an error in connection. See [the Create® 3 documentation](https://iroboteducation.github.io/create3_docs/hw/face/) to understand what the different light ring colors indicate.
55
40
@@ -61,9 +46,28 @@ If the Create® 3 is unable to connect to your 2.4 GHz WiFi network and the ligh
<figcaption>Connecting the Create® 3 to Wi-Fi</figcaption>
63
48
</figure>
49
+
{% endtab %}
50
+
{% tab wifi jazzy %}
51
+
The Create® 3 must _not_ be connected to Wifi when using ROS 2 Jazzy. All communication between the Raspberry Pi and the Create® 3 is done over the internal wired connection. The [`create3_republisher`](../software/create3.md#create-3-republisher) node ensures that all ROS 2 topics, services, and actions from the Create® 3 are accessible by other computers on the same wireless network.
52
+
53
+
To disconnect the Create® 3 from wi-fi, access the [Create® 3 webserver](./basic.md#accessing-the-create-3-webserver) and choose the "Forget wi-fi settings" item from the menu at the top of the screen.
54
+
{% endtab %}
55
+
{% endtabs %}
64
56
65
57
### Application Configuration
66
58
59
+
{% tabs application %}
60
+
{% tab application galactic %}
61
+
Access the [Create® 3 webserver](./basic.md#accessing-the-create-3-webserver), then navigate to the <b>Application Configuration</b> tab.
62
+
Set ROS 2 Domain ID to 0, ROS 2 Namespace to an empty string, and RMW_IMPLEMENTATION to the [default](networking.md#dds) for your ROS 2 version. Additionally, make
63
+
sure that the Fast DDS discovery server is disabled.
<figcaption>Configuring the Create® 3 application for Galactic</figcaption>
68
+
</figure>
69
+
{% endtab %}
70
+
{% tab application humble %}
67
71
Use the [`turtlebot4-setup`](../software/turtlebot4_setup.md) tool to configure the Create® 3. You can access the [Create® 3 webserver](./basic.md#accessing-the-create-3-webserver) and navigate to the <b>Application Configuration</b> tab to confirm the configuration as follows:
68
72
- ROS 2 Domain ID is `0`
69
73
- ROS 2 Namespace is empty
@@ -75,16 +79,7 @@ Use the [`turtlebot4-setup`](../software/turtlebot4_setup.md) tool to configure
75
79
<figcaption>Configuring the Create® 3 application for Humble</figcaption>
76
80
</figure>
77
81
{% endtab %}
78
-
{% tab wifi jazzy %}
79
-
80
-
### Wi-Fi Setup
81
-
82
-
The Create® 3 must _not_ be connected to Wifi when using ROS 2 Jazzy. All communication between the Raspberry Pi and the Create® 3 is done over the internal wired connection. The [`create3_republisher`](../software/create3.md#create-3-republisher) node ensures that all ROS 2 topics, services, and actions from the Create® 3 are accessible by other computers on the same wireless network.
83
-
84
-
To disconnect the Create® 3 from wi-fi, access the [Create® 3 webserver](./basic.md#accessing-the-create-3-webserver) and choose the "Forget wi-fi settings" item from the menu at the top of the screen.
85
-
86
-
### Application Configuration
87
-
82
+
{% tab application jazzy %}
88
83
Use the [`turtlebot4-setup`](../software/turtlebot4_setup.md) tool to configure the Create® 3. You can access the [Create® 3 webserver](./basic.md#accessing-the-create-3-webserver) and navigate to the <b>Application Configuration</b> tab to confirm the configuration as follows:
0 commit comments