franka_model.h
Go to the documentation of this file.
1 /*
2  *
3  * Created on: 24 feb 2019
4  * Authors: Oliva Alexander, Gaz Claudio, Cognetti Marco
5  *
6  * C. Gaz, M. Cognetti, A. Oliva, P. Robuffo Giordano, A. De Luca, 'Dynamic
7  * Identification of the Franka Emika Panda Robot With Retrieval of Feasible
8  * Parameters Using Penalty-Based Optimization'. IEEE RA-L, 2019.
9  *
10  */
11 
12 #ifndef franka_model_h
13 #define franka_model_h
14 
15 #include <visp3/core/vpConfig.h>
16 #include <visp3/core/vpColVector.h>
17 #include <visp3/core/vpMatrix.h>
18 
19 namespace franka_model
20 {
21  const unsigned int njoints = 7;
22 
23  /*
24  * In order to speed up the code execution, we pre-compute the constant part
25  * of the friction model of each joint i (second term of the right member of
26  * the equation).
27  *
28  * tau_f(i) = FI_1(i)/(1+exp(-FI_2(i)*(dq(i)+FI_3(i)))) -
29  * FI_1(i)/(1+exp(-FI_2(i)*FI_3(i)))
30  *
31  * For further information refer to our paper and relative Supplementary
32  * Material:
33  * C. Gaz, M. Cognetti, A. Oliva, P. Robuffo Giordano, A. De Luca,
34  * 'Dynamic Identification of the Franka Emika Panda Robot With Retrieval of
35  * Feasible Parameters Using Penalty-Based Optimization'. IEEE RA-L, 2019.
36  */
37 
38  const double FI_11 = 0.54615;
39  const double FI_12 = 0.87224;
40  const double FI_13 = 0.64068;
41  const double FI_14 = 1.2794;
42  const double FI_15 = 0.83904;
43  const double FI_16 = 0.30301;
44  const double FI_17 = 0.56489;
45 
46  const double FI_21 = 5.1181;
47  const double FI_22 = 9.0657;
48  const double FI_23 = 10.136;
49  const double FI_24 = 5.5903;
50  const double FI_25 = 8.3469;
51  const double FI_26 = 17.133;
52  const double FI_27 = 10.336;
53 
54  const double FI_31 = 0.039533;
55  const double FI_32 = 0.025882;
56  const double FI_33 = -0.04607;
57  const double FI_34 = 0.036194;
58  const double FI_35 = 0.026226;
59  const double FI_36 = -0.021047;
60  const double FI_37 = 0.0035526;
61 
62  const double TAU_F_CONST_1 = FI_11/(1+exp(-FI_21*FI_31));
63  const double TAU_F_CONST_2 = FI_12/(1+exp(-FI_22*FI_32));
64  const double TAU_F_CONST_3 = FI_13/(1+exp(-FI_23*FI_33));
65  const double TAU_F_CONST_4 = FI_14/(1+exp(-FI_24*FI_34));
66  const double TAU_F_CONST_5 = FI_15/(1+exp(-FI_25*FI_35));
67  const double TAU_F_CONST_6 = FI_16/(1+exp(-FI_26*FI_36));
68  const double TAU_F_CONST_7 = FI_17/(1+exp(-FI_27*FI_37));
69 
70  vpMatrix massMatrix(const vpColVector &q, const double mL = 0,
71  const vpHomogeneousMatrix &flMcom = vpHomogeneousMatrix(),
72  const vpMatrix &I_L = vpMatrix(3,3));
73 
74  vpMatrix coriolisMatrix(const vpColVector &q,const vpColVector &dq,
75  const double mL = 0,
76  const vpHomogeneousMatrix &flMcom = vpHomogeneousMatrix(),
77  const vpMatrix &I_L = vpMatrix(3,3));
78 
79  vpColVector gravityVector(const vpColVector &q, const double mL = 0 ,
80  const vpHomogeneousMatrix &flMcom = vpHomogeneousMatrix(),
81  const vpColVector &g0 = vpColVector({0.0,0.0,-9.80665}));
82 
83  vpColVector friction(const vpColVector &dq);
84 }
85 
86 #endif /* frank_model_h */
franka_model::TAU_F_CONST_6
const double TAU_F_CONST_6
Definition: franka_model.h:67
franka_model::FI_33
const double FI_33
Definition: franka_model.h:56
franka_model::gravityVector
vpColVector gravityVector(const vpColVector &q, const double mL=0, const vpHomogeneousMatrix &flMcom=vpHomogeneousMatrix(), const vpColVector &g0=vpColVector({0.0, 0.0,-9.80665}))
Definition: GravityVector.cpp:26
franka_model::njoints
const unsigned int njoints
Definition: franka_model.h:21
franka_model::FI_24
const double FI_24
Definition: franka_model.h:49
franka_model
Definition: CoriolisMatrix.cpp:21
franka_model::FI_25
const double FI_25
Definition: franka_model.h:50
franka_model::FI_26
const double FI_26
Definition: franka_model.h:51
franka_model::TAU_F_CONST_5
const double TAU_F_CONST_5
Definition: franka_model.h:66
franka_model::TAU_F_CONST_4
const double TAU_F_CONST_4
Definition: franka_model.h:65
franka_model::FI_16
const double FI_16
Definition: franka_model.h:43
franka_model::TAU_F_CONST_7
const double TAU_F_CONST_7
Definition: franka_model.h:68
franka_model::FI_12
const double FI_12
Definition: franka_model.h:39
franka_model::FI_13
const double FI_13
Definition: franka_model.h:40
franka_model::FI_32
const double FI_32
Definition: franka_model.h:55
franka_model::FI_37
const double FI_37
Definition: franka_model.h:60
franka_model::FI_15
const double FI_15
Definition: franka_model.h:42
franka_model::FI_22
const double FI_22
Definition: franka_model.h:47
franka_model::FI_14
const double FI_14
Definition: franka_model.h:41
franka_model::FI_21
const double FI_21
Definition: franka_model.h:46
franka_model::coriolisMatrix
vpMatrix coriolisMatrix(const vpColVector &q, const vpColVector &dq, const double mL, const vpHomogeneousMatrix &flMcom, const vpMatrix &I_L)
Definition: CoriolisMatrix.cpp:25
franka_model::TAU_F_CONST_1
const double TAU_F_CONST_1
Definition: franka_model.h:62
franka_model::FI_36
const double FI_36
Definition: franka_model.h:59
franka_model::massMatrix
vpMatrix massMatrix(const vpColVector &q, const double mL=0, const vpHomogeneousMatrix &flMcom=vpHomogeneousMatrix(), const vpMatrix &I_L=vpMatrix(3, 3))
Definition: MassMatrix.cpp:25
franka_model::TAU_F_CONST_3
const double TAU_F_CONST_3
Definition: franka_model.h:64
franka_model::FI_23
const double FI_23
Definition: franka_model.h:48
franka_model::FI_17
const double FI_17
Definition: franka_model.h:44
franka_model::FI_27
const double FI_27
Definition: franka_model.h:52
franka_model::FI_34
const double FI_34
Definition: franka_model.h:57
franka_model::friction
vpColVector friction(const vpColVector &dq)
Definition: FrictionTorque.cpp:19
franka_model::FI_31
const double FI_31
Definition: franka_model.h:54
franka_model::FI_35
const double FI_35
Definition: franka_model.h:58
franka_model::TAU_F_CONST_2
const double TAU_F_CONST_2
Definition: franka_model.h:63
franka_model::FI_11
const double FI_11
Definition: franka_model.h:38


visp_ros
Author(s): Francois Pasteau, Fabien Spindler, Gatien Gaumerais, Alexander Oliva
autogenerated on Wed Mar 2 2022 01:13:33