980TDb宏程序

合集下载

广数980TD操作手册(终极版)

广数980TD操作手册(终极版)

目录第一章操作面板 (5)1.1面板划分区 (6)1.2 面板功能说明 (6)1.2.1 LCD(液晶)显示区 (6)1.2.1.1 LCD (6)1.2.1.2 液晶画面的亮度调整 (6)1.2.2 状态指示区 (7)1.2.3 编辑键盘区 (7)1.2.4 页面显示方式区 (8)1.2.5 机床控制区 (9)1.2.6 附加面板(选配件) (10)第二章页面显示及数据的修改与设置 (10)2.1 位置显示 (10)2.1.1 位置页面显示的四种方式 (10)2.1.2 加工时间、零件数、编程速度、倍率及实际速度等信息的显示 (12)2.1.3相对坐标清零 (13)2.2 程序显示 (15)2.3 偏置显示、修改与设置 (16)2.3.1 偏置显示 (16)2.3.2 偏置值的修改、设置 (18)2.3.2.1刀偏修改与设定 (18)2.3.2.2宏变量修改与设定 (18)2.4 报警显示 (18)2.5 设置显示 (19)2.5.1 开关设置 (19)2.5.2 图形功能 (25)2.6 参数显示、修改与设置 (26)2.6.1 参数显示 (26)2.6.2 参数的修改与设置 (28)2.7 诊断显示 (29)2.7.1 诊断数据显示 (29)2.7.2 机床面板(软键盘机床面板) (30)2.7.3PLC信号状态 (31)2.7.4 PLC数值诊断 (32)2.7.5 系统版本信息 (34)第三章系统上电、关机及安全操作 (35)3.1 系统上电 (35)3.2 关机 (35)3.3 安全操作 (36)3.3.1 复位操作 (36)3.3.2 急停 (36)3.3.3进给保持 (37)3.3.4 切断电源 (37)3.4 循环启动与进给保持 (37)3.5 超程防护 (38)3.5.2 软件超程防护 (38)3.5.3 超程报警的解除 (39)第四章手动操作 (39)4.1 坐标轴移动 (39)4.1.1 手动进给 (40)4.1.2 手动快速移动 (40)4.1.3 手动进给及手动快速移动速度选择 (40)4.2 主轴控制 (41)4.2.1 主轴正转 (41)4.2.2 主轴反转 (41)4.2.3 主轴停止 (42)4.2.4 主轴点动 (42)4.3 其他手动操作 (42)4.3.1 冷却液控制 (42)4.3.2 润滑控制 (42)4.3.3 手动换刀 (42)4.4 对刀操作 (42)4.4.1 定点对刀 (43)4.4.2 试切对刀 (43)4.4.3 回机械零点对刀 (45)4.4.4 带刀补对刀 (46)4.5 刀补值的修调 (46)第五章自动操作 (47)5.1 自动运行 (47)5.1.1 自动运行程序的选择 (47)5.1.2 自动运行的启动 (48)5.1.3 自动运行的停止 (48)5.1.4 从任意段自动运行 (49)5.1.5 暂停或进给保持后的运行 (49)5.1.6 空运行 (49)5.1.7 单段运行 (50)5.1.8 全轴功能锁住运行 (50)5.1.9 辅助功能锁住运行 (50)5.1.10 自动运行中的进给、快速速度修调 (51)5.1.11 自动运行中的主轴速度修调 (51)5.1.12 自动运行中的冷却液控制 (52)5.2 MDI运行 (52)5.2.1 MDI指令段输入 (52)5.2.2 MDI指令段运行与停止 (54)5.2.3 MDI指令段字段值修改与清除 (54)5.2.4 MDI指令段运行时速度修调 (54)第六章手轮/单步操作 (55)6.1 单步进给 (55)6.1.1 移动量的选择 (56)6.1.2 移动轴及移动方向的选择 (56)6.1.3 单步进给说明事项 (56)6.2 手轮进给 (56)6.2.1 移动量的选择 (57)6.2.3 手轮进给说明事项 (58)6.3 手轮/单步操作时辅助的控制 (58)第七章回零操作 (59)7.1 程序回零 (59)7.1.1 程序零点概念 (59)7.1.2 程序回零的操作步骤 (60)7.2 机械回零 (60)7.2.1 机械零点概念 (60)7.2.2 机械回零的操作步骤 (61)7.3 回零方式下的其它操作 (61)第八章程序编辑与管理 (62)8.1 程序的编辑 (62)8.1.1 程序的建立 (63)8.1.1.1 顺序号的自动生成 (63)8.1.1.2 程序内容的输入 (63)8.1.1.3 顺序号、字的检索 (65)8.1.1.4 光标的几种定位方法 (66)8.1.1.5 字的插入,删除、修改 (67)8.1.1.6 单个程序段的删除 (67)8.1.1.7 多个程序段的删除 (68)8.1.2 单个程序的删除 (68)8.1.3 全部程序的删除 (68)8.1.4 程序的选择 (68)8.1.5程序的复制 (69)8.1.6 程序的改名 (69)8.1.7 程序的检索 (70)8.2 程序管理 (70)8.2.1 程序目录的检索 (70)8.2.2 存储程序的数量 (70)8.2.3 存储容量 (70)8.2.4程序列表的查看 (71)8.2.5 程序的锁住 (71)第九章通讯 (72)9.1 通讯软件的安装 (72)9.2 通讯软件的操作 (72)9.3 串行口的设置 (72)9.4 CNC对PC机数据的接收(PC→CNC) (73)9.5 CNC数据对PC机的传送(CNC→PC) (73)9.5.1 CNC单个程序对PC机的传送 (73)9.5.2 全部程序的输出 (73)9.5.3 刀补的输出 (74)9.5.4 螺补的输出 (74)9.5.5 参数的输出 (74)9.6 CNC对CNC数据的接收(CNC→CNC) (74)9.7 CNC对CNC数据的发送(CNC→CNC) (75)9.7.1 单个程序的输出 (75)9.7.3 刀补的输出 (76)9.7.4 螺补的输出 (76)9.7.5 参数的输出 (76)9.8 通讯说明 (76)9.8.1设备连接方式 (76)9.8.2 通信前准备工作 (77)9.8.3 通信过程中的状态显示 (77)第十章记忆型螺矩误差补偿功能(选配) (78)10.1 功能说明 (78)10.2规格说明 (78)10.3 参数设定 (78)10.3.1 螺距误差补偿倍率 (78)10.3.2 螺距误差参考点(原点) (79)10.3.3 设定补偿间隔 (79)10.3.4 设定补偿量 (79)10.4 各种参数设定例子 (79)10.5 补偿量的设定方法 (81)第十一章编程操作实例 (82)第十二章机床调试 (93)12.1电源接通前的准备工作 (93)12.2 急停与限位 (93)12.3 驱动器设置 (93)12.4 齿轮比调整 (94)12.5 加减速特性调整 (95)12.6机械零点调整 (96)12.7 主轴功能调整 (98)12.7.1 主轴编码器 (98)12.7.2 主轴制动 (98)12.7.3 主轴转速开关量控制 (98)12.6.4 主轴转速模拟电压控制 (99)12.8 反向间隙补偿 (99)12.9 刀架调试 (100)12.10 单步/手轮调整 (101)12.11 其它调整 (101)附录一980TD参数一览表 (103)状态参数 (103)数据参数 (111)附录二出厂参数表 (124)附录三报警表 (128)附录四补充说明 (131)第一章操作面板本系统采用铝合金立体操作面板,面板的整体外观如下图所示:1.1面板划分980TD车床数控系统具有集成式操作面板,共分为LCD(液晶显示)区、编辑键盘区、页面显示方式区和机床控制显示区等几大区域,如下图所示:1.2 面板功能说明1.2.1 LCD(液晶)显示区1.2.1.1LCD本系统的显示区采用320×240点阵式蓝底液晶(LCD),CCFL背光。

