PKG DOCS – robocluedo_movement_controller
Note
this version of the movement controller has a lot of differences with the previous version:
integration with MoveBase and the navigation stack
improved launch files for running the project
this package enables the robot to move the manipulator and to navigate into the environment, usign different methods.
here’s a brief list of the nodes inside the package:
bug_m.py (composite behaviour) : the node performs a very simplified navigation point to point combining the two elementary behaviours go_to_point and head_orientation.
The node also implements strategie to gain manouver space before pointing the head in the direction of the target.
nav_move_base.py (composite behaviour) : another node performing the navigation point to point, using move_base and the navigation stack with the elementary behaviour head_orientation for the final orientation.
Note
(RCL#3) the node is compatible with RoboCLuedo “hunter”
go_to_point_service_m.py (elementary behaviour) : the node aligns the head in the direction of the target and moves along a straight line to the objective position
the node is used to implement a very simplified navigation algorithm with no obstacles between the current position and the target one. It is switchable.
head_orientation.py (elementary behaviour) : orient the head with a given angle wrt the world frame
the robot keeps turning around its vertical axis until the orientation isn’t equal to the target one.
navigation_manager.cpp : a high-level navigation service based on the concept of the controllers
the node has two main objectives:
to provide a handy abstraction between the real implementation of tbe navigation system …
… and the service which is simply interested in reaching a (x,y,th) target
Note
(RCL#3) the project implements two controllers: ID=0 for nav_bug_m, and ID=1 for nav_move_base
manipulation_controller.cpp : a (too much) simple implementation of a moveit-based manipulation controller capable of moving te arm to a given preset pose.
Note
(RCL#3) the node is compatible with RoboCLuedo “hunter”
User Documentation
UML diagrams
code reference