Skip to content

Commit 0c4a158

Browse files
Merge pull request #1 from NVIDIA-ISAAC-ROS/release-2.0.0
Isaac ROS 2.0.0
2 parents 562c1df + 5284213 commit 0c4a158

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+5564
-0
lines changed

.gitattributes

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Images
2+
*.gif filter=lfs diff=lfs merge=lfs -text
3+
*.jpg filter=lfs diff=lfs merge=lfs -text
4+
*.png filter=lfs diff=lfs merge=lfs -text
5+
*.psd filter=lfs diff=lfs merge=lfs -text
6+
# CAD models
7+
*.usd filter=lfs diff=lfs merge=lfs -text
8+
*.obj filter=lfs diff=lfs merge=lfs -text
9+
# Archives
10+
*.gz filter=lfs diff=lfs merge=lfs -text
11+
*.tar filter=lfs diff=lfs merge=lfs -text
12+
*.zip filter=lfs diff=lfs merge=lfs -text
13+
# Documents
14+
*.pdf filter=lfs diff=lfs merge=lfs -text
15+
# Numpy data
16+
*.npy filter=lfs diff=lfs merge=lfs -text
17+
# Debian packages
18+
*.deb filter=lfs diff=lfs merge=lfs -text
19+
# Shared libraries
20+
*.so.* filter=lfs diff=lfs merge=lfs -text
21+
*.so filter=lfs diff=lfs merge=lfs -text
22+
# Binary
23+
*.bin filter=lfs diff=lfs merge=lfs -text
24+
*.engine filter=lfs diff=lfs merge=lfs -text

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Ignore all pycache files
2+
**/__pycache__/**

.gitmodules

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
[submodule "segway_rmp/RMP220-SDK"]
2+
path = segway_rmp/RMP220-SDK
3+
url = https://github.com/SegwayRoboticsSamples/RMP220-SDK
4+
branch = release

README.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,13 @@
1+
# Nova Carter
12

3+
This meta-repository contains the packages required for the [Nova Carter](https://robotics.segway.com/nova-carter/)
4+
robots to control their motors / wheelbase,
5+
communicate with the [Mission Dispatcher](https://github.com/nvidia-isaac/isaac_mission_dispatch), navigate with
6+
[Nav2](https://github.com/ros-planning/navigation2), and localize with [Isaac ROS Visual SLAM](https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_visual_slam/index.html),
7+
and reconstruct 3D scenes with [Isaac ROS Nvblox](https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_nvblox/index.html).
8+
9+
<div align="center"><a class="reference internal image-reference" href="https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/repositories_and_packages/nova_carter/carter_header.jpg/"><img alt="image" src="https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/repositories_and_packages/nova_carter/carter_header.jpg/" width="800px"/></a></div>
10+
11+
## Setup and Documentation
12+
13+
Visit the [Nova Carter page](https://nvidia-isaac-ros.github.io/robots/nova_carter.html) to learn how to use this repository.

carter_navigation/CMakeLists.txt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
cmake_minimum_required(VERSION 3.22.1)
2+
project(carter_navigation)
3+
4+
# Find dependencies
5+
find_package(ament_cmake REQUIRED)
6+
find_package(ament_cmake_python REQUIRED)
7+
find_package(rclcpp REQUIRED)
8+
find_package(rclpy REQUIRED)
9+
find_package(ament_cmake_auto REQUIRED)
10+
ament_auto_find_build_dependencies()
11+
12+
ament_auto_package(INSTALL_TO_SHARE launch maps params behavior_trees)
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
2+
<!--
3+
This Behavior Tree replans the global path periodically at 1 Hz through an array of poses continuously
4+
and it also has recovery actions specific to planning / control as well as general system issues.
5+
-->
6+
<root main_tree_to_execute="MainTree">
7+
<BehaviorTree ID="MainTree">
8+
<RecoveryNode number_of_retries="6" name="NavigateRecovery">
9+
<PipelineSequence name="NavigateWithReplanning">
10+
<RateController hz="0.333">
11+
<RecoveryNode number_of_retries="1" name="ComputePathThroughPoses">
12+
<ReactiveSequence>
13+
<RemovePassedGoals input_goals="{goals}" output_goals="{goals}" radius="0.7"/>
14+
<ComputePathThroughPoses goals="{goals}" path="{path}" planner_id="GridBased"/>
15+
</ReactiveSequence>
16+
<ClearEntireCostmap name="ClearGlobalCostmap-Context" service_name="global_costmap/clear_entirely_global_costmap"/>
17+
</RecoveryNode>
18+
</RateController>
19+
<RecoveryNode number_of_retries="1" name="FollowPath">
20+
<FollowPath path="{path}" controller_id="FollowPath"/>
21+
<ClearEntireCostmap name="ClearLocalCostmap-Context" service_name="local_costmap/clear_entirely_local_costmap"/>
22+
</RecoveryNode>
23+
</PipelineSequence>
24+
<ReactiveFallback name="RecoveryFallback">
25+
<GoalUpdated/>
26+
<RoundRobin name="RecoveryActions">
27+
<Sequence name="ClearingActions">
28+
<ClearEntireCostmap name="ClearLocalCostmap-Subtree" service_name="local_costmap/clear_entirely_local_costmap"/>
29+
<ClearEntireCostmap name="ClearGlobalCostmap-Subtree" service_name="global_costmap/clear_entirely_global_costmap"/>
30+
</Sequence>
31+
<Wait wait_duration="1"/>
32+
</RoundRobin>
33+
</ReactiveFallback>
34+
</RecoveryNode>
35+
</BehaviorTree>
36+
</root>
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
2+
<!--
3+
This Behavior Tree replans the global path periodically at 1 Hz and it also has
4+
recovery actions specific to planning / control as well as general system issues.
5+
This will be continuous if a kinematically valid planner is selected.
6+
-->
7+
<root main_tree_to_execute="MainTree">
8+
<BehaviorTree ID="MainTree">
9+
<RecoveryNode number_of_retries="6" name="NavigateRecovery">
10+
<PipelineSequence name="NavigateWithReplanning">
11+
<RateController hz="1.0">
12+
<RecoveryNode number_of_retries="1" name="ComputePathToPose">
13+
<ComputePathToPose goal="{goal}" path="{path}" planner_id="GridBased"/>
14+
<ClearEntireCostmap name="ClearGlobalCostmap-Context" service_name="global_costmap/clear_entirely_global_costmap"/>
15+
</RecoveryNode>
16+
</RateController>
17+
<RecoveryNode number_of_retries="1" name="FollowPath">
18+
<FollowPath path="{path}" controller_id="FollowPath"/>
19+
<ClearEntireCostmap name="ClearLocalCostmap-Context" service_name="local_costmap/clear_entirely_local_costmap"/>
20+
</RecoveryNode>
21+
</PipelineSequence>
22+
<ReactiveFallback name="RecoveryFallback">
23+
<GoalUpdated/>
24+
<RoundRobin name="RecoveryActions">
25+
<Sequence name="ClearingActions">
26+
<ClearEntireCostmap name="ClearLocalCostmap-Subtree" service_name="local_costmap/clear_entirely_local_costmap"/>
27+
<ClearEntireCostmap name="ClearGlobalCostmap-Subtree" service_name="global_costmap/clear_entirely_global_costmap"/>
28+
</Sequence>
29+
<Wait wait_duration="1"/>
30+
</RoundRobin>
31+
</ReactiveFallback>
32+
</RecoveryNode>
33+
</BehaviorTree>
34+
</root>

0 commit comments

Comments
 (0)