#include <gazebo_rsv_balance.h>
Public Member Functions | |
| GazeboRsvBalance () | |
| void | Load (physics::ModelPtr _parent, sdf::ElementPtr _sdf) |
| void | Reset () |
| Called when Gazebo resets world. | |
| ~GazeboRsvBalance () | |
Protected Member Functions | |
| virtual void | FiniChild () |
| Called by gazebo upon exiting. | |
| virtual void | UpdateChild () |
| Gazebo step update. | |
Private Types | |
| enum | { RIGHT, LEFT } |
| enum | Mode { PARK = rsv_balance_msgs::SetModeRequest::PARK, TRACTOR = rsv_balance_msgs::SetModeRequest::TRACTOR, BALANCE = rsv_balance_msgs::SetModeRequest::BALANCE } |
| enum | OdomSource { ENCODER = 0, WORLD = 1 } |
Private Member Functions | |
| void | cmdTiltCallback (const std_msgs::Float64::ConstPtr &cmd_tilt) |
| Callback to cmd_tilt. | |
| void | cmdVelCallback (const geometry_msgs::Twist::ConstPtr &cmd_msg) |
| Callback to cmd_vel. | |
| void | publishOdometry () |
| Publishes odometry and desired tfs. | |
| void | publishWheelJointState () |
| Publishes wheel joint_states. | |
| void | QueueThread () |
| bool | resetOdom (std_srvs::Empty::Request &req) |
| Service to reset odometry. | |
| void | resetOdometry () |
| Resets odometry by adding offset to WORLD odometry, and resetting odometry values. | |
| bool | resetOverride (std_srvs::Empty::Request &req) |
| Just exposes service. Not used in simulation. | |
| void | resetVariables () |
| Resets simulation variables. | |
| bool | setInput (rsv_balance_msgs::SetInput::Request &req) |
| Just exposes service. Not used in simulation. | |
| bool | setMode (rsv_balance_msgs::SetMode::Request &req) |
| Sets platform operating mode. | |
| void | updateIMU () |
| Gets pitch angle values directly from Gazebo world. | |
| void | updateOdometry () |
| Updates odometry, from Gazebo world or from encoders. | |
Private Attributes | |
| bool | alive_ |
| std::string | base_frame_id_ |
| boost::thread | callback_queue_thread_ |
| ros::Subscriber | cmd_tilt_subscriber_ |
| ros::Subscriber | cmd_vel_subscriber_ |
| std::string | command_topic_ |
| Mode | current_mode_ |
| double | feedback_v_ |
| double | feedback_w_ |
| GazeboRosPtr | gazebo_ros_ |
| double | imu_dpitch_ |
| double | imu_pitch_ |
| ros::Publisher | joint_state_publisher_ |
| std::vector< physics::JointPtr > | joints_ |
| common::Time | last_update_time_ |
| std::map< std::string, Mode > | mode_map_ |
| nav_msgs::Odometry | odom_ |
| std::string | odom_frame_id_ |
| math::Vector3 | odom_offset_pos_ |
| math::Vector3 | odom_offset_rot_ |
| OdomSource | odom_source_ |
| std::string | odom_topic_ |
| ros::Publisher | odometry_publisher_ |
| physics::ModelPtr | parent_ |
| double | publish_diagnostics_rate_ |
| bool | publish_odom_tf_ |
| bool | publish_state_ |
| double | publish_state_rate_ |
| bool | publish_wheel_joint_ |
| ros::CallbackQueue | queue_ |
| ros::ServiceServer | reset_odom_server_ |
| ros::ServiceServer | reset_override_server_ |
| double | rot_desired_ |
| sdf::ElementPtr | sdf_ |
| ros::ServiceServer | set_input_server_ |
| ros::ServiceServer | set_mode_server_ |
| balance_control::BalanceControl | state_control_ |
| ros::Publisher | state_publisher_ |
| double | tilt_desired_ |
| boost::shared_ptr < tf::TransformBroadcaster > | transform_broadcaster_ |
| double * | u_control_ |
| event::ConnectionPtr | update_connection_ |
| double | update_period_ |
| double | update_rate_ |
| double | wheel_radius_ |
| double | wheel_separation_ |
| double | x_desired_ |
Gazebo Plugin which controls the balance platform just like the real thing.
Definition at line 45 of file gazebo_rsv_balance.h.
anonymous enum [private] |
Definition at line 47 of file gazebo_rsv_balance.h.
enum gazebo::GazeboRsvBalance::Mode [private] |
Definition at line 57 of file gazebo_rsv_balance.h.
enum gazebo::GazeboRsvBalance::OdomSource [private] |
Definition at line 52 of file gazebo_rsv_balance.h.
Definition at line 19 of file gazebo_rsv_balance.cpp.
Definition at line 21 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::cmdTiltCallback | ( | const std_msgs::Float64::ConstPtr & | cmd_tilt | ) | [private] |
Callback to cmd_tilt.
Definition at line 229 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::cmdVelCallback | ( | const geometry_msgs::Twist::ConstPtr & | cmd_msg | ) | [private] |
Callback to cmd_vel.
Definition at line 220 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::FiniChild | ( | ) | [protected, virtual] |
Called by gazebo upon exiting.
Definition at line 436 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::Load | ( | physics::ModelPtr | _parent, |
| sdf::ElementPtr | _sdf | ||
| ) |
Definition at line 23 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::publishOdometry | ( | ) | [private] |
Publishes odometry and desired tfs.
Definition at line 302 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::publishWheelJointState | ( | ) | [private] |
Publishes wheel joint_states.
Definition at line 340 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::QueueThread | ( | ) | [private] |
Definition at line 445 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::Reset | ( | ) |
Called when Gazebo resets world.
Definition at line 362 of file gazebo_rsv_balance.cpp.
| bool gazebo::GazeboRsvBalance::resetOdom | ( | std_srvs::Empty::Request & | req | ) | [private] |
Service to reset odometry.
Definition at line 210 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::resetOdometry | ( | ) | [private] |
Resets odometry by adding offset to WORLD odometry, and resetting odometry values.
Definition at line 250 of file gazebo_rsv_balance.cpp.
| bool gazebo::GazeboRsvBalance::resetOverride | ( | std_srvs::Empty::Request & | req | ) | [private] |
Just exposes service. Not used in simulation.
Definition at line 200 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::resetVariables | ( | ) | [private] |
Resets simulation variables.
Used when starting and when gazebo reset world or model
Definition at line 153 of file gazebo_rsv_balance.cpp.
| bool gazebo::GazeboRsvBalance::setInput | ( | rsv_balance_msgs::SetInput::Request & | req | ) | [private] |
Just exposes service. Not used in simulation.
Definition at line 190 of file gazebo_rsv_balance.cpp.
| bool gazebo::GazeboRsvBalance::setMode | ( | rsv_balance_msgs::SetMode::Request & | req | ) | [private] |
Sets platform operating mode.
Definition at line 164 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::UpdateChild | ( | ) | [protected, virtual] |
Gazebo step update.
Definition at line 378 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::updateIMU | ( | ) | [private] |
Gets pitch angle values directly from Gazebo world.
Definition at line 237 of file gazebo_rsv_balance.cpp.
| void gazebo::GazeboRsvBalance::updateOdometry | ( | ) | [private] |
Updates odometry, from Gazebo world or from encoders.
Definition at line 261 of file gazebo_rsv_balance.cpp.
bool gazebo::GazeboRsvBalance::alive_ [private] |
Definition at line 81 of file gazebo_rsv_balance.h.
std::string gazebo::GazeboRsvBalance::base_frame_id_ [private] |
Definition at line 111 of file gazebo_rsv_balance.h.
boost::thread gazebo::GazeboRsvBalance::callback_queue_thread_ [private] |
Definition at line 83 of file gazebo_rsv_balance.h.
Definition at line 93 of file gazebo_rsv_balance.h.
Definition at line 92 of file gazebo_rsv_balance.h.
std::string gazebo::GazeboRsvBalance::command_topic_ [private] |
Definition at line 87 of file gazebo_rsv_balance.h.
Mode gazebo::GazeboRsvBalance::current_mode_ [private] |
Definition at line 122 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::feedback_v_ [private] |
Definition at line 131 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::feedback_w_ [private] |
Definition at line 132 of file gazebo_rsv_balance.h.
Definition at line 75 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::imu_dpitch_ [private] |
Definition at line 130 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::imu_pitch_ [private] |
Definition at line 129 of file gazebo_rsv_balance.h.
Definition at line 91 of file gazebo_rsv_balance.h.
std::vector<physics::JointPtr> gazebo::GazeboRsvBalance::joints_ [private] |
Definition at line 125 of file gazebo_rsv_balance.h.
common::Time gazebo::GazeboRsvBalance::last_update_time_ [private] |
Definition at line 147 of file gazebo_rsv_balance.h.
std::map<std::string, Mode> gazebo::GazeboRsvBalance::mode_map_ [private] |
Definition at line 121 of file gazebo_rsv_balance.h.
nav_msgs::Odometry gazebo::GazeboRsvBalance::odom_ [private] |
Definition at line 137 of file gazebo_rsv_balance.h.
std::string gazebo::GazeboRsvBalance::odom_frame_id_ [private] |
Definition at line 112 of file gazebo_rsv_balance.h.
Definition at line 133 of file gazebo_rsv_balance.h.
Definition at line 134 of file gazebo_rsv_balance.h.
Definition at line 113 of file gazebo_rsv_balance.h.
std::string gazebo::GazeboRsvBalance::odom_topic_ [private] |
Definition at line 88 of file gazebo_rsv_balance.h.
Definition at line 89 of file gazebo_rsv_balance.h.
physics::ModelPtr gazebo::GazeboRsvBalance::parent_ [private] |
Definition at line 76 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::publish_diagnostics_rate_ [private] |
Definition at line 116 of file gazebo_rsv_balance.h.
bool gazebo::GazeboRsvBalance::publish_odom_tf_ [private] |
Definition at line 109 of file gazebo_rsv_balance.h.
bool gazebo::GazeboRsvBalance::publish_state_ [private] |
Definition at line 114 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::publish_state_rate_ [private] |
Definition at line 115 of file gazebo_rsv_balance.h.
bool gazebo::GazeboRsvBalance::publish_wheel_joint_ [private] |
Definition at line 110 of file gazebo_rsv_balance.h.
Definition at line 82 of file gazebo_rsv_balance.h.
Definition at line 97 of file gazebo_rsv_balance.h.
Definition at line 96 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::rot_desired_ [private] |
Definition at line 127 of file gazebo_rsv_balance.h.
sdf::ElementPtr gazebo::GazeboRsvBalance::sdf_ [private] |
Definition at line 77 of file gazebo_rsv_balance.h.
Definition at line 95 of file gazebo_rsv_balance.h.
Definition at line 94 of file gazebo_rsv_balance.h.
Definition at line 148 of file gazebo_rsv_balance.h.
Definition at line 90 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::tilt_desired_ [private] |
Definition at line 128 of file gazebo_rsv_balance.h.
boost::shared_ptr<tf::TransformBroadcaster> gazebo::GazeboRsvBalance::transform_broadcaster_ [private] |
Definition at line 98 of file gazebo_rsv_balance.h.
double* gazebo::GazeboRsvBalance::u_control_ [private] |
Definition at line 149 of file gazebo_rsv_balance.h.
Definition at line 78 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::update_period_ [private] |
Definition at line 146 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::update_rate_ [private] |
Definition at line 145 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::wheel_radius_ [private] |
Definition at line 119 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::wheel_separation_ [private] |
Definition at line 118 of file gazebo_rsv_balance.h.
double gazebo::GazeboRsvBalance::x_desired_ [private] |
Definition at line 126 of file gazebo_rsv_balance.h.