/pal_image_navigation_node/image_look
#
Caution
This documentation page has been auto-generated.
It may be missing some details.
/pal_image_navigation_node/image_look
Quick Facts
- Category
- Message type
pal_image_navigation_msgs/ImageGoal
Quick snippets#
$ rostopic pub /pal_image_navigation_node/image_look/goal pal_image_navigation_msgs/ImageGoalActionGoal # press Tab to complete the message prototype
How to use in your code#
#!/usr/bin/env python
import rospy
import actionlib
from pal_image_navigation_msgs.msg import *
if __name__ == "__main__":
client = actionlib.SimpleActionClient("/pal_image_navigation_node/image_look", pal_image_navigation_msgs.msg.ImageGoalAction)
client.wait_for_server()
# check the pal_image_navigation_msgs/ImageGoalGoal message
# definition for the possible goal parameters
goal = pal_image_navigation_msgs.msg.ImageGoalGoal(param1=..., param2=...)
client.send_goal(goal)
client.wait_for_result()
rospy.loginfo("Action returned: %s" % client.get_result())
#include <ros/ros.h>
#include <actionlib/client/simple_action_client.h>
#include <actionlib/client/terminal_state.h>
#include <pal_image_navigation_msgs/ImageGoalAction.h>
int main (int argc, char **argv)
{
ros::init(argc, argv, "pal_image_navigation_node_image_look_action_client");
// create the action client
// true causes the client to spin its own thread
actionlib::SimpleActionClient<:pal_image_navigation_msgs::ImageGoalAction> ac("/pal_image_navigation_node/image_look", true);
ROS_INFO("Waiting for action server to start.");
// wait for the action server to start
ac.waitForServer(); //will wait for infinite time
ROS_INFO("Action server started, sending goal.");
// send a goal to the action
pal_image_navigation_msgs::ImageGoalGoal goal;
// check the pal_image_navigation_msgs/ImageGoalGoal message
// definition for the possible goal parameters
// goal.... = ...;
ac.sendGoal(goal);
//wait for the action to return
bool finished_before_timeout = ac.waitForResult(ros::Duration(30.0));
if (finished_before_timeout)
{
actionlib::SimpleClientGoalState state = ac.getState();
ROS_INFO("Action finished: %s",state.toString().c_str());
}
else
{
ROS_INFO("Action did not finish before the time out.");
ac.cancelGoal();
}
return 0;
}
You can also access this action from a webpage displayed on the robot’s touchscreen via this endpoint:
http://<robot>-0c/action/look_to_point
(replace <robot>-0c
by the serial number of your own robot).
See REST interface for the general documentation of the REST endpoints and code samples.