controller
MovePlan.h 文件参考

机器人运动控制接口函数 更多...

#include "Base/robotStruct.h"

浏览源代码.

函数

void setMoveThread (int isthread)
 设置指令线程运行方式,设置后对所有指令起作用 更多...
 
int wait_move_finish (int robot_index)
 等待运动结束(开线程运行时有效) 更多...
 
int get_robot_move_state (int robot_index)
 获取机器人运动状态 更多...
 
void Rsleep (int millisecond)
 休眠 更多...
 
void AccSet (double acc, double jerk, int robot_index)
 设置机器人运动速度的百分比(加速度和加加速度) 更多...
 
void move_start (void)
 上电或开始运动 更多...
 
void move_stop (void)
 停止运动或下电 更多...
 
int moveA (robjoint *rjoint, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj)
 绝对位置运动指令 更多...
 
int dual_moveA (robjoint *rjoint1, robjoint *rjoint2, speed *rspeed1, speed *rspeed2, zone *rzone1, zone *rzone2, tool *rtool1, tool *rtool2, wobj *rwobj1, wobj *rwobj2)
 双臂绝对位置运动指令 更多...
 
int multi_moveA (robjoint *rjoint, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj, int _index)
 选取多机械臂中的一个做绝对位置运动指令 更多...
 
int moveJ (robpose *rpose, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj)
 关节运动指令 更多...
 
int dual_moveJ (robpose *rpose1, robpose *rpose2, speed *rspeed1, speed *rspeed2, zone *rzone1, zone *rzone2, tool *rtool1, tool *rtool2, wobj *rwobj1, wobj *rwobj2)
 双臂关节运动指令 更多...
 
int multi_moveJ (robpose *rpose, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj, int _index)
 选取多机械臂中的一个做绝对位置运动指令 更多...
 
int moveL (robpose *rpose, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj)
 线性运动指令 更多...
 
int dual_moveL (robpose *rpose1, robpose *rpose2, speed *rspeed1, speed *rspeed2, zone *rzone1, zone *rzone2, tool *rtool1, tool *rtool2, wobj *rwobj1, wobj *rwobj2)
 双臂线性运动指令 更多...
 
int multi_moveL (robpose *rpose, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj, int _index)
 选取多机械臂中的一个做线性运动指令 更多...
 
int moveC (robpose *rpose, robpose *rpose_mid, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj)
 圆弧运动指令 更多...
 
int dual_moveC (robpose *rpose1, robpose *rpose2, robpose *rpose_mid1, robpose *rpose_mid2, speed *rspeed1, speed *rspeed2, zone *rzone1, zone *rzone2, tool *rtool1, tool *rtool2, wobj *rwobj1, wobj *rwobj2)
 双臂圆弧运动指令 更多...
 
int multi_moveC (robpose *rpose, robpose *rpose_mid, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj, int _index)
 选取多机械臂中的一个做圆弧运动指令 更多...
 
int moveH (robpose *rpose, robpose *rpose_mid, robpose *pose_line, double screw, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj)
 螺旋线运动指令 更多...
 
int dual_moveH (robpose *rpose1, robpose *rpose2, robpose *rpose_mid1, robpose *rpose_mid2, robpose *pose_line1, robpose *pose_line2, double screw1, double screw2, speed *rspeed1, speed *rspeed2, zone *rzone1, zone *rzone2, tool *rtool1, tool *rtool2, wobj *rwobj1, wobj *rwobj2)
 双臂螺旋线运动指令 更多...
 
int multi_moveH (robpose *rpose, robpose *rpose_mid, robpose *pose_line, double screw, speed *rspeed, zone *rzone, tool *rtool, wobj *rwobj, int _index)
 选取多机械臂中的一个做螺旋线运动指令 更多...
 
int moveS (char *filename, speed *rspeed, tool *rtool, wobj *rwobj)
 关节空间的B样条运动 更多...
 
int dual_moveS (char *filename1, char *filename2, speed *rspeed1, speed *rspeed2, tool *rtool1, tool *rtool2, wobj *rwobj1, wobj *rwobj2)
 双臂关节空间的B样条运动 更多...
 
int multi_moveS (char *filename, speed *rspeed, tool *rtool, wobj *rwobj, int _index)
 选取多机械臂中的一个做关节空间的B样条运动 更多...
 
