Public Member Functions | Private Member Functions | Private Attributes
SegwayRMPNode Class Reference

List of all members.

Public Member Functions

void cmd_velCallback (const geometry_msgs::Twist::ConstPtr &msg)
void disconnect ()
void handleStatus (segwayrmp::SegwayStatus::Ptr &ss_ptr)
void keepAliveCallback (const ros::TimerEvent &e)
void motor_timeoutCallback (const ros::TimerEvent &e)
void run ()
 SegwayRMPNode ()
bool spin ()
 ~SegwayRMPNode ()

Private Member Functions

int getParameters ()
void setupROSComms ()
void setupSegwayRMP ()

Private Attributes

double angular_neg_accel_limit
double angular_pos_accel_limit
double angular_vel
bool broadcast_tf
ros::Subscriber cmd_velSubscriber
bool connected
int count
bool first_odometry
std::string frame_id
segwayrmp::InterfaceType interface_type
std::string interface_type_str
bool invert_x
bool invert_z
ros::Timer keep_alive_timer
float last_forward_displacement
ros::Time last_time
float last_yaw_displacement
double linear_neg_accel_limit
double linear_pos_accel_limit
double linear_vel
boost::mutex m_mutex
ros::Timer motor_timeout_timer
ros::NodeHandle * n
tf::TransformBroadcaster odom_broadcaster
nav_msgs::Odometry odom_msg
ros::Publisher odom_pub
geometry_msgs::TransformStamped odom_trans
float odometry_w
float odometry_x
float odometry_y
double segway_motor_timeout
segwayrmp::SegwayRMP * segway_rmp
segwayrmp::SegwayRMPType segway_rmp_type
ros::Publisher segway_status_pub
std::string serial_number
std::string serial_port
segway_rmpX::SegwayStatusStamped sss_msg
double target_angular_vel
double target_linear_vel
std::string usb_description
int usb_index
std::string usb_selector

Detailed Description

Definition at line 53 of file segway_rmp_node.cpp.


Constructor & Destructor Documentation

Definition at line 55 of file segway_rmp_node.cpp.

Definition at line 67 of file segway_rmp_node.cpp.


Member Function Documentation

void SegwayRMPNode::cmd_velCallback ( const geometry_msgs::Twist::ConstPtr &  msg) [inline]

The handler for messages received on the 'cmd_vel' topic.

Definition at line 301 of file segway_rmp_node.cpp.

void SegwayRMPNode::disconnect ( ) [inline]

Definition at line 71 of file segway_rmp_node.cpp.

int SegwayRMPNode::getParameters ( ) [inline, private]

Definition at line 370 of file segway_rmp_node.cpp.

void SegwayRMPNode::handleStatus ( segwayrmp::SegwayStatus::Ptr &  ss_ptr) [inline]

Definition at line 183 of file segway_rmp_node.cpp.

void SegwayRMPNode::keepAliveCallback ( const ros::TimerEvent &  e) [inline]

This method is called at 20Hz. Each time it sends a movement command to the Segway RMP.

Definition at line 128 of file segway_rmp_node.cpp.

void SegwayRMPNode::motor_timeoutCallback ( const ros::TimerEvent &  e) [inline]

This method is called if a motor command is not received within the segway_motor_timeout interval. It halts the robot for safety reasons.

Definition at line 291 of file segway_rmp_node.cpp.

void SegwayRMPNode::run ( ) [inline]

Definition at line 77 of file segway_rmp_node.cpp.

void SegwayRMPNode::setupROSComms ( ) [inline, private]

Definition at line 327 of file segway_rmp_node.cpp.

void SegwayRMPNode::setupSegwayRMP ( ) [inline, private]

Definition at line 336 of file segway_rmp_node.cpp.

bool SegwayRMPNode::spin ( ) [inline]

Definition at line 110 of file segway_rmp_node.cpp.


Member Data Documentation

Definition at line 513 of file segway_rmp_node.cpp.

Definition at line 512 of file segway_rmp_node.cpp.

double SegwayRMPNode::angular_vel [private]

