1宏 程 序 设 计宏程序与子程序类似,对编制相同加工的操作可以使程序简化.同时宏程序中可以使用变量,算术和逻辑运算及转移指令,还可以方便地实现循环程序设计。使相同加工操作的程序更方便,更灵活。本章以 FANUC 系统为例介绍宏程序设计的内容。12.1变量的定义宏程序中使用的变量与日常生活中使用的变量不同,变量用符号“#”后跟变量的变量号指定。变量可分为四种类型。1. 空变量#0 为空变量,该变量不能赋值。2. 局部变量#1~#33 为局部变量,局部变量只能在宏程序中存储数据。当断电时局部变量被初始化为空,调用宏程序时,自变量对局部变量赋值。局部变量的数值范围 10-29~1047 或-1047~-10-29,如果计算结果超过该范围则发出 P/S 报警 No.111。3. 公共变量#100~#199、#500~#999 为公共变量,公共变量在不同的宏程序中意义相同。当断电时,变量#100~#199 被初始化为空,变量#500~#999 的数据不会丢失。全局变量的数值范围 10-29~1047 或-1047~-10-29,如果计算结果超过该范围则发出 P/S 报警 No.111。4. 系统变量#1000~为系统变量,系统变量用于读和写 CNC 运行时的各种数据,如刀具的当前位置和补偿 值等。5. 变量与地址(自变量)的对应关系系统可用两种形式的自变量指定,表 12-1 为自变量指定 I 的自变量与变量的对应关系。表 12-2 为自变量指宾 II 的自变量与变量的对应关系。表 12-1自变量指定 I 的变量对应关系在自变量指定 I 中,G、L、O、N、P 不能用,地址 I、J、K 必须按顺序使用,其它地址顺序无要求。举例:G65 P3000 L2 B4 A5 D6 J7 K8正确(J、K 符合顺序要求)在宏程序中将会把 4 赋给#2,把 5 赋给#1,把 6 赋给#7,把 7 赋给#5,把 8 赋给#6举例:G65 P3000 L2 B3 A4 D5 K6 J5不正确(J、K 不符合顺序要求)地址(自变量)变量号地址(自变量)变量号地址(自变量)变量号A#1I#4T#20B#2J#5U#21C#3K#6V#22D#7M#13W#23E#8Q#17X#24F#9R#18Y#25H#11S#19Z#262表 12-2自变量指定 II 的变量对应关系自变量指定 II 使用 A、B、C 和 1 次,使用 I、J、K 各 10 次。系统能够自动识别自变量指定 I 和自变量指定 II 并赋给宏程序中相应的变量号。如果自变量指定 I 和自变量指定 II 混合使用,则后指定的自变量类型有效。举例:G65 A1.0 B2.0 I-3.0 I4.0 D5.0 p1000宏程序中:#1:1.0#2:2.0,#3:#4:-3.0#5:#6:#7:5.0说明:I4.0 为自...