
数控车床宏程序专训.ppt
23页数控车床宏程序,参数编程 GSK980TA,宏指令,宏指令类似于高级语言,用户通过宏指令实现变量赋值、加减运算、逻辑判断及条件转移,有利于编制特殊零件的加工程序,减少繁琐数值计算,简化程序宏变量的种类,1、公用宏变量#200~#231 公用宏变量在所有的用户程序中是公用的,即在程序1 中定义的宏变量同样适用于程序2 或程序3,等等; GSK980TA 系统没有规定公用宏变量的用途,用户可以自由使用; 公用宏变量#200~#231的值断电不保存,通电是时全为0;,宏变量的种类,2、系统宏变量 有接口输入信号#1000~#1015; 有接口输出信号#1100~#1107; 系统宏变量的值只能为0或1,其用途在系统中是固定的; 系统读取宏变量#1000~#1015对应的16个输入接口的信号状态,在系统内部自动赋给宏变量#1000~#1015;这16个值可与判断跳转的宏指令一起使用,可作各种处理; 接口输出信号#1100~#1107通过宏指令赋值而输出0或1,以改变输出信号的状态;,宏变量的定义,,,DGN.000,DGN.001,DGN.002,宏变量的定义,DGN.005,宏变量的使用,1、宏变量的表示: 用”#“+宏变量号来表示 格式:#i 其中i 为宏变量号,即i为200~231、1000~1015或1100~1107,宏变量的引用,2、宏变量的引用: (1)宏变量可以置换指令值,如: F#203 当#203=5时,与F5指令功能相同 Z-#210 当#210 =250时,与Z-250指令功能相同 G#230 当#230=3时,与G3指令功能相同 (2)宏变量也可以置换宏变量值 格式: #+9+宏变量号 如:若#200=205,#205=500,则 X#9200与X500指令功能相同(#9200=#205) X-#9200与X-500指令功能相同,宏变量引用的注意事项,指令地址O和N不能引用宏变量 如果宏变量值超过了指令值的最大范围,不能引用 如#230=120,M#230超过了最大指令值 宏变量名不含小数点,各宏变量值所表示的意义同用各指令地址不带小数点所表示的意义相同: 如#200=10,则Z#100表示此时Z向绝对坐标为0.01mm,G65(运算命令和转移命令),一般格式: G65 Hm P#i ; G65 Hm P#i Q#j ; G65 Hm P#i Q#j R#k; 其中: Hm:运算符(运算命令和转移命令),m取值为01~99 #i:存入运算结果的宏变量名,可以是整常数(n) #j:进行运算的宏变量名1,可以是整常数 #k:进行运算的宏变量名2,可以是整常数 #i 、#j 、#k为整常数时,不带#号,运算符,赋值运算,指令格式:G65 H01 P#i Q#j; 指令功能: #i =#j 如 G65 H01 P#201 Q1005; (#201=1005) G65 H01 P#201 Q#210; (#201=#210) G65 H01 P#201 Q-#202;( #201=-#202),加、减法运算,指令格式:G65 H02 P#i Q#j R#k; 指令功能:#i=#j+#k 如G65 H02 P#201 Q#202 R15; (#201=#202+15) 指令格式:G65 H03 P#i Q#j R#k; 指令功能:#i=#j -#k 如G65 H03 P#201 Q#202 R#203;(#201=#202-#203) 运算中,Q、R没被指定时,其值将默认为零进行运算。
运算中,小数部分全部舍去无条件转移,指令格式:G65 H80 Pn; 指令功能:转向程序段号为n的程序段 如G65 H80 P120; (转向程序段号为120的程序段),条件转移1,指令格式:G65 H81 Pn Q#j R#k; 指令功能:当#j=#k时,转向程序段号为n的程序段,否则顺序执行 如: G65 H81 P1000 Q#201 R#202; 当#201=#202时,转向程序段号为1000的程序段,否则顺序执行,条件转移2,指令格式:G65 H82 Pn Q#j R#k; 指令功能:当#j≠#k时,转向程序段号为n的程序段,否则顺序执行 如: G65 H82 P1000 Q#201 R#202; 当#201≠#202时,转向程序段号为1000的程序段,否则顺序执行,条件转移3,指令格式:G65 H83 Pn Q#j R#k; 指令功能:当#j>#k时,转向程序段号为n的程序段,否则顺序执行 如: G65 H83 P1000 Q#201 R#202; 当#201>#202时,转向程序段号为1000的程序段,否则顺序执行,条件转移4,指令格式:G65 H84 Pn Q#j R#k; 指令功能:当#j<#k时,转向程序段号为n的程序段,否则顺序执行 如: G65 H84 P1000 Q#201 R#202; 当#201<#202时,转向程序段号为1000的程序段,否则顺序执行,条件转移5,指令格式:G65 H85 Pn Q#j R#k; 指令功能:当#j≥#k时,转向程序段号为n的程序段,否则顺序执行 如: G65 H85 P1000 Q#201 R#202; 当#201≥#202时,转向程序段号为1000的程序段,否则顺序执行,条件转移6,指令格式:G65 H86 Pn Q#j R#k; 指令功能:当#j≤#k时,转向程序段号为n的程序段,否则顺序执行 如: G65 H86 P1000 Q#201 R#202; 当#201≤#202时,转向程序段号为1000的程序段,否则顺序执行,产生P/S报警,指令格式:G65 H99 Pn; 指令功能:产生P/S(500+n)号报警 如G65 H99 P15; (产生P/S 515 号报警),注意事项,在转移指令中,先从当前程序段往下检索转移程序段号,若未检索到,则从程序开头往下检索,若仍未检索到,则产生报警; 宏变量值在-232~232-1的范围内,但只能显示-9999999 ~ 9999999,超过上述范围,显示********; 宏变量值只取整数;在运算结果出现小数时,小数部分舍去。