Definition at line 505 of file segway_rmp_node.cpp.

Definition at line 502 of file segway_rmp_node.cpp.

ros::Subscriber SegwayRMPNode::cmd_velSubscriber [private]

Definition at line 481 of file segway_rmp_node.cpp.

bool SegwayRMPNode::connected [private]

Definition at line 515 of file segway_rmp_node.cpp.

int SegwayRMPNode::count [private]

Definition at line 521 of file segway_rmp_node.cpp.

Definition at line 523 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::frame_id [private]

Definition at line 500 of file segway_rmp_node.cpp.

segwayrmp::InterfaceType SegwayRMPNode::interface_type [private]

Definition at line 489 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::interface_type_str [private]

Definition at line 488 of file segway_rmp_node.cpp.

bool SegwayRMPNode::invert_x [private]

Definition at line 501 of file segway_rmp_node.cpp.

bool SegwayRMPNode::invert_z [private]

Definition at line 501 of file segway_rmp_node.cpp.

ros::Timer SegwayRMPNode::keep_alive_timer [private]

Definition at line 479 of file segway_rmp_node.cpp.

Definition at line 524 of file segway_rmp_node.cpp.

ros::Time SegwayRMPNode::last_time [private]

Definition at line 529 of file segway_rmp_node.cpp.

Definition at line 525 of file segway_rmp_node.cpp.

Definition at line 511 of file segway_rmp_node.cpp.

Definition at line 510 of file segway_rmp_node.cpp.

double SegwayRMPNode::linear_vel [private]

Definition at line 504 of file segway_rmp_node.cpp.

boost::mutex SegwayRMPNode::m_mutex [private]

Definition at line 531 of file segway_rmp_node.cpp.

ros::Timer SegwayRMPNode::motor_timeout_timer [private]

Definition at line 498 of file segway_rmp_node.cpp.

ros::NodeHandle* SegwayRMPNode::n [private]

Definition at line 477 of file segway_rmp_node.cpp.

tf::TransformBroadcaster SegwayRMPNode::odom_broadcaster [private]

Definition at line 484 of file segway_rmp_node.cpp.

nav_msgs::Odometry SegwayRMPNode::odom_msg [private]

Definition at line 519 of file segway_rmp_node.cpp.

ros::Publisher SegwayRMPNode::odom_pub [private]

Definition at line 483 of file segway_rmp_node.cpp.

geometry_msgs::TransformStamped SegwayRMPNode::odom_trans [private]

Definition at line 518 of file segway_rmp_node.cpp.

float SegwayRMPNode::odometry_w [private]

Definition at line 528 of file segway_rmp_node.cpp.

float SegwayRMPNode::odometry_x [private]

Definition at line 526 of file segway_rmp_node.cpp.

float SegwayRMPNode::odometry_y [private]

Definition at line 527 of file segway_rmp_node.cpp.

Definition at line 497 of file segway_rmp_node.cpp.

segwayrmp::SegwayRMP* SegwayRMPNode::segway_rmp [private]

Definition at line 486 of file segway_rmp_node.cpp.

segwayrmp::SegwayRMPType SegwayRMPNode::segway_rmp_type [private]

Definition at line 490 of file segway_rmp_node.cpp.

ros::Publisher SegwayRMPNode::segway_status_pub [private]

Definition at line 482 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::serial_number [private]

Definition at line 493 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::serial_port [private]

Definition at line 491 of file segway_rmp_node.cpp.

segway_rmpX::SegwayStatusStamped SegwayRMPNode::sss_msg [private]

Definition at line 517 of file segway_rmp_node.cpp.

Definition at line 508 of file segway_rmp_node.cpp.

Definition at line 507 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::usb_description [private]

Definition at line 494 of file segway_rmp_node.cpp.

int SegwayRMPNode::usb_index [private]

Definition at line 495 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::usb_selector [private]

Definition at line 492 of file segway_rmp_node.cpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends


segway_rmpX
Author(s): William Woodall
autogenerated on Thu May 2 2013 12:29:20