This class implements initialization and comunication methods to control a Tilt Unit model DT-80, working in radians .
Definition at line 25 of file CTuMicos.h.
#include <mrpt/hwdrivers/CTuMicos.h>
Public Member Functions | |
CTuMicos () | |
Default constructor. More... | |
virtual | ~CTuMicos () |
Destructor. More... | |
virtual bool | rangeMeasure () |
Search limit forward. More... | |
virtual bool | moveToAbsPos (char axis, double nRad) |
Specification of positions in absolute terms. More... | |
virtual bool | absPosQ (char axis, double &nRad) |
Query position in absolute terms. More... | |
virtual bool | moveToOffPos (char axis, double nRad) |
Specify desired axis position as an offset from the current position. More... | |
virtual bool | offPosQ (char axis, double &nRad) |
Query position in relative terms. More... | |
virtual bool | maxPosQ (char axis, double &nRad) |
Query max movement limit of a axis in absolute terms. More... | |
virtual bool | minPosQ (char axis, double &nRad) |
Query min movement limit of a axis in absolute terms. More... | |
virtual bool | enableLimitsQ (bool &enable) |
Query if exist movement limits. More... | |
virtual bool | enableLimits (bool set) |
Enable/Disable movement limits. More... | |
virtual bool | inmediateExecution (bool set) |
With I mode (default) instructs pan-tilt unit to immediately execute positional commands. More... | |
virtual bool | aWait (void) |
Wait the finish of the last position command to continue accept commands. More... | |
virtual bool | haltAll () |
Inmediately stop all. More... | |
virtual bool | halt (char axis) |
Inmediately stop. More... | |
virtual bool | speed (char axis, double radSec) |
Specification of turn speed. More... | |
virtual bool | speedQ (char axis, double &radSec) |
Query turn speed. More... | |
virtual bool | aceleration (char axis, double radSec2) |
Specification (de/a)celeration in turn. More... | |
virtual bool | acelerationQ (char axis, double &radSec2) |
Query (de/a)celeration in turn. More... | |
virtual bool | baseSpeed (char axis, double radSec) |
Specification of velocity to which start and finish the (de/a)celeration. More... | |
virtual bool | baseSpeedQ (char axis, double &radSec) |
Query velocity to which start and finish the (de/a)celeration. More... | |
virtual bool | upperSpeed (char axis, double radSec) |
Specification of velocity upper limit. More... | |
virtual bool | upperSpeedQ (char axis, double &radSec) |
Query velocity upper limit. More... | |
virtual bool | lowerSpeed (char axis, double radSec) |
Specification of velocity lower limit. More... | |
virtual bool | lowerSpeedQ (char axis, double &radSec) |
Query velocity lower limit. More... | |
virtual bool | reset (void) |
Reset PTU to initial state. More... | |
virtual bool | save (void) |
Save or restart default values. More... | |
virtual bool | restoreDefaults (void) |
Restore default values. More... | |
virtual bool | restoreFactoryDefaults (void) |
Restore factory default values. More... | |
virtual bool | version (char *nVersion) |
Version and CopyRights. More... | |
virtual void | nversion (double &nVersion) |
Number of version. More... | |
virtual bool | powerModeQ (bool transit, char &mode) |
Query power mode. More... | |
virtual bool | powerMode (bool transit, char mode) |
Specification of power mode. More... | |
bool | clear () |
Clear controller internal stack. More... | |
virtual bool | setLimits (char axis, double &l, double &u) |
Set limits of movement. More... | |
virtual bool | changeMotionDir () |
virtual int | checkErrors () |
Check errors, returns 0 if there are not errors or error code otherwise. More... | |
virtual void | clearErrors () |
Clear errors. More... | |
virtual bool | init (const std::string &port) |
PTU and serial port initialization. More... | |
virtual void | close () |
Close Connection with serial port. More... | |
virtual double | radError (char axis, double nRadMoved) |
To obtains the mistake for use discrete values when the movement is expressed in radians. More... | |
virtual long | radToPos (char axis, double nRad) |
To obtain the discrete value for a number of radians. More... | |
virtual double | posToRad (char axis, long nPos) |
To obtain the number of radians for a discrete value. More... | |
virtual bool | scan (char axis, int wait, float initial, float final, double radPre) |
Performs a scan in the axis indicated and whit the precision desired. More... | |
virtual bool | verboseQ (bool &modo) |
Query verbose mode. More... | |
virtual bool | verbose (bool set) |
Set verbose. More... | |
virtual bool | echoModeQ (bool &mode) |
Query echo mode. More... | |
virtual bool | echoMode (bool mode) |
Enable/Disable echo response with command. More... | |
virtual bool | resolution (void) |
Query the pan and tilt resolution per position moved and initialize local atributes. More... | |
virtual double | status (double &rad) |
Check if ptu is moving. More... | |
Public Attributes | |
int | axis_index |
double | tiltResolution |
double | panResolution |
Protected Attributes | |
mrpt::comms::CSerialPort | serPort |
Private Member Functions | |
virtual bool | transmit (const char *command) |
To transmition commands to the PTU. More... | |
virtual bool | receive (const char *command, char *response) |
To receive the responseof the PTU. More... | |
virtual bool | radQuerry (char axis, char command, double &nRad) |
Used to obtains a number of radians. More... | |
virtual bool | radAsign (char axis, char command, double nRad) |
Method used for asign a number of radians with a command. More... | |
Static Private Member Functions | |
static double | convertToDouble (char *sDouble) |
Convert string to double. More... | |
static long | convertToLong (char *sLong) |
Convert string to long. More... | |
|
inline |
Default constructor.
Definition at line 30 of file CTuMicos.h.
|
inlinevirtual |
Destructor.
Definition at line 34 of file CTuMicos.h.
References close().
|
virtual |
Query position in absolute terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 63 of file CTuMicos.cpp.
|
virtual |
Specification (de/a)celeration in turn.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 131 of file CTuMicos.cpp.
|
virtual |
Query (de/a)celeration in turn.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 142 of file CTuMicos.cpp.
|
virtual |
Wait the finish of the last position command to continue accept commands.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 252 of file CTuMicos.cpp.
|
virtual |
Specification of velocity to which start and finish the (de/a)celeration.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 153 of file CTuMicos.cpp.
|
virtual |
Query velocity to which start and finish the (de/a)celeration.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 164 of file CTuMicos.cpp.
|
virtual |
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 406 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
virtual |
Check errors, returns 0 if there are not errors or error code otherwise.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 782 of file CTuMicos.cpp.
bool CTuMicos::clear | ( | ) |
Clear controller internal stack.
Definition at line 378 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
inlinevirtual |
|
virtual |
Close Connection with serial port.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 494 of file CTuMicos.cpp.
Referenced by ~CTuMicos().
|
staticprivate |
Convert string to double.
Definition at line 770 of file CTuMicos.cpp.
|
staticprivate |
Convert string to long.
Definition at line 759 of file CTuMicos.cpp.
|
virtual |
Enable/Disable echo response with command.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 605 of file CTuMicos.cpp.
|
virtual |
|
virtual |
Enable/Disable movement limits.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 230 of file CTuMicos.cpp.
|
virtual |
Query if exist movement limits.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 219 of file CTuMicos.cpp.
|
virtual |
Inmediately stop.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 268 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
virtual |
Inmediately stop all.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 257 of file CTuMicos.cpp.
|
virtual |
PTU and serial port initialization.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 432 of file CTuMicos.cpp.
References mrpt::utils::clear(), and MRPT_LOG_ERROR_STREAM.
|
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.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 241 of file CTuMicos.cpp.
|
virtual |
Specification of velocity lower limit.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 197 of file CTuMicos.cpp.
|
virtual |
Query velocity lower limit.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 208 of file CTuMicos.cpp.
References DEG2RAD.
|
virtual |
Query max movement limit of a axis in absolute terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 95 of file CTuMicos.cpp.
|
virtual |
Query min movement limit of a axis in absolute terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 104 of file CTuMicos.cpp.
|
virtual |
Specification of positions in absolute terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 49 of file CTuMicos.cpp.
References RAD2DEG, and mrpt::system::os::sprintf().
|
virtual |
Specify desired axis position as an offset from the current position.
This method recives the number of radians to move.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 72 of file CTuMicos.cpp.
References RAD2DEG, and mrpt::system::os::sprintf().
|
virtual |
Number of version.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 346 of file CTuMicos.cpp.
|
virtual |
Query position in relative terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 86 of file CTuMicos.cpp.
|
virtual |
To obtain the number of radians for a discrete value.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 748 of file CTuMicos.cpp.
|
virtual |
Specification of power mode.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 367 of file CTuMicos.cpp.
|
virtual |
Query power mode.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 356 of file CTuMicos.cpp.
|
privatevirtual |
Method used for asign a number of radians with a command.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 709 of file CTuMicos.cpp.
References RAD2DEG, and mrpt::system::os::sprintf().
|
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.
Definition at line 508 of file CTuMicos.cpp.
|
privatevirtual |
Used to obtains a number of radians.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 632 of file CTuMicos.cpp.
References DEG2RAD, mrpt::system::os::sprintf(), and mrpt::system::strtok().
|
virtual |
To obtain the discrete value for a number of radians.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 737 of file CTuMicos.cpp.
|
virtual |
Search limit forward.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 29 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
privatevirtual |
To receive the responseof the PTU.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 542 of file CTuMicos.cpp.
References mrpt::system::os::strcpy().
|
virtual |
Reset PTU to initial state.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 282 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
virtual |
Query the pan and tilt resolution per position moved and initialize local atributes.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 616 of file CTuMicos.cpp.
|
virtual |
Restore default values.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 313 of file CTuMicos.cpp.
|
virtual |
Restore factory default values.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 324 of file CTuMicos.cpp.
|
virtual |
Save or restart default values.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 302 of file CTuMicos.cpp.
|
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.
Definition at line 725 of file CTuMicos.cpp.
|
virtual |
Set limits of movement.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 392 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
virtual |
Specification of turn speed.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 113 of file CTuMicos.cpp.
|
virtual |
Query turn speed.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 122 of file CTuMicos.cpp.
|
virtual |
Check if ptu is moving.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 627 of file CTuMicos.cpp.
|
privatevirtual |
To transmition commands to the PTU.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 519 of file CTuMicos.cpp.
References mrpt::system::os::strcat(), and mrpt::system::os::strcpy().
|
virtual |
Specification of velocity upper limit.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 175 of file CTuMicos.cpp.
|
virtual |
Query velocity upper limit.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 186 of file CTuMicos.cpp.
References DEG2RAD.
|
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.
Definition at line 583 of file CTuMicos.cpp.
|
virtual |
Query verbose mode.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 572 of file CTuMicos.cpp.
|
virtual |
Version and CopyRights.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 335 of file CTuMicos.cpp.
int mrpt::hwdrivers::CTuMicos::axis_index |
Definition at line 326 of file CTuMicos.h.
|
inherited |
Definition at line 28 of file CPtuBase.h.
|
protectedinherited |
Definition at line 31 of file CPtuBase.h.
|
inherited |
Definition at line 28 of file CPtuBase.h.
Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ae4571287 Thu Nov 23 00:06:53 2017 +0100 at dom oct 27 23:51:55 CET 2019 |