robpose Offs (const robpose *rpose, double x, double y, double z, double k, double p, double s)
 机器人位姿绝对工件偏移补偿 更多...
 
robpose OffsRel (const robpose *rpose, double x, double y, double z, double k, double p, double s)
 机器人位姿相对工具偏移补偿 更多...
 
void robot_getJoint (double *joint, int _index)
 获取机器人当前关节角 更多...
 
int robot_getCartesian (tool *rtool, wobj *rwobj, double *pospose, int _index)
 获取机器人当前位姿 更多...
 
void SetDo (int id, int flag)
 设置数字量输出 更多...
 
int GetDi (int id)
 获取数字量输入 更多...
 
void WaitDi (int id, int value)
 等待数字量输入赋值 更多...
 
void SetAo (int id, double flag)
 设置模拟量输出 更多...
 
double GetAi (int id)
 获取模拟量输入 更多...
 
int robot_getDOF (int _index)
 获取机器人自由度 更多...
 
int additionaxis_getDOF (int _index)
 获取机器人附加轴数量 更多...
 
int robot_getNUM ()
 获取机器人数量 更多...
 
int additionaxis_getNUM ()
 获取附加轴组数量 更多...
 
int SocketCreate (const char *ip, int port, const char *sName)
 创建socket server 更多...
 
int ClientCreate (const char *ip, int port, const char *sName)
 创建socket client 更多...
 
int SocketClose (const char *sName)
 关闭socket(含server和client) 更多...
 
int SocketSendByteI (byte *data, int len, const char *sName)
 TCP发送Byte型数据 更多...
 
int SocketRecvByteI (byte *data, int len, const char *sName)
 TCP接收Byte型数据 更多...
 
int SocketSendByteII (int *header, int(*header_format)[2], int hf_len, int *data_int, float *data_float, int(*data_format)[2], int df_len, const char *sName)
 TCP发送数据 更多...
 
int SocketRecvByteII (int *header, int(*header_format)[2], int hf_len, int *data_int, float *data_float, int(*data_format)[2], int df_len, const char *sName)
 TCP接收数据 更多...
 
int SocketSendByte (byte data, const char *sName)
 通过TCP发送一个byte型数据 更多...
 
int SocketRecvByte (byte *data, const char *sName)
 通过TCPt接收一个byte型数据 更多...
 
int SocketSendString (char *data, const char *sName)
 通过TCP发送一个String型数据 更多...
 
int SocketRecvString (char *data, const char *sName)
 通过TCP接收一个String型数据 更多...
 
int SocketSendDouble (double data, const char *sName)
 通过TCP发送一个double型数据 更多...
 
int SocketRecvDouble (double *data, const char *sName)
 通过TCP接收一个double型数据 更多...
 
int SocketSendInt (int data, const char *sName)
 通过TCP发送一个int型数据 更多...
 
int SocketRecvInt (int *data, const char *sName)
 通过TCP接收一个int型数据 更多...
 
int SocketSendByteArray (byte *data, int n, const char *sName)
 通过TCP发送一个byte型数组 更多...
 
int SocketRecvByteArray (byte *data, const char *sName)
 通过TCP接收一个byte型数组 更多...
 
int SocketSendDoubleArray (double *data, int n, const char *sName)
 通过TCP发送一个double型数组 更多...
 
int SocketRecvDoubleArray (double *data, const char *sName)
 通过TCP接收一个double型数组 更多...
 
int SocketSendIntArray (int *data, int n, const char *sName)
 通过TCP发送一个int型数组 更多...
 
int SocketRecvIntArray (int *data, const char *sName)
 通过TCP接收一个int型数组 更多...
 
int UDPSendByteI (byte *data, int len, const char *sName)
 通过UDP发送byte型数组 更多...
 
int UDPRecvByteI (byte *data, int len, const char *sName)
 通过UDP接收byte型数组 更多...
 
int UDPSendByteII (int *header, int(*header_format)[2], int hf_len, int *data_int, float *data_float, int(*data_format)[2], int df_len, const char *sName)
 UDP发送数据 更多...
 
int UDPRecvByteII (int *header, int(*header_format)[2], int hf_len, int *data_int, float *data_float, int(*data_format)[2], int df_len, const char *sName)
 UDP接收数据 更多...
 
