Skip to content

Commit e514faa

Browse files
authored
Merge branch 'master' into benchmarking_results
2 parents a7cbb32 + 4cad89b commit e514faa

26 files changed

Lines changed: 857 additions & 360 deletions

File tree

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ _site
55
.bundle
66
vendor/bundle
77
Gemfile.lock
8-
8+
.vscode/

LICENSE

Lines changed: 345 additions & 202 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,20 @@ See [editing instructions](EDITING-INSTRUCTIONS.md)
1111

1212
## License
1313

14-
The content of this repository and the generated website is open-sourced under the Apache-2.0 license. See the [LICENSE](LICENSE) file for details. Please note the following third-party elements and content:
14+
The content of this repository and the generated website is open-sourced under the Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0) license.
15+
You are free to:
16+
17+
* **Share** — copy and redistribute the material in any medium or format for any purpose, even commercially. The licensor cannot revoke these freedoms as long as you follow the license terms.
18+
19+
Under the following terms:
20+
21+
* **Attribution** — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
22+
* **NoDerivatives** — If you remix, transform, or build upon the material, you may not distribute the modified material.
23+
* **No additional restrictions** — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
24+
25+
See the [LICENSE](LICENSE) file for details.
26+
27+
Please note the following third-party elements and content:
1528

1629
* The website is based on the MIT-licensed template [Jekyll Doc Theme](https://github.com/aksakalli/jekyll-doc-theme) by [Can Güney Aksakalli](https://github.com/aksakalli/) and contributors. The template files and source code can be identified by the commits by his user name [aksakalli](https://github.com/aksakalli/) and by the user names of the contributors in the git history. Starting point for the development of this website was the version as of 23 September 2018, cf. commit [3cc3f49](https://github.com/micro-ROS/micro-ROS.github.io/commit/3cc3f492b80db80d87a310cbdc3895425a09db5e).
1730

_data/authors.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,7 @@ tkolcon:
3333
amx-piap:
3434
name: Alexandre Malki
3535
github: amx-piap
36+
francesca-finocchiaro:
37+
name: Francesca Finocchiaro
38+
github: FranFin
39+
link: github

_data/docs.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
- title: Overview
22
docs:
3-
- overview
43
- overview/features
54
- overview/hardware
65
- overview/transports
76
- overview/comparison
7+
- overview/ROS_2_feature_comparison
88
- overview/docker_ci_status
99
- overview/users_and_clients
1010

@@ -14,7 +14,6 @@
1414
- concepts/client_library
1515
- concepts/client_library/real-time_executor
1616
- concepts/client_library/system_modes
17-
- concepts/client_library/embedded_tf
1817
- concepts/client_library/decision_paper
1918
- concepts/client_library/rcutils_analysis
2019

@@ -39,6 +38,10 @@
3938
- concepts/benchmarking/concept
4039
- concepts/benchmarking/results
4140

41+
- title: Memory profiling
42+
docs:
43+
- concepts/memo_prof
44+
4245
- title: Core Tutorials
4346
docs:
4447
- tutorials/core/overview

_docs/concepts/client_library/embedded_tf/index.md

Lines changed: 1 addition & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -4,48 +4,16 @@ permalink: /docs/concepts/client_library/embedded_tf/
44
redirect_from: /embedded_tf/
55
---
66

7-
Table of contents
8-
9-
- [Introduction and Goal](#introduction-and-goal)
10-
- [Requirements](#requirements)
11-
- [Design](#design)
12-
- [Implementation of tf2_filter](#implementation-of-tf2_filter)
13-
- [Roadmap](#roadmap)
14-
- [Acknowledgments](#acknowledgments)
15-
16-
177
## Introduction and Goal
188

199
The TF transform graph, with its support for both a temporal history, and distributed information sources, has been a novel tool for robotics frameworks when it was released in 2008. Functionally, it is based in scene graph concepts known from computer graphics [[Foote 2013]](https://ieeexplore.ieee.org/document/6556373), but these only rarely offer distribution, and did not offer temporal histories at all (mainly, because this is not needed for frame-based rendering applications like in computer graphics). Distributed scene graphs have become more widely available also in computer graphics. In robotics, work by de Laet et al. [[De Laet et al. 2013]](https://ieeexplore.ieee.org/document/6696693) has extended transforms graphs to also contain twist (i.e., angular motion) information, and to provide more compile-time error checking. This is currently not integrated with distribution mechanisms, but could be used on a single system.
2010
One persistent issue with transform graphs has been their resource use. ROS TF works through replicated copies of the entire transform tree at every node that uses it, and is implemented through unicast TCP connections between nodes. In systems with many dynamic parts, this has sometimes been called the ``TF firehose``, because of the large stream of incoming messages.
2111
micro-ROS will go beyond this state of the art by running the dynamic transform tree in an embedded device, while keeping resource use to a minimum based on an analysis of the spatial and temporal details actually necessary. Further, enabling real-time queries even in the face of concurrent updates through integration will be realized through integration with the micro-ROS real-time executor. It is also planned to integrate the embedded TF will with the node lifecycle to achieve further power-savings
2212

2313

24-
## Requirements
25-
26-
Embedded TF requirements are documented at: [github.com/micro-ROS/geometry2/blob/ros2/tf2_filter/docs/requirements.md](https://github.com/micro-ROS/geometry2/blob/ros2/tf2_filter/docs/requirements.md).
27-
28-
29-
## Design
30-
31-
The Embedded TF design is documented at: [github.com/micro-ROS/geometry2/blob/ros2/tf2_filter/docs/design.md](https://github.com/micro-ROS/geometry2/blob/ros2/tf2_filter/docs/design.md).
32-
33-
34-
## Implementation of tf2_filter
35-
36-
Implementation of tf2_filter for ROS 2 and micro-ROS can be found at: [github.com/micro-ROS/geometry2/blob/ros2/tf2_filter/](https://github.com/micro-ROS/geometry2/blob/ros2/tf2_filter/).
37-
38-
3914
## Roadmap
4015

41-
**2018**
42-
* Static filter approach in the agent allowing to specify the parts of the kinematic chain that are relevant for an application component on micro-ROS.
43-
44-
**2019**
45-
* Design and implement an embedded TF implementation which is integrated with the real-time executor in a way that removes the need for costly synchronization primitives.
46-
47-
**2020**
48-
* Design and implement an API extension, as well as a reference implementation for custom transform representations that increase run-time efficiency.
16+
This task has been cancelled as discussed in the EU project review in September 2019.
4917

5018

5119
## Acknowledgments

_docs/concepts/client_library/index.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,3 @@ Advanced concepts developed in the context of the client library are documented
2727

2828
* [Real-Time Executor](real-time_executor/)
2929
* [System Modes](system_modes/)
30-
* [Embedded Transform (TF)](embedded_tf/)

_docs/concepts/memo_prof/3mems.png

396 KB
Loading

0 commit comments

Comments
 (0)