基于GSK980TD数控系统的用户宏程序编制技巧

基于GSK980TD数控系统的用户宏程序编制技巧
G 5 H3P 2 4Q 0 0 #0 6 #0 9000 0 R 2 3; ( 计算 z向坐标值 中间变量 , 24= 0 0 # 0 9000 一 0
X " 25 0) 2 2 0 G 5 H2 6 1脚 2 5 Q 2 : o # 0 4
( 计算 z向坐标值中间变量 ,
+ =l ( 。>6>0),
参数方程为
f= c . 口o s
1 n ’ y s b i
图 lb 中椭 圆焦点在 Y轴上 , () 标准方程为
管+ = ( 6o 等 l 口 >) > ;
参数方程为
f = bC S O
1 椭 圆标准 方程与参数 方程分析
N 0 G 5 H # 0 # o 2 0 ; 2 6 4 P 2 1Q 2 o R 0 0
对于椭圆轮廓 的数控车加工, 归纳起来 , 以下 有 4种 情况 , 图 3中所 示 。 如


( 计算 向坐标值 , 半径量乘 2单位为 0 0 l ) , . 1' 0 nn l



计算实得值为 5. 3 。。 1
33 程序 仿 真 加 工效 果 图 .
参数方程是
f 3 O = 0C S
根据 图 中的椭 圆轮廓 , 以参考程序进行仿真 加工和实际加工 , 效果 良好。仿真加工图如 6 所示。
l: 0i 2 n s
3 1 粗加 工程 序 段 的宏 程序 编 写技 巧 .
在粗车加工循环程序中 , 采取标准方程进行编 程, 、 用 z距离增量修调方式进行循环切削。将
斋 + 1化 : 斋 简
4 0 Z 9 0 X 6 0 0 0 =3 0 0 0
Z = 9 0 —2.5 X 0 2

广数980TDb一些代码.

广数980TDb一些代码.

广数980系列TA/TD循环指令单一固定循环指令((在固定循环指令程序段中,定位一定要明确。

一般外圆定位要比需要车削的尺寸大,内圆要比尺寸小。

总的来说就是每一次循环车刀都会返回起点))端面单一固定循环(径向)(也可以端面内孔)G94 X(U)-----Z(W)-----R FX切削终点X绝对坐标值,U X轴切削终点相对起点的差值Z切削终点Z轴的绝对坐标值W切削终点与起点的差值R起点与终点之差值,当R与U符号不同时;要求R小于或等于WF切削速度G94可以用于单一的切槽循环,注意;如果用于切槽循环第一刀必须用G1指令先走一刀这样才可以让G94退刀内外圆单一固定循环(轴向)G90 X(U)-----Z(W)-----R FX切削终点X绝对坐标值,U X轴切削终点相对起点的差值Z切削终点Z轴的绝对坐标值W切削终点与起点的差值R切削起点与终点半径之差(半径值)当R等于0时,进行圆柱切削,R与U的符号不一致时,要求R 小于或等于U的一半F切削速度复合型固定循环指令精车加工循环(轴向)G70 P--------Q------P构成精加工第一程序段号,如果没有自动生成程序段号的,可以手动添加,比如(N10)Q精加工最后一个程序段号,同上可以手动添加比如(N20)注意;G70定位要和G71一致,而且外圆定位要比工件大,内孔要比工件小。

内外圆粗车循环(轴向)G71 U(1)R FG71 P Q U(2) W S TU(1)轴向(X)进刀深度,也就是每一刀吃刀量R(X)轴每次退刀量F切削深度P第一个精加工程序段的程序段号Q精加工最后程序的程序段号U(2)(X)轴的精加工余量W(Z)轴的精加工余量S主轴转速T执行本段G71程序段的刀具号注意;G71在编写精加工程序的时候,第一段不能带Z,只能有X,比如;N1 G0X-0.38,这一项中不能带Z,如果有Z会报警(定位外圆比工件大,内孔比工件小)广数928TE/TC 的外圆粗车循环和980其他都不一样,其格式G71 X(U)I K L FX(U) 精加工轮廓X轴起点的坐标值I X方向每次进刀量,直径表示,没有符号K x轴每次退刀量直径表示,没有符号L描述最终轨迹的程序段数量,(不包括自身)F切削速度端面粗车循环(径向)G72 W(1)R FG72 P Q U W(2) S TW(1) (Z)轴每次进刀量R(Z)每次退刀量F切削速度P第一个精加工程序段的程序段号Q精加工最后程序的程序段号U(X)轴的精加工余量W(2)(Z)轴的精加工余量S主轴转速T执行本段G71程序段的刀具号封闭切削循环(轴向)G73 U1W(1) RG73 P Q U2 W(2) S F T利用该循环指令可以按P Q 给出的同一轨迹进行重复切削,每次切削刀具向前移动一次,因此对于锻造塑造初步形成的毛坯可以高效率加工第一个U,是指毛坯直径到精加工直径的差除2,也就是半径差.第2行的U是指精加工时的余量直径值,U1 (X)方向粗车退刀距离及方向,半径表示,也可以参数(NO;053)设定,U执行后,下次指定前保持有效,并将参数(NO;053)的值修改为U乘1000,单位0.001mm,该值缺省输入时,以(NO;053)值作为X轴粗车退刀量,W(1)(Z)方向粗车退刀距离及方向,也可以参数(NO;054)设定,U执行后,下次指定前保持有效,并将参数(NO;054)的值修改为W乘1000,单位0.001mm,该值缺省输入时,以(NO;054)值作为Z轴粗车退刀量R封闭切削的次数,单位(次),也可以由参数(NO;055)指定,R执行后,下次指定前保持有效,并将参数(NO;055)修改当前值,该值缺省输入时,以(NO;055)值为切削次数,P第一个精加工程序段的程序段号Q精加工最后程序的程序段号U2(X)轴的精加工余量W(2)(Z)轴的精加工余量S主轴转速T执行本段G73程序段的刀具号F切削速度端面深孔固定循环(轴向)G74 R(1)G74X Z P Q R(2) FR(1)每次沿轴向(Z)切削后的退刀量,单位mm没有符号,该值也可以由参数(NO;056)设定单位0.001, R 指定后,下次执行保持有效,并将参数(NO;056)的值修改为R乘1000,(单位0,.001),该值缺省输入时,以(NO;056)值为轴向退刀量X切削终点X方向绝对坐标值,半径表示,U(X)方向上,切削终点与起点的绝对坐标的差值,半径表示Z切削终点Z方向的绝对坐标值,W(Z)方向上切削终点与起点的绝对坐标的差值,P(X)方向每次循环的切削量,单位0。

GSK980TD数控系统宏程序粗精车加工椭圆实例

GSK980TD数控系统宏程序粗精车加工椭圆实例

宏程序粗精车椭圆以上是车削好的实物图加工图加工椭圆的宏程序如下(椭圆长半轴为40mm, 短半轴为24mm.)O0143 (O0143)G99 G96 M3 S150 T0101G50 S850G0 X52.0 Z41.0 (定位到工件端面1mm处)#1=38.496 (变量设定)N1 #3=0 (角度变量设定为0.)N2 #5=2*(24*SIN#3) (短半轴计算坐标尺寸)#5=#5+#1 (把X0.0偏移到38.496处)#6=40*COS#3 (长半轴计算坐标尺寸)#7=#6G1 X#5 Z#7 F0.32 (椭圆切削)#3=#3+5 (角度变量每次加5度)IF(#3LE120)GOTO2(如果条件达不到120度重头开始,达到120度执行下面程序)G2 U8.44 W-3.11 R3.26 F0.2 (切削R3.26)G0 X55.0 Z45.0X#1G1 Z40.0 F0.2#1=#1-3.8 (38.496每次减3.8mm)IF(#1GE0.496)GOTO1 (如果条件达不到0.496mm重头开始,达到0.496mm执行下面程序)G0 X200.0 Z100.0 (以上是粗车椭圆)T0101 (以下是精车椭圆)G0 X0.0 Z42.0G1 Z40.0 F0.2#8=0N4 #10=2*(24*SIN#8)#12=40*COS#8G1 X#10 Z#12 F0.32#8=#8+0.215IF(#8LE120)GOTO4G2 U8.44 W-3.11 R3.26 F0.2G0 X200 Z100M30(注:对刀零点是以椭圆中心为零点)此程序适用于GSK980TDa, GSK980TDb系统版本。

如想用于GSK980TD系统版本的,只要把变量(例如#1等)改成G65 H_ P_Q_R_就可以了。

(完整版)广州数控980TD数控车床操作编程说明书

(完整版)广州数控980TD数控车床操作编程说明书

广州数控980TD编程操作说明书第一篇编程说明第一章:编程基础1.1GSK980TD简介广州数控研制的新一代普及型车床CNC GSK980TD是GSK980TA的升级产品,采用了32位高性能CPU和超大规模可编程器件FPGA,运用实时多任务控制技术和硬件插补技术,实现μm级精度运动控制和PLC逻辑控制。

技术规格一览表运动控制控制轴:2轴(X、Z);同时控制轴(插补轴):2轴(X、Z)插补功能:X、Z二轴直线、圆弧插补位置指令范围:-9999.999~9999.999mm;最小指令单位:0.001mm电子齿轮:指令倍乘系数1~255,指令分频系数1~255快速移动速度:最高16000mm/分钟(可选配30000mm/分钟)快速倍率:F0、25%、50%、100%四级实时调节切削进给速度:最高8000mm/分钟(可选配15000mm/分钟)或500mm/转(每转进给)进给倍率:0~150%十六级实时调节手动进给速度:0~1260mm/分钟十六级实时调节手轮进给:0.001、0.01、0.1mm三档加减速:快速移动采用S型加减速,切削进给采用指数型加减速G指令28种G指令:G00、G01、G02、G03、G04、G28、G32、G33、G34、G40、G41、G42、G50、G65、G70、G71、G72、G73、G74、G75、G76、G90、G92、G94、G96、G97、G98、G99,宏指令G65可完成27种算术、逻辑运算及跳转螺纹加工攻丝功能;单头/多头公英制直螺纹、锥螺纹、端面螺纹;变螺距螺纹。

螺纹退尾长度、角度和速度特性可设定,高速退尾处理;螺纹螺距:0.001~500mm或0.06~25400牙/英寸主轴编码器:编码器线数可设定(100~5000p/r)编码器与主轴的传动比:(1~255):(1~255)精度补偿反向间隙补偿:(X、Z轴)0~2.000mm螺距误差补偿:X、Z轴各255个补偿点,每点补偿量:±0.255mm×补偿倍率刀具补偿:32组刀具长度补偿、刀尖半径补偿(补偿方式C)对刀方式:定点对刀、试切对刀刀补执行方式:移动刀具执行刀补、坐标偏移执行刀补M 指令特殊M指令(不可重定义):M02、M30、M98、M99、M9000~M9999其它M□□指令由PLC程序定义、处理标准PLC程序已定义的M指令:M00、M03、M04、M05、M08、M09、M10、M11、M12、M13、M32、M33、M41、M42、M43、M44T 指令最多32个刀位(T01□□~T32□□),换刀控制时序由PLC程序实现。

(完整版)广州数控980TD数控车床操作编程说明书

(完整版)广州数控980TD数控车床操作编程说明书

广州数控980TD 编程操作说明书第一篇 编程说明第一章:编程基础1.1 GSK980TD 简介广州数控研制的新一代普及型车床CNC GSK980TD 是GSK980TA 的升级产品,采用了32位高性能CPU 和超大规模可编程器件FPGA ,运用实时多任务控制技术和硬件插补技术,实现μm 级精度运动控制和PLC 逻辑控制。

技术规格一览表运动控制 控制轴:2轴(X 、Z );同时控制轴(插补轴):2轴(X 、Z )插补功能:X 、Z 二轴直线、圆弧插补位置指令范围:-9999.999~9999.999mm ;最小指令1.2 机床数控系统和数控机床数控机床是由机床数控系统(Numerical Control Systems of machine tools)、机械、电气控制、液压、气动、润滑、冷却等子系统(部件)构成的机电一体化产品,机床数控系统是数控机床的控制核心。

机控系统由控制装置(Computer Numerical Controler简称CNC)、伺服(或步进)电机驱动单元、伺服(或步进)电机等构成。

数控机床的工作原理:根据加工工艺要求编写加工程序(以下简称程序)并输入CNC,CNC加工程序向伺服(或步进)电机驱动单元发出运动控制指令,伺服(或步进)电机通过机械传动构完成机床的进给运程序中的主轴起停、刀具选择、冷却、润滑等逻辑控制指令由CNC传送给机床电气控制系统,由机床电气控制系统完成按钮、开关、指示灯、继电器、接触器等输入输出器件的控制。

目前,机床电气控制通常采用可编程逻辑控制器(Programable Logic Controler 简称PLC),PLC具有体积小、应用方便、可靠性高等优点。

由此可见,运动控制和逻辑控制是数控机床的主要控制任务。

GSK980TD车床CNC同时具备运动控制和逻辑控制功能,可完成数控车床的二轴运动控制,还具有内置式PLC功能。

根据机床的输入、输出控制要求编写PLC程序(梯形图)并下载到GSK980TD,就能实现所需的机床电气控制要求,方便了机床电气设计,也降低了数控机床成本。

广州数控980TD数控车床操作编程说明书

广州数控980TD数控车床操作编程说明书

广州数控980TD编程操作说明书第一篇编程说明第一章:编程基础1.1GSK980TD简介广州数控研制的新一代普及型车床CNC GSK980TD是GSK980TA的升级产品,采用了32位高性能CPU和超大规模可编程器件FPGA,运用实时多任务控制技术和硬件插补技术,实现μm级精度运动控制和PLC逻辑控制。

技术规格一览表1.2 机床数控系统和数控机床数控机床是由机床数控系统(Numerical Control Systems of machine tools)、机械、电气控制、液压、气动、润滑、冷却等子系统(部件)构成的机电一体化产品,机床数控系统是数控机床的控制核心。

机控系统由控制装置(Computer Numerical Controler简称CNC)、伺服(或步进)电机驱动单元、伺服(或步进)电机等构成。

数控机床的工作原理:根据加工工艺要求编写加工程序(以下简称程序)并输入CNC,CNC加工程序向伺服(或步进)电机驱动单元发出运动控制指令,伺服(或步进)电机通过机械传动构完成机床的进给运程序中的主轴起停、刀具选择、冷却、润滑等逻辑控制指令由CNC传送给机床电气控制系统,由机床电气控制系统完成按钮、开关、指示灯、继电器、接触器等输入输出器件的控制。

目前,机床电气控制通常采用可编程逻辑控制器(Programable Logic Controler 简称PLC),PLC具有体积小、应用方便、可靠性高等优点。

由此可见,运动控制和逻辑控制是数控机床的主要控制任务。

GSK980TD车床CNC同时具备运动控制和逻辑控制功能,可完成数控车床的二轴运动控制,还具有内置式PLC功能。

根据机床的输入、输出控制要求编写PLC程序(梯形图)并下载到GSK980TD,就能实现所需的机床电气控制要求,方便了机床电气设计,也降低了数控机床成本。

实现GSK980TD车床CNC控制功能的软件分为系统软件(以下简称NC)和PLC软件(以下简称PLC)二个模块,NC模块完成显示、通讯、编辑、译码、插补、加减速等控制,PLC模块完成梯形图解释、执行和输入输出处理。

GSK980TD系统数控车床宏程序的使用

GSK980TD系统数控车床宏程序的使用

GSK980TD系统数控车床宏程序的使用作者:陈春荣来源:《价值工程》2011年第15期The Use of Macro in GSK980TD System CNC LathesChen Chunrong(Jiandong Vocational Technology College,Changzhou 213022,China)摘要:在现今的数控系统中,常见的插补运算方法是直线插补和圆弧插补。

椭圆的加工,运用宏程序来解决就非常简单了。

我院大量使用广州数控的GSK980TD系统,本文介绍了在该系统车床中如何用宏程序手工编程来实现椭圆形工件的加工。

Abstract: In today's numerical system, its common computational method of interpolation is linear interpolation and circular interpolation. For the elliptical processing, it is very simple to use macro programs. Our college widely used GSK980TD system of Guangzhou NC, and this paper described how to use macro system to achieve elliptical processing in this lathe.关键词:GSK980TD数控车床宏程序椭圆加工程序Key words: GSK980TD CNC lathe;macro;elliptical processing中图分类号:TP2文献标识码:A文章编号:1006-4311(2011)15-0048-010引言用户宏程序分为A、B两类。

GSK980TD数控车床中,使用的是A类宏程序。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

可以的,它有A类和B类宏程序的功能。

不过它的宏程序功能和法拉克比还是差一些。

它不能进行直接的运算比如G0 z[#100+#102]它这个是执行不了的,需要提前把这个结果运算出来。

比如#103=#100+#102;后G0z#103数控车床宏程序与数控车模拟精灵《二》FANUC B类宏程序与GSK980TDb的语句式宏代码本文介绍FANUC B类宏程序(FANUC Oi系列)及GSK980TDb的语句式宏代码;这类宏程序的表达方式更为灵活并且直观:使用人们所熟悉的等号(=)与加减乘除(+-*/)等运算符组成表达式直接给变量赋值;在条件表达式中使用英文单词缩写GE、GT、LE、LT。

EQ、NE来表示大于等于、大于、小于等于、小于、等于、不等于;使用英语单词IF、WHILE 来表示条件与循环;(一)关于变量、变量赋值与表达式变量代号还是用#***来表示一个变量,980TDb 的公用变量使用范围是:#100-#199,#500-#999(前者为失电不保持,后者为失电保持,);局部变量范围是#1-#33。

FANUC Oi 系列的变量范围与此相同。

(数控车模拟精灵只使用#0-#199号变量;大于199号的变量不支持,并且不区分局部变量或公共变量)当用变量值来表示坐标时,均以毫米为单位,表示角度则以度为单位。

FANUC Oi系列宏程序及GSK980TDb的语句式宏代码可以直接使用常数通过等号“=”给变量赋值,也可以使用表达式给变量赋值,表达式中可以使用以下各项的组合:宏变量、函数、常数、加减乘除(+-*/)运算符、括号;计算规则符合人们熟悉的数学计算规则(例如先括号内后括号外,先乘除后加减等)。

(二)函数:FANUC Oi 及GSK980TDb支持的函数达十多个,但常用的不多,数控车模拟精灵只对其中常用的一些函数给予支持:三角函数:正弦SIN、余弦COS、正切TAN、反正切ATAN;开平方:SQRT函数的自变量可以是常数、已赋值的宏变量或表达式,自变量可用方括号[ ]括住。

(三)条件转移:(IF [条件表达式] GOTOn 及IF [条件表达式] THEN)IF [条件表达式] GOTOn条件表达式比较结果为真(满足条件),则跳转到目标程序段(以n为程序段号的程序段)运行,条件表达式比较结果为假(不能满足条件),则按正常顺序往下运行。

也可以是单纯的GOTOn,则为无条件转移,即无条件跳转到以n为程序段号的程序段。

IF [条件表达式] THEN跟在IF后面的是一个宏语句(一般是一个宏变量赋值语句),条件表达式比较结果为真(满足条件),则执行这个宏语句,否则,不执行这个宏语句。

(四)循环(WHILE [条件表达式] DOn………ENDn)条件表达式比较结果为真(满足条件)时,循环执行DOn至ENDn之间的程序段;条件表达式比较结果为假(不能满足条件),执行ENDn后面的程序段。

循环开始语句WHILE [条件表达式] DOn及其对应的循环结束语句ENDn,组成了一个完整的循环体,n值可取1、2或3;但同一个循环体开始句的n与结束句的n必须相同;循环体可以嵌套,数控车模拟精灵只支持双重WHILE嵌套,n值可取1、2。

(五)条件表达式上述条件转移及循环中的条件表达式指使用条件比较运算符来比较二个表达式(或变量、常数)的大小关系;FANUC Oi系列及GSK980TDb宏程序的条件比较运算符有:EQ(等于)、NE(不等于)、GT(大于)、GE(大于等于)、LT(小于)、LE(小于等于)。

(六)用《数控车模拟精灵》调试宏程序时应注意:1)模拟精灵只使用#0-#199号变量;大于199号的变量不支持,并且不区分局部变量或公共变量。

(模拟精灵处理G65 H**类型的A类宏程序,变量编号方法与此不同,因为模拟精灵必须照顾早期版本GSK980系统的A类宏程序)2)程序段中的指令字地址可以用宏变量来设置其数值,但本模拟精灵仅限于给坐标地址(X、Z、U、W);园弧半径(R);进刀量或螺纹导程(F、I)提供数值,其他功能如:用变量置换变量号,置换G代码后面的其他的数值等,一般编程中不大可能用到,本软件未作考虑。

3)表达式输入时,整个表达式应视作一个整体,中间不应有空格;但条件表达式的条件比较运算符左右应各有一个空格(即条件表达式视作三个部分:左边是被比较的表达式或变量,中间是比较运算符,右边是用来比较的表达式或变量或常数)4)FANUC Oi系列的条件表达式还允许使用“复合条件表达式”,即使用逻辑运算符AND、OR等把多个条件表达式连接起来计算;这种情况实用中很少碰到,所以《数控车模拟精灵》不支持“复合条件表达式”。