int UDPSendByte (byte data, const char *sName)
 UDP发送byte型数据 更多...
 
int UDPRecvByte (byte *data, const char *sName)
 UDP接收byte型数据 更多...
 
int UDPSendString (char *data, const char *sName)
 通过UDP发送一个string型数据 更多...
 
int UDPRecvString (char *data, const char *sName)
 通过UDP接收一个string型数据 更多...
 
int UDPSendDouble (double data, const char *sName)
 通过UDP发送一个double型数据 更多...
 
int UDPRecvDouble (double *data, const char *sName)
 通过UDP接收一个double型数据 更多...
 
int UDPSendInt (int data, const char *sName)
 通过UDP发送一个int型数据 更多...
 
int UDPRecvInt (int *data, const char *sName)
 通过UDP接收一个int型数据 更多...
 
int UDPSendByteArray (int *data, int n, const char *sName)
 通过UDP发送一个byte型数组 更多...
 
int UDPRecvByteArray (int *data, const char *sName)
 通过UDP接收一个byte型数组 更多...
 
int UDPSendDoubleArray (double *data, int n, const char *sName)
 通过UDP发送一个double型数组 更多...
 
int UDPRecvDoubleArray (double *data, const char *sName)
 通过UDP接收一个double型数组 更多...
 
int UDPSendIntArray (int *data, int n, const char *sName)
 通过UDP发送一个int型数组 更多...
 
int UDPRecvIntArray (int *data, const char *sName)
 通过UDP接收一个int型数组 更多...
 
int ThreadCreat (void *(*fun)(void *), void *arg, const char *name, int detached_flag)
 创建线程 更多...
 
int ThreadDataFree (const char *name)
 线程数据释放 更多...
 
int ThreadWait (const char *name)
 thread join (当线程属性为PTHREAD_CREATE_JOINABLE时有效) 更多...
 

详细描述

机器人运动控制接口函数

作者
hanbing
版本
1.0
日期
2020-03-31

函数说明

◆ AccSet()

void AccSet ( double  acc,
double  jerk,
int  robot_index 
)

设置机器人运动速度的百分比(加速度和加加速度)

参数
acc加速度(0~1)
jerk加加速度(0~1)
robot_index机器人索引号

◆ additionaxis_getDOF()

int additionaxis_getDOF ( int  _index)

获取机器人附加轴数量

参数
_index机器人附加轴分组索引
返回
int 返回附加轴数量

◆ additionaxis_getNUM()

int additionaxis_getNUM ( )

获取附加轴组数量

返回
int 返回附加轴组数量

◆ ClientCreate()

int ClientCreate ( const char *  ip,
int  port,
const char *  sName 
)

创建socket client

参数
ipip地址
port端口号
sNameclient名称
返回
int 成功返回0,错误返回其他

◆ dual_moveA()

int dual_moveA ( robjoint rjoint1,
robjoint rjoint2,
speed rspeed1,
speed rspeed2,
zone rzone1,
zone rzone2,
tool rtool1,
tool rtool2,
wobj rwobj1,
wobj rwobj2 
)

双臂绝对位置运动指令

参数
rjoint1机器人1的期望位置(关节) 单位:rad
rjoint2机器人2的期望位置(关节) 单位:rad
rspeed1机器人1的运动速度 单位:rad/s
rspeed2机器人2的运动速度 单位:rad/s
rzone1机器人1的转动空间
rzone2机器人2的转动空间
rtool1机器人1的末端工具
rtool2机器人2的末端工具
rwobj1机器人1的坐标系
rwobj2机器人2的坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ dual_moveC()

int dual_moveC ( robpose rpose1,
robpose rpose2,
robpose rpose_mid1,
robpose rpose_mid2,
speed rspeed1,
speed rspeed2,
zone rzone1,
zone rzone2,
tool rtool1,
tool rtool2,
wobj rwobj1,
wobj rwobj2 
)

双臂圆弧运动指令

参数
rpose1机器人1的期望位置(位姿)
rpose2机器人2的期望位置(位姿)
rpose_mid1机器人1的途经点期望位置(位姿)
rpose_mid2机器人2的途经点期望位置(位姿)
rspeed1机器人1的运动速度
rspeed2机器人2的运动速度
rzone1机器人1的转动空间
rzone2机器人2的转动空间
rtool1机器人1的末端工具
rtool2机器人2的末端工具
rwobj1机器人1的坐标系
rwobj2机器人2的坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ dual_moveH()

