YARP
Yet Another Robot Platform
IMotorEncoders.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 
6 #ifndef YARP_DEV_IMOTORENCODERS_H
7 #define YARP_DEV_IMOTORENCODERS_H
8 
9 #include <yarp/os/Vocab.h>
10 #include <yarp/dev/api.h>
11 
12 namespace yarp {
13  namespace dev {
14  class IMotorEncodersRaw;
15  class IMotorEncoders;
16  }
17 }
18 
25 {
26 public:
30  virtual ~IMotorEncodersRaw() {}
31 
37  virtual bool getNumberOfMotorEncodersRaw(int *num) = 0;
38 
44  virtual bool resetMotorEncoderRaw(int m)=0;
45 
50  virtual bool resetMotorEncodersRaw()=0;
51 
58  virtual bool setMotorEncoderCountsPerRevolutionRaw(int m, const double cpr)=0;
59 
66  virtual bool getMotorEncoderCountsPerRevolutionRaw(int m, double *cpr)=0;
67 
74  virtual bool setMotorEncoderRaw(int m, const double val)=0;
75 
81  virtual bool setMotorEncodersRaw(const double *vals)=0;
82 
89  virtual bool getMotorEncoderRaw(int m, double *v)=0;
90 
96  virtual bool getMotorEncodersRaw(double *encs)=0;
97 
104  virtual bool getMotorEncodersTimedRaw(double *encs, double *stamps)=0;
105 
113  virtual bool getMotorEncoderTimedRaw(int m, double *encs, double *stamp)=0;
114 
121  virtual bool getMotorEncoderSpeedRaw(int m, double *sp)=0;
122 
128  virtual bool getMotorEncoderSpeedsRaw(double *spds)=0;
129 
136  virtual bool getMotorEncoderAccelerationRaw(int m, double *spds)=0;
137 
143  virtual bool getMotorEncoderAccelerationsRaw(double *accs)=0;
144 };
145 
152 {
153 public:
157  virtual ~IMotorEncoders() {}
158 
164  virtual bool getNumberOfMotorEncoders(int *num) = 0;
165 
171  virtual bool resetMotorEncoder(int m)=0;
172 
177  virtual bool resetMotorEncoders()=0;
178 
185  virtual bool setMotorEncoderCountsPerRevolution(int m, const double cpr)=0;
186 
193  virtual bool getMotorEncoderCountsPerRevolution(int m, double *cpr)=0;
194 
201  virtual bool setMotorEncoder(int m, const double val)=0;
202 
208  virtual bool setMotorEncoders(const double *vals)=0;
209 
216  virtual bool getMotorEncoder(int m, double *v)=0;
217 
223  virtual bool getMotorEncoders(double *encs)=0;
224 
231  virtual bool getMotorEncodersTimed(double *encs, double *time)=0;
232 
240  virtual bool getMotorEncoderTimed(int m, double *encs, double *time)=0;
241 
248  virtual bool getMotorEncoderSpeed(int m, double *sp)=0;
249 
255  virtual bool getMotorEncoderSpeeds(double *spds)=0;
256 
263  virtual bool getMotorEncoderAcceleration(int m, double *acc)=0;
264 
270  virtual bool getMotorEncoderAccelerations(double *accs)=0;
271 };
272 
273 // interface IMotorEncoders sets
279 
280 // interface IMotorEncoders gets
286 
287 #endif // YARP_DEV_IMOTORENCODERS_H
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_ENCODER_SPEED
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_ENCODER_ACCELERATIONS
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_ENCODER_ACCELERATION
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_ENCODER
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_ENCODER_SPEEDS
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_ENCODER_NUMBER
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_E_RESETS
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_E_RESET
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_ENCODERS
constexpr yarp::conf::vocab32_t VOCAB_MOTOR_CPR
Control board, encoder interface.
virtual bool setMotorEncoderCountsPerRevolutionRaw(int m, const double cpr)=0
Sets number of counts per revolution for motor encoder m.
virtual bool getMotorEncoderRaw(int m, double *v)=0
Read the value of a motor encoder.
virtual bool getMotorEncoderAccelerationsRaw(double *accs)=0
Read the instantaneous acceleration of all motor encoders.
virtual bool getNumberOfMotorEncodersRaw(int *num)=0
Get the number of available motor encoders.
virtual bool resetMotorEncodersRaw()=0
Reset motor encoders.
virtual bool getMotorEncoderCountsPerRevolutionRaw(int m, double *cpr)=0
Gets number of counts per revolution for motor encoder m.
virtual bool getMotorEncoderSpeedRaw(int m, double *sp)=0
Read the istantaneous speed of a motor encoder.
virtual bool getMotorEncodersTimedRaw(double *encs, double *stamps)=0
Read the instantaneous position of all motor encoders.
virtual bool getMotorEncodersRaw(double *encs)=0
Read the position of all motor encoders.
virtual bool getMotorEncoderSpeedsRaw(double *spds)=0
Read the instantaneous speed of all motor encoders.
virtual bool setMotorEncodersRaw(const double *vals)=0
Set the value of all motor encoders.
virtual bool setMotorEncoderRaw(int m, const double val)=0
Set the value of the motor encoder for a given motor.
virtual bool resetMotorEncoderRaw(int m)=0
Reset motor encoder, single motor.
virtual bool getMotorEncoderTimedRaw(int m, double *encs, double *stamp)=0
Read the instantaneous position of a motor encoder.
virtual bool getMotorEncoderAccelerationRaw(int m, double *spds)=0
Read the instantaneous acceleration of a motor encoder.
virtual ~IMotorEncodersRaw()
Destructor.
Control board, encoder interface.
virtual bool getMotorEncodersTimed(double *encs, double *time)=0
Read the instantaneous position of all motor encoders.
virtual bool getMotorEncoderCountsPerRevolution(int m, double *cpr)=0
Gets number of counts per revolution for motor encoder m.
virtual bool setMotorEncoderCountsPerRevolution(int m, const double cpr)=0
Sets number of counts per revolution for motor encoder m.
virtual bool resetMotorEncoder(int m)=0
Reset motor encoder, single motor.
virtual bool getMotorEncoderSpeed(int m, double *sp)=0
Read the istantaneous speed of a motor encoder.
virtual bool getMotorEncoderSpeeds(double *spds)=0
Read the instantaneous speed of all motor encoders.
virtual bool getMotorEncoderTimed(int m, double *encs, double *time)=0
Read the instantaneous position of a motor encoder.
virtual bool getMotorEncoderAcceleration(int m, double *acc)=0
Read the instantaneous acceleration of a motor encoder.
virtual bool getMotorEncoderAccelerations(double *accs)=0
Read the instantaneous acceleration of all motor encoders.
virtual bool getNumberOfMotorEncoders(int *num)=0
Get the number of available motor encoders.
virtual bool setMotorEncoders(const double *vals)=0
Set the value of all motor encoders.
virtual bool getMotorEncoders(double *encs)=0
Read the position of all motor encoders.
virtual bool resetMotorEncoders()=0
Reset motor encoders.
virtual bool setMotorEncoder(int m, const double val)=0
Set the value of the motor encoder for a given motor.
virtual ~IMotorEncoders()
Destructor.
virtual bool getMotorEncoder(int m, double *v)=0
Read the value of a motor encoder.
std::int32_t vocab32_t
Definition: numeric.h:78
constexpr yarp::conf::vocab32_t createVocab32(char a, char b=0, char c=0, char d=0)
Create a vocab from chars.
Definition: Vocab.h:28
The main, catch-all namespace for YARP.
Definition: dirs.h:16
#define YARP_dev_API
Definition: api.h:18