|
MotionPlanningTutorials/source/MotionPlanningTutorials/components/SimpleMotionPlanningExample
MotionPlanningTutorials/source/MotionPlanningTutorials/components/SimpleAStarPathSearchExample
MotionPlanningTutorials/source/MotionPlanningTutorials/components/MotionPlanningKitchenExample
. This example can be started with the scenario MotionPlanningKitchenExample.To perform planning you need to have a proxy for a armar::MotionPlanningServer.
Next you will need to select the algorithm to use. In this tutorial the RRTConnect algorithm is used.
Depending on the algorithm you will need some parameters.
All algorithms will require a CSpace (e.g. armarx::SimoxCSpace [Setting up a SimoxCSpace]). This CSpace defines the configuration space and is able to check whether a configuration is valid.
Next you will need the start and goal configuration.
Now you can create and enqueue the task:
After you enqueued the task the server will execute it (the queue is fifo).
At any time you can abort the task
or get the task's status:
Some algorithms may offer special control interfaces (e.g. armarx::ADDIRRTStarTask). Simply cast the proxy if you require the special features.
You may want to block until the task finished planning:
After the task finished you can get the found path (if any path was found).
Use the following code for converting the Path-instance into a Trajectory (which is a Variant-type that can be used for statechart parameters):