Public Member Functions | Private Types | Private Member Functions | Private Attributes
ArtSteer Class Reference

List of all members.

Public Member Functions

 ArtSteer ()
void run ()
 ~ArtSteer ()

Private Types

typedef art_msgs::DriverState DriverState

Private Member Functions

int calibrate_wheel_position (void)
void close ()
float degrees2volts (float degrees)
void GetCmd (const art_msgs::SteeringCommand::ConstPtr &cmdIn)
void GetPos (const art_msgs::IOadrState::ConstPtr &ioIn)
int open ()
void PublishStatus (void)
void read_wheel_angle (void)
float volts2degrees (float volts)

Private Attributes

bool angle_known_
boost::shared_ptr< Polynomialapoly_
int calibration_cycle_
int calibration_periods_
double cur_sensor_time_
boost::shared_ptr< devsteerdev_
bool diagnostic_
DriverState::_state_type driver_state_
ros::Subscriber ioadr_state_
double last_sensor_time_
float last_set_point_
float mean_voltage_
double sensor_timeout_
float set_point_
bool simulate_
float steering_angle_
ros::Subscriber steering_cmd_
ros::Publisher steering_diag_
float steering_sensor_
ros::Publisher steering_state_
boost::shared_ptr< testwheeltw_
boost::shared_ptr< Polynomialvpoly_
bool wheel_calibrated_
bool wheel_tested_

Detailed Description

Definition at line 76 of file steering.cc.


Member Typedef Documentation

Definition at line 120 of file steering.cc.


Constructor & Destructor Documentation

Todo:
use this to detect when ioadr driver hung or not responding

Definition at line 164 of file steering.cc.

Definition at line 238 of file steering.cc.


Member Function Documentation

int ArtSteer::calibrate_wheel_position ( void  ) [private]

Definition at line 323 of file steering.cc.

void ArtSteer::close ( ) [private]

close the device.

Postcondition:
driver_state_ is CLOSED

Definition at line 271 of file steering.cc.

float ArtSteer::degrees2volts ( float  degrees) [inline, private]

Definition at line 158 of file steering.cc.

void ArtSteer::GetCmd ( const art_msgs::SteeringCommand::ConstPtr cmdIn) [private]

Definition at line 278 of file steering.cc.

void ArtSteer::GetPos ( const art_msgs::IOadrState::ConstPtr ioIn) [private]

Definition at line 299 of file steering.cc.

int ArtSteer::open ( ) [private]

open the device.

Returns:
0 if successful.
Postcondition:
state is OPENED (if successful)

Definition at line 251 of file steering.cc.

void ArtSteer::PublishStatus ( void  ) [private]

publish current device status

Definition at line 374 of file steering.cc.

void ArtSteer::read_wheel_angle ( void  ) [private]

Get simulated wheel angle from driver

Only required when simulating the position sensor (even when using the real steering device).

Bug:
this should NOT be called until after calibrate_wheel_position
Postcondition:
when simulate_ is true, tries to set steering_angle_, steering_sensor_, cur_sensor_time_, angle_known_

Definition at line 359 of file steering.cc.

void ArtSteer::run ( )

Definition at line 394 of file steering.cc.

float ArtSteer::volts2degrees ( float  volts) [inline, private]

Definition at line 147 of file steering.cc.


Member Data Documentation

Definition at line 131 of file steering.cc.

boost::shared_ptr<Polynomial> ArtSteer::apoly_ [private]

Definition at line 139 of file steering.cc.

Definition at line 116 of file steering.cc.

Definition at line 99 of file steering.cc.

double ArtSteer::cur_sensor_time_ [private]

Definition at line 110 of file steering.cc.

boost::shared_ptr<devsteer> ArtSteer::dev_ [private]

Definition at line 135 of file steering.cc.

Definition at line 97 of file steering.cc.

Definition at line 121 of file steering.cc.

Definition at line 103 of file steering.cc.

double ArtSteer::last_sensor_time_ [private]

Definition at line 111 of file steering.cc.

float ArtSteer::last_set_point_ [private]

Definition at line 113 of file steering.cc.

float ArtSteer::mean_voltage_ [private]

Definition at line 117 of file steering.cc.

double ArtSteer::sensor_timeout_ [private]

Definition at line 100 of file steering.cc.

float ArtSteer::set_point_ [private]

Definition at line 112 of file steering.cc.

Definition at line 98 of file steering.cc.

float ArtSteer::steering_angle_ [private]

Definition at line 108 of file steering.cc.

Definition at line 104 of file steering.cc.

Definition at line 106 of file steering.cc.

float ArtSteer::steering_sensor_ [private]

Definition at line 109 of file steering.cc.

Definition at line 105 of file steering.cc.

boost::shared_ptr<testwheel> ArtSteer::tw_ [private]

Definition at line 136 of file steering.cc.

boost::shared_ptr<Polynomial> ArtSteer::vpoly_ [private]

Definition at line 141 of file steering.cc.

Definition at line 132 of file steering.cc.

Definition at line 133 of file steering.cc.


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


art_servo
Author(s): Austin Robot Technology, Jack O'Quin
autogenerated on Fri Jan 3 2014 11:09:12