freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

用c語言編寫華中數(shù)控銑床plc程序-資料下載頁

2025-07-07 15:46本頁面
  

【正文】 ) //系統(tǒng)控制其控制字各位定義如下:define SYS_SAVE_BBUF 0x0001 //保存斷電緩沖define SYS_SAVE_CUTTER 0x0002 //保存刀具狀態(tài)define SYS_SAVE_COORD 0x0004 //保存坐標(biāo)define SYS_SAVE_POS 0x0008 //保存位置define SYS_SAVE_ERROR 0x0010 //保存錯(cuò)誤define SYS_LOAD_PARM 0x1000 //裝載參數(shù)define SYS_ESTOP 0x4000 //系統(tǒng)停止define SYS_RESET 0x8000 //系統(tǒng)復(fù)位 系統(tǒng)外部報(bào)警define sys_ext_alm() (G_ui[251]) //系統(tǒng)外部警報(bào)種類PLC最多可定義15種外部報(bào)警信息。報(bào)警信息可在參數(shù)中設(shè)置。這樣PLC程序也可以向系統(tǒng)及用戶報(bào)警。 系統(tǒng)變量組2(系統(tǒng)保留)define sys_var2(n) (G_ui[240+(n)]) //系統(tǒng)變量組2(n)4. 對于B寄存器,系統(tǒng)提供如下宏定義,供用戶使用: 刀座數(shù)define tot_mag_pos() (B_ui) 某一刀座中的刀號(刀庫表)define cutter_in_mag(x) (B_i+1+(x))5. 數(shù)控系統(tǒng)為PLC程序接供的操作函數(shù)有: 設(shè)置軸回零void set_axis_home( int axis, //所指定的軸號:015 int start_stop)。 //為0:取消回零 非0:回零注:實(shí)際上,本節(jié)提供的函數(shù)都非常簡單,用戶也可以根據(jù)前面幾節(jié)的介紹自己編寫,如本函數(shù)就可以用C語言表達(dá)如下:void set_axis_home(int axis,int start_stop){asm cliif(start_stop){*axis_ctrl(axis)|=AX_HMODE_SW。}else {*axis_ctrl(axis)amp。=~AX_HMODE_SW。}asm sti} 設(shè)置軸點(diǎn)動(dòng)速度void set_axis_jog( int axis, //所指定的軸號:015 int speed)。 //點(diǎn)動(dòng)速度,單位:內(nèi)部脈沖/插補(bǔ)周期本函數(shù)可以用C語言表達(dá)如下:void set_axis_jog(int axis,int speed){ *axis_pvcmd(axis)=speed。} 設(shè)置軸步進(jìn)指定距離void set_axis_step( int axis, //所指定的軸號:015 long displacement)。 //步進(jìn)增量,單位:內(nèi)部脈沖當(dāng)量本函數(shù)可以用C語言表達(dá)如下:void set_axis_step(int axis,long displacement){ long l,l1,v,v1。 if(displacement==0) return。 asm cli l=*axis_pic_a(axis)+displacement。 l1=abs(l)。 v=l1/200*(*sys_iip_time())。 v1=*axis_vmax(axis)。 if(vv1) v=v1。 if(v2) v=2。 *axis_pic_a(axis)=l。 *axis_pic_v(axis)=v。 asm sti} 設(shè)置軸移動(dòng)距離及速率void set_axis_move( int axis, //所指定的軸號:015 long displacement, //移動(dòng)距離增量 int speed)。 //移動(dòng)速率,單位:內(nèi)部脈沖/插補(bǔ)周期本函數(shù)可以用C語言表達(dá)如下:void set_axis_move(int axis,long displacement,int speed){ long l1,l2。 int v1,v2。 if(displacement==0) return。 asm cli l1=abs(*axis_pic_a(axis))。 v1=abs(*axis_pic_v(axis))。 l2=abs(displacement)。 v2=abs(speed)。 *axis_pic_v(axis)=(long) (l1*v1+l2*v2)/(l1+l2)。 *axis_pic_a(axis)+=displacement。 asm sti} 設(shè)置軸移動(dòng)的目的地及速率void set_axis_moveto( int axis, //所指定的軸號:015 long position, //移動(dòng)的目的地 int speed)。 //移動(dòng)速率,單位:內(nèi)部脈沖/插補(bǔ)周期本函數(shù)可以用C語言表達(dá)如下:void set_axis_moveto(int axis,long position,int speed){ set_axis_move(axis,positionget_axis_pos(axis),speed)。} 設(shè)置指定軸停止運(yùn)動(dòng)void set_axis_stop(int axis)。 //所指定的軸號:015本函數(shù)可以用C語言表達(dá)如下:void set_axis_stop(int axis){ long l,l1,v。 asm cli l=*axis_pic_a(axis)。 v=*axis_pic_v(axis)。 l1=v*(*sys_iip_time())/200。 if(l0) { if(ll1) l=l1。 } else if(ll1) l=l。 *axis_pic_a(axis)=l。 asm sti set_axis_jog(axis,0)。 set_axis_home(axis,0)。} 取指定軸當(dāng)前位置long get_axis_pos(int axis)。 //所指定的軸號:015本函數(shù)可以用C語言表達(dá)如下:long get_axis_pos(int axis){long l。asm clil=*axis_pout(axis)+(*axis_pic_a(axis))。asm stireturn l。} 指定軸當(dāng)是否停止int get_axis_den(int axis)。 //所指定的軸號:015。返回1:已停,0:沒有停本函數(shù)可以用C語言表達(dá)如下:int get_axis_den(int axis){return (*axis_pic_a(axis)!=0||*axis_pvcmd(axis)!=0)? 0:1。} 設(shè)置軸手搖移動(dòng)void handwheel( int h_no, //手搖號 int axis, //軸號 int step_mul)。 //步進(jìn)倍率 取手搖狀態(tài)對應(yīng)的位移量int get_handwheel(int handwheel)。 //手搖號 設(shè)置MST指令的響應(yīng)函數(shù)void set_mst_func( int ch, //通道 char name, //代碼類型:M、S、T void (*mst_func)(int))。 //響應(yīng)函數(shù)入口地址*本文檔由陽道善編寫,朱志紅訂正。最后修改日期:2000/11/115 /
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1