47 virtual bool absPosQ(
char axis,
double& nRad) = 0;
66 virtual bool offPosQ(
char axis,
double& nRad) = 0;
70 virtual bool maxPosQ(
char axis,
double& nRad) = 0;
74 virtual bool minPosQ(
char axis,
double& nRad) = 0;
109 virtual bool aWait() = 0;
117 virtual bool halt(
char axis) = 0;
121 virtual bool speed(
char axis,
double RadSec) = 0;
125 virtual bool speedQ(
char axis,
double& RadSec) = 0;
129 virtual bool aceleration(
char axis,
double RadSec2) = 0;
133 virtual bool acelerationQ(
char axis,
double& RadSec2) = 0;
139 virtual bool baseSpeed(
char axis,
double RadSec) = 0;
145 virtual bool baseSpeedQ(
char axis,
double& RadSec) = 0;
149 virtual bool upperSpeed(
char axis,
double RadSec) = 0;
153 virtual bool upperSpeedQ(
char axis,
double& RadSec) = 0;
157 virtual bool lowerSpeed(
char axis,
double RadSec) = 0;
161 virtual bool lowerSpeedQ(
char axis,
double& RadSec) = 0;
165 virtual bool reset() = 0;
169 virtual bool save() = 0;
181 virtual bool version(
char* nVersion) = 0;
185 virtual void nversion(
double& nVersion) = 0;
189 virtual bool powerModeQ(
bool transit,
char& mode) = 0;
193 virtual bool powerMode(
bool transit,
char mode) = 0;
197 virtual double status(
double& rad) = 0;
201 virtual bool setLimits(
char axis,
double& l,
double& u) = 0;
222 virtual bool init(
const std::string& port) = 0;
226 virtual void close() = 0;
233 virtual double radError(
char axis,
double nRadMoved) = 0;
237 virtual long radToPos(
char axis,
double nRad) = 0;
241 virtual double posToRad(
char axis,
long nPos) = 0;
252 char axis,
int wait,
float initial,
float final,
double RadPre) = 0;
256 virtual bool verboseQ(
bool& modo) = 0;
269 virtual bool verbose(
bool set) = 0;
284 virtual bool echoMode(
bool mode) = 0;
297 virtual bool transmit(
const char* command) = 0;
301 virtual bool receive(
const char* command,
char* response) = 0;
305 virtual bool radQuerry(
char axis,
char command,
double& nRad) = 0;
309 virtual bool radAsign(
char axis,
char command,
double nRad) = 0;
virtual bool upperSpeedQ(char axis, double &RadSec)=0
Query velocity upper limit.
virtual bool absPosQ(char axis, double &nRad)=0
Query position in absolute terms.
virtual bool aceleration(char axis, double RadSec2)=0
Specification (de/a)celeration in turn.
virtual bool enableLimits(bool set)=0
Enable/Disable movement limits.
virtual bool lowerSpeedQ(char axis, double &RadSec)=0
Query velocity lower limit.
A communications serial port built as an implementation of a utils::CStream.
virtual bool verbose(bool set)=0
Set verbose.
mrpt::comms::CSerialPort serPort
virtual bool verboseQ(bool &modo)=0
Query verbose mode.
virtual bool inmediateExecution(bool set)=0
With I mode (default) instructs pan-tilt unit to immediately execute positional commands.
virtual bool scan(char axis, int wait, float initial, float final, double RadPre)=0
Performs a scan in the axis indicated and whit the precision desired.
This class implements initialization and communication methods to control a generic Pan and Tilt Unit...
virtual bool echoMode(bool mode)=0
Enable/Disable echo response with command.
Contains classes for various device interfaces.
virtual bool upperSpeed(char axis, double RadSec)=0
Specification of velocity upper limit.
virtual bool moveToAbsPos(char axis, double nRad)=0
Specification of positions in absolute terms.
virtual bool init(const std::string &port)=0
PTU and serial port initialization.
virtual bool moveToOffPos(char axis, double nRad)=0
Specify desired axis position as an offset from the current position.
virtual bool restoreDefaults()=0
Restore default values.
virtual void close()=0
Close Connection with serial port.
virtual bool maxPosQ(char axis, double &nRad)=0
Query max movement limit of a axis in absolute terms.
virtual bool minPosQ(char axis, double &nRad)=0
Query min movement limit of a axis in absolute terms.
virtual double status(double &rad)=0
Check if ptu is moving.
virtual bool powerMode(bool transit, char mode)=0
Specification of power mode.
virtual bool setLimits(char axis, double &l, double &u)=0
Set limits of movement.
virtual bool changeMotionDir()=0
virtual bool baseSpeedQ(char axis, double &RadSec)=0
Query velocity to which start and finish the (de/a)celeration.
virtual double radError(char axis, double nRadMoved)=0
To obtains the mistake for use discrete values when the movement is expressed in radians.
virtual int checkErrors()=0
Check errors, returns 0 if there are not errors or error code otherwise.
virtual bool radQuerry(char axis, char command, double &nRad)=0
Used to obtains a number of radians.
virtual bool acelerationQ(char axis, double &RadSec2)=0
Query (de/a)celeration in turn.
virtual bool save()=0
Save or restart default values.
virtual void clearErrors()=0
Clear errors.
virtual bool aWait()=0
Wait the finish of the last position command to continue accept commands.
virtual bool powerModeQ(bool transit, char &mode)=0
Query power mode.
virtual bool rangeMeasure()=0
Search limit forward.
virtual ~CPtuBase()=default
Destructor.
virtual bool halt(char axis)=0
Inmediately stop.
virtual bool transmit(const char *command)=0
To transmition commands to the PTU.
virtual bool haltAll()=0
Inmediately stop all.
virtual bool speedQ(char axis, double &RadSec)=0
Query turn speed.
virtual bool offPosQ(char axis, double &nRad)=0
Query position in relative terms.
virtual double posToRad(char axis, long nPos)=0
To obtain the number of radians for a discrete value.
virtual bool enableLimitsQ(bool &enable)=0
Query if exist movement limits.
virtual bool restoreFactoryDefaults()=0
Restore factory default values.
virtual long radToPos(char axis, double nRad)=0
To obtain the discrete value for a number of radians.
virtual bool resolution()=0
Query the pan and tilt resolution per position moved and initialize local atributes.
virtual bool receive(const char *command, char *response)=0
To receive the responseof the PTU.
virtual bool reset()=0
Reset PTU to initial state.
virtual bool lowerSpeed(char axis, double RadSec)=0
Specification of velocity lower limit.
virtual void nversion(double &nVersion)=0
Number of version.
virtual bool baseSpeed(char axis, double RadSec)=0
Specification of velocity to which start and finish the (de/a)celeration.
virtual bool version(char *nVersion)=0
Version and CopyRights.
virtual bool radAsign(char axis, char command, double nRad)=0
Method used for asign a number of radians with a command.
virtual bool speed(char axis, double RadSec)=0
Specification of turn speed.
virtual bool echoModeQ(bool &mode)=0
Query echo mode.