Implementation of ROS node for powercube_chain. More...
Public Member Functions | |
void | getRobotDescriptionParameters () |
Gets parameters from the robot_description and configures the powercube_chain. | |
void | getROSParameters () |
Gets parameters from the ROS parameter server and configures the powercube_chain. | |
PowerCubeChainNode () | |
Constructor. | |
void | publishState (bool update=true) |
Publishes the state of the powercube_chain as ros messages. | |
bool | srvCallback_Init (std_srvs::Trigger::Request &req, std_srvs::Trigger::Response &res) |
Executes the service callback for init. | |
bool | srvCallback_Recover (std_srvs::Trigger::Request &req, std_srvs::Trigger::Response &res) |
Executes the service callback for recover. | |
bool | srvCallback_SetOperationMode (cob_srvs::SetString::Request &req, cob_srvs::SetString::Response &res) |
Executes the service callback for SetOperationMode. | |
bool | srvCallback_Stop (std_srvs::Trigger::Request &req, std_srvs::Trigger::Response &res) |
Executes the service callback for stop. | |
void | topicCallback_CommandPos (const std_msgs::Float64MultiArray::ConstPtr &msg) |
Executes the callback from the command_pos topic. | |
void | topicCallback_CommandVel (const std_msgs::Float64MultiArray::ConstPtr &msg) |
Executes the callback from the command_vel topic. | |
~PowerCubeChainNode () | |
Destructor. | |
Public Attributes | |
bool | error_ |
std::string | error_msg_ |
bool | initialized_ |
member variables | |
ros::Time | last_publish_time_ |
ros::NodeHandle | n_ |
create a handle for this node, initialize node | |
ros::NodeHandle | n_private_ |
PowerCubeCtrl * | pc_ctrl_ |
handle for powercube_chain | |
PowerCubeCtrlParams * | pc_params_ |
handle for powercube_chain parameters | |
ros::ServiceServer | srvServer_Init_ |
declaration of service servers | |
ros::ServiceServer | srvServer_Recover_ |
ros::ServiceServer | srvServer_SetOperationMode_ |
ros::ServiceServer | srvServer_Stop_ |
bool | stopped_ |
ros::Publisher | topicPub_ControllerState_ |
ros::Publisher | topicPub_Diagnostic_ |
ros::Publisher | topicPub_JointState_ |
declaration of topics to publish | |
ros::Publisher | topicPub_OperationMode_ |
ros::Subscriber | topicSub_CommandPos_ |
declaration of topics to subscribe, callback is called for new messages arriving | |
ros::Subscriber | topicSub_CommandVel_ |
Implementation of ROS node for powercube_chain.
Offers velocity and position interface.
Definition at line 51 of file schunk_powercube_chain.cpp.
PowerCubeChainNode::PowerCubeChainNode | ( | ) | [inline] |
Constructor.
implementation of topics to publish
implementation of topics to subscribe
implementation of service servers
Definition at line 88 of file schunk_powercube_chain.cpp.
PowerCubeChainNode::~PowerCubeChainNode | ( | ) | [inline] |
Destructor.
Definition at line 118 of file schunk_powercube_chain.cpp.
void PowerCubeChainNode::getRobotDescriptionParameters | ( | ) | [inline] |
Gets parameters from the robot_description and configures the powercube_chain.
Get robot_description from ROS parameter server
Get urdf model out of robot_description
Get max velocities out of urdf model
Get lower limits out of urdf model
Get offsets out of urdf model
Set parameters
Definition at line 277 of file schunk_powercube_chain.cpp.
void PowerCubeChainNode::getROSParameters | ( | ) | [inline] |
Gets parameters from the ROS parameter server and configures the powercube_chain.
get CanModule
get CanDevice
get CanBaudrate
get Modul IDs
get force_use_movevel
Resize and assign of values to the ModulIDs
Initialize parameters
Get joint names
Resize and assign of values to the JointNames
Check dimension with with DOF
Get max accelerations
Resize and assign of values to the MaxAccelerations
Check dimension with with DOF
Get horizon
Horizon in sec
Definition at line 128 of file schunk_powercube_chain.cpp.
void PowerCubeChainNode::publishState | ( | bool | update = true | ) | [inline] |
Publishes the state of the powercube_chain as ros messages.
Published to "/joint_states" as "sensor_msgs/JointState" Published to "state" as "control_msgs/JointTrajectoryControllerState"
publishing joint and controller states on topic
Definition at line 577 of file schunk_powercube_chain.cpp.
bool PowerCubeChainNode::srvCallback_Init | ( | std_srvs::Trigger::Request & | req, |
std_srvs::Trigger::Response & | res | ||
) | [inline] |
Executes the service callback for init.
Connects to the hardware and initialized it.
req | Service request |
res | Service response |
initialize powercubes
Definition at line 450 of file schunk_powercube_chain.cpp.
bool PowerCubeChainNode::srvCallback_Recover | ( | std_srvs::Trigger::Request & | req, |
std_srvs::Trigger::Response & | res | ||
) | [inline] |
Executes the service callback for recover.
Recovers the driver after an emergency stop.
req | Service request |
res | Service response |
stopping all arm movements
Definition at line 518 of file schunk_powercube_chain.cpp.
bool PowerCubeChainNode::srvCallback_SetOperationMode | ( | cob_srvs::SetString::Request & | req, |
cob_srvs::SetString::Response & | res | ||
) | [inline] |
Executes the service callback for SetOperationMode.
Sets the driver to different operation modes. Currently only operation_mode=velocity is supported.
req | Service request |
res | Service response |
Definition at line 557 of file schunk_powercube_chain.cpp.
bool PowerCubeChainNode::srvCallback_Stop | ( | std_srvs::Trigger::Request & | req, |
std_srvs::Trigger::Response & | res | ||
) | [inline] |
Executes the service callback for stop.
Stops all hardware movements.
req | Service request |
res | Service response |
stop powercubes
Definition at line 491 of file schunk_powercube_chain.cpp.
void PowerCubeChainNode::topicCallback_CommandPos | ( | const std_msgs::Float64MultiArray::ConstPtr & | msg | ) | [inline] |
Executes the callback from the command_pos topic.
Set the current position target.
msg | Float64MultiArray |
check dimensions
command positions to powercubes
Definition at line 353 of file schunk_powercube_chain.cpp.
void PowerCubeChainNode::topicCallback_CommandVel | ( | const std_msgs::Float64MultiArray::ConstPtr & | msg | ) | [inline] |
Executes the callback from the command_vel topic.
Set the current velocity target.
msg | Float64MultiArray |
check dimensions
command velocities to powercubes
Definition at line 400 of file schunk_powercube_chain.cpp.
Definition at line 83 of file schunk_powercube_chain.cpp.
std::string PowerCubeChainNode::error_msg_ |
Definition at line 84 of file schunk_powercube_chain.cpp.
member variables
Definition at line 81 of file schunk_powercube_chain.cpp.
Definition at line 85 of file schunk_powercube_chain.cpp.
create a handle for this node, initialize node
Definition at line 55 of file schunk_powercube_chain.cpp.
Definition at line 56 of file schunk_powercube_chain.cpp.
handle for powercube_chain
Definition at line 75 of file schunk_powercube_chain.cpp.
handle for powercube_chain parameters
Definition at line 78 of file schunk_powercube_chain.cpp.
declaration of service servers
Definition at line 69 of file schunk_powercube_chain.cpp.
Definition at line 72 of file schunk_powercube_chain.cpp.
Definition at line 70 of file schunk_powercube_chain.cpp.
Definition at line 71 of file schunk_powercube_chain.cpp.
Definition at line 82 of file schunk_powercube_chain.cpp.
Definition at line 60 of file schunk_powercube_chain.cpp.
Definition at line 62 of file schunk_powercube_chain.cpp.
declaration of topics to publish
Definition at line 59 of file schunk_powercube_chain.cpp.
Definition at line 61 of file schunk_powercube_chain.cpp.
declaration of topics to subscribe, callback is called for new messages arriving
Definition at line 65 of file schunk_powercube_chain.cpp.
Definition at line 66 of file schunk_powercube_chain.cpp.