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: 2021summerOfCode/projects/assisted_teleop.rst
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,9 +4,9 @@
4
4
3. Assisted Teleop
5
5
==================
6
6
7
-
**Task description**
7
+
**Task description**
8
8
9
-
In mobile robot and autonomous vehicle navigation, there are situations where a human driver is required to intervene to get the vehicle out of a sticky situation. This can be both as a backup in case of autonomy failure as well as the primary function of the robot (e.g. telepresence robots).
9
+
In mobile robot and autonomous vehicle navigation, there are situations where a human driver is required to intervene to get the vehicle out of a sticky situation. This can be both as a backup in case of autonomy failure as well as the primary function of the robot (e.g. telepresence robots).
10
10
11
11
This project's aim is to create an assisted teleop feature in Nav2 by means of a new behavior tree configuration file (the file that defines the flow of information for the navigation task) and potentially new plugins. This feature should make sure to use the local costmap and/or sensor data in order to avoid obstacles and take position and/or velocity commands to attempt to follow.
12
12
@@ -31,7 +31,7 @@ This will be an excellent chance to make a substantial new feature in the Nav2 s
31
31
- Mobile robot navigation experience
32
32
- Recommended: Gazebo simulation, ROS navigation, Behavior trees
33
33
34
-
**List of relevant open source software repositories and refs**
34
+
**List of relevant open source software repositories and refs**
`Moveit <https://moveit.ros.org/>`_ has long has a QT `configuration assistant <http://docs.ros.org/kinetic/api/moveit_tutorials/html/doc/setup_assistant/setup_assistant_tutorial.html>`_. This setup assistant helps the user configure their UDRF and needs to setup MoveIt configuration files.
11
11
@@ -43,12 +43,12 @@ After the items are configured, there should be a preview to see how the paramet
43
43
- 3D programming (maybe needed in the preview)
44
44
- Recommended: Gazebo simulation, ROS, and Navigation experience
45
45
46
-
**List of relevant open source software repositories and refs**
46
+
**List of relevant open source software repositories and refs**
Copy file name to clipboardExpand all lines: 2021summerOfCode/projects/dynamic.rst
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@
5
5
1. Navigation Dynamic Obstacle Integration
6
6
==========================================
7
7
8
-
**Task description**
8
+
**Task description**
9
9
10
10
The Navigation Stack has long provided robust navigation in a wide range of environments. Controllers have been developed to operate effectively in the presence of dynamic obstacles without explicitly modeling the characteristics of dynamic obstacles. However, as the field has progressed and we see more and more robots using ROS deployed in human-filled spaces, more consideration must be taken with respect to dynamic obstacles such as people, carts, animals, and vehicles.
11
11
@@ -33,7 +33,7 @@ If time permits, you may also work to also integrate this dynamic information in
Grid Maps was created by ETH Zurich and later transferred to ANYbotics. It is a universal grid map library for mobile robotic mapping that can be used as the basis of environmental models and various forms of grid maps available in ROS 1. This library is one of the top downloaded ROS packages. Your task will be to work with the community and the mentor to port grid_maps metapackage from ROS 1 to ROS 2 and help develop the next generation environment model in ROS 2 to replace costmap_2d.
13
13
14
14
This will involve porting code from ROS 1 to ROS 2, analyzing uses of the environmental model to define an abstract interface to allow replacement of costmap_2d with grid_map, and building up the basic grid-operations for costmaps. It is not expected to complete the full new model with sensor processing over the course of the summer. If completed early, you may be able to help design a gradient model to complement your implemented costmap model using grid_maps. This will allow robots to select a gradient or a costmap model on startup.
@@ -33,7 +33,7 @@ This will involve porting code from ROS 1 to ROS 2, analyzing uses of the enviro
33
33
- Coordinate transformations and basic geometry
34
34
- Recommended: Gazebo simulation and Navigation experience
35
35
36
-
**List of relevant open source software repositories and refs**
36
+
**List of relevant open source software repositories and refs**
37
37
38
38
- `ROS <https://www.ros.org/>`_
39
39
- `Gazebo Simulator <http://gazebosim.org/>`_
@@ -44,4 +44,3 @@ This will involve porting code from ROS 1 to ROS 2, analyzing uses of the enviro
44
44
**Licensing**
45
45
- All contributions will be under the Apache 2.0 license.
Copy file name to clipboardExpand all lines: 2021summerOfCode/projects/localization.rst
+4-7Lines changed: 4 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,16 +6,16 @@
6
6
6. 2D/3D Localization Improvements
7
7
==================================
8
8
9
-
**Task description**
9
+
**Task description**
10
10
11
-
The Navigation2 stack uses AMCL as its primary localization engine. Over the last 10 years, essentially no updates to AMCL has been made. This is due to the code base for this implementation of an Adaptive Monte Carlo Localizer is written in embedded C, not well structured, and very sensitive to changes. A-MCL implementations have been a hallmark of localization for over a decade but this particular implementation should be deprecated.
11
+
The Navigation2 stack uses AMCL as its primary localization engine. Over the last 10 years, essentially no updates to AMCL has been made. This is due to the code base for this implementation of an Adaptive Monte Carlo Localizer is written in embedded C, not well structured, and very sensitive to changes. A-MCL implementations have been a hallmark of localization for over a decade but this particular implementation should be deprecated.
12
12
13
13
Your target involves designing and creating a new localization engine for the Nav2 stack. The requirements of this are:
14
14
- Support 2D laser scanners
15
15
- Support 3D laser scanners, where 2D case could potentially be a simplified case
16
16
- Accurately track the localization of a robot in a given occupancy grid
17
17
18
-
The reason that specific method is left open-ended is to allow for creativity, novelty, or reimplementation of a what you feel is best. We have, however, analyzed other MCL variants as being good options. This may include reimplementing an A-MCL that is designed to be modified with modular components and support sampling from a 3D lidar. Another option is a NDT-MCL using NDT 2D/3D scan matching. Other options may be proposed and discussed with mentors during the application phase. The task involves 3D as well since there is no standard 3D localizer in ROS 2 yet and more and more robust 3D SLAM libraries have emerged over the last 2 years.
18
+
The reason that specific method is left open-ended is to allow for creativity, novelty, or reimplementation of a what you feel is best. We have, however, analyzed other MCL variants as being good options. This may include reimplementing an A-MCL that is designed to be modified with modular components and support sampling from a 3D lidar. Another option is a NDT-MCL using NDT 2D/3D scan matching. Other options may be proposed and discussed with mentors during the application phase. The task involves 3D as well since there is no standard 3D localizer in ROS 2 yet and more and more robust 3D SLAM libraries have emerged over the last 2 years.
19
19
20
20
An optional but recommended feature of this work would be to also accept the inputs from multiple laser scanners. However it is not strictly required.
21
21
@@ -38,7 +38,7 @@ An optional but recommended feature of this work would be to also accept the inp
38
38
- Ability to read and implement academic works
39
39
- Recommended: Gazebo simulation and Navigation experience
40
40
41
-
**List of relevant open source software repositories and refs**
41
+
**List of relevant open source software repositories and refs**
42
42
43
43
- `ROS <https://www.ros.org/>`_
44
44
- `Gazebo Simulator <http://gazebosim.org/>`_
@@ -48,6 +48,3 @@ An optional but recommended feature of this work would be to also accept the inp
48
48
**Licensing**
49
49
- All contributions will be under the Apache 2.0 license.
Copy file name to clipboardExpand all lines: 2021summerOfCode/projects/multithreading.rst
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
4. Navigation MultiThreading
5
5
============================
6
6
7
-
**Task description**
7
+
**Task description**
8
8
9
9
The aim of this project is the significantly improve the run-time performance of Nav2 making sure to leverage the full capabilities of multi-processor core CPUs. We seek to identify areas in the Nav2 stack that could leverage multi-threading or parallel processing to speed up computations and improve overall user performance on a broad range of compute platforms.
10
10
@@ -19,7 +19,7 @@ Some examples include:
19
19
20
20
We are seeking a student interested in learning about multi-threading and parallel processing, ideally with some exposure to these concepts and libraries already, to analyze potential areas for parallel computing. Then, select the top candidates and implement them with parallel processing and benchmark the improvements to the Nav2 stack they provide.
21
21
22
-
This will be an excellent chance to apply (or obtain) C++ parallel computing skills while also learning a great deal about how to build mobile robot navigation systems -- both very valuable skillsets.
22
+
This will be an excellent chance to apply (or obtain) C++ parallel computing skills while also learning a great deal about how to build mobile robot navigation systems -- both very valuable skillsets.
23
23
24
24
**Project difficulty: Medium**
25
25
@@ -39,7 +39,7 @@ This will be an excellent chance to apply (or obtain) C++ parallel computing ski
39
39
- Working knowledge (or ability to quickly obtain) on one or more of: TBB, OpenMP, OpenCL, Cuda, and similar
40
40
- Recommended: Gazebo simulation, ROS navigation
41
41
42
-
**List of relevant open source software repositories and refs**
42
+
**List of relevant open source software repositories and refs**
0 commit comments