(七)一个应用实例:使用双层WHILE实现内孔切深槽:内孔切深槽是比较困难的操作,一方面切槽刀宽度都比较小,稍宽些的槽都需要在Z方向分几次切出;另一方面X方向槽的深度如果比较深的话,还不能一次就切到槽深,因为排屑困难等因素,一次切到槽深很可能引起刀具损坏,为了保护刀具,必须实行分层多次切削;下面的程序使用了双层WHILE循环,外层循环控制X,决定每层切深,内层循环控制Z,决定每次切入的Z位置。

/内孔切深槽D150 L190 孔D80M03 S800 T0101G00 X75 Z2G99 G90 X80 Z-185 F0.2G90 X90 Z-192#150=90 开始X#151=130 终点X#152=9 X方向每次切深#153=-50 开始Z#154=-80 终点Z#155=2.8 Z方向每次移过#156=3 槽刀宽G00 X82 Z50T0202G00 X82 Z50 注意由于二把刀的不同刀补值,无此段则极有可能撞刀。

#160=#150-2#161=#150 外层循环的累加变量初始值“预缩小”,保证循环中“先累加后执行”#163=#153-#156 内层循环的累加变量初始值直接达切削位置,循环中“先执行后累加”#157=#153-#156G00 X#160 Z#157WHILE [#161 LT #151] DO1#160=#161-2#161=#161+#152IF #161 GT #151 THEN #161=#151WHILE [#163 GT [#154-#155]] DO2注意此时#163值未修理,最后一次可能等于#154,更可能在#154之左(小于#154),但不可能在#154之左超过一个步长。

