Public Member Functions | List of all members
gazebo::CessnaPlugin Class Reference

Allow moving the control surfaces of a Cessna C-172 plane. More...

#include <CessnaPlugin.hh>

Inheritance diagram for gazebo::CessnaPlugin:
Inheritance graph
[legend]

Public Member Functions

 CessnaPlugin ()
 Constructor. More...
 
 ~CessnaPlugin ()
 Destructor. More...
 
virtual void Load (physics::ModelPtr _model, sdf::ElementPtr _sdf)
 Load function. More...
 
- Public Member Functions inherited from gazebo::ModelPlugin
 ModelPlugin ()
 Constructor. More...
 
virtual ~ModelPlugin ()
 Destructor. More...
 
virtual void Init ()
 Override this method for custom plugin initialization behavior. More...
 
virtual void Reset ()
 Override this method for custom plugin reset behavior. More...
 
- Public Member Functions inherited from gazebo::PluginT< ModelPlugin >
 PluginT ()
 Constructor. More...
 
virtual ~PluginT ()
 Destructor. More...
 
std::string GetFilename () const
 Get the name of the handler. More...
 
std::string GetHandle () const
 Get the short name of the handler. More...
 
PluginType GetType () const
 Returns the type of the plugin. More...
 

Additional Inherited Members

- Public Types inherited from gazebo::PluginT< ModelPlugin >
typedef boost::shared_ptr
< ModelPlugin
TPtr
 plugin pointer type definition More...
 
- Static Public Member Functions inherited from gazebo::PluginT< ModelPlugin >
static TPtr Create (const std::string &_filename, const std::string &_name)
 a class method that creates a plugin from a file name. More...
 
- Protected Attributes inherited from gazebo::PluginT< ModelPlugin >
std::string filename
 Path to the shared library file. More...
 
std::string handleName
 Short name. More...
 
PluginType type
 Type of plugin. More...
 

Detailed Description

Allow moving the control surfaces of a Cessna C-172 plane.

This plugin might be used with other models that have similar control surfaces.

The plugin requires the following parameters: <propeller> Name of the joint controlling the propeller spin. <propeller_max_rpm> Maximum angular speed in rpm. <left_aileron> Name of the joint controlling the left aileron. <left_flap> Name of the joint controlling the left flap. <right_aileron> Name of the joint controlling the right aileron. <right_flap> Name of the joint controlling the right flap. <elevators> Name of the joint controlling the rear elevators. <rudder> Name of the joint controlling the rudder.

The following parameters are optional: <propeller_p_gain> P gain for the PID that controls the propeller's speed. <propeller_i_gain> I gain for the PID that controls the propeller's speed. <propeller_d_gain> D gain for the PID that controls the propeller's speed. <surfaces_p_gain> P gain for the PID that controls the position of the control surfaces. <surfaces_i_gain> I gain for the PID that controls the position of the control surfaces. <surfaces_d_gain> D gain for the PID that controls the position of the control surfaces.

The plugin will be subscribed to the following topic: "~/<model_name>/control" The expected value is a Cessna message.

The plugin will advertise the following topic with the current state: "~/<model_name>/state"

Constructor & Destructor Documentation

gazebo::CessnaPlugin::CessnaPlugin ( )

Constructor.

gazebo::CessnaPlugin::~CessnaPlugin ( )

Destructor.

Member Function Documentation

virtual void gazebo::CessnaPlugin::Load ( physics::ModelPtr  _model,
sdf::ElementPtr  _sdf 
)
virtual

Load function.

Called when a Plugin is first created, and after the World has been loaded. This function should not be blocking.

Parameters
[in]_modelPointer to the Model
[in]_sdfPointer to the SDF element of the plugin.

Implements gazebo::ModelPlugin.


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