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 | |
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 32 of file CTuMicos.h.
|
inlinevirtual |
Destructor.
Definition at line 36 of file CTuMicos.h.
|
virtual |
Query position in absolute terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 66 of file CTuMicos.cpp.
|
virtual |
Specification (de/a)celeration in turn.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 141 of file CTuMicos.cpp.
|
virtual |
Query (de/a)celeration in turn.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 153 of file CTuMicos.cpp.
|
virtual |
Wait the finish of the last position command to continue accept commands.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 272 of file CTuMicos.cpp.
|
virtual |
Specification of velocity to which start and finish the (de/a)celeration.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 165 of file CTuMicos.cpp.
|
virtual |
Query velocity to which start and finish the (de/a)celeration.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 176 of file CTuMicos.cpp.
|
virtual |
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 447 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 846 of file CTuMicos.cpp.
bool CTuMicos::clear | ( | ) |
Clear controller internal stack.
Definition at line 417 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
inlinevirtual |
|
virtual |
Close Connection with serial port.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 541 of file CTuMicos.cpp.
|
staticprivate |
Convert string to double.
Definition at line 833 of file CTuMicos.cpp.
|
staticprivate |
Convert string to long.
Definition at line 821 of file CTuMicos.cpp.
|
virtual |
Enable/Disable echo response with command.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 664 of file CTuMicos.cpp.
|
virtual |
|
virtual |
Enable/Disable movement limits.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 247 of file CTuMicos.cpp.
|
virtual |
Query if exist movement limits.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 235 of file CTuMicos.cpp.
|
virtual |
Inmediately stop.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 293 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
virtual |
Inmediately stop all.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 282 of file CTuMicos.cpp.
|
virtual |
PTU and serial port initialization.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 475 of file CTuMicos.cpp.
References mrpt::utils::clear(), MRPT_LOG_ERROR_STREAM, and version.
|
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 259 of file CTuMicos.cpp.
|
virtual |
Specification of velocity lower limit.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 211 of file CTuMicos.cpp.
|
virtual |
Query velocity lower limit.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 223 of file CTuMicos.cpp.
References DEG2RAD.
|
virtual |
Query max movement limit of a axis in absolute terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 101 of file CTuMicos.cpp.
|
virtual |
Query min movement limit of a axis in absolute terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 112 of file CTuMicos.cpp.
|
virtual |
Specification of positions in absolute terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 51 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 76 of file CTuMicos.cpp.
References RAD2DEG, and mrpt::system::os::sprintf().
|
virtual |
Number of version.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 380 of file CTuMicos.cpp.
|
virtual |
Query position in relative terms.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 91 of file CTuMicos.cpp.
|
virtual |
To obtain the number of radians for a discrete value.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 808 of file CTuMicos.cpp.
|
virtual |
Specification of power mode.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 404 of file CTuMicos.cpp.
|
virtual |
Query power mode.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 391 of file CTuMicos.cpp.
|
privatevirtual |
Method used for asign a number of radians with a command.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 766 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 557 of file CTuMicos.cpp.
|
privatevirtual |
Used to obtains a number of radians.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 700 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 795 of file CTuMicos.cpp.
|
virtual |
Search limit forward.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 30 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
privatevirtual |
To receive the responseof the PTU.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 593 of file CTuMicos.cpp.
References mrpt::system::os::strcpy().
|
virtual |
Reset PTU to initial state.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 308 of file CTuMicos.cpp.
References mrpt::system::sleep(), and 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 677 of file CTuMicos.cpp.
|
virtual |
Restore default values.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 341 of file CTuMicos.cpp.
|
virtual |
Restore factory default values.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 354 of file CTuMicos.cpp.
|
virtual |
Save or restart default values.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 328 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 783 of file CTuMicos.cpp.
|
virtual |
Set limits of movement.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 432 of file CTuMicos.cpp.
References mrpt::system::os::sprintf().
|
virtual |
Specification of turn speed.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 122 of file CTuMicos.cpp.
|
virtual |
Query turn speed.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 131 of file CTuMicos.cpp.
|
virtual |
Check if ptu is moving.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 689 of file CTuMicos.cpp.
|
privatevirtual |
To transmition commands to the PTU.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 570 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 188 of file CTuMicos.cpp.
|
virtual |
Query velocity upper limit.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 199 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 638 of file CTuMicos.cpp.
|
virtual |
Query verbose mode.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 624 of file CTuMicos.cpp.
|
virtual |
Version and CopyRights.
Implements mrpt::hwdrivers::CPtuBase.
Definition at line 367 of file CTuMicos.cpp.
int mrpt::hwdrivers::CTuMicos::axis_index |
Definition at line 336 of file CTuMicos.h.
|
inherited |
Definition at line 30 of file CPtuBase.h.
|
protectedinherited |
Definition at line 34 of file CPtuBase.h.
|
inherited |
Definition at line 30 of file CPtuBase.h.
Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019 |