IF #163 LT #154 THEN #163=#154 在此修正#163值,才能避免死循环。

G00 Z#163G01 X#161 F0.05G00 X#160#163=#163-#155END2G00 Z#157#163=#157END1G00 X80G00 Z70M30程序说明:输入变量(根据图纸及工艺要求输入的变量):#150-开始X;#151-结束X;#152-X方向每次切深;#153-开始Z;#154-终点Z;#155-Z方向每次移动量;#156-槽刀宽计算变量(由程序计算的变量,用户不必输入变量的值):#157-每层切削开始时Z的位置;#157=#153-#156#161-当前X切到;#161=#161+#152,(这是个累加变量,每层切好后,累加一次,用来控制每层X方向的位置。

)#160-当前X切到+2,下一层的刀位置;#163-当前Z切到:#163=#163-#155;(这也是个累加变量,每次往X方向切好一刀后,累加一次,用来控制下一刀的Z方向位置。

)注意Z方向与X方向的每次移动量(步长)由#155、#152设定,通过累加步长来决定刀具当前位置,但最后一刀需要按图纸尺寸要求作调整(因为如按固定步长移动刀具,则刀具的最后位置不大可能刚好与图纸尺寸相符);X方向使用:IF #161 GT #151 THEN #161=#151在外层循环中控制X方向的最后位置;Z方向则稍复杂一点,在内层循环中:先在END2前用正常累加#163=#163-#155取得下一次的Z位置,在Z方向接近最后位置的情况下,#163可能刚好等于Z的最后位置#154,但更可能的是超过#154(Z的负方向超过,因此是小于#154);然后,程序转入WHILE的条件判断:[#163 GT [#154-#155]],注意条件中把Z的最后位置#154再向左减去一个步长,作为#163的比较条件,因此何论#163此时正好等于#154,还是#163已经小于#154(但小于量不超过一个步长),条件都可满足,用IF #163 LT #154 THEN #163=#154来控制Z方向的最后位置;使用模拟精灵运行本程序时请把1号刀设为90度内孔刀,2号刀设为内孔切槽刀,孔加工刀具长度设为250,内孔切槽刀深24;1号刀的安装位置取:轴向(Z方向)伸出200;径向(X方向)伸出-15,2号刀的安装位置取:轴向(Z方向)伸出150;径向(X方向)伸出-27;机床设置请选GSK980。

为便于直接把程序复制粘贴到数控车模拟精灵中演示,下面把去除汉字说明后的程序再抄录如下:M03 S800 T0101G00 X75 Z2G99 G90 X90 Z-192 F0.2#150=90#151=130#152=9#153=-50#154=-80#155=2.8#156=3G00 X82 Z50T0202G00 X82 Z50#160=#150-2#161=#150#163=#153-#156#157=#153-#156G00 X#160 Z#157WHILE [#161 LT #151] DO1#160=#161-2#161=#161+#152IF #161 GT #151 THEN #161=#151WHILE [#163 GT [#154-#155]] DO2IF #163 LT #154 THEN #163=#154G00 Z#163G01 X#161 F0.05G00 X#160#163=#163-#155END2G00 Z#157#163=#157END1G00 X80G00 Z70M30/qianjk 钱嘉奎2011/11/14。

相关文档
最新文档