NC编程基本原理 程序名称在编制程序时可以按以下规则确定程序名: 开始的两个符号必须是字母,其后的符号可以是字母,数字或下划线,最多为16个字符,不得使用分隔符 举例:RAHMEN52 程序结构1.结构和内容 NC程序由各个程序段组成每一个程序段执行一个加工步骤 程序段由若干个字组成最后一个程序段包含程序结束符:M2 2.NC程序结构 程序段 字 字 字 … ;注释程序段 N10 G0 X20 … ;第一程序段程序段 N20 G2 Z37 … ;第二程序段程序段 N30 G91 … … ;… 程序段 N40 … … … 程序段 N50 M2 ;程序结束 字结构及地址1.功能/结构字是组成程序段的元素,由字构成控制器的指令 字由以下几部分组成 •地址符 地址符一般是一字母 •数值 数值是一个数字串,它可以带正负号和小数点 正号可以省略不写 2.多个地址符一个字可以包含多个字母,数值与字母之间用符号“=” 隔开 举例:CR=5.23 此外,G功能也可以通过一个符号名进行调用(参见章节“指令表”)举例:SCALE;打开比例系数3.扩展地址 对于如下地址;R 计算参数H H功能I,J,K 插补参数/中间点地址可以通过1到4个数字进行地址扩展。
在这种情况下,其数值可以通过“=”进行赋值(参见章节“指令表”)举例:R10=6.234 H5=12.1 I1=32.67 程序段结构1.功能 一个程序段中含有执行一个工序所需的全部数据. 程序段由若干个字和段结束符“LF”组成.在程序编写过程中进行换行时或按输入键时可以自动产生段结束符. 2.字顺序 程序段中有很多指令时建议按如下顺序: N…G…X…Y…Z…F…S…T…D…M… 程序段号说明以5或10为间隔选择程序段号,以便以后插入程序段时不会改变程序段号的顺序3.可被跳跃的程序段 那些不需在每次运行中都执行的程序段可以被跳跃过去,为此应在这样的 程序段的段号字之前输入斜线符“/” 通过操作机床控制面板或者通过接口控制信号可以使跳跃程序段功能生效几个连续的程序段可以通过在其所有的程序段段号之前输入斜线符“/” 被跳跃过去 在程序运行过程中,一旦跳跃程序段功能生效,则所有带“/” 符的程序段都不予执行,当然这些程序段中的指令也不予考虑程序从下一个没带斜线符的程序段开始执行 3.注释 利用加注释的方法可在程序中对程序段进行说明,注释可作为对操作者的提示显示在屏幕上 4.信息 信息编程在一个独立的程序段中。
信息显示在专门的区域,并且一直有效,除非被一个新的信息所替代,或者程序结束一个信息最多可以显示65个字符一个空的信息会清除以前的信息MSG(这是信息文本)5.例子 N10 ;G&S公司订货号12A71 N20 ;泵部件17,图纸号:123 677 N30 ;程序编制员H.Adam,部门TV4 N40 MSG (“ROUGH UNMACHINED PART”):50 G17 G54 G94 F470 S20 D0 M3 ;主程序段 N60 G0 G90 X100 Y200 N70 G1 Z185.6 N80 X112 /N90 X118 Y180 ;程序段可以被跳跃 N100 X118 Y120 N110 G0 G90 X200 N120 M2 ;程序结束 字符集在编程中可以使用以下字符,它们按一定的规则进行编译 1.字母 A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z 大写字母和小写字母没有区别. 2.数字 0,1,2,3,4,5,6,7,8,9 3.可打印的特殊字符 ( 园括号开 ) 园括号闭 [ 方括号开 ] 方括号闭 < 小于 > 大于 : 主程序,标志符结束 = 赋值,相等部分 / 除号,跳跃符 * 乘号 + 加号,正号 - 减号,负号 “ 引号 _ 字母下划线 . 小数点 , 逗号,分隔符 ; 注释标志符 % 预定,没用 & 预定,没用 ’ 预定,没用 $ 预定,没用 ? 预定,没用 ! 预定,没用 4.不可打印的特殊 LF 程序段结束符 字符 空格 字之间的分隔符,空白字 制表键 预定,没用指令表地址含义赋值说明编程D刀具刀补号0…9整数,不带符号用于某个刀具T…的补偿参数:D0表示补偿值=0一个刀具最多有9个D号D…F0.001…99 999.999刀具/工件的进给速度,对应G94或G95,单位分别为毫米/分钟或毫米/转F…F进给率(与G4 一起可以编程停留时间)0.001…99 999.999停留时间,单位秒G4 F… 单独运行GG功能(准备功能字)已事先规定G功能按G功能组划分, 一个程序段中只能有一个G功能组中的一个G功能指令。
G功能按模态有效(直到被同组中其它功能替代),或者以程序段方式有效 G功能组:G… G0快速移动1:运动指令G0 X…Y…Z…G1直线插补(插补方式) 模态有效G1 X…Y…Z…F…G2顺时针圆弧插补G2 X…Y…Z…I…K…… ;圆心和终点 G2 X…Y…CR=…F… ;半径和终点 G2 AR=…I…J…F… ;张角和圆心 G2 AR=…X…Y…F… ;张角和终点G3逆时针园弧插补G3….; 其它同G2 CIP中间点圆弧插补CIPX…Y…Z…I1=…K1=…F…G33恒螺距的螺纹切削S… M… ;主轴转速,方向 G33Z…K… 在Z轴方向上带 补偿夹具攻丝. G331不带补偿夹具切削内螺纹N10 SPOS= 主轴处于位置调节状态 N20 G331 Z…K… S… ;在Z轴方向不带补偿夹具攻丝 ;右旋螺纹或左旋螺纹通过螺距的 符号(比如K+) 确定: +: 同M3 -: 同M4 G332不带补偿夹具切削内螺纹. 退刀G332 Z… K… ;不带补偿夹具切削螺纹. Z退刀 ;螺距符号同G331CT带切线的过渡圆弧插补N10…N20 CT Z… X…F. 圆弧以前一段切线为过渡.G4快速移动2: 特殊运行,程序段方式有效G4 F…或G4 S….;自身程序段G63快速移动G63 Z…F…S…M… G74回参考点G74X…Y…Z… G75回固定点G75X…Y…Z… ;自身程序段 TRANS可编程的偏置3: 写存储器,程序段方式有效TRANSX…Y…Z…自身程序段 ROT可编程的旋转ROT RPL=… ;在当前平面中旋转G17到G19SCALE可编程比例系数SCALEX…Y…Z…在所给定轴方向比例系数,自身程序段MIRROR可编程镜像功能MIRROR X0 改变方向的坐标轴,自身程序段ATRANS附加可编程的偏置ATRANSX…Y…Z…自身程序段AROT附加可编程的旋转AROT RPL=… ;在当前平面中旋转G17到G19ASCALE附加可编程比例系数ASCALEX…Y…Z…在所给定轴方向比例系数,自身程序段AMIRROR附加可编程镜像功能AMIRROR X0 改变方向的坐标轴,自身程序段G25主轴转速下限G25S… ;自身程序段G26主轴转速上限G26S… ;自身程序段G110极点尺寸,相对于上次编程的设定位置 G110X…Y…极点尺寸,直角坐标,比如G17G110 RP…AP…极点尺寸,极坐标;自身程序段G111极点尺寸,相对于当前工件坐标系的零点G111 X…Y…极点尺,寸直角坐标,比如G17G111 RP…AP…极点尺寸,极坐标;自身程序段G112极点尺寸,相对于上次有效的极点G112 X…Y…极点尺,寸直角坐标,比如G17G112 RP…AP…极点尺寸,极坐标;自身程序段G17*X/Y平面6: 平面选择G17…所在平面的垂直轴为刀具长度补偿轴G18Z/X平面模态有效G19Y/Z平面G40刀尖半径补偿方式的取消7: 刀尖半径补偿模态有效G41调用刀尖半径补偿, 刀具在轮廓左侧移动G42调用刀尖半径补偿, 刀具在轮廓右侧移动G500取消可设定零点偏置8: 可设定零点偏置模态有效G54第一可设定零点偏置G55第二可设定零点偏置G56第三可设定零点偏置G57第四可设定零点偏置G58第五可设定零点偏置G59第六可设定零点偏置G53按程序段方式取消可设定零点偏置9: 取消可设定零点偏置段方式有效G153按程序段方式取消可设定零点偏置,包括框架G60*准确定位10:定位性能模态有效G64连续路径方式G9准确定位,单程序段有效11:程序段方式准停段方式有效G601在G60,G9方式下准确定位,精12:准停窗口模态有效G602在G60,G9方式下准确定位,粗G70英制尺寸13:英制/公制尺寸模态有效G71*公制尺寸G700英制尺寸,也用于进给率FG710公制尺寸,也用于进给率FG90*绝对尺寸14:绝对尺寸/增量尺寸模态有效G91增量尺寸G94*进给率F,单位毫米/分15:进给/主轴模态有效G95主轴进给率F,单位毫米/转CFC圆弧加工时打开进给率修调16:进给率修调 偿模态有效CFTCP关闭进给率修调G901在圆弧段进给补偿“开”G900进给补偿“关”G450圆弧过渡18:刀尖半径补偿时拐角特性模态有效G451等距线的交点BRISK轨迹跳跃加速21:加速度特性模态有效SOFT*轨迹平滑加速FFOWF预控关闭预控模态有效FFOWN*预控打开WALIMON*工作区域限制生效工作区域限制模态有效适用于所有轴,通过设定数据激活;值通过G25,G26设置WALIMOF工作区域限制取消G920*西门子方式其它NC语言G921其它方式模态有效带* 的功能在程序启动时生效(如果没有编程新的内容,指用于“铣削” 时的系统变量).HH0=T0H9999H功能±0.000001…9999.9999(8个十进制数据位)或使用指数形式用于传送到PLC的数值,其定义由机床制造厂家确定。
H0=… H9999=…e.g.H7=23.456I插补参数±0.001…99999.999螺纹: 0.001…。