-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'kp/job-manager' into kp/ban-exceptions
- Loading branch information
Showing
19 changed files
with
4,363 additions
and
52 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
# NEXUS | ||
![](https://github.com/OpenSourceRobotics/nexus/workflows/style/badge.svg) | ||
![](https://github.com/OpenSourceRobotics/nexus/workflows/integration_tests/badge.svg) | ||
![](https://github.com/osrf/nexus/workflows/style/badge.svg) | ||
![](https://github.com/osrf/nexus/workflows/integration_tests/badge.svg) | ||
|
||
![](./docs/media/nexus_architecture.png) | ||
|
||
|
@@ -30,7 +30,7 @@ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh | |
```bash | ||
mkdir ~/ws_nexus/src -p | ||
cd ~/ws_nexus/src/ | ||
git clone [email protected]:OpenSourceRobotics/nexus | ||
git clone [email protected]:osrf/nexus | ||
vcs import . < nexus/abb.repos | ||
cd ~/ws_nexus | ||
rosdep install --from-paths src --ignore-src --rosdistro iron -y -r | ||
|
@@ -50,7 +50,7 @@ See sample BTs for [system_orchestrator](nexus_integration_tests/config/system_o | |
At present, capabilities are registered as plugins with the `orchestrator` at runtime. | ||
We support [these capabilities](./nexus_capabilities/src/capabilities/plugins.xml) out of the bo | ||
Each plugin may register one or more behavior tree nodes which can then be used to define processes as seen in the `place_on_conveyor.xml`. | ||
The framework to register capabilities and map them to processes that can be performed in ongoing work. See [this discussion](https://github.com/OpenSourceRobotics/nexus/discussions/369) for more details. | ||
The framework to register capabilities and map them to processes that can be performed in ongoing work. See [this discussion](https://github.com/osrf/nexus/discussions/32) for more details. | ||
|
||
### Visualization [experimental] | ||
![](./docs/media/bt_example.png) | ||
|
@@ -77,7 +77,7 @@ TODO: Add a dedicated demo package. | |
|
||
The `nexus_endpoints` package contains ROS topics, services and actions used by NEXUS. The package is generated from [nexus_endpoints.redf.yaml](./nexus_endpoints.redf.yaml) using `redf`. rust is required to generated the package, the easiest way to install rust is via [rustup](https://rustup.rs/). | ||
|
||
With rust installed, clone the redf repo at https://github.com/OpenSourceRobotics/redf, then run | ||
With rust installed, clone the redf repo at https://github.com/osrf/redf, then run | ||
```bash | ||
cargo install --path . | ||
``` | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
76 changes: 76 additions & 0 deletions
76
nexus_motion_planner/config/planner_params_with_cache.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
motion_planner_server: | ||
ros__parameters: | ||
# List of robots to generate motion plans for | ||
manipulators: ["abb_irb1300"] | ||
# The default moveit group for each manipulator | ||
default_group_name: "manipulator" | ||
# Seconds to wait to connect to an action or service server | ||
timeout_duration: 5 | ||
# Configure the planner_server to query motion plans directly from a move_group | ||
# node that is running by initializing a move_group_interface. | ||
# When set to false, the planner_server will initialize planning pipelines | ||
# to directly compute plans but this has not been implemented yet. | ||
use_move_group_interfaces: true | ||
# When planning for multiple robots, set this to true. | ||
use_namespace: false | ||
# Tolerance for goal position. | ||
goal_tolerance: 0.005 | ||
# Maximum seconds to generate a plan. | ||
planning_time: 1.0 | ||
# Maximum number of replanning attempts | ||
replan_attempts: 10 | ||
# If true, the cartesian interpolator will check for collisions. | ||
collision_aware_cartesian_path: false | ||
# The value of the max_step parameter used in cartesian interpolation. | ||
cartesian_max_step: 0.001 | ||
# The value of the jump_threshold parameter used in cartesian interpolation. | ||
cartesian_jump_threshold: 0.0 | ||
# Set true if trajectory should be executed after a plan is generated. | ||
# The execution is a blocking event. | ||
execute_trajectory: false | ||
# The min_x of workspace bounding box. | ||
workspace_min_x: -1.0 | ||
# The min_y of workspace bounding box. | ||
workspace_min_y: -1.0 | ||
# The min_z of workspace bounding box. | ||
workspace_min_z: -1.0 | ||
# The max_x of workspace bounding box. | ||
workspace_max_x: 1.0 | ||
# The max_y of workspace bounding box. | ||
workspace_max_y: 1.0 | ||
# The max_z of workspace bounding box. | ||
workspace_max_z: 1.0 | ||
# The seconds within which the current robot state should be valid. | ||
get_state_wait_seconds: 0.01 | ||
|
||
## Motion Plan Cache Parameters | ||
# Planner database mode. Valid values: | ||
# - Unset: Always plan. No caching. | ||
# - TrainingOverwrite: Always plan, overwriting existing cache plans if better plan was found. | ||
# - TrainingAppendOnly: Always plan, append to cache if better plan was found (no overwriting). | ||
# - ExecuteBestEffort: Prioritize cached plans. Only plan if no cached plans found. | ||
# - ExecuteReadOnly: Only use cached plans. Fail if no cached plans found. | ||
planner_database_mode: "TrainingOverwrite" | ||
# Database type and location | ||
cache_db_plugin: "warehouse_ros_sqlite::DatabaseConnection" | ||
cache_db_host: ":memory:" | ||
cache_db_port: 0 # Isn't used for SQLite3 | ||
|
||
# The cache keys cache entries on certain properties of the motion plan request's | ||
# starting joint state, goal constraints, and more. | ||
|
||
# For float comparisons, what tolerance counts as an exact match (to prevent floating point precision errors) | ||
cache_exact_match_tolerance: 0.001 # ~0.05 degrees per joint | ||
# Query range thresholds for matching attributes of the starting robot state for cache hits. | ||
# This typically applies to joint states, per joint, in radians | ||
# | ||
# It should be acceptable to be more lenient on the start state, because the robot will be commanded | ||
# to go to the first trajectory point from it's current start state. | ||
cache_start_match_tolerance: 0.025 | ||
# Query range thresholds for matching attributes of the requested planning goals for cache hits. | ||
# This typically applies to the x, y, z coordinates of the goal pose, in metres | ||
# And also the individual quaternion components of the goal orientation | ||
# | ||
# Goal tolerances should be more strict so the end point of the robot remains consistent between | ||
# the fetched plan and the desired goal. | ||
cache_goal_match_tolerance: 0.001 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.