YARP
Yet Another Robot Platform
ImplementImpedanceControl.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_IMPLEMENTIMPEDANCECONTROL_H
7 #define YARP_DEV_IMPLEMENTIMPEDANCECONTROL_H
8 
10 #include <yarp/dev/api.h>
11 
12 namespace yarp {
13  namespace dev {
14  class ImplementImpedanceControl;
15  }
16 }
17 
19 {
20 protected:
22  void *helper;
23 
30  bool initialize (int size, const int *amap, const double *enc, const double *zos, const double *nw);
31 
36  bool uninitialize ();
37 
38 public:
39  /* Constructor.
40  * @param y is the pointer to the class instance inheriting from this
41  * implementation.
42  */
44 
49 
50  bool getAxes(int *ax) override;
51  bool getImpedance(int j, double *stiffness, double *damping) override;
52  bool setImpedance(int j, double stiffness, double damping) override;
53  bool setImpedanceOffset(int j, double offset) override;
54  bool getImpedanceOffset(int j, double* offset) override;
55  bool getCurrentImpedanceLimit(int j, double *min_stiff, double *max_stiff, double *min_damp, double *max_damp) override;
56 
57 };
58 
59 #endif // YARP_DEV_IMPLEMENTIMPEDANCECONTROL_H
Interface for control boards implementing impedance control.
Interface for control boards implementing impedance control.
virtual bool setImpedance(int j, double stiffness, double damping)=0
Set current impedance gains (stiffness,damping) for a specific joint.
virtual bool getImpedanceOffset(int j, double *offset)=0
Get current force Offset for a specific joint.
virtual bool setImpedanceOffset(int j, double offset)=0
Set current force Offset for a specific joint.
virtual bool getImpedance(int j, double *stiffness, double *damping)=0
Get current impedance gains (stiffness,damping,offset) for a specific joint.
virtual bool getCurrentImpedanceLimit(int j, double *min_stiff, double *max_stiff, double *min_damp, double *max_damp)=0
Get the current impedandance limits for a specific joint.
virtual bool getAxes(int *ax)=0
Get the number of controlled axes.
bool uninitialize()
Clean up internal data and memory.
bool initialize(int size, const int *amap, const double *enc, const double *zos, const double *nw)
Initialize the internal data and alloc memory.
ImplementImpedanceControl(yarp::dev::IImpedanceControlRaw *y)
yarp::dev::IImpedanceControlRaw * iImpedanceRaw
The main, catch-all namespace for YARP.
Definition: dirs.h:16
#define YARP_dev_API
Definition: api.h:18