跳到主要内容

接口说明

连接控制器
bool connect_robot(char *ip);
ip:控制器 ip

机器人上电
bool servo_power_on();

机器人下电
void servo_power_off();

关节运动
void robot_movj(double *pos,int vel,int coord);
点位数组,长度 6
速度,参数范围:0<vel≤100
坐标系,参数范围:0≤coord≤3

直线运动
void robot_movl(double *pos,int vel,int coord);
点位数组,长度 6
速度,参数范围:0<vel≤100
坐标系,参数范围:0≤coord≤3

圆弧运动
void robot_movc(double *pos1,double *pos2,double *pos3,int vel,int coord);
点位数组3组,长度 6
速度,参数范围:0<vel≤100
坐标系,参数范围:0≤coord≤3

整圆运动
void robot_movca(double *pos1,double *pos2,double *pos3,int vel,int coord);
点位数组3组,长度 6
速度,参数范围:0<vel≤100
坐标系,参数范围:0≤coord≤3

获取机器人运行状态
int get_robot_running_state ();
机器人运行状态:0 停止; 1 暂停; 2 运行

开始点动
void start_jogging (int axis,bool direction);
axis 轴号
direction 方向

停止点动
void stop_jogging(int axis);
axis 轴号

设置数字输出
void set_dout(int port,int value);
port 端口号
value 数值,参数范围:01

设置模拟输出
void set_aout(int port,double value);
port 端口号
value 数值,参数范围:0≤value≤10

查询数字输出
void get_dout(double *dout);
dout 数字输出数组

查询数字输入
void get_din(double *din);
din 数字输入数组

查询模拟输出
void get_aout(double *aout);
aout 模拟输出数组

查询模拟输入
void get_ain(double *ain);
ain 模拟输入数组

获取机器人当前位置
void get_current_position(double *pos,int coord);
pos 点位数组,长度 6
coord 坐标系,0 关节;1 直角;2 工具;3 用户

获取机器人外部轴当前位置
void get_current_sync_position(double *pos);
pos 点位数组,长度 5

设置点动速度
void set_jogging_speed(int speed);
speed 速度,参数范围:0<speed≤100

获取点动速度
int get_jogging_speed();

获取机器人当前模式
int get_current_mode();
0 示教模式;1 远程模式;2 运行模式

设置机器人当前模式
void set_current_mode(int mode);
mode:0 示教模式;1 远程模式;2 运行模式

获取机器人当前坐标系
int get_current_coord();

设置机器人当前坐标系
void set_current_coord(int coord);
coord:0 关节;1 直角;2 工具;3 用户

上传文件
void upload_job(QStringList job);

停止运行
void stop_job();

运行作业文件
void run_job(char *job);

连续运动模式
void continuous_motion_mode(int on);
on :0 关闭;- 1 开启

发送连续运动指令队列
void send_continuous_motion_queue(cmdPara cmd[],unsigned int size);
param cmd 指令数组
size 指令数组长度

指令结构体
typedef struct cmdPara
{
// MOVJ 关节运动
// MOVL 直线运动
// MOVC 圆弧运动
// MOVCA 整圆运动
enum Type{MOVJ=1, MOVL, MOVC, MOVCA, MOVJEXT, MOVLEXT, MOVCEXT};
double m_velocity; // 速度
double m_acc; // 加速度
double m_dec; // 减速度
double m_pl; // 平滑
int m_spin; //< 姿态(仅MOVCA需要这个参数) 0:姿态不变 1:六轴不转 2:六轴旋转
double m_coord[7];//m_coord[0]和 m_coord[1]代表坐标系,m_coord[2]代表左右手 0-无 1-左 2-右,其余给0即可
double m_position[7];// m_position[0]到 m_position[6]代表位置坐标
double m_syncPosition[5];// m_position[0]到 m_position[4]代表机器人外部轴位置坐标
Type cmdType; // 指令类型
}cmdPara;