int dual_moveH ( robpose rpose1,
robpose rpose2,
robpose rpose_mid1,
robpose rpose_mid2,
robpose pose_line1,
robpose pose_line2,
double  screw1,
double  screw2,
speed rspeed1,
speed rspeed2,
zone rzone1,
zone rzone2,
tool rtool1,
tool rtool2,
wobj rwobj1,
wobj rwobj2 
)

双臂螺旋线运动指令

参数
rpose1机器人1的圆弧位置(位姿)(不影响姿态运动)
rpose2机器人2的圆弧位置(位姿)(不影响姿态运动)
rpose_mid1机器人1的圆弧中间位置(位姿)(不影响姿态运动)
rpose_mid2机器人2的圆弧中间位置(位姿)(不影响姿态运动)
pose_line1机器人1的方向位置(位姿)(决定最终运动姿态)
pose_line2机器人2的方向位置(位姿)(决定最终运动姿态)
screw1机器人1螺距(mm)
screw2机器人2螺距(mm)
rspeed1机器人1的运动速度
rspeed2机器人2的运动速度
rzone1机器人1的转动空间
rzone2机器人2的转动空间
rtool1机器人1的末端工具
rtool2机器人2的末端工具
rwobj1机器人1的坐标系
rwobj2机器人2的坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ dual_moveJ()

int dual_moveJ ( robpose rpose1,
robpose rpose2,
speed rspeed1,
speed rspeed2,
zone rzone1,
zone rzone2,
tool rtool1,
tool rtool2,
wobj rwobj1,
wobj rwobj2 
)

双臂关节运动指令

参数
rpose1机器人1的期望位置(位姿)
rpose2机器人2的期望位置(位姿)
rspeed1机器人1的运动速度
rspeed2机器人2的运动速度
rzone1机器人1的转动空间
rzone2机器人2的转动空间
rtool1机器人1的末端工具
rtool2机器人2的末端工具
rwobj1机器人1的坐标系
rwobj2机器人2的坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ dual_moveL()

int dual_moveL ( robpose rpose1,
robpose rpose2,
speed rspeed1,
speed rspeed2,
zone rzone1,
zone rzone2,
tool rtool1,
tool rtool2,
wobj rwobj1,
wobj rwobj2 
)

双臂线性运动指令

参数
rpose1机器人1的期望位置(位姿)
rpose2机器人2的期望位置(位姿)
rspeed1机器人1的运动速度
rspeed2机器人2的运动速度
rzone1机器人1的转动空间
rzone2机器人2的转动空间
rtool1机器人1的末端工具
rtool2机器人2的末端工具
rwobj1机器人1的坐标系
rwobj2机器人2的坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ dual_moveS()

int dual_moveS ( char *  filename1,
char *  filename2,
speed rspeed1,
speed rspeed2,
tool rtool1,
tool rtool2,
wobj rwobj1,
wobj rwobj2 
)

双臂关节空间的B样条运动

参数
filename1机器人1的轨迹点存放文件名
filename2机器人2的轨迹点存放文件名
rspeed1机器人1的运动速度
rspeed2机器人2的运动速度
rtool1机器人1的末端工具
rtool2机器人2的末端工具
rwobj1机器人1的坐标系
rwobj2机器人2的坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ get_robot_move_state()

int get_robot_move_state ( int  robot_index)

获取机器人运动状态

参数
robot_index机器人索引号
返回
int 运动完成:_move_finish(0),_move_stop(7), 机器人正在运行:_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动错误状态:_move_error(-1)

◆ GetAi()

double GetAi ( int  id)

获取模拟量输入

参数
id模拟量输入索引号
返回
double 模拟量

◆ GetDi()

int GetDi ( int  id)

获取数字量输入

参数
id数字量输出索引号
返回
int 返回值0或1

◆ move_start()

void move_start ( void  )

上电或开始运动

◆ move_stop()

void move_stop ( void  )

停止运动或下电

◆ moveA()

int moveA ( robjoint rjoint,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj 
)

绝对位置运动指令

