Skip to content

Commit 511955d

Browse files
committed
Consistent spelling of ROS 2 (instead of ROS2) and microcontroller (no hyphen).
Signed-off-by: Ralph Lange (CR/AEE1) <ralph.lange@de.bosch.com>
1 parent cce3fc3 commit 511955d

12 files changed

Lines changed: 54 additions & 54 deletions

File tree

_config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Site settings
22
title: micro-ROS
33
description: >
4-
ROS2 for micro-controllers
4+
ROS 2 for microcontrollers
55
lang: en-US
66

77
baseurl: "" # the subpath of your site, e.g. /blog/

_docs/concepts/client_library/decision_paper/index.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ From the past discussions and developments in 2018, we assume that a [rosserial]
4646

4747
In the [EU project OFERA](http://ofera.eu/), a list of high-level requirements to the whole micro-ROS stack including the client library has been compiled in the Deliverable [D1.7 Reference Scenarios and Technical System Requirements Definition](http://ofera.eu/storage/deliverables/OFERA_D1.7_Requirements.pdf). Import requirements immediately linked to the client library are:
4848

49-
* ROS2 lifecycle: micro-ROS nodes should support the node lifecycle defined for ROS2 nodes.
49+
* ROS 2 lifecycle: micro-ROS nodes should support the node lifecycle defined for ROS 2 nodes.
5050
* Dynamic component parameters: micro-ROS shall provide mechanisms for dynamic management of component parameters, compatible with ROS mechanisms.
5151
* Time precision: Clock synchronization between main micro-processor and MCU should be precise, with precision not less than 1ms.
5252
* No-copy: Communication between nodes on the same MCU should be effective (no-copy).
@@ -76,7 +76,7 @@ Questions:
7676

7777
Only very basic concepts (node, subscription and publisher) implemented so far. Whole library has just 500 LoC in sum.
7878

79-
Has OSRF plans for it in the midterm? They have mentioned it on the roadmap, [ROS2 roadmap](https://github.com/micro-ROS/rclc/tree/feature/api_documentation).
79+
Has OSRF plans for it in the midterm? They have mentioned it on the roadmap, [ROS 2 roadmap](https://github.com/micro-ROS/rclc/tree/feature/api_documentation).
8080

8181
## Dynamic Memory Management in ROS 2
8282

@@ -109,7 +109,7 @@ For curiosity, the numbers for Fast-RTPS:
109109

110110
### Current work on ROS 2
111111

112-
Currently there is an active interest in making ROS2 a real "real time" platform. These interest have strive to a set of developments regarding the amount of dynamic memory used along the full stack. From eProsima side they are making a big effort changing Fast RTPS dynamic memory to a static system. This eProsima approach aligns with the idea of two-steps: 1) reserve all memory needed and then 2) work with the pre-allocated memory and avoid new allocations.
112+
Currently there is an active interest in making ROS 2 a real "real time" platform. These interest have strive to a set of developments regarding the amount of dynamic memory used along the full stack. From eProsima side they are making a big effort changing Fast RTPS dynamic memory to a static system. This eProsima approach aligns with the idea of two-steps: 1) reserve all memory needed and then 2) work with the pre-allocated memory and avoid new allocations.
113113

114114
To develop this mechanism currently there are to main changes, all regarding STL containers:
115115

