?? gtcardapi.h
字號(hào):
// 第三位為1,表示當(dāng)前軸是命令出錯(cuò)
// (2) 0表示沒有錯(cuò)誤
// (3) -1表示檢測時(shí)出錯(cuò)
virtual int check_axis_error(int axis);
// 功 能:判斷當(dāng)前軸運(yùn)動(dòng)是否完成
//
// 參 數(shù): axis的取值 (1) axis <= 0 判斷所有的軸運(yùn)動(dòng)是否完成所
// (2) 1 , 2 , 3 ,4 時(shí)使指定的軸
//
// 返回值:1表示在沒有完成
// 0表示運(yùn)動(dòng)完成
// -1表示檢測時(shí)出錯(cuò)
virtual int check_axis_done(int axis = -1);
// 功 能:檢查連續(xù)插補(bǔ)緩沖區(qū)是否空
//
// 參 數(shù): axis的取值 (1) axis <= 0 無效的參數(shù)
// (2) 1 , 2 , 3 ,4 時(shí)使指定的軸
//
// 返回值:1表示在運(yùn)動(dòng)
// 0表示沒有運(yùn)動(dòng)
// -1表示檢測時(shí)出錯(cuò)
// 功 能: 設(shè)置探針觸發(fā)模式
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int set_capt_prob(void);
// 功 能: 檢測探針觸發(fā)是否完成
//
// 返回值: 0表示觸發(fā)完成
// 1表示觸發(fā)沒有完成
// -1表示檢測時(shí)出錯(cuò)
virtual int check_capt_prob_done(void);
// 功 能:獲取當(dāng)前軸的捕獲位置值 當(dāng)調(diào)用,GT_CaptHome,GT_CaptIndex,GT_CaptProb
//
//
// 參 數(shù): axis的取值 (1) axis <= 0 無效的參數(shù)
// (2) 1 , 2 , 3 ,4 時(shí)使指定的軸
// pos 存放位置信息緩沖區(qū)
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual long get_axis_capt_pos(int axis , long *pos);
// 功 能:專用輸入信號(hào)參數(shù)設(shè)置
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int input_singl_cfg(void);
// 功 能:查詢執(zhí)行命令出錯(cuò)的第一條原因
//
// 參 數(shù):MsgBuf指向存放錯(cuò)誤信息的緩沖區(qū)
// bufSize緩沖區(qū)的長度,以字節(jié)為單位
//
// 返回值:
// 0表示沒有有錯(cuò)誤發(fā)生
// 1表示有錯(cuò)誤發(fā)生
// 2表示還有下一條錯(cuò)誤發(fā)生
virtual int get_cmd_error_first(char *MsgBuf , int bufSize);
// 功 能:查詢執(zhí)行命令出錯(cuò)的下一條原因
//
// 參 數(shù):MsgBuf指向存放錯(cuò)誤信息的緩沖區(qū)
// bufSize緩沖區(qū)的長度,以字節(jié)為單位
//
// 返回值:
// 0表示沒有有錯(cuò)誤發(fā)生
// 1表示有錯(cuò)誤發(fā)生
// 2表示還有下一條錯(cuò)誤發(fā)生
virtual int get_cmd_error_next(char *MsgBuf , int bufSize);
// 功 能:該函數(shù)獲得運(yùn)動(dòng)控制器通用數(shù)字量輸入的狀態(tài)
//
// 參 數(shù): *inData 返回該狀態(tài),其各位與通用數(shù)字量輸入口對應(yīng)
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int get_IO_input(unsigned short *inData);
/// 功 能:該函數(shù)設(shè)置運(yùn)動(dòng)控制器通用數(shù)字量輸出的狀態(tài)
//
// 參 數(shù): outData 是所要設(shè)置的狀態(tài),其各位與通用數(shù)字輸出口對應(yīng)
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int get_IO_output(unsigned short outData);
// 功 能:設(shè)置指定的軸步進(jìn)或者單軸運(yùn)動(dòng)時(shí)的運(yùn)動(dòng)參數(shù)
//
// 參 數(shù): speed的取值(1) speed > 0 指定的軸向以speed的速度運(yùn)動(dòng)0 --0.1 最大速度為 30m
// acc的取值 (1) 指定的軸加速度 0 -- 0.0000003 最大速度為 27m/min2
virtual int set_syn_para(double speed ,double acc);
// 功 能:設(shè)置當(dāng)前運(yùn)動(dòng)模式為坐標(biāo)系運(yùn)動(dòng)模式或者緩沖區(qū)運(yùn)動(dòng)模式
//
// 參 數(shù): mode的取值(1) mode > 0 指定當(dāng)前運(yùn)動(dòng)模式為緩沖區(qū)連續(xù)運(yùn)動(dòng)模式
// (2) mode = 0 指定當(dāng)前運(yùn)動(dòng)模式為坐標(biāo)系單段運(yùn)動(dòng)模式
virtual int init_conti_run_mode(int mode);
// 功 能:該函數(shù)設(shè)置運(yùn)動(dòng)控制器以圓弧插補(bǔ)方式運(yùn)動(dòng)
//
// 參 數(shù): 是所要運(yùn)動(dòng)到指定的位置,單位為mm
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int add_conti_blk_circle_center( double xC , double yC , double zC ,double angle , int direction,int circle_cb_mode, double synvel, double synacc );
// 功 能:該函數(shù)設(shè)置運(yùn)動(dòng)控制器以圓弧插補(bǔ)(終點(diǎn)半徑)方式運(yùn)動(dòng)
// 參 數(shù): 是所要運(yùn)動(dòng)到指定的位置,單位為mm
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int add_conti_blk_circle_radius(double xT, double yT, double zT, double radius,int direction, int circle_cb_mode, double synvel, double synacc);
// 功 能:該函數(shù)設(shè)置運(yùn)動(dòng)控制器以XYZ插補(bǔ)方式運(yùn)動(dòng)到指定的位置
//
// 參 數(shù): xyz是所要運(yùn)動(dòng)到指定的位置,單位為mm
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int add_conti_blk_XYZ(double x , double y ,double Z, int line_cb_mode);
// 功 能:在當(dāng)前運(yùn)動(dòng)模式為緩沖區(qū)連續(xù)運(yùn)動(dòng)模式時(shí)啟動(dòng)緩沖區(qū)命令的執(zhí)行
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int run_conti_mode(void);
// 功 能:在當(dāng)前運(yùn)動(dòng)模式為緩沖區(qū)連續(xù)運(yùn)動(dòng)模式時(shí)重新打開命令緩沖區(qū)
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int add_conti_mode(void);
// 功 能:在當(dāng)前運(yùn)動(dòng)模式為緩沖區(qū)連續(xù)運(yùn)動(dòng)模式時(shí)暫停緩沖區(qū)命令的執(zhí)行
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int stop_conti_mode(void);
// 功 能:該函數(shù)立即停止基于坐標(biāo)系的多軸協(xié)調(diào)運(yùn)動(dòng)命令。
// 在當(dāng)前運(yùn)動(dòng)模式為緩沖區(qū)連續(xù)運(yùn)動(dòng)模式時(shí)暫停緩沖區(qū)命令的執(zhí)行在立即命
// 令輸入執(zhí)行狀態(tài),運(yùn)動(dòng)停止后將丟棄當(dāng)前運(yùn)動(dòng)信息。
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int Estop_conti_mode(void);
// 功 能:在當(dāng)前運(yùn)動(dòng)模式為緩沖區(qū)連續(xù)運(yùn)動(dòng)模式時(shí)關(guān)閉緩沖區(qū)
//
// 返回值: 1表示有錯(cuò)誤發(fā)生
// 0表示命令執(zhí)行成功
virtual int end_conti_mode(void);
// 功 能:檢查連續(xù)插補(bǔ)緩沖區(qū)是否空
//
// 返回值:1表示沒有空
// 0表示空
// -1表示檢測時(shí)出錯(cuò)
virtual int check_conti_buffer_done(void);
// 功 能:檢查坐標(biāo)系模式運(yùn)動(dòng)時(shí)是否出錯(cuò)
//
// 返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
// -1表示檢測時(shí)出錯(cuò)
virtual int check_conti_run_error(void);
// 功 能: 設(shè)置指定軸的1um對應(yīng)的脈沖數(shù)
//
// 參 數(shù):axis的取值(1) axis <= 0 無效的參數(shù)
// (2) 1 , 2 , 3 ,4 時(shí)初始化指定的軸
// PerPlus的取值(1) 每轉(zhuǎn)脈沖數(shù)目
// PerGap的取值 (1) 每轉(zhuǎn)工作臺(tái)移動(dòng)的距離
virtual void set_axis_ratio(int axis,long PerPlus , long PerGap);
// 功 能:將指定軸對應(yīng)的以um為單位的位置,轉(zhuǎn)換成以脈沖為單位的位置
//
// 參 數(shù):axis的取值(1) axis <= 0 無效的參數(shù)
// (2) 1 , 2 , 3 ,4 時(shí)初始化指定的軸
// pos的取值 (1) 以um為單位的位置
//
// 返回值: 以脈沖為單位的位置
virtual long cmd_to_motion_pos(int axis,long pos);
// 功 能:將指定軸對應(yīng)的以脈沖為單位的位置,轉(zhuǎn)換成以um為單位的位置
//
// 參 數(shù):axis的取值(1) axis <= 0 無效的參數(shù)
// (2) 1 , 2 , 3 ,4 時(shí)初始化指定的軸
// pos的取值 (1) 以um為單位的位置
//
// 返回值: 以um為單位的位置
virtual long motion_to_cmd_pos(int axis,long pos);
// 功 能:獲取系統(tǒng)當(dāng)前的運(yùn)行速度(合成速度)
//
// 參 數(shù): *aCurSpeed 返回當(dāng)前的合成速度
//
// 返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
virtual int get_cur_speed(double * aCurSpeed);
virtual int get_cur_axis_state(int axis, unsigned short *pAxis_state);
virtual int get_cur_cordinate_state(unsigned short *axis_state);
virtual int Outport(unsigned short);
//將軸模式寄存器中的運(yùn)動(dòng)出錯(cuò)自動(dòng)停止標(biāo)志位置1
//參數(shù)
//返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
virtual int AuStopOn(int axis);
//參數(shù)自動(dòng)更新
//參數(shù)Mask各位表示0:1號(hào)軸;1:2號(hào)軸;2:3號(hào)軸
//返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
virtual int Gt_Card_Api::MultiUpdate(unsigned short Mask);
//將當(dāng)前軸的限位開關(guān)設(shè)為有效
//參數(shù)axis為軸號(hào)
//返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
virtual short SetLmtsOn(int axis);
//設(shè)置坐標(biāo)系映射參數(shù)
//參數(shù)axis為欲映射的軸,MapPara為映射參數(shù)
//返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
virtual int SetMapAxis(int axis ,double MapPara[3]);
//設(shè)置坐標(biāo)系狀態(tài)下軸異常自動(dòng)停止有效
//映射到各軸的運(yùn)動(dòng)全部停止
//返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
virtual int SetAutoAbruptOn(void);
//設(shè)置坐標(biāo)系狀態(tài)下軸異常自動(dòng)停止無效
//映射到各軸的運(yùn)動(dòng)全部停止
//返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
virtual int SetAutoAbruptOff(void);
//設(shè)置坐標(biāo)系狀態(tài)下緩沖區(qū)內(nèi)起始點(diǎn)位置和參數(shù)
//x為起點(diǎn)x坐標(biāo),y起點(diǎn)y坐標(biāo),vel為速度,acc為加速度
//返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
virtual int SetXYOriginPointInCordinates(double x, double y, double vel, double acc);
//設(shè)置坐標(biāo)系狀態(tài)下緩沖區(qū)內(nèi)起始點(diǎn)XYZ位置和參數(shù)
//x為起點(diǎn)x坐標(biāo),y起點(diǎn)y坐標(biāo),z起點(diǎn)z坐標(biāo),vel為速度,acc為加速度
//返回值:1表示出錯(cuò)
// 0表示沒有出錯(cuò)
virtual int SetXYZOriginPointInCordinates(double x, double y, double z, double vel, double acc);
///////////////////////////////////////////////////////////
private:
// 功 能: 檢測指定的軸是否是有效軸(1,2,3,4為有效軸)
//
// 返回值: 1表示無效軸
// 0表示有效軸
int check_axis_user(int axis);
private:
int m_home_step[Sys_Max_Axis_Num+1];
double m_axis_ratio[Sys_Max_Axis_Num+1];
unsigned short error_msk;
int axis_mode;
double acc_home_jog;
double speed_jog;
double speed_home;
double speed_move_step;
double acc_move_step;
double jerk_move_step;
double acc_syn;
double speed_syn;
};
#endif
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -