在数值控制机械上,有些单纯的开(ON)或关(OFF)的动作,如主轴正转、主轴停止、切削剂开、切削剂关等,用地址M后面接2位数字组成指令,称为辅助机能。
通常M机能除某些有通用性的标准码外(如M03,M05,M08,M09,M30等),亦可由制
造厂商依其机械之动作要求,设计出不同的M指令,以为控制不同之开/关动作,或预留I/O(输入/输出)接点,作为操作者自行联结其它外围设备使用。
在同一单节中若有两个M机能出现时,虽其动作不相冲突,但以排列在最后面的M机能有效,前面的M机能皆被忽略而不执行。
例如:S600
M03 M08;=>执行此单节时,主轴不会正转,只有喷出切削剂。
一般CNC机械M机能的前导零可省略,如M01可用M1表示,M03可用M3来表示,余者类推,如此可节省内存空间及键入的字数。
M机能的范围由M00至M99,不同的M机能代表不同的动作,较常用者如表1所示。现分述如下:
表1 辅助机能之字语及其功能
1. M00:程序停止
程序中若使用M00指令,于执行至M00指令时,程序即停止执行,且主轴停止转动、切削
剂关闭。若欲再继续执行下一单节,只要按下CYCLE
START程序启动键,则主轴转动、切削
剂开启,继续执行M00后面的程序。M00指令一般均单独成为一个单节使用。 |
2. M01:选择性程序停止
此一指令的功能和M00相同,但选择停止或不停止,可由执行操作面板上的"选择停止"按钮来控制。当按钮置于ON(灯亮)时则M01有效,其功能等于M00,若按钮置于OFF(灯熄)时,则M01将不被执行,即程序不会停止。
M00和M01常用在CNC铣床于粗铣后执行M00或M01,此时,则可用手动方式更换精铣刀
,再按CYCLE
START程序执行键,续继执行精铣程序,其它加工,以此类推,如下面例子说明
例子: |
N1; |
=> |
粗铣 |
: |
|
|
G00 G90 Z100.; |
=> |
手动换刀安全点。 |
M00; |
=> |
程序停止。将"模式选择"旋钮转至MPG微调操作,用手动更换精铣刀,再将旋钮转回AUTO自动执行,再按CYCLE
START程序启动键,继续往下执行程序。 |
N2;
|
=> |
精铣 |
: |
|
|
G00 G90 Z100; |
|
|
M00; |
=> |
程序停止,同上M00说明更换中心钻头。 |
N3; |
=> |
钻中心孔 |
: |
|
|
G00 G90 Z00.; |
|
|
M00; |
=> |
程序停止,同上M00说明更换φ7.8钻头。 |
N4; |
=> |
钻φ7.8mm孔 |
: |
|
|
G00 G90 Z100.; |
|
|
M00; |
=> |
程序停止,同上M00说明更换φ8H7铰刀。 |
N5; |
=> |
铰孔 |
: |
|
|
M30; |
=> |
程序结束。 |
3. M02:程序结束
此指令应置于程序最后单节,表示程序到此结束。此指令会自动将主轴停止(M05)及关闭切削剂(M09),但程序执行指针(CURSOR)不会自动回到程序的第一单节,而停在M02
此单节上。如欲使程序执行指针回到程序开头,必须先将"模式选择"钮转至EDIT编辑上,
再按RESET键,使程序执行指针回到程序开头。 |
4.M03:主轴正转
程序执行至M03,主轴即正方向旋转(由主轴上方,向床台方向看,顺时针方向旋转)。参考图1(a)。一般铣刀大都用主轴正转M03。 |
5.M04:主轴反转
程序执行至M04,主轴即反方向旋转(由主轴上方,向床台方向看,逆时针方向旋转)。参考
图1(b)。 |
6.M05:主轴停止
程序执行至M05,主轴即瞬间停止,此指令用于下列情况:
|
( 1 ) |
程序结束前(
但一般常可省略,因为M02,M30指令皆包含
M05
)。 |
( 2 ) |
若CNC机械有主轴高速档(M42)、主轴低速文件(M41)指令
时,在换档之间,必须使用
M05,使主轴停止再换档,以免损坏换档机构。
|
( 3 ) |
主轴正、反转之间的转换,也须加入此指令,使主轴停止后,再变换转向指令,以免伺服马达受损。 |
7.M06:自动换刀
程序执行至M06,控制器即命令ATC(自动刀具交换装置)执行换刀的动作。其换刀动作及程序写法请参考2-1.10T机能说明。
8. M07:开启雾状切削剂
有喷雾装置之机械,令其开启喷雾泵浦,喷出雾状切削剂。
9. M08:切削剂喷出
程序执行至M08,即启动切削剂泵浦,但必须配合执行操作面板上的
CLNT AUTO键,处于"ON"
(
灯亮
)
状态。
(
切削液程序键,处于ON
)
否则泵浦不会启动。
一般CNC机械主轴附近有一阀门可以手动调节切削剂流量大小。
10.M09:喷雾及切削剂关闭
令命喷雾及冷却剂泵浦关闭,停止切削剂喷出。常用于程序执行完毕之前。(但常可省略,
因为一般M02、M30指令皆包含M09)。
11.M19:主轴定向停止
令主轴旋转至一固定之方向而后停止旋转,于装置精搪孔刀及背搪孔刀使用G76或G87指
令时,因其包含M19指令,且刀具会平移一小段距离。故必须先以MDI方式执行19指令,以确定偏位方向,以便提供给G76或G87指令使用。
12.M30:程序结束
此指令应置于程序最后单节,表示程序到此结束。此指令会自动将主轴停止(M05)及关
闭切削剂(M09),且程序执行指针会自动回到程序的第一单,以方便此程序再次被执行。此即是与M02指令不同之处,故程序结束大多使用M30较方便。
13.M98:主程序呼叫子程序
此指令置于主程序之某一单节,当执行至M98时,控制器,即从内存内呼叫M98后面所指定之子程序出来执行。执行次数大多由1~99。指令格式:
此指令的用法,可参考
2-1.20节的例1。
14.M99:子程序结束并跳回主程序
此指令用于子程序最后单节,表示子程序结束,且命令程序执行指针跳回主程序中M98的下一单节继续执行程序。
M99指令也可用于主程序最后单节,此时程序执行指针会跳回主程序的第一单节继续执行此程序,所以此程序将一直重复执行,除非按下RESET键才能中断执行。此种方法常用于CNC铣床或MC开机后的暖机程序,如下面例子可供参考。(也常用于展览会场展示用)。
CNC铣床或MC暖机程序:(此程序适合无臂式ATC) |
O8888;
G91 G28 Z0; |
=> |
Z轴回归机械原点。 |
G28 X0 Y0; |
=> |
X、Y轴回归机械原点。 |
M06 T01;
|
=> |
将1号刀装上主轴孔内。
|
M03 S100; |
=> |
主轴正转100
rpm。 |
G01 G91 X500. Y -350. F50.; |
=> |
以50mm/min进给速率移动到 X500. Y-350.。 |
Z -400.; |
=> |
Z轴向下移动。 |
X -450. Y300.;
|
=> |
X、Y轴移动。 |
G28 Z0; |
=> |
Z轴归HOME点。 |
M06 T07; |
=> |
将7号刀装上主轴。 |
Z -400.;
|
=> |
Z轴向下移动。 |
X500. Y -350.; |
=> |
X、Y轴移动。 |
Z200.; |
=> |
Z轴向上移动。 |
X -250. Y170.;
|
=> |
X、Y轴移动。 |
G28 Z0;
|
=> |
Z轴归HOME点。 |
M06 T14;
|
=> |
将14号刀装上主轴。 |
Z -400.; |
=> |
Z轴向上移动。
|
M99; |
=> |
将程序执行指针跳回第一单节继续执行此程序。 |
|