_docs/concepts/client_library/embedded_tf/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ The Embedded TF design is documented at: [github.com/microROS/geometry2/blob/ro
3333

3434
## Implementation of tf2_filter
3535

36-
Implementation of tf2_filter for ROS2 and micro-ROS can be found at: [github.com/microROS/geometry2/blob/ros2/tf2_filter/](https://github.com/microROS/geometry2/blob/ros2/tf2_filter/).
36+
Implementation of tf2_filter for ROS 2 and micro-ROS can be found at: [github.com/microROS/geometry2/blob/ros2/tf2_filter/](https://github.com/microROS/geometry2/blob/ros2/tf2_filter/).
3737

3838

3939
## Roadmap

_docs/concepts/middleware/FIROS2/index.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,26 +11,26 @@ This subsection will explain all the design alternatives for the interoperabilit
1111

1212
### Mechanisms for the deserialisation of incoming data in the transformation library
1313

14-
FIROS2 requires transformation libraries to convert ROS2 messages into FIWARE NGSIv2 messages and the other way around.
14+
FIROS2 requires transformation libraries to convert ROS 2 messages into FIWARE NGSIv2 messages and the other way around.
1515
For each message, one transformation library is required by the integration service (FIROS2).
1616

1717
![image](http://www.plantuml.com/plantuml/svg/ZP712i8m38RlUOempuKvfrv49gYmap05BmCfhfs5hOMslhzjLuQYu1e8_E5Fyf4Mnb9jdtq77UCMhK8jseV5HcXsjq99uA9ZcA1xjQnEvmnxPWnjMIrzBK5giDpVvlXXF9RNNNNuRSqGf6f6guymr-sERHTDfU5AzzGJ39Rt2GkShJddQJeHBfyEj_o6YtQ75pRyWrkDS03XC8Hi1sW8ESeio1mtX0nT47AK3gDWil7_yW80)
1818

19-
In the implementation of these transformation libraries, the user needs to be able to serialisation/deserialisation ROS2 messages.
19+
In the implementation of these transformation libraries, the user needs to be able to serialisation/deserialisation ROS 2 messages.
2020
Also, an NGSIv2 serialisation/deserialisation mechanism will be used.
2121

22-
The FIROS2 package provides a standard NGSIv2 serialisation/deserialisation mechanisms, but ROS2 serialisation/deserialisation is not offered due to its dependencies with the message type.
22+
The FIROS2 package provides a standard NGSIv2 serialisation/deserialisation mechanisms, but ROS 2 serialisation/deserialisation is not offered due to its dependencies with the message type.
2323

2424
For solving this issue, various methods to get it are proposed:
2525

2626
#### Use serialisation/deserialisation method provided by the middleware layer
2727

2828
This is currently the method used in micro-ROS - FIROS 2 integration.
2929

30-
In this case, the transformation library will use user selected middleware interface to serialise/deserialise the bridged ROS2 messages.
30+
In this case, the transformation library will use user selected middleware interface to serialise/deserialise the bridged ROS 2 messages.
3131
This method requires to get the message typesupport for the bridged message type.
3232
This method is straightforward to implement as it does not require additional source code development.
33-
Also, the abstraction from the middleware implementation makes it more compatible with others ROS2 workspaces.
33+
Also, the abstraction from the middleware implementation makes it more compatible with others ROS 2 workspaces.
3434

3535
This is a portion of code used in the transformation library implementation.
3636

@@ -40,7 +40,7 @@ This is a portion of code used in the transformation library implementation.
4040
// Get type support
4141
const rosidl_message_type_support_t * type_support = rosidl_typesupport_cpp::get_message_type_support_handle<MESAGE_TYPE>();
4242

43-
// Convert to ROS2 serialized message
43+
// Convert to ROS 2 serialized message
4444
rmw_serialized_message_t serialized_message;
4545
serialized_message.buffer = (char*)serialized_input->data;
4646
serialized_message.buffer_length = serialized_input->length;
@@ -62,7 +62,7 @@ Note the call to ROS 2 interface __rosidl_typesupport_cpp::get_message_type_supp
6262

6363
#### Use serialisation/deserialisation method for an specific type support
6464

65-
In this case, the transformation library will use one specific type support to serialise/deserialise the bridged ROS2 messages.
65+
In this case, the transformation library will use one specific type support to serialise/deserialise the bridged ROS 2 messages.
6666
In micro-ROS case, the implementation to be used will be rosidl_typesupport_microxrcedds.
6767
This method is trivial to develop as it does not require additional source code on the micro-ROS side.
6868

@@ -71,7 +71,7 @@ This mechanism requires the user to have access to the typesupport API, which so
7171

7272
#### Used serialisation/deserialisation method generated from IDL file
7373

74-
In this case, transformation library will use generated code to serialise/deserialise the bridged ROS2 messages.
74+
In this case, transformation library will use generated code to serialise/deserialise the bridged ROS 2 messages.
7575
The generated code may be made using an IDL parser tool.
7676
In the micro-ROS case, Micro XRCE-DDS provides with Micro XRCE-DDS code generator, which accepts an IDL file as input and generates type code.
7777
This IDL files should correspond with those messages types the transformation is wanted.
@@ -80,8 +80,8 @@ Integration services uses this method, but it makes the development of the libra
8080

8181
![image](http://www.plantuml.com/plantuml/svg/bP8_2y8m4CNtV8f7tOIArd-R2DR1GGTT70eIqciRQ1D8qkzl4sr1iA0t11xlxjsF97lhk75jKxEQ2WUdOMHPEUJIa71IAwPqJeZGLQOoTPR2QDolXsESfZS8RvQao72dZM_mZH6unIbzB32XENN52baF8GrPoql20ZAluPtFgGIiGv855mvHfcwwDO9UcmfjC8ptsp2TYH1Z1rtrEbDzwX9V8P8HYDLl4Cb_4Ell49SHYCrl49V_8BPWZ8LxZkFTwvbOEDzo6UHgn5q7kHbnk-mzgTp_foS0)
8282

83-
In the case of ROS2/micro-ROS workspaces, there are tools which generate those IDL files.
84-
The rosidl_gen package is the package micro-ROS/ROS2 could use to create IDL from ROS2 interfaces.
83+
In the case of ROS 2 / micro-ROS workspaces, there are tools which generate those IDL files.
84+
The rosidl_gen package is the package micro-ROS/ROS2 could use to create IDL from ROS 2 interfaces.
8585

8686
### Integration proposals
8787

@@ -112,7 +112,7 @@ Each ROS 2 topic type should have a corresponding transformation library configu
112112

113113
This approach is a specialisation of the following one, where all the configuration and transformation libraries are centralised in a single node.
114114

115-
This proposal requires transformation library development, but the integration will be the same as a regular ROS2 node, so no micro-ROS specific development should be expected.
115+
This proposal requires transformation library development, but the integration will be the same as a regular ROS 2 node, so no micro-ROS specific development should be expected.
116116

117117
**Architecture**
118118

@@ -130,7 +130,7 @@ This approach would require more nodes on the network and individual configurati
130130

131131
This approach is the one followed by micro-ROS, and it is limited due to current FIROS 2 implementation.
132132

133-
This proposal requires transformation library development, but the integration will be the same as a regular ROS2 node, so no micro-ROS specific development should be expected.
133+
This proposal requires transformation library development, but the integration will be the same as a regular ROS 2 node, so no micro-ROS specific development should be expected.
134134

135135
**Workflow**
136136

@@ -195,7 +195,7 @@ sudo docker-compose up
195195

196196
> **Note:** After this execution a FIWARE Orion server will be running at the localhost address and port 1026.
197197
198-
1. **Build FIROS2 in a ROS2 workspace and run it**
198+
1. **Build FIROS2 in a ROS 2 workspace and run it**
199199

200200
To compile FIROS2, micro-ROS Agent side set of packages will be used.
201201

_docs/overview/comparison/index.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ Differences are:
1818
| Message format | ROS1 | CDR (from DDS) |
1919
| Communication links | UART | UART, SPI, IP (UDP), 6LowPAN, ... |
2020
| Communication protocol | Custom | XRCE-DDS (or any rmw implementation) |
21-
| Code Base | Independent implementation | Standard ROS2 stack up to RCL (RCLCPP coming) |
21+
| Code Base | Independent implementation | Standard ROS 2 stack up to RCL (RCLCPP coming) |
2222
| Node API | Custom rosserial API | RCL (soon RCLCPP) |
23-
| Callback execution | Sequential, in order of messages | Choice of ROS2 executors or MCU optimized executors |
24-
| Timers | Not included | Normal ROS2 timers |
23+
| Callback execution | Sequential, in order of messages | Choice of ROS 2 executors or MCU optimized executors |
24+
| Timers | Not included | Normal ROS 2 timers |
2525
| Time sync to host | Custom | NTP/PTP |
2626
| Lifecycle | Not supported | Partial, full coming |

_docs/overview/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ permalink: /docs/overview/
44
redirect_from: /docs/
55
---
66

7-
[micro-ROS](https://cordis.europa.eu/project/rcn/213167_en.html) puts ROS2 onto microcontrollers, making them first class participants of the ROS 2 environment.
7+
[micro-ROS](https://cordis.europa.eu/project/rcn/213167_en.html) puts ROS 2 onto microcontrollers, making them first class participants of the ROS 2 environment.
88

99
## Tutorials
1010

1111
See [Tutorial List](/docs/tutorials/).
1212

1313
## Architecture
1414

15-
We're basically following the ROS2 architecture and make use of its middleware pluggability to use [DDS-XRCE](https://www.omg.org/spec/DDS-XRCE/), which is suitable for microcontrollers. Moreover, we use an RTOS (NuttX) instead of Linux. On microcontrollers many different RTOS's are used, so we also add an RTOS abstraction layer (AL), to make porting to other RTOS possible.
15+
We're basically following the ROS 2 architecture and make use of its middleware pluggability to use [DDS-XRCE](https://www.omg.org/spec/DDS-XRCE/), which is suitable for microcontrollers. Moreover, we use an RTOS (NuttX) instead of Linux. On microcontrollers many different RTOS's are used, so we also add an RTOS abstraction layer (AL), to make porting to other RTOS possible.
1616

1717
![](/img/micro-ROS_architecture.png)
1818

_docs/tutorials/advanced/nuttx_getting_started/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1347,7 +1347,7 @@ Then, we have the Olimex as subscriber, so we need to follow the same steps as w
13471347
## How to use micro-ROS demo {#micro-ROS-demo-Olimex}
13481348
13491349
In this demo, we will use the alpha version of micro-ROS for NuttX running under the Olimex-STM32-E407 board.
1350-
With board running this demo we could create a ROS2 publisher or a ROS2 subscriber.
1350+
With board running this demo we could create a ROS 2 publisher or a ROS 2 subscriber.
13511351
The publisher creates and publishes as a topic a progressive count of integers (From 0 to 1000).
13521352
The subscriber subscribes to that topic and shows the value of the number published.
13531353
@@ -1418,5 +1418,5 @@ If the publisher is running properly, you should see this on the board:
14181418
So as a summary:
14191419
- With this demo, you can run a publisher or subscriber in the Olimex Board.
14201420
- You need to run an agent for each publisher or subscriber that you want to run.
1421-
- You can create a ROS2 subscriber in the PC and receive the topic.
1421+
- You can create a ROS 2 subscriber in the PC and receive the topic.
14221422
- The topic that sends this example is an integer that goes from 0 to 1000.

_docs/tutorials/basic/getting_started/index.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Table of contents
99

1010
* [Running Micro XRCE-DDS example using prebuilt Docker](#Micro-XRCE-DDS-prebuilt-Docker)
1111
* [Running micro-ROS example using prebuilt Docker](#micro-ROS-prebuilt-Docker)
12-
* [Running rclc and rclcpp examples in your ROS2 workspace](#rclc-rclcpp-ROS2-ws)
12+
* [Running rclc and rclcpp examples in your ROS 2 workspace](#rclc-rclcpp-ROS2-ws)
1313

1414
## Introduction
1515

@@ -37,13 +37,13 @@ At docker repo, we have one folder for each.
3737
----------------
3838

3939

40-
## Running rclc and rclcpp examples in your ROS2 workspace {#rclc-rclcpp-ROS2-ws}
40+
## Running rclc and rclcpp examples in your ROS 2 workspace {#rclc-rclcpp-ROS2-ws}
4141

4242
There are also available examples that you could run building the code at your Linux or Windows computer.
4343

4444
### Previous step
4545

46-
To run all the demonstrations, you need to set up the ROS2 environment and build all the required packages.
46+
To run all the demonstrations, you need to set up the ROS 2 environment and build all the required packages.
4747
Click [here](https://github.com/microROS/micro-ROS-doc) to read further about how to do this previous step.
4848

4949
### Package clusters
@@ -56,12 +56,12 @@ The repository contains the below packages clusters:
5656

5757
###### Int32_publisher
5858

59-
The purpose of the package is to publish one of the most basic ROS2 messages and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
59+
The purpose of the package is to publish one of the most basic ROS 2 messages and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
6060
For each publication, the message value increases in one unit order to see in the subscriber side the message variations.
6161

6262
###### Int32_subscriber
6363

64-
The purpose of the package is to subscribe to one of the most basic ROS2 messages and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
64+
The purpose of the package is to subscribe to one of the most basic ROS 2 messages and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
6565

6666
##### Run demonstration (Linux)
6767

@@ -129,12 +129,12 @@ int32_subscriber_c.exe
129129

130130
###### String_publisher
131131

132-
The purpose of the package is to publish a simple string ROS2 message and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
132+
The purpose of the package is to publish a simple string ROS 2 message and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
133133
For each publication, the message string number increases in one unit order to see in the subscriber side the message variations.
134134

135135
###### String_subscriber
136136

137-
The purpose of the package is to subscribe to a simple string ROS2 message and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
137+
The purpose of the package is to subscribe to a simple string ROS 2 message and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
138138

139139
##### Run string demonstration (Linux)
140140

@@ -202,7 +202,7 @@ string_subscriber_c.exe
202202
###### complex_msg
203203

204204
One of the purposes of the package is to demonstrate how typesupport code is generated for a complex message.
205-
Also, the generation of a complex ROS2 structure message is used to demonstrate how the different layers (rcl, typesupport and rmw) handle it.
205+
Also, the generation of a complex ROS 2 structure message is used to demonstrate how the different layers (rcl, typesupport and rmw) handle it.
206206
The message structure contains the following types:
207207

208208
- All primitive data types.
@@ -211,12 +211,12 @@ The message structure contains the following types:
211211

212212
###### Complex_msg_publisher
213213

214-
The purpose of the package is to publish a complex ROS2 message and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
214+
The purpose of the package is to publish a complex ROS 2 message and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
215215
For each publication, the message values increases in one unit order to see in the subscriber side the message variations.
216216

217217
###### Complex_msg_subscriber
218218

219-
The purpose of the package is to subscribe to a complex ROS2 message and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
219+
The purpose of the package is to subscribe to a complex ROS 2 message and demonstrate how Micro-ROS layers (rcl, typesupport and rmw) handle it.
220220

221221
##### Run complex demonstration (Linux)
222222

@@ -282,7 +282,7 @@ complex_msg_subscriber_c.exe
282282

283283
This purpose of the packages is to demonstrate Micro-ROS stack can be used in a real application scenario.
284284
In this demonstration, an altitude control system is simulated.
285-
The primary purpose of this is to demonstrate how Micro-ROS communicates with ROS2 nodes.
285+
The primary purpose of this is to demonstrate how Micro-ROS communicates with ROS 2 nodes.
286286

287287
##### Real application packages
288288

@@ -312,7 +312,7 @@ The mission of this node is to read altitude values and send to the actuator eng
312312
It also publishes the status (OK, WARNING or FAILURE) as a DDS topic.
313313
The status depends on the altitude value.
314314

315-
The node is built using the ROS2 middleware packages (rmw_fastrtps and rosidl_typesupport_fastrtps).
315+
The node is built using the ROS 2 middleware packages (rmw_fastrtps and rosidl_typesupport_fastrtps).
316316

317317
It is meant to be running in on a regular PC, and it is directly connected to de DDS world.
318318

@@ -375,7 +375,7 @@ Run the display node.
375375
~/client_ws/install/rad0_display_c/lib/rad0_display_c/./rad0_display_c
376376
```
377377

378-
###### ROS2 nodes
378+
###### ROS 2 nodes
379379

380380
```bash
381381
~/agent_ws/install/rad0_display_c/lib/rad0_display_c/./rad0_display_c
@@ -414,7 +414,7 @@ cd C:\C\install\Lib\rad0_display_c\
414414
rad0_display_c.exe
415415
```
416416

417-
###### ROS2 nodes
417+
###### ROS 2 nodes
418418

419419
```cmd
420420
cd C:\A\install\Lib\rad0_control_cpp\

_posts/2018-09-30-roscon.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Several people from the micro-ROS team attended the conference and delivered tal
1313

1414
Slides: [roscon.ros.org/2018/presentations/ROSCon2018_Towards_ROS2_uC_meta_crosscompilation.pdf](https://roscon.ros.org/2018/presentations/ROSCon2018_Towards_ROS2_uC_meta_crosscompilation.pdf)
1515

16-
**Ralph Lange (Bosch): Mixed Real-Time Criticality with ROS2 - the Callback-group-level Executor (lightning talk)**
16+
**Ralph Lange (Bosch): Mixed Real-Time Criticality with ROS 2 - the Callback-group-level Executor (lightning talk)**
1717

1818
<iframe src="https://player.vimeo.com/video/292707644?app_id=122963" width="560" height="315" frameborder="0" allow="autoplay; fullscreen" allowfullscreen></iframe>
1919

0 commit comments

Comments
 (0)