浏览该文件的文档.
11 #ifndef ROBOTSTRUCT_H_
12 #define ROBOTSTRUCT_H_
23 namespace HYYRobotBase
30 #define ROBOT_MAX_NUM 10
31 #define ROBOT_MAX_DOF 10
32 #define MAX_CHAR_NUM 300
33 #define MAX_BSPLINE_NUM 200
34 #define ROBOT_DATA_NAME_LEN_MAX 10
36 typedef unsigned char byte;
437 extern void init_speed(
speed* sp,
double* data,
int dof,
int per_flag,
double tcp,
double orl,
int tcp_flag);
467 extern void init_wobj(
wobj* wj,
double* userframe,
double* workframe,
int robhold,
int ufprog,
int ufmec);
528 extern void parse_speed(
speed* sp,
double* data,
int*dof,
int* per_flag,
double* tcp,
double* orl,
int* tcp_flag);
559 extern void parse_wobj(
wobj* wj,
double* userframe,
double* workframe,
int* robhold,
int* ufprog,
int* ufmec);
int dof
机器人自由度
Definition: robotStruct.h:175
int tcp_flag
Definition: robotStruct.h:121
struct speed speed
运动指令输入,速度数据
@ _aubo
通过aubo机器人控制器驱动aubo机器人
Definition: robotStruct.h:50
@ _custom
自定义协议驱动的控制方式
Definition: robotStruct.h:51
int writetool(const char *T, tool *to)
写工件坐标系数据至系统
运动指令输入,工具数据(私有数据)
Definition: robotStruct.h:225
int CreatDataBatch(robdatatype rdt, int RW_flag)
创建批数据区,操作完成必须使用FreeDataDatch()释放批数据
double zone_size
Definition: robotStruct.h:135
void init_zone(zone *ze, double size, int flag)
初始化机器人转弯区
int writerobpose(const char *P, robpose *rpose)
写位姿至系统
int getzone(const char *Z, zone *zo)
从系统获取转弯区大小
int getrobjoint_batch(char *J, robjoint *rjoint, int index)
获取指定索引的关节数据,必须使用CreatDataBatch()创建批数据区
struct PayLoad PayLoad
负载数据
void parse_speed_cartesian(speed *sp, double *tcp, double *orl, int *flag)
解析笛卡尔速度
int ufmec
预留,未使用
Definition: robotStruct.h:241
运动指令输入,速度数据(私有数据)
Definition: robotStruct.h:196
void init_speed_joint(speed *sp, double *data, int dof, int flag)
初始化关节速度
int per_flag
Definition: robotStruct.h:118
int dete_background
Definition: robotStruct.h:64
int getwobj_batch(char *W, wobj *wo, int index)
获取指定索引的工件数据,必须使用CreatDataBatch()创建批数据区
运动指令输入,转弯区数据
Definition: robotStruct.h:133
命令行数据结构
Definition: robotStruct.h:61
void init_tool(tool *tl, double *frame, int robhold, PayLoad *payload)
初始化机器人工具
int ufprog
预留,未使用
Definition: robotStruct.h:160
struct wobj wobj
运动指令输入,工件标系数据
int zone_flag
Definition: robotStruct.h:134
void init_robjoint(robjoint *rjoint, double *data, int dof)
初始化关节目标
int writerobpose_batch(const char *P, robpose *rpose)
写入位姿数据,必须使用CreatDataBatch()创建批数据区
int getspeed(const char *S, speed *sp)
从系统获取运动速度
void parse_robpose(robpose *rpose, double *xyz, double *rpy)
解析笛卡尔位姿目标
controller_mode mode
Definition: robotStruct.h:63
void init_speed_cartesian(speed *sp, double tcp, double orl, int flag)
初始化笛卡尔速度
struct tool tool
运动指令输入,工具数据
@ _tool
工具数据
Definition: robotStruct.h:258
运动指令输入,关节数据(私有数据)
Definition: robotStruct.h:173
void init_robpose(robpose *rpose, double *xyz, double *rpy)
初始化笛卡尔位姿目标
double m
Definition: robotStruct.h:79
void parse_speed_joint(speed *sp, double *data, int *dof, int *flag)
解析化关节速度
struct robjoint robjoint
运动指令输入,关节数据
运动指令输入,速度数据
Definition: robotStruct.h:116
int ufmec
预留,未使用
Definition: robotStruct.h:161
int writezone(const char *Z, zone *zo)
写转弯区数据至系统
PayLoad payload
负载
Definition: robotStruct.h:228
robpose uframe
用户坐标在基坐标系下的描述
Definition: robotStruct.h:162
@ _wobj
工件数据
Definition: robotStruct.h:259
int writerobjoint(const char *J, robjoint *rjoint)
写关节位置至系统
int gettool_batch(char *T, tool *to, int index)
获取指定索引的工具数据,必须使用CreatDataBatch()创建批数据区
robpose oframe
工件坐标在用户坐标系下的描述
Definition: robotStruct.h:163
运动指令输入,工件标系数据
Definition: robotStruct.h:158
int getwobj(const char *W, wobj *wo)
从系统获取工件坐标系
void parse_zone(zone *ze, double *size, int *flag)
解析机器人转弯区
int zone_flag
转弯区大小,zone_size=0:不使用转弯区;zone_size=1:运动总长度的百分比0~1;zone_size=2:转弯大小,移动mm,转动rad
Definition: robotStruct.h:214
int dof
Definition: robotStruct.h:123
@ _other
从配置文件获取机器人类型
Definition: robotStruct.h:47
int EtherCATonly
Definition: robotStruct.h:65
int getrobpose(const char *P, robpose *rpose)
从系统获取位姿
@ _ur
通过ur机器人控制器驱动ur机器人
Definition: robotStruct.h:49
int dof
Definition: robotStruct.h:94
unsigned char byte
Definition: robotStruct.h:36
double tcp
笛卡尔移动速度,tcp_flag=0: 最大速度的百分比0~1; tcp_flag=1: 速度,单位mm/s; tcp_flag=2: 时间,单位s;
Definition: robotStruct.h:199
int writewobj_batch(const char *W, wobj *wo)
写入工件数据,必须使用CreatDataBatch()创建批数据区
运动指令输入,工件标系数据(私有数据)
Definition: robotStruct.h:238
double orl
笛卡尔转动速度,tcp_flag=0: 最大速度的百分比0~1; tcp_flag=1: 速度,单位rad/s; tcp_flag=2: 时间,单位s;
Definition: robotStruct.h:200
int getrobpose_batch(char *P, robpose *rpose, int index)
获取指定索引的位姿数据,必须使用CreatDataBatch()创建批数据区
struct zone zone
运动指令输入,转弯区数据
int writetool_batch(const char *T, tool *to)
写入工具数据,必须使用CreatDataBatch()创建批数据区
负载数据
Definition: robotStruct.h:78
void parse_speed(speed *sp, double *data, int *dof, int *per_flag, double *tcp, double *orl, int *tcp_flag)
解析速度
运动指令输入,笛卡尔位置及姿态数据(私有数据)
Definition: robotStruct.h:185
char * path
Definition: robotStruct.h:62
struct robpose robpose
运动指令输入,笛卡尔位置及姿态数据
int writerobjoint_batch(const char *J, robjoint *rjoint)
写入关节数据,必须使用CreatDataBatch()创建批数据区
int getDataName(robdatatype rdt, int n, char *dataname)
从系统获取数据文件内索引为的数据名字
int writewobj(const char *W, wobj *wo)
写工件坐标系数据至系统
int tcp_flag
tcp 含义,0:百分比;1:速度;2:时间; -1:不是用
Definition: robotStruct.h:201
int writespeed_batch(const char *S, speed *sp)
写入速度数据,必须使用CreatDataBatch()创建批数据区
int gettool(const char *T, tool *to)
从系统获取末端工具
int server_modbus
Definition: robotStruct.h:66
void parse_robjoint(robjoint *rjoint, double *data, int *dof)
解析关节目标
int getDataNum(robdatatype rdt)
从系统获取数据文件内数据的数目
运动指令输入,笛卡尔位置及姿态数据
Definition: robotStruct.h:104
int port
Definition: robotStruct.h:67
void init_wobj(wobj *wj, double *userframe, double *workframe, int robhold, int ufprog, int ufmec)
初始化机器人工件
robdatatype
运动指令输入数据类型
Definition: robotStruct.h:253
运动指令输入,转弯区数据(私有数据)
Definition: robotStruct.h:213
int per_flag
per 含义,0:百分比;1:速度;2:时间; -1:不是用
Definition: robotStruct.h:198
int getzone_batch(char *Z, zone *zo, int index)
获取指定索引的转弯区数据,必须使用CreatDataBatch()创建批数据区
@ _ethercat
EtherCAT直接驱动驱动器的控制方式
Definition: robotStruct.h:48
int robhold
是否手持工具,0:非手持;1:手持
Definition: robotStruct.h:226
@ _zone
转弯区数据
Definition: robotStruct.h:257
int getspeed_batch(char *S, speed *sp, int index)
获取指定索引的速度数据,必须使用CreatDataBatch()创建批数据区
double zone_size
zone_flag含义,0:不使用;1:百分比;2:具体大小
Definition: robotStruct.h:215
运动指令输入,关节数据
Definition: robotStruct.h:92
int robhold
工件是否在机器人上,0:不在机器人上;1:在机器人上
Definition: robotStruct.h:239
double tcp
Definition: robotStruct.h:119
@ _speed
速度数据
Definition: robotStruct.h:256
int robhold
工件是否在机器人上,0:不在机器人上;1:在机器人上
Definition: robotStruct.h:159
#define ROBOT_MAX_DOF
Definition: robotStruct.h:31
controller_mode
控制器机器人类型
Definition: robotStruct.h:46
int writezone_batch(const char *Z, zone *zo)
写入转弯区数据,必须使用CreatDataBatch()创建批数据区
int iscopy
Definition: robotStruct.h:68
void init_speed(speed *sp, double *data, int dof, int per_flag, double tcp, double orl, int tcp_flag)
初始速度
void init_PayLoad(PayLoad *pl, double m, double *cm, double(*I)[3])
初始化机器人负载
void parse_tool(tool *tl, double *frame, int *robhold, PayLoad *payload)
解析机器人工具
void parse_PayLoad(PayLoad *pl, double *m, double *cm, double(*I)[3])
解析机器人负载数据
int FreeDataDatch()
释放批数据区
int getrobjoint(const char *J, robjoint *rjoint)
从系统获取关节位置
@ _robpose
笛卡尔数据
Definition: robotStruct.h:255
int dof
机器人自由度
Definition: robotStruct.h:203
int writespeed(const char *S, speed *sp)
写运动速度至系统
@ _robjoint
关节数据
Definition: robotStruct.h:254
double orl
Definition: robotStruct.h:120
void parse_wobj(wobj *wj, double *userframe, double *workframe, int *robhold, int *ufprog, int *ufmec)
解析机器人工件
int ufprog
预留,未使用
Definition: robotStruct.h:240