CODeME
Kinematic_Mechanisms.h
Go to the documentation of this file.
1 
12 #ifndef KINEMATIC_MECHANISMS_H_INCLUDED
13 #define KINEMATIC_MECHANISMS_H_INCLUDED
14 
15 //#include "Complex_Kinematic_Control.h"
16 
17 double** (*Generate_DH_Table) (double* DH_Parameters , double* Theta);
18 
19 double* (*Direct_Kinematic_Function) (double* Opt_Parameters , double* Parameter);
20 void (*Inverse_Kinematic_Function) (double* Parameters , double* Position , double* Theta);
21 double** (*Jacobian_Function) (double* Opt_Parameters , double* Parameter);
22 
23 void (*Snapshot_Function) (double* Parameters , double* Position , double* Articulation , char* Name_picture);
24 void (*Plotter_Function) (double* Parameters , double* Position , double* Articulation , double alpha , FILE* pipeOut);
25 
26 //void Traking_Trayectory(double* Manipulator , CONTROL_PID Parameters , char* Filename);
27 
28 /***********************************************************************************************************************************/
29 /*****************************************************/ /*Serial Mechanisms*/ /*****************************************************/
30 /***********************************************************************************************************************************/
31 
32 double** Transformation_Matrix (double* DH_Parameter);
33 double** Serial_Direct_Kinematic (int DOF , double** DH_Parameters , double** Positions);
34 void Print_Manipulator_R (int DOF , double** Position , double* lim , double Pause_Time);
35 void Serial_Inverse_Kinematic (int DOF , double* DH_Parameters , double* Position , double* Theta);
36 
37 double** Anthro_Generate_DH_Table (double* DH_Parameters , double* Theta);
38 double* Anthro_Direct_Kinematic (double* DH_Parameters , double* Theta);
39 void Anthro_Inverse_Kinematic (double* DH_Parameters , double* Position , double* Theta);
40 double** Anthro_Compute_Jacobian (double* DH_Parameters , double* Thetas);
41 void Anthro_Snapshot_Architucture (double* DH_Parameters , double* Position , double* Articulation , char* Name_picture);
42 void Anthro_Architucture_Plotter (double* DH_Parameters , double* Position , double* Articulation , double alpha , FILE* pipeOut);
43 
44 double** Articulated_Generate_DH_Table (double* DH_Parameters , double* Theta);
45 double* Articulated_Direct_Kinematic (double* DH_Parameters , double* Theta);
46 void Articulated_Inverse_Kinematic (double* DH_Parameters , double* Position , double* Theta);
47 double** Articulated_Compute_Jacobian (double* DH_Parameters , double* Thetas);
48 void Articulated_Snapshot_Architucture (double* DH_Parameters , double* Position , double* Articulation , char* Name_picture);
49 void Articulated_Architucture_Plotter (double* DH_Parameters , double* Position , double* Articulation , double alpha , FILE* pipeOut);
50 
51 double** Elbow_Generate_DH_Table (double* DH_Parameters , double* Theta);
52 double* Elbow_Direct_Kinematic (double* DH_Parameters , double* Theta);
53 void Elbow_Inverse_Kinematic (double* DH_Parameters , double* Position , double* Theta);
54 double** Elbow_Compute_Jacobian (double* DH_Parameters , double* Thetas);
55 void Elbow_Snapshot_Architucture (double* DH_Parameters , double* Position , double* Articulation , char* Name_picture);
56 void Elbow_Architucture_Plotter (double* DH_Parameters , double* Position , double* Articulation , double alpha , FILE* pipeOut);
57 
58 double** Two_Link_Generate_DH_Table (double* DH_Parameters , double* Theta);
59 double* Two_Link_Direct_Kinematic (double* DH_Parameters , double* Theta);
60 void Two_Link_Inverse_Kinematic (double* DH_Parameters , double* Position , double* Theta);
61 double** Two_Link_Compute_Jacobian (double* DH_Parameters , double* Theta);
62 void Two_Link_Snapshot_Architucture (double* DH_Parameters , double* Position , double* Articulation , char* Name_picture);
63 void Two_Link_Architucture_Plotter (double* DH_Parameters , double* Position , double* Articulation , double alpha , FILE* pipeOut);
64 
65 double** Two_LinkMass_Generate_DH_Table (double* DH_Parameters , double* Theta);
66 double* Two_LinkMass_Direct_Kinematic (double* DH_Parameters , double* Theta);
67 void Two_LinkMass_Inverse_Kinematic (double* DH_Parameters , double* Position , double* Theta);
68 double** Two_LinkMass_Compute_Jacobian (double* DH_Parameters , double* Theta);
69 void Two_LinkMass_Snapshot_Architucture (double* DH_Parameters , double* Position , double* Articulation , char* Name_picture);
70 void Two_LinkMass_Architucture_Plotter (double* DH_Parameters , double* Position , double* Articulation , double alpha , FILE* pipeOut);
71 
72 double** Elbow_3DOF_Generate_DH_Table (double* DH_Parameters , double* Theta);
73 double* Elbow_3DOF_Direct_Kinematic (double* DH_Parameters , double* Theta);
74 void Elbow_3DOF_Inverse_Kinematic (double* DH_Parameters , double* Position , double* Theta);
75 double** Elbow_3DOF_Compute_Jacobian (double* DH_Parameters , double* Theta);
76 void Elbow_3DOF_Snapshot_Architucture (double* DH_Parameters , double* Position , double* Articulation , char* Name_picture);
77 void Elbow_3DOF_Architucture_Plotter (double* DH_Parameters , double* Position , double* Articulation , double alpha , FILE* pipeOut);
78 
79 /***********************************************************************************************************************************/
80 /****************************************************/ /*Parallel Mechanisms*/ /****************************************************/
81 /***********************************************************************************************************************************/
82 
83 void Delta_Inverse_Kinematic (double* Delta_Parameters , double* Position , double* Theta);
84 double** Delta_Compute_Jacobian (double* Delta_Parameters , double* Theta);
85 void Delta_Snapshot_Architucture (double* Delta_Parameters , double* Position , double* Articulation , char* Name_picture);
86 void Delta_Architucture_Plotter (double* Delta_Parameters , double* Position , double* Articulation , double alpha , FILE* pipeOut);
87 
88 #endif // KINEMATIC_MECHANISMS_H_INCLUDED