参数
rjoint期望位置(关节) 单位:rad
rspeed运动速度 单位:rad/s
rzone转动空间
rtool末端工具
rwobj坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ moveC()

int moveC ( robpose rpose,
robpose rpose_mid,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj 
)

圆弧运动指令

参数
rpose期望位置(位姿)
rpose_mid途经点期望位置(位姿)
rspeed运动速度
rzone转动空间
rtool末端工具
rwobj坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ moveH()

int moveH ( robpose rpose,
robpose rpose_mid,
robpose pose_line,
double  screw,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj 
)

螺旋线运动指令

参数
rpose旋转圆弧位置(位姿)(不影响姿态运动)
rpose_mid旋转圆弧中间位置(位姿)(不影响姿态运动)
pose_line方向位置(位姿)(决定最终运动姿态)
screw螺距(mm)
rspeed运动速度
rzone转动空间
rtool末端工具
rwobj坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ moveJ()

int moveJ ( robpose rpose,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj 
)

关节运动指令

参数
rpose期望位置(位姿)
rspeed运动速度
rzone转动空间
rtool末端工具
rwobj坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ moveL()

int moveL ( robpose rpose,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj 
)

线性运动指令

参数
rpose期望位置(位姿)
rspeed运动速度
rzone转动空间
rtool末端工具
rwobj坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ moveS()

int moveS ( char *  filename,
speed rspeed,
tool rtool,
wobj rwobj 
)

关节空间的B样条运动

参数
filename轨迹点存放文件名
rspeed运动速度
rtool末端工具
rwobj坐标系
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ multi_moveA()

int multi_moveA ( robjoint rjoint,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj,
int  _index 
)

选取多机械臂中的一个做绝对位置运动指令

参数
rjoint期望位置(关节) 单位:rad
rspeed运动速度 单位:rad/s
rzone转动空间
rtool末端工具
rwobj坐标系
_index机器人索引号
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ multi_moveC()

int multi_moveC ( robpose rpose,
robpose rpose_mid,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj,
int  _index 
)

选取多机械臂中的一个做圆弧运动指令

参数
rpose期望位置(位姿)
rpose_mid途经点期望位置(位姿)
rspeed运动速度
rzone转动空间
rtool末端工具
rwobj坐标系
_index机器人索引号
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ multi_moveH()

int multi_moveH ( robpose rpose,
robpose rpose_mid,
robpose pose_line,
double  screw,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj,
int  _index 
)

选取多机械臂中的一个做螺旋线运动指令

参数
rpose旋转圆弧位置(位姿)(不影响姿态运动)
rpose_mid旋转圆弧中间位置(位姿)(不影响姿态运动)
pose_line方向位置(位姿)(决定最终运动姿态)
screw螺距(mm)
rspeed运动速度
rzone转动空间
rtool末端工具
rwobj坐标系
_index机器人索引号
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ multi_moveJ()

int multi_moveJ ( robpose rpose,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj,
int  _index 
)

选取多机械臂中的一个做绝对位置运动指令

参数
rpose期望位置(位姿)
rspeed运动速度
rzone转动空间
rtool末端工具
rwobj坐标系
_index机器人索引号
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ multi_moveL()

int multi_moveL ( robpose rpose,
speed rspeed,
zone rzone,
tool rtool,
wobj rwobj,
int  _index 
)

选取多机械臂中的一个做线性运动指令

参数
rpose期望位置(位姿)
rspeed运动速度
rzone转动空间
rtool末端工具
rwobj坐标系
_index机器人索引号
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ multi_moveS()

int multi_moveS ( char *  filename,
speed rspeed,
tool rtool,
wobj rwobj,
int  _index 
)

选取多机械臂中的一个做关节空间的B样条运动

参数
filename轨迹点存放文件名
rspeed运动速度
rtool末端工具
rwobj坐标系
_index机器人索引号
返回
int 正确返回值:_move_finish(0),_move_stop(7), 异常返回值: 机器人正在运行_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动状态错误_move_error(-1), -4~-2:初始化数据错误

◆ Offs()

robpose Offs ( const robpose rpose,
double  x,
double  y,
double  z,
double  k,
double  p,
double  s 
)

机器人位姿绝对工件偏移补偿

