#include <mrpt/hwdrivers/CPtuDPerception.h>
Public Types | |
enum | { NoError = 1, ComError = 2, TimeoutError = 3, InitError = 5, PanHitError = 7, TiltHitError = 11, PanTiltHitError = 13, MaxLimitError = 17, MinLimitError = 19, OutOfRange = 23, IllegalCommandError = 29, UnExpectedError = 31 } |
enum | { Pan = 'P', Tilt = 'T' } |
enum | { Regular = 'R', High = 'H', Low = 'L', Off = 'O' } |
enum | { Com1 = 1, Com2 = 2, Com3 = 3, Com4 = 4 } |
Public Member Functions | |
CPtuDPerception () | |
Default constructor. | |
~CPtuDPerception () | |
Destructor. | |
bool | moveToAbsPos (char axis, double nRad) |
Specification of positions in absolute terms. | |
bool | absPosQ (char axis, double &nRad) |
Query position in absolute terms. | |
bool | moveToOffPos (char axis, double nRad) |
Specify desired axis position as an offset from the current position. | |
bool | offPosQ (char axis, double &nRad) |
Query position in relative terms. | |
bool | maxPosQ (char axis, double &nRad) |
Query max movement limit of a axis in absolute terms. | |
bool | minPosQ (char axis, double &nRad) |
Query min movement limit of a axis in absolute terms. | |
bool | enableLimitsQ (bool &enable) |
Query if exist movement limits. | |
bool | enableLimits (bool set) |
Enable/Disable movement limits. | |
bool | inmediateExecution (bool set) |
With I mode (default) instructs pan-tilt unit to immediately execute positional commands. | |
bool | aWait (void) |
Wait the finish of the last position command to continue accept commands. | |
bool | haltAll () |
Inmediately stop all. | |
bool | halt (char axis) |
Inmediately stop. | |
bool | speed (char axis, double radSec) |
Specification of turn speed. | |
bool | speedQ (char axis, double &radSec) |
Query turn speed. | |
bool | aceleration (char axis, double radSec2) |
Specification (de/a)celeration in turn. | |
bool | acelerationQ (char axis, double &radSec2) |
Query (de/a)celeration in turn. | |
bool | baseSpeed (char axis, double radSec) |
Specification of velocity to which start and finish the (de/a)celeration. | |
bool | baseSpeedQ (char axis, double &radSec) |
Query velocity to which start and finish the (de/a)celeration. | |
bool | upperSpeed (char axis, double radSec) |
Specification of velocity upper limit. | |
bool | upperSpeedQ (char axis, double &radSec) |
Query velocity upper limit. | |
bool | lowerSpeed (char axis, double radSec) |
Specification of velocity lower limit. | |
bool | lowerSpeedQ (char axis, double &radSec) |
Query velocity lower limit. | |
bool | reset (void) |
Reset PTU to initial state. | |
bool | save (void) |
Save or restart default values. | |
bool | restoreDefaults (void) |
Restore default values. | |
bool | restoreFactoryDefaults (void) |
Restore factory default values. | |
bool | version (char *nVersion) |
Version and CopyRights. | |
bool | powerModeQ (bool transit, char &mode) |
Query power mode. | |
bool | powerMode (bool transit, char mode) |
Specification of power mode. | |
int | checkErrors () |
Check errors, returns 0 if there are not errors or error code in otherwise Error codes:. | |
bool | noError () |
bool | comError () |
bool | timeoutError () |
bool | initError () |
bool | panTiltHitError () |
bool | panHitError () |
bool | tiltHitError () |
bool | maxLimitError () |
bool | minLimitError () |
bool | outOfRange () |
bool | illegalCommandError () |
bool | unExpectedError () |
void | clearErrors () |
Clear errors. | |
bool | init (const std::string port) |
PTU and serial port initialization. | |
void | close () |
Close conection with serial port. | |
double | radError (char axis, double nRadMoved) |
To obtains the mistake for use discrete values when the movement is expressed in radians. | |
long | radToPos (char axis, double nRad) |
To obtain the discrete value for a number of radians. | |
double | posToRad (char axis, long nPos) |
To obtain the number of radians for a discrete value. | |
bool | scan (char axis, int wait, float initial, float final, double radPre) |
Performs a scan in the axis indicated and whit the precision desired. | |
bool | verboseQ (bool &modo) |
Query verbose mode. | |
bool | verbose (bool set) |
Set verbose. | |
bool | echoModeQ (bool &mode) |
Query echo mode. | |
bool | echoMode (bool mode) |
Enable/Disable echo response with command. | |
bool | resolution (void) |
Query the pan and tilt resolution per position moved and initialize local atributes. | |
Public Attributes | |
int | nError |
TimeoutError: Only occurs if the communication is cut with PTU so it is advisable to check the connection and initialize again the comunication. | |
Private Member Functions | |
bool | transmit (const char *command) |
To transmition commands to the PTU. | |
bool | receive (const char *command, char **response) |
To receive the responseof the PTU. | |
bool | radQuerry (char axis, char command, double &nRad) |
Used to obtains a number of radians. | |
bool | radAsign (char axis, char command, double nRad) |
Method used for asign a number of radians with a command. | |
double | convertToDouble (char *sDouble) |
Convert string to double. | |
long | convertToLong (char *sLong) |
Convert string to long. |
Definition at line 42 of file CPtuDPerception.h.
anonymous enum |
NoError | |
ComError | |
TimeoutError | |
InitError | |
PanHitError | |
TiltHitError | |
PanTiltHitError | |
MaxLimitError | |
MinLimitError | |
OutOfRange | |
IllegalCommandError | |
UnExpectedError |
Definition at line 357 of file CPtuDPerception.h.
anonymous enum |
anonymous enum |
anonymous enum |
mrpt::hwdrivers::CPtuDPerception::CPtuDPerception | ( | ) | [inline] |
mrpt::hwdrivers::CPtuDPerception::~CPtuDPerception | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::absPosQ | ( | char | axis, | |
double & | nRad | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::aceleration | ( | char | axis, | |
double | radSec2 | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::acelerationQ | ( | char | axis, | |
double & | radSec2 | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::aWait | ( | void | ) | [virtual] |
Wait the finish of the last position command to continue accept commands.
Implements mrpt::hwdrivers::CPtuBase.
bool mrpt::hwdrivers::CPtuDPerception::baseSpeed | ( | char | axis, | |
double | radSec | |||
) | [virtual] |
Specification of velocity to which start and finish the (de/a)celeration.
Implements mrpt::hwdrivers::CPtuBase.
bool mrpt::hwdrivers::CPtuDPerception::baseSpeedQ | ( | char | axis, | |
double & | radSec | |||
) | [virtual] |
Query velocity to which start and finish the (de/a)celeration.
Implements mrpt::hwdrivers::CPtuBase.
int mrpt::hwdrivers::CPtuDPerception::checkErrors | ( | ) | [virtual] |
Check errors, returns 0 if there are not errors or error code in otherwise Error codes:.
1: Com error 2: Time out error 3: Init error 4: Pan tilt hit error 5: Pan hit error 6: Tilt hit error 7: Max limit error 8: Min limit error 9: Out of range 10: Illegal command error 11: Unexpected error
Implements mrpt::hwdrivers::CPtuBase.
void mrpt::hwdrivers::CPtuDPerception::clearErrors | ( | ) | [inline, virtual] |
Clear errors.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 246 of file CPtuDPerception.h.
void mrpt::hwdrivers::CPtuDPerception::close | ( | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::comError | ( | ) | [inline] |
double mrpt::hwdrivers::CPtuDPerception::convertToDouble | ( | char * | sDouble | ) | [private] |
Convert string to double.
long mrpt::hwdrivers::CPtuDPerception::convertToLong | ( | char * | sLong | ) | [private] |
Convert string to long.
bool mrpt::hwdrivers::CPtuDPerception::echoMode | ( | bool | mode | ) | [virtual] |
Enable/Disable echo response with command.
Example of use (EE supposed): PP * 22 ED * <pp entered again, but not echoed>* 22
Implements mrpt::hwdrivers::CPtuBase.
bool mrpt::hwdrivers::CPtuDPerception::echoModeQ | ( | bool & | mode | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::enableLimits | ( | bool | set | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::enableLimitsQ | ( | bool & | enable | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::halt | ( | char | axis | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::haltAll | ( | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::illegalCommandError | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::init | ( | const std::string | port | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::initError | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::inmediateExecution | ( | bool | set | ) | [virtual] |
With I mode (default) instructs pan-tilt unit to immediately execute positional commands.
In S mode instructs pan-tilt unit to execute positional commands only when an Await Position Command Completion command is executed or when put into Immediate Execution Mode.
Example of use of S mode: DR * S * PP1500 * TP-900 * PP * Current Pan position is 0 TP * Current Tilt position is 0 A * PP * Current Pan position is 1500 TP * Current Tilt position is -900
Implements mrpt::hwdrivers::CPtuBase.
bool mrpt::hwdrivers::CPtuDPerception::lowerSpeed | ( | char | axis, | |
double | radSec | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::lowerSpeedQ | ( | char | axis, | |
double & | radSec | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::maxLimitError | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::maxPosQ | ( | char | axis, | |
double & | nRad | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::minLimitError | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::minPosQ | ( | char | axis, | |
double & | nRad | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::moveToAbsPos | ( | char | axis, | |
double | nRad | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::moveToOffPos | ( | char | axis, | |
double | nRad | |||
) | [virtual] |
Specify desired axis position as an offset from the current position.
This method recives the number of radians to move.
Example of use: TT-500 * A * TO * Current Tilt position is -500 TO500 * A * TT * Current Pan position is 1000
Implements mrpt::hwdrivers::CPtuBase.
bool mrpt::hwdrivers::CPtuDPerception::noError | ( | ) | [inline] |
Definition at line 231 of file CPtuDPerception.h.
bool mrpt::hwdrivers::CPtuDPerception::offPosQ | ( | char | axis, | |
double & | nRad | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::outOfRange | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::panHitError | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::panTiltHitError | ( | ) | [inline] |
double mrpt::hwdrivers::CPtuDPerception::posToRad | ( | char | axis, | |
long | nPos | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::powerMode | ( | bool | transit, | |
char | mode | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::powerModeQ | ( | bool | transit, | |
char & | mode | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::radAsign | ( | char | axis, | |
char | command, | |||
double | nRad | |||
) | [private, virtual] |
double mrpt::hwdrivers::CPtuDPerception::radError | ( | char | axis, | |
double | nRadMoved | |||
) | [virtual] |
To obtains the mistake for use discrete values when the movement is expressed in radians.
Parameters are the absolute position in radians and the axis desired
Implements mrpt::hwdrivers::CPtuBase.
bool mrpt::hwdrivers::CPtuDPerception::radQuerry | ( | char | axis, | |
char | command, | |||
double & | nRad | |||
) | [private, virtual] |
long mrpt::hwdrivers::CPtuDPerception::radToPos | ( | char | axis, | |
double | nRad | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::receive | ( | const char * | command, | |
char ** | response | |||
) | [private, virtual] |
bool mrpt::hwdrivers::CPtuDPerception::reset | ( | void | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::resolution | ( | void | ) | [virtual] |
Query the pan and tilt resolution per position moved and initialize local atributes.
Implements mrpt::hwdrivers::CPtuBase.
bool mrpt::hwdrivers::CPtuDPerception::restoreDefaults | ( | void | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::restoreFactoryDefaults | ( | void | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::save | ( | void | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::scan | ( | char | axis, | |
int | wait, | |||
float | initial, | |||
float | final, | |||
double | radPre | |||
) | [virtual] |
Performs a scan in the axis indicated and whit the precision desired.
<axis> | {Pan or Till} | |
<tWait> | {Wait time betwen commands} | |
<initial> | {initial position} | |
<final> | {final position} | |
<radPre> | {radians precision for the scan} |
Implements mrpt::hwdrivers::CPtuBase.
bool mrpt::hwdrivers::CPtuDPerception::speed | ( | char | axis, | |
double | radSec | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::speedQ | ( | char | axis, | |
double & | radSec | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::tiltHitError | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::timeoutError | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::transmit | ( | const char * | command | ) | [private, virtual] |
bool mrpt::hwdrivers::CPtuDPerception::unExpectedError | ( | ) | [inline] |
bool mrpt::hwdrivers::CPtuDPerception::upperSpeed | ( | char | axis, | |
double | radSec | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::upperSpeedQ | ( | char | axis, | |
double & | radSec | |||
) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::verbose | ( | bool | set | ) | [virtual] |
Set verbose.
Example of response with FV (verbose) active: FV * PP * Current pan position is 0 Example of response with FT (terse) active: FT * PP * 0
Implements mrpt::hwdrivers::CPtuBase.
bool mrpt::hwdrivers::CPtuDPerception::verboseQ | ( | bool & | modo | ) | [virtual] |
bool mrpt::hwdrivers::CPtuDPerception::version | ( | char * | nVersion | ) | [virtual] |
TimeoutError: Only occurs if the communication is cut with PTU so it is advisable to check the connection and initialize again the comunication.
Definition at line 367 of file CPtuDPerception.h.
Page generated by Doxygen 1.5.9 for MRPT 0.6.5 SVN: at Sun Aug 2 11:39:56 CDT 2009 |