controller
KinematicInterface.h
浏览该文件的文档.
1 
10 #ifndef KINEMATICINTERFACE_H_
11 #define KINEMATICINTERFACE_H_
12 
13 /*---------------------------- Includes ------------------------------------*/
14 #include "Base/robotStruct.h"
15 
16 
17 
18 #ifdef __cplusplus
19 namespace HYYRobotBase
20 {
21 extern "C" {
22 #endif
23 
24 
25 /*-------------------------------------------------------------------------*/
31 /*-------------------------------------------------------------------------*/
32 typedef struct{
33  double R[3][3];
34  double X[3];
35  double joint[10];
36  double kps[3];
37  int dof;
38  double redundancy;
42 }R7_KINE;
43 
44 /*-------------------------------------------------------------------------*/
50 /*-------------------------------------------------------------------------*/
51 typedef struct{
52  double joint[ROBOT_MAX_DOF];
53  double joint_vel[ROBOT_MAX_DOF];
54  double pose_vel[ROBOT_MAX_DOF];
55  int dof;
58 }R_KINE_VEL;
59 
65 extern void init_R7_KINE(R7_KINE* rkine);
66 
74 extern void init_R7_KINE1(R7_KINE* rkine, double* angle, int* dof);
75 
85 extern void init_R7_KINE2(R7_KINE* rkine, double* angle, int* dof, TOOL* tool, WOBJ* wobj);
86 
93 extern void set_R7_KINE_joint(R7_KINE* rkine, double* joint);
94 
101 extern void set_R7_KINE_pose(R7_KINE* rkine, double* X, double* RPY);
102 
109 extern void get_R7_KINE_joint(R7_KINE* rkine, double* joint);
110 
117 extern void get_R7_KINE_pose(R7_KINE* rkine, double* X, double* RPY);
118 
125 extern void setToolWobjToR7_KINE(R7_KINE* rkine, TOOL* tool, WOBJ* wobj);
126 
132 extern void setToolToR7_KINE(R7_KINE* rkine, TOOL* tool);
133 
139 extern void setWobjToR7_KINE(R7_KINE* rkine, WOBJ* wobj);
140 
147 extern void init_R_KINE_VEL(R_KINE_VEL* rkine_vel, int dof);
148 
157 extern void init_R_KINE_VEL1(R_KINE_VEL* rkine_vel, double* joint,double* joint_vel, int dof);
158 
167 extern void init_R_KINE_VEL2(R_KINE_VEL* rkine_vel, double* joint,double* pose_vel, int dof);
168 
180 extern void init_R_KINE_VEL3(R_KINE_VEL* rkine_vel, double* joint, double* joint_vel, double* pose_vel, int dof, TOOL* tool, WOBJ* wobj);
181 
189 extern void set_R_KINE_VEL_joint(R_KINE_VEL* rkine_vel, double* joint, double* joint_vel);
190 
198 extern void set_R7_KINE_VEL_pose(R_KINE_VEL* rkine_vel, double* joint, double* pose_vel);
199 
206 extern void get_R_KINE_VEL_joint(R_KINE_VEL* rkine_vel, double* joint_vel);
207 
214 extern void get_R7_KINE_VEL_pose(R_KINE_VEL* rkine_vel, double* pose_vel);
215 
223 extern void setToolWobjToR_KINE_VEL(R_KINE_VEL* rkine_vel, TOOL* tool, WOBJ* wobj);
224 
231 extern void setToolToR_KINE_VEL(R_KINE_VEL* rkine_vel, TOOL* tool);
232 
239 extern void setWobjToR_KINE_VEL(R_KINE_VEL* rkine_vel, WOBJ* wobj);
240 
248 extern int Kine_Forward(char* serialLinkName, R7_KINE* r7kine);
249 
257 extern int Kine_Inverse(char* serialLinkName, R7_KINE* r7kine);
258 
266 int Kine_EndToJointVelocity(char* serialLinkName, R_KINE_VEL* rkine_vel);
267 
275 int Kine_JointToEndVelocity(char* serialLinkName, R_KINE_VEL* rkine_vel);
276 
277 #ifdef __cplusplus
278 }
279 }
280 #endif
281 
282 
283 #endif /* KINEMATICINTERFACE_H_ */
init_R_KINE_VEL
void init_R_KINE_VEL(R_KINE_VEL *rkine_vel, int dof)
初始化运动速度数据(R_KINE_VEL)
setToolToR_KINE_VEL
void setToolToR_KINE_VEL(R_KINE_VEL *rkine_vel, TOOL *tool)
设置运动速度数据(R_KINE_VEL)
TOOL
运动指令输入,工具数据(私有数据)
Definition: robotStruct.h:225
robotStruct.h
机器人运动指令数据类型
R7_KINE::dof
int dof
Definition: KinematicInterface.h:37
init_R7_KINE2
void init_R7_KINE2(R7_KINE *rkine, double *angle, int *dof, TOOL *tool, WOBJ *wobj)
初始化运动学数据(R7_KINE)
Kine_EndToJointVelocity
int Kine_EndToJointVelocity(char *serialLinkName, R_KINE_VEL *rkine_vel)
给定笛卡尔速度求关节速度
setToolWobjToR_KINE_VEL
void setToolWobjToR_KINE_VEL(R_KINE_VEL *rkine_vel, TOOL *tool, WOBJ *wobj)
设置运动速度数据(R_KINE_VEL)
R_KINE_VEL::wobj
WOBJ wobj
Definition: KinematicInterface.h:57
R7_KINE::tool
TOOL tool
Definition: KinematicInterface.h:40
R_KINE_VEL::tool
TOOL tool
Definition: KinematicInterface.h:56
R_KINE_VEL::dof
int dof
Definition: KinematicInterface.h:55
init_R7_KINE1
void init_R7_KINE1(R7_KINE *rkine, double *angle, int *dof)
初始化运动学数据(R7_KINE)
setWobjToR_KINE_VEL
void setWobjToR_KINE_VEL(R_KINE_VEL *rkine_vel, WOBJ *wobj)
设置运动速度数据(R_KINE_VEL)
setToolWobjToR7_KINE
void setToolWobjToR7_KINE(R7_KINE *rkine, TOOL *tool, WOBJ *wobj)
设置运动学数据(R7_KINE)
set_R7_KINE_VEL_pose
void set_R7_KINE_VEL_pose(R_KINE_VEL *rkine_vel, double *joint, double *pose_vel)
设置运动速度数据(R_KINE_VEL)
get_R7_KINE_joint
void get_R7_KINE_joint(R7_KINE *rkine, double *joint)
获取运动学数据(R7_KINE)
wobj
运动指令输入,工件标系数据
Definition: robotStruct.h:158
Kine_JointToEndVelocity
int Kine_JointToEndVelocity(char *serialLinkName, R_KINE_VEL *rkine_vel)
给定关节速度求笛卡尔速度
set_R7_KINE_pose
void set_R7_KINE_pose(R7_KINE *rkine, double *X, double *RPY)
设置运动学数据(R7_KINE)
R7_KINE
运动学数据
Definition: KinematicInterface.h:32
init_R7_KINE
void init_R7_KINE(R7_KINE *rkine)
初始化运动学数据(R7_KINE)
WOBJ
运动指令输入,工件标系数据(私有数据)
Definition: robotStruct.h:238
get_R_KINE_VEL_joint
void get_R_KINE_VEL_joint(R_KINE_VEL *rkine_vel, double *joint_vel)
获取运动速度数据(R_KINE_VEL)
init_R_KINE_VEL1
void init_R_KINE_VEL1(R_KINE_VEL *rkine_vel, double *joint, double *joint_vel, int dof)
初始化运动速度数据(R_KINE_VEL)
R_KINE_VEL
运动速度数据
Definition: KinematicInterface.h:51
init_R_KINE_VEL2
void init_R_KINE_VEL2(R_KINE_VEL *rkine_vel, double *joint, double *pose_vel, int dof)
初始化运动速度数据(R_KINE_VEL)
set_R_KINE_VEL_joint
void set_R_KINE_VEL_joint(R_KINE_VEL *rkine_vel, double *joint, double *joint_vel)
设置运动速度数据(R_KINE_VEL)
R7_KINE::redundancy
double redundancy
Definition: KinematicInterface.h:38
set_R7_KINE_joint
void set_R7_KINE_joint(R7_KINE *rkine, double *joint)
设置运动学数据(R7_KINE)
Kine_Forward
int Kine_Forward(char *serialLinkName, R7_KINE *r7kine)
正运动学
Kine_Inverse
int Kine_Inverse(char *serialLinkName, R7_KINE *r7kine)
逆运动学
get_R7_KINE_pose
void get_R7_KINE_pose(R7_KINE *rkine, double *X, double *RPY)
获取运动学数据(R7_KINE)
ROBOT_MAX_DOF
#define ROBOT_MAX_DOF
Definition: robotStruct.h:31
R7_KINE::wobj
WOBJ wobj
Definition: KinematicInterface.h:41
get_R7_KINE_VEL_pose
void get_R7_KINE_VEL_pose(R_KINE_VEL *rkine_vel, double *pose_vel)
获取运动速度数据(R_KINE_VEL)
init_R_KINE_VEL3
void init_R_KINE_VEL3(R_KINE_VEL *rkine_vel, double *joint, double *joint_vel, double *pose_vel, int dof, TOOL *tool, WOBJ *wobj)
初始化运动速度数据(R_KINE_VEL)
setToolToR7_KINE
void setToolToR7_KINE(R7_KINE *rkine, TOOL *tool)
设置运动学数据(R7_KINE)
setWobjToR7_KINE
void setWobjToR7_KINE(R7_KINE *rkine, WOBJ *wobj)
设置运动学数据(R7_KINE)
tool
运动指令输入,工具数据
Definition: robotStruct.h:145