12 #ifndef KINEMATIC_MECHANISMS_H_INCLUDED 13 #define KINEMATIC_MECHANISMS_H_INCLUDED 17 double** (*Generate_DH_Table) (
double* DH_Parameters ,
double* Theta);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
88 #endif // KINEMATIC_MECHANISMS_H_INCLUDED