《2022年变量与数学函数.docx》由会员分享,可在线阅读,更多相关《2022年变量与数学函数.docx(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思第六章 变量与数学函数6.1 变量SINUMERIK数控系统变量是指系统内部已经命名和规划用途的参数;学习和使用系统变量进行编写加工程序是属于高级编程阶段的内容,需要编程者已经对西门子数控系统比较明白, 具有肯定的加工编程体会和系统数据调试体会;由于在编程中涉及系统参数的一些读取或写入操作,意操作安全,并做好数据记录;在验证所编写的程序时肯定要注系统变量的设计与规划用途的完整情形只能由系统研发人员作出说明,可能需要特别多的篇幅;仅就 828D系统而言,其支持软件系统有三个主要版本,某些变量又是针对某个版本设
2、计规划的;本书仅仅就选取出的部分以标示符打头的、常用的变量使用方法进行说明,需要读者在机床上验证后使用;通过使用变量,特殊是运算机功能和掌握结构的相关变量,可以使零件程序和循环的编写更为敏捷;为此, 828D 系统供应了三种不同类型的变量:系统变量、预定义用户变量和用户定义变量;6.1.1 系统变量系统变量是系统中定义有固定名称的供用户使用的一种标志符号,它们具有固定的预设含义; 系统变量的含义中的大部分属性也是由系统固定预设的;用户只能小范畴地对属性进行重新定义和匹配;和主处理变量;本系统中的系统变量分为预处理变量1)预处理变量;预处理变量是指在于处理程序状态中,即在执行设定了系 统变量的零
3、件程序段进行编译时,读取和写入的系统变量;2)主处理变量;主处理变量是指在主运行状态中,即在执行编程了系统变 量的零件程序段时,读取和写入的系统变量;通过系统变量可在零件程序与循环中供应当前掌握系统的参数,例如机床,掌握系统和加工步骤状态;3)变量前缀;系统变量的一个显著特点是其名称通常包含一个前缀;该前缀由一个字符、 一个或两个字母以及一条下划线构成;系统规定: 假如数据在执行期间保持不变, 就可以和预处理同步读入, 为此在机床数据或设定数据的前名师归纳总结 缀中写入一个字符;如M;6-1 和表 6-2 ;第 1 页,共 26 页预处理时读取或写入的系统变量见表- - - - - - -精选
4、学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思表 6-1 预处理时读取或写入的系统变量的第一个字符+第 1 个字母数据类型+第 1 个字母数据类型M 机床数据C ISO 固定循环的循环变量S 设定数据,爱护区域P 程序变量,通道专用系统变量T 刀具治理参数R R参数(运算参数);在零件程序和工艺循环中使用R参数O 选项数据时,不写入前缀表 6-2 预处理时读取或写入的系统变量的其次个字符+第 1 个字母 变量显示+第 1 个字母 变量显示N 全局变量 A 轴专用变量C 通用专用变量前缀系统的特例 : $TC_ : 第 2 个字母 C表示的不是通道专用变量
5、, 而是刀架专用系统变量;6.1.2 用户变量(1)用户变量; 是用户自己定义的用于程序编写中表示某种 个 特定意义的一种标志号 , 系统不确知其含义 , 也不对其进行分析的变量; 1 预定义用户变量;预定义用户变量是在系统中已经定义的变量 , 但是用户仍需通过特地的机床数据对其数量进行参数设置;例如循环指令中的变量; 2 用户定义变量;用户定义变量是仅由用户定义的变量 , 到系统运行时才会创建这些变量; 它们的数量、 数据类型和全部其他属性都完全由用户定义;例如用户自己编制宏程序时设置的变量; 2 用户变量名称的定义规章1)“ $” 字符预留给系统变量 , 用户所定义的变量不行使用;2 变量
6、名称必需意义明确;同一名称不行以用于不同的对象;3 系统中已定义的或备用的关键子不行以用作名称;4)变量名称的长度小于31 个字符;答应使用的字符有字母、 数字和下划线;5 书写变量名称, 开头的两个字符必需是字母或下划线;答应有分隔符;在单个字符之间不6 预留的字符组合;7 为了防止显现名称冲突 , 在设定名称时要留意防止使用以下字符 : 全部的以 CYCLE” 、“ CUST_” 、“ GROUP_” 或“S_” 开头的名称均用于西门子标准循环;全部的以“CCS” 开头的名称均用于西门子汇编循环;, 如以“ U” 用 也可以便利用户汇编循环以“CC” 开头;名称“RL” 预留给传统车床;以
7、“E_” 或“F_” 开头的名称预留给EASY STEP编程;已经被系统使用的指令 , 标志等名称;8 建议用户挑选有区分的且有肯定含义的字符来定义变量名称户 开头的名称 , 由于系统、汇编循环和西门子循环不使用这些名称;区分和记忆所定义的变量;名师归纳总结 - - - - - - -第 2 页,共 26 页精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思9 一个程序段中只能定义一种类型的用户变量 类型的多个用户变量;6.1.3 运算参数( R), 可以定义同一种用户变量运算参数或 R参数是名称为 R的预定义用户变量, 用字母 R加数字表示, 定义为 R
8、EAL数据类型的数组;由于历史缘由, R参数既可以带数组索引编写, 如R10 ,也可不带数组索引编写 , 如 R10;1 编程格式R R 2 指令参数说明R: 作为预处理变量使用时的名称;: R 参数编号 , 类型为整数型 INT ;本系统为 300 个, 数值为 0299;: 数组索引; 只要可将表达式结果转换为数据类型 INT, 就可设定任意表达式作为数组索引;3 参数值的赋值范畴1 可以在以下数值范畴内给运算参数赋值 带符号小数点;2 用指数表示法可以赋值更大的数值范畴 行号之后 ,EX 范田为 -300+300;Rl=-0.1EX-5 ;表示 R1=-0.000001 R2=l.874
9、EX8;表示 R2=187 400 000 4 赋值方法:0.0000001-9999 9999, 8 个数位 , 10-300-10 300 ;指数值写在“ Ex”1 直接赋值或通过函数表达式赋值;可以用数值、 算术表达式或运算参数对Nc地址赋值;一个程序段中可以有多个赋值语句, 也可以用运算表达式赋值; 如: N10 R1=10 R2=20 R3=10*2 R4=R2-R1 R5=SIN30 2)通过参数变量赋值; 通过给 Nc地址安排运算参数或参数表达式,可以增加 NC程序的通用性;但对程序段段号 N、加工指令 G和调用子程序指令 L 例外;赋值时在地址符之后写入字符 “ =” ;赋值语
10、句也可以赋值一个负号;给坐标轴地址 运行指令 赋值时,要求有一个独立的程序段;5 编程示例 算数功能中 R参数的赋值和应用;程序代码 注释R0=3.5678 ;在预处理中赋值R1=-37.3 ;在预处理中赋值R3=-7 R4=-0.1EX-3 R7=SIN25.3 $R6=l.87EX6 ;在预处理中赋值;在预处理中赋值 :R4=-0.1 10 5R4=-0.0001 ;在预处理中赋值;在主运行中赋值 :R6=1.87 10 6R6=1870000 RR2=R10 ;通过 R参数间接地址赋值22 平方根确定位置RRl+R2*R3=5 ;通过算术表达式间接地址赋值X=Rl+R2 ;给 X 轴赋值
11、Z=SQRTRl*R1+R2*R2 ;给 Z 轴赋值 , 运行至通过 R 2l+R要使一个零件程序不仅适用于特定数值下的一次加工, 或者在程序运行中需名师归纳总结 - - - - - - -第 3 页,共 26 页精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思要运算出某些数值 , 这两种情形均可以使用运算参数;可以在程序运行时由掌握 器运算或设定所需要的数值; 也可以通过操作面板设定参数数值;假如参数已经赋值 , 可以通过段号寻址变量并对其进行操作;6.1.4 定义用户变量用户可通过 DEF指令定义白己的变量并进行赋值;在划分系统变量时, 这些,变量被
12、称为用户定义变量或用户变量User Data ;依据变量的有效范畴 , 即变量可见范畴 , 用户变量可分为以下几个类别: 1 局部用户变量 LUD;局部用户变量 LUD是执行时在调用零件程序时创建并在零件程序终止或者 量;此变量只能在定义NC复位时删除;而不是在主程序的零件程序中定义的变 LUD的零件程序中存取该 LUD;2 程序全局用户变量 PUD;程序全局用户变量 PUD是在作为主程序的零件程序中定义的变量; 此变量在零件程序开头时创建, 在零件程序终止或NC复位时删除;可在主程序及全部子程序中存取PUD;3 全局用户变量 GUD;全局用户变量 GUD是在数据块 SGUD,MGUD,UGU
13、D, GUD4, ,GUD9中定义的 NC或通道全局变量 , 此变量通电后依旧保留; 可在全部 零件程序中存取 GUD;在使用 读/ 写 用户变量前对其进行定义时必需遵循以下 规章 : GUD必需在定义文件如 _N_DEF_DIR/_M_SGUD_DEF 中定义;PUD和 LUD必需在零件程序的定义段中定义;必需在单独的程序段中进行数据定义;每次数据定义只能使用一种数据类型;每次数据定义可以定义多个相同数据类型的变量;1 编程格式系统中定义的编程格式特别完整, 规定的编程格式为 : DEF,= 在实际使用中 , 编程格式可以为 : DEF ,= 2 指令参数说明 DEF:用于定义用户变量 GU
14、D、PUD、LUD的指令;: 数据类型 INT: 带正负号的整数值;REAL:实数型数值;B00L:真值=TRUE1/假值 =FALSE0;CHAR:ASCII一字符;STRING: 定义长度的字符串;AXIS: 进给轴或主轴标志符;FRAME: 静态坐标转换的几何设定;: 变量名称;规定与用户定义变量名称相同;,: 设定 1 维至 3 维 最大 数组变量的数组长度 可 选);: 初始化值 可选 ;名师归纳总结 3编程示例程序全局和局部用户变量PUD/LUD的定义;第 4 页,共 26 页- - - - - - -精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟
15、读而精思程序代码 注释 PROC MAIN ;主程序 DEF INT VARl ;程序全局用户变量 PUD定义一个名称为“VARl” 整型变量 30 VAR1=30 ;名称为 VARl 的变量更式初始值为 . SUB2 ;调用子程序 . M30 PROC SUB2 ;子程序 SUB2 DEF INT VAR2 ;局部用户变量 LUD定义 . IFVAR1=1 ;程序全局用户变量 PUD读取 VARl =VARl+l ;程序全局用户变量 PUD读取与写入;局部用户变量 LUD写入 ENDIF VAR2 = l SUB3 ;调用子程序. M17 PROC SUB3 ;子程序 SUB3 . IFVA
16、R1=1 ;程序全局用户变量 PUD读取 PUD读取与写入 VARl =VARl+l ;程序全局用户变量 VAR2 = l ;错误: SUB3中的局部用户变量 LUD未知 ENDIF . M17 提示:当设置了以下机床数据时, 在主程序中定义的程序局部用户变量 (PUD)同样在子程序中可见;MD11120MN_LUD_EXTENDED_SCOPE=1 设置 MD11120=0时,在主程序中定义的程序局部用户变量只在主程序中可 见;6.2 系 统 变 量 、 用 户 变 量 和NC语 言 指 令 的 重 新 定 文REDEF 1 指令功能 在编写程序中 , 使用 REDEF指令可对系统变量、用户
17、变量和 NC语言指令的属性进行更换; 重新定义的前提条件是必需在相应的定义后进行;在重新定义中不能同时对多个属性进行更换;必需为每个需要更换的属性编写单独的 REDEF指令;假如编写的多个属性更换之间有冲突 有效;, 就最终进行的更换提示:不能对局部用户变量 2 编程格式PUD/LUD进行重新定义;名师归纳总结 - - - - - - -第 5 页,共 26 页精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思REDEF REDEF REDEF REDEF 3 指令参数说明REDEF: 用于重定义系统变量、用户变量和NC语言指令的特定属性的指令;: 已定义
18、的变量或 NC语言指令的名称;: 下限或上限;假如在重新定义一个用户变量的极限值时 , 当前实际值 超出了新的定义范畴 , 系统会输出报警 , 而不接收该极限值;因此 , 在重新定义用户变量的极限值时 , 请留意值 极限值、实际值和初始化值 : 变量重新初始化的时间;INIP0: 通电;INIRE: 主程序终止 ,NC 复位或上电;INICF: 重新配置或主程序终止 ,NC复位或通电;PRLOC:主程序终止 , 本地更换后 NC复位或通电;: 初始化值; 的修改应保持一样;在定义初始化值时 , 必需设定初始化时间;提示 : 系统变量不行进行重新定义,也不行以删除已设定数据;6. 3 存取权限
19、APR, APW, APRP, APWP , APRB,APWB 对系统变量的读取与写入操作是一件特别庄重和仔细的工作 , 来不得半点马虎;为了保证数据读取和写入工作的庄重性和安全性, 系统提出了严格的操作密级规定;没有肯定操作密级的密钥就无法进行相应的操作;指令中的 R 表示“ 读”, 指令中的 W表示“ 写” ;1 存取权限对应了在编程时给定的爱护等级;最终用户口令亲密一般设为“ CUSTOMER2 用户变量的定义 DEF;可以定义以下变量的存取权限 局用户数据 GUD;APR /APW : 全3 重新定义 REDEF系统和用户变量;可以重新定义以下变量的存取权限APR /APW ;系统数
20、据 : 机床数据、设定数据、FRAME、过程数据、主轴螺距误差补偿EEC、垂度补偿 CEC、象限误差补偿 QEC、刀库数据、刀具数据、爱护区、可定向刀梁、运动整、 3D爱护区、工作区域限制、 IS0 刀具数据等;用户数据 : R参数、 EPS参数、刀具数据 OEM、刀库数据 OEM、全局用户变 量GUD等;在重新定义时可以自由确定变量的存取权限, 这些变量处于最低爱护等级7和自有爱护等级如1 机床制造商 之问;HMI 本地存取权限在修改系统数据的存取权限时必需留意, 该权限必需和HMI装置上定义的存取权限一样;名师归纳总结 - - - - - - -第 6 页,共 26 页精选学习资料 - -
21、 - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思6.4 定文和初始化数组变量 6.4.1 基本使用方法DEF, SET, REP 1 指令功能一个用户变量可以定义为 1-3 维数组;用户变量可以定又为以 下类型的数组 : B00L 、CHAR、INT、REAL、STRING、AXIS、FRAME数组元素的赋値;可以在以下时间为数组元素赋值: REP;l 定义数组时 初始化值 ;2 在程序执行过程中可以通过以下方法赋值: 显式 编写时直接 指定一个数组元素 DEF;显式指定一个数组元素为起始元素并给出值列表SET;显式指定一个数组元素为起始元素并给出值列表以及重复的频率说明
22、: 不能向 FRAME数据类型的用户变量安排初始化之值;2 编程格式 1 维数组 : DEF 2 维数组 : DEF , 3 维数组 : DEF , 字行型 STRING数据类型的用户变量可以最大定义为2 维数组;1 编程格式 1DEF定义数组元素;DEF, DEF STRING, 2 编程格式 2 DEF =SET 使用值列表;定义时 : DEF ,=SET, )DEF ,=, 在通过值列表进行初始化时, 可以挑选给定 SET;赋值时 : ,=SET, 3 编程格式 3 DEF =REP 使用重复值;定义时 : DEF,=REp DEF,=REP, 赋值时 :,=REP , =REP, 3
23、指令参数说明 DEF:变量定义指令;: 变量数据类型;取值范畴 : 对于系统变量 :B00L、CHAR、INT、REAL、STRING、AXIS;对于 GUD或 LUD变量 : B00L、 CHAR、 INT 、 REAL、 STRING、 AXIS、 FRAME;:STRING数据类型下答应的最大字符数;: 变量名称;,: 数组长度或数组索引;名师归纳总结 :1 维的数组长度或数组索引; 类型 :INT 对于系统变量也为AXIS;取值第 7 页,共 26 页- - - - - - -精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思范畴 : 最大数组长度
24、 65535 ;数组索引 :0 n65534;:2维的数组长度或数组索引;其余同上;:3 维的数组长度或数组索引;其余同上;SET:通过给出的值列表赋值;, : 值列表;REP:通过给出的 赋值;: 数组元素在带 REP的初始化时具有的数值;: 使用给定 的数组元素的数量; 其他的数组元素取决于 不同时间点 : 数组定义时初始化:剩下的数组元素赋值为零;在程序运行过程中赋值 : 数组元素的当前值保持不变;假如没有定义该参 数, 全部的数组元素都会安排到 ;假如参数为零 , 就取决于不同的时间点 : 数组定义时初始化 : 全部元素预定为零;在程序运行过程中赋值 : 数组元素的当前值保持不变;6.
25、4.2 数组索引在使用航列表 SET或使用值重复 REP的赋值中 , 通过数组素引从右向左的 循环构成数组元素的隐式次序;例 l 某 3 维数组的初始化 , 数组有 24 个元素;程序代码 DEF INT FELD2,3,4=REP1,24 注释;相当于对以下 24 个数组元素分别赋值FELD0,0,0=1 FELD0,0,1=1 FELD0,0,2=1 FELD0,0,3=1 FELD0,1,0=1 FELD0,1,1=1 ;第 1 个数组元素;第 2 个数组元素;第 3 个数组元素;第 4 个数组元素;第 5 个数组元素;第 6 个数组元素. FELD0,2,3=1 FELD1,0,0=1
26、 FELD1,0,1=1 ;第 12 个数组元素;第 13 个数组元素;第 14 个数组元素. FELD1,2,3=1 ;第 24 个数组元素也可以使用计数循环语句(程序代码FOR n=0 T0l FOR m=0 T02 FOR o=0 T03 FELDn,m,o =1 ENDFOR ENDFOR ENDFOR FOR ENDFOR进行数组初始化赋值;名师归纳总结 - - - - - - -第 8 页,共 26 页精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思例 2 如图 6_l 所示 , 按当前占用情形初始化整个变量数组;1,2 N10:定义时的初始
27、化图 6-l N20/N30: 使用相同数N40/N50: 使用相各种值初始化数値初始化0 0 1 2 0 1 2 0 1 2 0 0 0 100 100 100 0 1 2 1 10 11 12 100 100 100 -10 -11 -12 2 20 20 20 100 100 100 -20 -20 -20 3 30 30 30 100 100 100 -30 0 0 4 40 40 40 100 100 100 0 -40 -40 5 0 0 0 -100 -100 -100 -50 -60 -70 6 0 0 0 -100 -100 -100 -100 -100 -100 7 0 0
28、 0 -100 -100 -100 -100 -100 -100 8 0 0 0 -100 -100 -100 -100 8.1 8.2 9 0 0 0 -100 -100 -100 9.0 9.1 9.2 数值单元按规定位置赋值的三维数数值单元 3,l-4,05,1-9,2已 使 用已 使用默认值( 0,0 )默认值(0,0 )初始化初 始 化数 值 单 元6,0-8,0没有变化数之索引:程序代码 注释 定义时对数组初始化 Nl0DEFREALFELD110,3=SET0,0,0,10,11,12,20,20,20,30,30,30,40,40, 40, ;对变量数组单元 0,0 4,2 进
29、行赋值 使用相同数值初始化N20 FELDl0,0= REPl00 N30 FELDl5,0= REP-l00 ;从数组单元 0,0 起赋值 100 ;从数组单元 5,0 起赋值 -100 使用不同数值初始化N40 FELDl0,0=SET0,l,2,-10,-1l,-12,-20,-20 ,-20 ,-30,-40 ,-40 ,-50 ,-60 ,-70 );从数组单元 0,0 起赋值 , 其中3,1 4, 0 赋值 0 N50 FELDl8,l=SET (8.1,8.2,9.0,9.1,9.2);从数组单元 8,1 起赋值 6.4.3 定义和 初始化数组变量( SET,REP)说明 1 使
30、用值列表 SET在定义时进行初始化;从第 l 个数组元素开头 , 依据值列表中的值和写入的元素数量进行初始化;值列表中没有显式指定值的数组元素 数值表中的空自 自动成值为 0;对于 AXIS 数据类型的变量 , 值列表中不答应显现空白;假如值列表包含的值大于数组元素的数量 , 就显示报警; 2)使用值列表 SET在程序执行中赋值; 以上说明的定义规章同样适用于程 序执行中的赋值 , 此外仍有以下方法 : 名师归纳总结 - - - - - - -第 9 页,共 26 页精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思表达式也答应用作值列表的元素;从编程的数
31、组索引开头赋值;从而依据需要对部分数组赋值; 3)使用值列表 SET的编程示例;数组定义DEFINTFELD5,5 FELD0,0 =SETl,2,3,4,5 ;对前 5 个数组元素进行赋值 0,0 0,4 进行间隙的赋值,数组元素 0,2 和0,3=0 FELD2,3=SETVARIABLE,4 5.6 ;带变量和表达式的赋值 , 自数组索引 2,3起:2,3=VARIABLE2,4=4 5.6=22.4 4 使用重复值 REP在定义时进行初始化 全部或指定数量的数组元素都会以给定值 常量 进行初始化;FRAME数据类型的变量无法进行初始化;编程示例 : 程序代码 注释 DEF REAL V
32、ARNAME10=REP3,5,4 ;定义数组 , 数组元素 0 3 以值 3.5 初始化 5 使用重复值 REP在程序执行中赋值;以上说明的定义规章同样适用于程 序执行中的赋值;此外 , 仍可以使用以下方法 : 表达式也答应用作值列表的元素;从编程的数组索引开头赋值;从而依据需要赋值部分数组;6 使用重复值 REP的编程示例;程序代码 注释 DEF REAL VARNAME10 ;数组定义VARNAME5=REP(4.5,3 )R10=REP2.4,3 ;数组元素 5 7=4.5 ;R参数表中 R10R12=2.4 DEF FRAME FRM10 ;数组定义FRM5=REPCTRANSX,5
33、 6.5 间接编程6.5.1 间接编程地址;数组元素 5 9=CTRANSX,5 在间接编程地址时 , 扩展的地址 索引 由一个合适的变量类型替代;但在下 列情形中 , 不能间接编程地址 : N程序段段号 ;L 子程序 ;可调用地址;例如 ,X1 代替 X1 是不答应的;1 编程格式 索引 2 指令参数说明 .: 带扩展名 索引 的固定地址;: 变量, 例如主轴编号、轴等;名师归纳总结 - - - - - - -第 10 页,共 26 页精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思3 编程示例 例 l 间接编程一个主轴编号;直接编程 : 程序代码 注
34、释 S1=300 ;主轴转速 300r/min ,编号为 1 间接编程 : 程序代码 注释DEFINT SPINU=1 SSPINU=300 ;定义 INT 型变量和赋值;主轴转速 300r/min, 其编号储存 在变量 SPINU中(在示例中,编号为 1)例 2 间接编程一个轴;直接编程 : 程序代码 注释$AA_MMX ;读取轴的侧头 - 测量值( MKS)“ X”间接编程 : 程序代码 注释DEF AXIS AXVAR3=X $AA_MMAXVAR3 ;定义一个 AXIS 型变量和赋值;为读取测头 - 测量值(MKS),其名称保 存在变量 AXVAR3中例 3 间接编程数组元素;直接编程
35、 : 程序代码 注释DEF INT DATA_14,5 间接编程 : ;定义数组 DATA_1 程序代码 注释DEFINE DIMl AS 4 DEFINE DIM2 AS 5 DEF INT DATA_1DIMl,DIM2 ;定义数组维数 , 必需将数组 维数 大小 设定为固定值;定义数组维数;定义数组 DATA_1 DATA_lDIMl-1,DIM2_1 =5 ;对数组単元 3 ,4 赋值 5 例 4 间接调用子程序;程序代码 注释CALL“ L” R10 ;调用其编号在 R10中的程序 字符串级 联 6.5.2 同接编程 G指令 通过间接编程 G指令 , 可以进行有效的循环编程;l 编程
36、格式 G 组 = 2 指令参数说明 G.: 带扩展名 索引 的 G指令;: 索引参数 G功能组 , 类型为 INT;: 用于 G指令绩号编号的变量 , 类型为 INT 或 MAL;通常只能间接编程非编程格式定义的G指令;编程格式定义的 G指令中只有名师归纳总结 G功能组 1 可采纳间接编程而G功能组 2、3 和 4 中的编辑格式定义的G指令就第 11 页,共 26 页- - - - - - -精选学习资料 - - - - - - - - - 读书之法 ,在循序而渐进 ,熟读而精思不行以;在间接 G指令编程中不答应进行算术运算;必需在 G指令间接编程前, 在一个自身的零件程序行中进行必要的 G指
37、令编号运算;3 编程示例 可设定的零点偏移 G 功能组 8 程序代码 注释N10l0 DEF INT INT_VAR ;定义整型数值变量N1020 INT_VAR=2 . ;对已定义的整型数值变量赋值N1090 G8=INT_VAR Gl X0 Y0 ;间接表示 : 使用 G54可设定工件坐标 Nl100 INT_VAR= INT_VAR+1 ;G指令运算Nll10 G8 =INT_VAR G1 X0 Y0;间接表示 : 使用 G55可设定工件坐标6.6 常用的系统变量编程格式6.6.l 几何位置变量编程格式及示例 1系统变量可以为几个部分(以三轴立式铣床为例说明):读取加工平面参数数据 -
38、挑选 G17、G18、G19;$P_GG6=1 当前所选平面为 G17);$P_GG6=2 当前所选平面为 G18 ;$P_GG6=3 当前所选平面为 Gl9 ;SINUMERIK数控系统强调加工平面的概念, 不仅是指出当前加工的平面位置,也包括了数控系统对坐标系其他概念的描述;例如,G17 平面指 XY平面 , 半径长度在 XY 平面中 , 同时也指明刀具轴是Z 轴, 包括指明刀具长度1 指的是在 Z 轴方向的长度;同理 , G18平面指 ZX平面 , 半径长度在 ZX平面中 , 三轴立式 , 铣床中 刀具轴仍是 Z 轴, 但 Gl8 平面中的长度 1 指的是在 Y 轴方向的长度;2 读取在机床坐标系 MCS中的 轴 位置数据指令;机床坐标系中 X 轴的当前坐标值 : $AA_IMX ;机床坐标系中 Y 轴的当前坐标值 : $AA_IMY ;机床坐标系中 Z 轴的当前坐标值 : $AA_IMZ ;例 1 R1=$AA_IMX R1=$AA_IMY R1=$AA_IMZ R1=$AA_IM