参数
rpose机器人初始位姿
xx方向补偿值(mm)
yy方向补偿值(mm)
zz方向补偿值(mm)
k姿态变量1补偿值(rad)
p姿态变量2补偿值(rad)
s姿态变量3补偿值(rad)
返回
robpose 机器人补偿后位姿

◆ OffsRel()

robpose OffsRel ( const robpose rpose,
double  x,
double  y,
double  z,
double  k,
double  p,
double  s 
)

机器人位姿相对工具偏移补偿

参数
rpose机器人初始位姿
xx方向补偿值(mm)
yy方向补偿值(mm)
zz方向补偿值(mm)
k姿态变量1补偿值(rad)
p姿态变量2补偿值(rad)
s姿态变量3补偿值(rad)
返回
robpose 机器人补偿后位姿

◆ robot_getCartesian()

int robot_getCartesian ( tool rtool,
wobj rwobj,
double *  pospose,
int  _index 
)

获取机器人当前位姿

参数
tool工具
wobj工件
pospose当前位姿数据(mm,rad)
_index机器人索引号
返回
int 0:成功;其他失败

◆ robot_getDOF()

int robot_getDOF ( int  _index)

获取机器人自由度

参数
_index机器人索引号
返回
int 返回机器人自由度

◆ robot_getJoint()

void robot_getJoint ( double *  joint,
int  _index 
)

获取机器人当前关节角

参数
joint当前关节角数据(rad/mm)
_index机器人索引号

◆ robot_getNUM()

int robot_getNUM ( )

获取机器人数量

返回
int 返回机器人数量

◆ Rsleep()

void Rsleep ( int  millisecond)

休眠

参数
millisecond休眠时间(毫秒)

◆ SetAo()

void SetAo ( int  id,
double  flag 
)

设置模拟量输出

参数
id模拟量输出索引号
flag模拟量

◆ SetDo()

void SetDo ( int  id,
int  flag 
)

设置数字量输出

参数
id数字量索引号
flag0或1

◆ setMoveThread()

void setMoveThread ( int  isthread)

设置指令线程运行方式,设置后对所有指令起作用

参数
isthread1:线程运行,0:阻塞运行

◆ SocketClose()

int SocketClose ( const char *  sName)

关闭socket(含server和client)

参数
sNameserver名称或client名称
返回
int 成功返回0 ,错误返回其他

◆ SocketCreate()

int SocketCreate ( const char *  ip,
int  port,
const char *  sName 
)

创建socket server

参数
ipip地址
port端口号
sNameserver名称
返回
int 成功返回0,错误返回其他

◆ SocketRecvByte()

int SocketRecvByte ( byte data,
const char *  sName 
)

通过TCPt接收一个byte型数据

参数
databyte型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ SocketRecvByteArray()

int SocketRecvByteArray ( byte data,
const char *  sName 
)

通过TCP接收一个byte型数组

参数
databyte型数组
sNamesocket名称
返回
int 成功>0,错误返回其他

◆ SocketRecvByteI()

int SocketRecvByteI ( byte data,
int  len,
const char *  sName 
)

TCP接收Byte型数据

参数
dataByte型数据段
len数据段长度
sNamesocket名称
返回
int 成功返回接收数据长度,错误返回值小于零

◆ SocketRecvByteII()

int SocketRecvByteII ( int *  header,
int(*)  header_format[2],
int  hf_len,
int *  data_int,
float *  data_float,
int(*)  data_format[2],
int  df_len,
const char *  sName 
)

TCP接收数据

参数
header协议头
header_format协议头格式
hf_len协议头长度
data_intint型数组
data_floatfloat型数组
data_format数据格式
df_len数据段长度
sNamesocket名称
返回
int 成功返回接收数据长度,错误返回值小于零

◆ SocketRecvDouble()

int SocketRecvDouble ( double *  data,
const char *  sName 
)

通过TCP接收一个double型数据

参数
datadouble型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ SocketRecvDoubleArray()

int SocketRecvDoubleArray ( double *  data,
const char *  sName 
)

通过TCP接收一个double型数组

参数
datadouble型数组
sNamesocket名称
返回
int 成功>0,错误返回其他

◆ SocketRecvInt()

int SocketRecvInt ( int *  data,
const char *  sName 
)

通过TCP接收一个int型数据

