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_odom_scale
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
double initial_integrated_forward_position
double initial_integrated_left_wheel_position
double initial_integrated_right_wheel_position
double initial_integrated_turn_position
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_odom_scale
double linear_pos_accel_limit
double linear_vel
boost::mutex m_mutex
double max_angular_vel
double max_linear_vel
ros::Timer motor_timeout_timer
ros::NodeHandlen
tf::TransformBroadcaster odom_broadcaster
std::string odom_frame_id
nav_msgs::Odometry odom_msg
ros::Publisher odom_pub
geometry_msgs::TransformStamped odom_trans
double odometry_reset_duration
ros::Time odometry_reset_start_time
float odometry_w
float odometry_x
float odometry_y
bool reset_odometry
double segway_motor_timeout
segwayrmp::SegwayRMPsegway_rmp
segwayrmp::SegwayRMPType segway_rmp_type
ros::Publisher segway_status_pub
std::string serial_number
std::string serial_port
segway_rmp::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 75 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 350 of file segway_rmp_node.cpp.

void SegwayRMPNode::disconnect ( ) [inline]

Definition at line 79 of file segway_rmp_node.cpp.

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

Definition at line 429 of file segway_rmp_node.cpp.

Definition at line 197 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 138 of file segway_rmp_node.cpp.

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 340 of file segway_rmp_node.cpp.

void SegwayRMPNode::run ( ) [inline]

Definition at line 85 of file segway_rmp_node.cpp.

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

Definition at line 386 of file segway_rmp_node.cpp.

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

Definition at line 395 of file segway_rmp_node.cpp.

bool SegwayRMPNode::spin ( ) [inline]

Definition at line 120 of file segway_rmp_node.cpp.


Member Data Documentation

Definition at line 601 of file segway_rmp_node.cpp.

Definition at line 604 of file segway_rmp_node.cpp.

Definition at line 600 of file segway_rmp_node.cpp.

double SegwayRMPNode::angular_vel [private]

Definition at line 593 of file segway_rmp_node.cpp.

Definition at line 590 of file segway_rmp_node.cpp.

Definition at line 568 of file segway_rmp_node.cpp.

bool SegwayRMPNode::connected [private]

Definition at line 609 of file segway_rmp_node.cpp.

int SegwayRMPNode::count [private]

Definition at line 615 of file segway_rmp_node.cpp.

Definition at line 617 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::frame_id [private]

Definition at line 587 of file segway_rmp_node.cpp.

Definition at line 632 of file segway_rmp_node.cpp.

Definition at line 633 of file segway_rmp_node.cpp.

Definition at line 634 of file segway_rmp_node.cpp.

Definition at line 635 of file segway_rmp_node.cpp.

Definition at line 576 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::interface_type_str [private]

Definition at line 575 of file segway_rmp_node.cpp.

bool SegwayRMPNode::invert_x [private]

Definition at line 589 of file segway_rmp_node.cpp.

bool SegwayRMPNode::invert_z [private]

Definition at line 589 of file segway_rmp_node.cpp.

Definition at line 566 of file segway_rmp_node.cpp.

Definition at line 618 of file segway_rmp_node.cpp.

Definition at line 623 of file segway_rmp_node.cpp.

Definition at line 619 of file segway_rmp_node.cpp.

Definition at line 599 of file segway_rmp_node.cpp.

Definition at line 603 of file segway_rmp_node.cpp.

Definition at line 598 of file segway_rmp_node.cpp.

double SegwayRMPNode::linear_vel [private]

Definition at line 592 of file segway_rmp_node.cpp.

boost::mutex SegwayRMPNode::m_mutex [private]

Definition at line 625 of file segway_rmp_node.cpp.

Definition at line 607 of file segway_rmp_node.cpp.

Definition at line 606 of file segway_rmp_node.cpp.

Definition at line 585 of file segway_rmp_node.cpp.

Definition at line 564 of file segway_rmp_node.cpp.

Definition at line 571 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::odom_frame_id [private]

Definition at line 588 of file segway_rmp_node.cpp.

nav_msgs::Odometry SegwayRMPNode::odom_msg [private]

Definition at line 613 of file segway_rmp_node.cpp.

Definition at line 570 of file segway_rmp_node.cpp.

geometry_msgs::TransformStamped SegwayRMPNode::odom_trans [private]

Definition at line 612 of file segway_rmp_node.cpp.

Definition at line 630 of file segway_rmp_node.cpp.

Definition at line 631 of file segway_rmp_node.cpp.

float SegwayRMPNode::odometry_w [private]

Definition at line 622 of file segway_rmp_node.cpp.

float SegwayRMPNode::odometry_x [private]

Definition at line 620 of file segway_rmp_node.cpp.

float SegwayRMPNode::odometry_y [private]

Definition at line 621 of file segway_rmp_node.cpp.

Definition at line 629 of file segway_rmp_node.cpp.

Definition at line 584 of file segway_rmp_node.cpp.

Definition at line 573 of file segway_rmp_node.cpp.

Definition at line 577 of file segway_rmp_node.cpp.

Definition at line 569 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::serial_number [private]

Definition at line 580 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::serial_port [private]

Definition at line 578 of file segway_rmp_node.cpp.

segway_rmp::SegwayStatusStamped SegwayRMPNode::sss_msg [private]

Definition at line 611 of file segway_rmp_node.cpp.

Definition at line 596 of file segway_rmp_node.cpp.

Definition at line 595 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::usb_description [private]

Definition at line 581 of file segway_rmp_node.cpp.

int SegwayRMPNode::usb_index [private]

Definition at line 582 of file segway_rmp_node.cpp.

std::string SegwayRMPNode::usb_selector [private]

Definition at line 579 of file segway_rmp_node.cpp.


The documentation for this class was generated from the following file:


segway_rmp
Author(s): William Woodall
autogenerated on Wed Aug 26 2015 16:23:42