Skip to content

Adds support for forwarding nav graph nodes - #49

Draft
arjo129 wants to merge 7 commits into
mainfrom
arjo/feat/forward_graphnodes
Draft

Adds support for forwarding nav graph nodes#49
arjo129 wants to merge 7 commits into
mainfrom
arjo/feat/forward_graphnodes

Conversation

@arjo129

@arjo129 arjo129 commented Aug 24, 2026

Copy link
Copy Markdown
Member

New feature implementation

Implemented feature

This PR adds support for forwarding navgraph nodes in a destination request. The main use case for this is to support actions such as docking. In our next generation prototype, we plan on having floating "graphs". These graphs will enable us to encode actions and be authored using the site editor. The basic idea is say you want to dock with something and trigger a workflow, you would reserve a region using the reservation system, along with a very specific graph edge with the annotated action. When you arrive at this destination, the region is reserved allowing you to perform whatever local activiy you may want your AMR to do. This could be something as simple as offloading an item of a conveyor on to the AMR. The idea is that the region would remain reserved while you perform your task at that specific graph node. In order to distinguish that you want such a task performed we use annotated lanes. The fact that one is going through specific lanes on the graph would then be forwarded to individual robots so robots can use their local execution engines to perform these customized actions. This PR makes sure that:

  • the graph nodes are forwarded by the reservation system
  • the path server populates the relevant fields to ensure that the "fleet adapter" is aware of what action should be performed.

GenAI Use

We follow OSRA's policy on GenAI tools

  • I used a GenAI tool in this PR.
  • I did not use GenAI

Generated-by: Gemini

This PR adds support for forwarding navgraph nodes in a destination request. The main
use case for this is to support actions such as
docking. In our next generation prototype, we plan on having floating
"graphs". These graphs will enable us to encode actions and be authored
using the site editor. The basic idea is say you want to dock with
something and trigger a workflow, you would reserve a region using the
reservation system, along with a very specific graph node. When you
arrive at this destination, the region is reserved allowing you to
perform whatever local activiy you may want your AMR to do. This could
be something as simple as offloading an item of a conveyor on to the
AMR. The idea is that the region would remain reserved while you perform
your task at that specific graph node. In order to distinguish that you
want such a task performed we use annotated lanes. The fact that one is
going through specific lanes on the graph would then be forwarded to
individual robots so robots can use their local execution engines to
perform these customized actions. This PR makes sure that (1) the graph
nodes are forwarded by the reservation system and (2) the path server
populates the relevant fields to ensure that the "fleet adapter" is
aware of what action should be performed.

Signed-off-by: Arjo Chakravarty <arjoc@intrinsic.ai>
@mxgrey mxgrey added this to PMC Board Aug 24, 2026
@github-project-automation github-project-automation Bot moved this to Inbox in PMC Board Aug 24, 2026
@mxgrey mxgrey moved this from Inbox to In Progress in PMC Board Aug 25, 2026
The nav2 library used traditional nav2 APIs to direct robots. However it would only allow nav2 robots to move if such a request existed. This PR relaxes that requirement and lets robots move directly via destination requests which could potentially come in from other sources.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

2 participants