00001 /******************************************************************************************************** 00002 Copyright (C), 2016, Aubo Tech. Co., Ltd. 00003 FileName: jointcontrolapi.h 00004 Author: 00005 Date:2016-08-17 00006 Description: can driver for aubo robot arm 00007 00008 Version: V1.1.0 00009 Function List: 00010 int joint_control_init(const char *device); 00011 int joint_control_uninit(void); 00012 bool set_joint_position(int joint_id, float angle); 00013 float read_joint_position(int joint_id); 00014 int read_joint_brake_status(int joint_id); 00015 History: 00016 <author> <time> <version > <desc> 00017 2016-08-17 V1.1.0 creat 00018 ********************************************************************************************************/ 00019 00020 #ifndef JOINTCONTROLAPI_H 00021 #define JOINTCONTROLAPI_H 00022 00023 #define JOINT_BRAKE_RELEASE 0 00024 #define JOINT_BRAKE_CLOSED 1 00025 00026 00027 00028 /************************************************************************** 00029 * Function:joint_control_init 00030 * Description: init CAN bus 00031 * Input: 00032 * device: can descriptor,example:/dev/pcan32 00033 * Return: 0-success 00034 * Other: 00035 **************************************************************************/ 00036 int joint_control_init(const char *device); 00037 int joint_control_uninit(void); 00038 00039 /************************************************************************** 00040 * Function:set_joint_position 00041 * Description:set joint target angle 00042 * Input: 00043 * joint_id 1~6 00044 * angle rad 00045 * Return: 0-success 00046 **************************************************************************/ 00047 bool set_joint_position(int joint_id, float angle); 00048 00049 /************************************************************************** 00050 * Function:read_joint_position 00051 * Description:read joint current position 00052 * Input: 00053 * joint_id 1~6 00054 * Return: joint angle 00055 * Other: 00056 **************************************************************************/ 00057 float read_joint_position(int joint_id); 00058 00059 00060 /************************************************************************** 00061 * Function:set_joint_max_speed 00062 * Description:set joint max speed 00063 * Input: 00064 * joint_id 1~6 00065 * speed rpm 00066 * Return: 0-success 00067 **************************************************************************/ 00068 bool set_joint_max_speed(int joint_id, float speed); 00069 00070 00071 00072 /************************************************************************** 00073 * Function:set_joint_max_acc 00074 * Description:set joint max acc 00075 * Input: 00076 * joint_id 1~6 00077 * acc rpm/s 00078 * Return: 0-success 00079 **************************************************************************/ 00080 bool set_joint_max_acc(int joint_id, float acc); 00081 00082 00083 00084 /************************************************************************** 00085 * Function:read_joint_brake_status 00086 * Description:read joint break status 00087 * Input: 00088 * joint_id 1~6 00089 * Return: 0-release , 1 break 00090 * Other: 00091 **************************************************************************/ 00092 int read_joint_brake_status(int joint_id); 00093 00094 00095 #endif // JOINTCONTROLAPI_H