参数
dataint型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ SocketRecvIntArray()

int SocketRecvIntArray ( int *  data,
const char *  sName 
)

通过TCP接收一个int型数组

参数
dataint型数组
sNamesocket名称
返回
int 成功>0,错误返回其他

◆ SocketRecvString()

int SocketRecvString ( char *  data,
const char *  sName 
)

通过TCP接收一个String型数据

参数
dataString型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ SocketSendByte()

int SocketSendByte ( byte  data,
const char *  sName 
)

通过TCP发送一个byte型数据

参数
databyte型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ SocketSendByteArray()

int SocketSendByteArray ( byte data,
int  n,
const char *  sName 
)

通过TCP发送一个byte型数组

参数
databyte型数组
n数组长度
sNamesocket名称
返回
int 成功>0,错误返回其他

◆ SocketSendByteI()

int SocketSendByteI ( byte data,
int  len,
const char *  sName 
)

TCP发送Byte型数据

参数
dataByte型数据段
len数据段长度
sNamesocket名称
返回
int 成功返回接收长度,错误返回值小于零

◆ SocketSendByteII()

int SocketSendByteII ( int *  header,
int(*)  header_format[2],
int  hf_len,
int *  data_int,
float *  data_float,
int(*)  data_format[2],
int  df_len,
const char *  sName 
)

TCP发送数据

参数
header协议头
header_format协议头格式
hf_len协议头长度
data_intint型数组
data_floatfloat型数组
data_format数据格式
df_len数据段长度
sNamesocket名称
返回
int 成功返回接收数据长度,错误返回值小于零

◆ SocketSendDouble()

int SocketSendDouble ( double  data,
const char *  sName 
)

通过TCP发送一个double型数据

参数
datadouble型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ SocketSendDoubleArray()

int SocketSendDoubleArray ( double *  data,
int  n,
const char *  sName 
)

通过TCP发送一个double型数组

参数
datadouble型数组
n数组长度
sNamesocket名称
返回
int 成功>0,错误返回其他

◆ SocketSendInt()

int SocketSendInt ( int  data,
const char *  sName 
)

通过TCP发送一个int型数据

参数
dataint型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ SocketSendIntArray()

int SocketSendIntArray ( int *  data,
int  n,
const char *  sName 
)

通过TCP发送一个int型数组

参数
dataint型数组
n数组长度
sNamesocket名称
返回
int 成功>0,错误返回其他

◆ SocketSendString()

int SocketSendString ( char *  data,
const char *  sName 
)

通过TCP发送一个String型数据

参数
dataString型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ ThreadCreat()

int ThreadCreat ( void *(*)(void *)  fun,
void *  arg,
const char *  name,
int  detached_flag 
)

创建线程

参数
fun线程回调执行函数
arg执行参数
name线程名
detached_flag线程属性标识thread attribute,0:PTHREAD_CREATE_JOINABLE other:PTHREAD_CREATE_DETACHED
返回
int 成功返回0,失败返回其他

◆ ThreadDataFree()

int ThreadDataFree ( const char *  name)

线程数据释放

参数
name线程名
返回
int 成功返回0,失败返回其他

◆ ThreadWait()

int ThreadWait ( const char *  name)

thread join (当线程属性为PTHREAD_CREATE_JOINABLE时有效)

参数
name线程名
返回
int 成功返回0,失败返回其他

◆ UDPRecvByte()

int UDPRecvByte ( byte data,
const char *  sName 
)

UDP接收byte型数据

参数
databyte型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ UDPRecvByteArray()

int UDPRecvByteArray ( int *  data,
const char *  sName 
)

通过UDP接收一个byte型数组

参数
databyte型数组
sNamesocket名称
返回
int 成功返回数据长度,错误返回其他

◆ UDPRecvByteI()

int UDPRecvByteI ( byte data,
int  len,
const char *  sName 
)

通过UDP接收byte型数组

参数
databyte型数组
len数组长度
sNamesocket名称
返回
int 成功返回接收长度,错误返回值小于零

◆ UDPRecvByteII()

int UDPRecvByteII ( int *  header,
int(*)  header_format[2],
int  hf_len,
int *  data_int,
float *  data_float,
int(*)  data_format[2],
int  df_len,
const char *  sName 
)

