今日共享一個簡略易學事例:經過宏程序完成CNC加工中心的刀具壽數辦理
要對加工中心刀具使用壽數進行辦理就有必要精確地對CNC刀具所加工的零件數量進行核算,這就涉及到要對CNC加工中心刀具加工零件數量的累計核算。
講程序之前我講兩個知識點,程序中要用到:
一,#3000這個體系變量
二,WHILE….DO句子
一、體系變量#3000
法拉克體系變量 # 3000是用戶自定義的報警變量
格局為:#3000=0~200 ( )
當#3000的值為0到200的時分體系會中止運轉且報警
闡明:
1,0到200是報警號, NC屏幕上顯現報警號為:變量#3000的值加上3000。
2,括號中能夠寫報警信息,可是括號中不能操過26個字符。
比方:
%
O0001(PROGRAMED BY SOSCNC)
G0G17G40G49G80G90
T1M06
……
……
……
#3000=1 (YOU MUST CHANGE TOOL)
M30
%
當程序運轉至#3000=1程序段的時分,體系會中止運轉且報警。報警號為:3001 報警信息為:YOU MUST CHANGETOOL (意思是:你有必要替換刀具)。
二、WHILE….DO句子
宏程序最常用句子之一WHILE [ ] DO 句子
這個句子是兩個英文單詞,意思是:當.......的時分就做某事。
法拉克格局為:
WHILE [ ] DO n
……
END n
闡明:
1,中括號里邊為條件表達式
2,n——順序號(n只能是1、2 、3, DO后邊的順序號要與END后邊的順序號相同)
3,當條件表達式滿意,則履行從DO到END之間的程序,不然轉至END后邊的程序。
例:
WHILE[#10LE#2]DO 1
------
END1
G0X0.Y0.
-----
當#10的值小于#2的值時,則履行WHILE 至END1之間的程序,不然履行END1后邊的程序,G0X0.Y0. ……
好了,預備開端編寫程序
前面講了需求核算小型加工中心的刀具加工零件數量,假定某零件的一道工序T1刀可加工200件
那么就需求所編制的宏程序能夠提示操作者:在各刀片使用壽數完成后進行替換。
也就是說T1號刀加工200件后,程序需求中止,提示操作者替換立式加工中心刀具。
程序怎么編寫尼?
上面赤色字體,供給了兩個信息
1.小型加工中心刀具加工200件程序需求中止
2.提示操作者替換加工中心刀具
此刻正好用咱們所學的WHILE句子來判別(當加工數量等于我規則200件的時分,就履行報警變量)
那么數控編程程序如下:
O0002(主程序名)
(微信SOSCNC)
T0101 S2000 M3;主程序開端,挑選T1刀,開主軸, 預備加工。
...... (加工內容)
......(加工內容)
#500=#500+1;T1刀壽數記數器+1。
WHILE[#500 EQ 200]DO1;對T1刀壽數記數器數據進行判別,如條件滿意履行WHILE與END1之間程序段。
#500=0; 刀具壽數記數器清零。
#3000=1(YOU MUST CHANGE THE TOOL)
END1;
M30;
也就是說我利用了WHILE這個內循環句子(當然你也能夠用IF等句子),當滿意200件,就履行加工中心刀具核算器清零#500=0;#3000=1程序段。
趁便說下記數器變量設置需求選用#500~#559帶有回憶功用的變量,這樣程序完畢,乃至封閉加工中心機床變量仍會堅持記載。