UDP接收数据

参数
header协议头
header_format协议头格式
hf_len协议头长度
data_intint型数组
data_floatfloat型数组
data_format数据格式
df_len数据段长度
sNamesocket名称
返回
int 成功返回接收数据长度,错误返回值小于零

◆ UDPRecvDouble()

int UDPRecvDouble ( double *  data,
const char *  sName 
)

通过UDP接收一个double型数据

参数
datadouble型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ UDPRecvDoubleArray()

int UDPRecvDoubleArray ( double *  data,
const char *  sName 
)

通过UDP接收一个double型数组

参数
datadouble型数组
sNamesocket名称
返回
int 成功返回数据长度,错误返回其他

◆ UDPRecvInt()

int UDPRecvInt ( int *  data,
const char *  sName 
)

通过UDP接收一个int型数据

参数
dataint型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ UDPRecvIntArray()

int UDPRecvIntArray ( int *  data,
const char *  sName 
)

通过UDP接收一个int型数组

参数
dataint型数组
sNamesocket名称
返回
int 成功返回数据长度,错误返回其他

◆ UDPRecvString()

int UDPRecvString ( char *  data,
const char *  sName 
)

通过UDP接收一个string型数据

参数
datastring型数据
sNamesocket名称
返回
int 成功返回字符串长度,错误返回其他

◆ UDPSendByte()

int UDPSendByte ( byte  data,
const char *  sName 
)

UDP发送byte型数据

参数
databyte型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ UDPSendByteArray()

int UDPSendByteArray ( int *  data,
int  n,
const char *  sName 
)

通过UDP发送一个byte型数组

参数
databyte型数组
n数组长度
sNamesocket名称
返回
int 成功返回数据,错误返回其他

◆ UDPSendByteI()

int UDPSendByteI ( byte data,
int  len,
const char *  sName 
)

通过UDP发送byte型数组

参数
databyte型数组
len数组长度
sNamesocket名称
返回
int 成功返回接收长度,错误返回值小于零

◆ UDPSendByteII()

int UDPSendByteII ( int *  header,
int(*)  header_format[2],
int  hf_len,
int *  data_int,
float *  data_float,
int(*)  data_format[2],
int  df_len,
const char *  sName 
)

UDP发送数据

参数
header协议头
header_format协议头格式
hf_len协议头长度
data_intint型数组
data_floatfloat型数组
data_format数据格式
df_len数据段长度
sNamesocket名称
返回
int 成功返回接收数据长度,错误返回值小于零

◆ UDPSendDouble()

int UDPSendDouble ( double  data,
const char *  sName 
)

通过UDP发送一个double型数据

参数
datadouble型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ UDPSendDoubleArray()

int UDPSendDoubleArray ( double *  data,
int  n,
const char *  sName 
)

通过UDP发送一个double型数组

参数
datadouble型数组
n数组长度
sNamesocket名称
返回
int 成功返回数据长度,错误返回其他

◆ UDPSendInt()

int UDPSendInt ( int  data,
const char *  sName 
)

通过UDP发送一个int型数据

参数
dataint型数据
sNamesocket名称
返回
int 成功返回1,错误返回其他

◆ UDPSendIntArray()

int UDPSendIntArray ( int *  data,
int  n,
const char *  sName 
)

通过UDP发送一个int型数组

参数
dataint型数组
n数组长度
sNamesocket名称
返回
int 成功返回数据长度,错误返回其他

◆ UDPSendString()

int UDPSendString ( char *  data,
const char *  sName 
)

通过UDP发送一个string型数据

参数
datastring型数据
sNamesocket名称
返回
int 成功返回字符串长度,错误返回其他

◆ wait_move_finish()

int wait_move_finish ( int  robot_index)

等待运动结束(开线程运行时有效)

参数
robot_index机器人索引号
返回
int 运动完成:_move_finish(0),_move_stop(7), 机器人正在运行:_move_run_joint(1),_move_run_line(2),_move_run_cricle(3),_move_run_helical(4),_move_run_bspline(5),_move_run_zone(6),_move_run_zone_finish(8);运动错误状态:_move_error(-1)

◆ WaitDi()

void WaitDi ( int  id,
int  value 
)

等待数字量输入赋值

参数
id数字量输入索引号
value触发信号0或1