sshong86 发表于 2012-4-27 21:41:12

宏程序学习资料

工件偏置量:G10 L2 P X Y Z (加工中心)。
G41XYD
G90G54P1G00XYS    M03
G90G10L2P0XYZ
G10L1PR
G10 PUVWCQ
可编程参数入口:G10 L50
………
G11
G10数据设置模式入口、
L50可编程参数入口模式(固定的)
N……P……R……指定参数入口(N=参数号,P=轴号,R=设置值)
G11数据设置模式取消
宏程序的调用:G65 P   L   
G65
P包含宏程序的程序号(存储为O    )
L宏程序的循环次数
变量的类型:空变量#0
局部变量:#1—#33
全局变:#100—#149或#500—#531
系统变量:#1000—。。。。。。
局部变量的赋值:A-#1 B-#2 C-#3 D-#7 E-#8 F-#9 H-#11 I-#5 J-#6 K-#6 M-#13
Q-#17 R-#18 S-#19 T-#20 U-#21 V-#22 W-#23 X-#24 Y-#25 Z-#26
模态宏程序的调用G66仅用于某个轴运动命令调用宏程序
G67取消模态宏程序调用
宏程序函数:有SIN COS TANATAN ASIN ACOS
其他函数:ROUND FIX FUP
ROUND表示四舍五入
FIX表示与之最小的整数
FUP表示与之最大的整数
辅助函数:
SQRT表示开方
ABS表示绝对值
LN表示自然对数函数
EXP表示以E为底的指数函数、
ADP表示添加小数点的函数、
逻辑函数:EQ表示等于、NE表示不等于、GT表示大于、LT表示小于、GE表示大于等于、LE表示小于等于。
系统变量:
从#1000开始
#1000through#1015数据输入DI 从PMC向宏程序发送16位信号(逐位读取)
#1032用于一次读取所有16位信号
#1100through#1115数据输出DO从宏程序向PMC发送16位信号(逐位写入)
#1132用于一次向PMC写入所有16位信号
#1133用于一次向PMC写入所有32位信号——-99999999到+99999999的数值可用于#1133
#2001through#2200 (A刀具补偿值)(B磨损偏置值)(H代码C)
#2201through#2400(B几何偏置值)(H代码C)
#2500表示沿X轴的外部工件偏置值。#2501—G54 #2502-G55 #2503-G56
#2504-G57 #2505-G58 #2506-G59
#2600表示沿Y 轴的外部工件偏置值#2601—G54 #2602-G55 #2603-G56
#2604-G57 #2605-G58 #2606-G59
                                             
#2700表示沿Z轴的外部工件偏置值#2701—G54 #2702-G55 #2703-G56
#2704-G57 #2705-G58 #2706-G59

#2800表示沿第四轴的外部工件偏置值#2801—G54 #2802-G55 #2803-G56
#2804-G57 #2805-G58 #2806-G59
#3000用户宏程序产生报警
#3001时钟1-单位1ms
#3002时钟2-单位1h
#3003单段控制,等待信号FIN
#3004进给保持控制,技能给速度倍率控制,准确停止检查控制
#3005设置
#3011时钟信息—年月日
#3012时钟信息—时分秒
#4001至#4022模态信息预读程序段-G代码组
#4102至#4130模态信息预读程序段-B,D,F,H,M,N,O,S,T,P代码
#5001至#5008程序段结束位置
#5021至#5028机床坐标位置
#5041至#5048工件坐标位置(绝对位置)
#5061至#5068跳跃信号位置21:10 2010-1-8
#5081至#5088刀具长度补偿值
#5101至#5108伺服系统偏置
#5201至#5208外部工件偏置值
#5221至#5228:G54工件偏置值
#5241至#5248:G55工件偏置值
#5261至#5268:G56工件偏置值
#5281至#5288:G57工件偏置值
#5301至#5308:G58工件偏置值
#5321至#5328:G59工件偏置值
用于模态命令的系统变量:
#4001至#4022模态信息(G-代码组)
系统变量        G代码组        G代码命令        备注
#4001        01        G00 G01 G02 G03 G33           注意G31属于00组
#4002        02        G17 G18 G19       
#4003        03        G90 G91        
#4004        04        G22 G23       
#4005        05        G93 G94 G95       
#4006        06        G20 G21       
#4007        07        G40 G41 G42       
#4008        08        G43 G44 G45       
#4009        09        G73 G74 G76 G80 G81 G82 G83 G84 G85 G86 G87 G88 G89        
#4010        10        G98 G99       
#4011         11        G50 G51       
#4012         12        G65 G66 G67       
#4013        13        G96 G97       
#4014        14        G54 G55 G56 G57 G58 G59       
#4015        15        G61 G62 G63 G64       
#4016        16        G68 G69       
#4017        17        G15 G16       
#4018        18        N/A       
#4019        19        G40.1 G41.1 G42.1       
#4020        20        对FS-M和FS-T控制器的N/A       
#4021        21        N/A       
#4022        22        G50.1 G51.1       
高级CNC控制系统的典型G代码模态信息:
预处理程序段:#4001到#4022
执行程序段:#4201到#4222
高级FANUC控制器的系统变量:
系统变量号        程序地址
预处理程序段        执行程序段       
#4102        #4302        B代码—分度轴位置
#4107        #4307        D代码—刀具半径偏置号
#4108        #4308        E代码—进给速度值(如果可用)
#4109        #4309        F代码—进给速度值
#4111        #4311        H代码—刀具长度偏置号
#4113        #4313        M代码—辅助功能
#4114        #4314        N代码—顺序号
#4115        #4315        O代码—程序号
#4119        #4319        S代码—主轴转速值
#4120        #4320        T代码—刀具号
#4130        #4330        P代码—附加工件偏置号
变量的类型:空变量#0
局部变量:#1—#33
全局变:#100—#149或#500—#531
系统变量:#1000—。。。。。。
局部变量的赋值:A-#1 B-#2 C-#3 D-#7 E-#8 F-#9 H-#11 I-#5 J-#6 K-#6 M-#13
Q-#17 R-#18 S-#19 T-#20 U-#21 V-#22 W-#23 X-#24 Y-#25 Z-#26
分支和循环:
IF 函数:IF[条件为真]GOTO n
         IF[条件为真]THEN[语句]
其中AND和OR 等的使用
WHILE循环结构:
WHILE[条件]DO n
有单级嵌套、两级嵌套、三级嵌套。
报警#3000=xxx(xxxxxxxx等内容)
宏程序中的定时器:#3001这是一个毫秒定是变量。
#3002是一个小时定时变量。
#3011是保持当前时间。
#3012是指示当前时间。
轴位置数据:
ABSIO已编程的前面程序段的终点坐标,#5001到#5015分别对应第1轴到第15轴。
ABSMT机床位置,通常指当前的机床坐标,#5021到#5035分别对应第1轴到第15轴。
ABSOT绝对位置,通常指当前的绝对位置,#5041到#5055分别对应第1轴到第15轴。
ABSKP在G31程序段中执行跳跃运动时存储的相应位置,#5061到#5075分别对应第1轴到第15轴。
刀具偏置值范围#5081到#5095表示当前刀具偏置值,而不是上一个值。
解释系统变量#3007
#3901已完成的零件数
#3902 需要加工的零件数
参数化(相似零件)的编程:
外部输出:POPEN开启I/O设备 PCLOS关闭I/O设备
BPRNT和DPRNT功能
BPRNT是以位为单位输出,仅对数据有效
DPRNT是以纯文本格式输出,数据或文本(ISO或ASCII文本)
注意穿孔机可以是任何外部的RS-232设备
关于G31的应用:基本用于测量用。

G代码宏程序调用—10个可用选项—G65 G66和G67除外。FANUC 系统16/18/21
参数号        描述《有效数据位1—255》
6050        G代码调用存储在程序O9010中的用户宏程序
6051        G代码调用存储在程序O9011中的用户宏程序
6052        G代码调用存储在程序O9012中的用户宏程序
6053        G代码调用存储在程序O9013中的用户宏程序
6054        G代码调用存储在程序O9014中的用户宏程序
6055        G代码调用存储在程序O9015中的用户宏程序
6056        G代码调用存储在程序O9016中的用户宏程序
6057        G代码调用存储在程序O9017中的用户宏程序
6058        G代码调用存储在程序O9018中的用户宏程序
6059        G代码调用存储在程序O9019中的用户宏程序

M代码子程序调用的9个选项:(设置值为:1到97)
参数号        SUB CALL M 代码调用
6071        SUB CALL M 代码程序O9001中的子程序
6072        SUB CALL M 代码程序O9002中的子程序
6073        SUB CALL M 代码程序O9003中的子程序
6074        SUB CALL M 代码程序O9004中的子程序
6075        SUB CALL M 代码程序O9005中的子程序
6076        SUB CALL M 代码程序O9006中的子程序
6077        SUB CALL M 代码程序O9007中的子程序
6078        SUB CALL M 代码程序O9008中的子程序
6079        SUB CALL M 代码程序O9009中的子程序
       
M代码宏程序调用—10个可用选项
参数号        描述《有效数据为1—97》
6080        M代码调用存储在程序O9020中的用户宏程序
6081        M代码调用存储在程序O9021中的用户宏程序
6082        M代码调用存储在程序O9022中的用户宏程序
6083        M代码调用存储在程序O9023中的用户宏程序
6084        M代码调用存储在程序O9024中的用户宏程序
6085        M代码调用存储在程序O9025中的用户宏程序
6086        M代码调用存储在程序O9026中的用户宏程序
6087        M代码调用存储在程序O9027中的用户宏程序
6088        M代码调用存储在程序O9028中的用户宏程序
6089        M代码调用存储在程序O9029中的用户宏程序
       
#0空变量。
FANUC系统 0
G代码宏程序调用—10个选项:
参数号从220到229分别调用O9010到O9019中的宏程序。
M代码宏程序调用—10个选项:
参数号从230到239分别调用O9020到O9029中的宏程序。

FANUC 系统10/11/15
G代码宏程序调用—10个选项:
参数号从7050到7059分别调用O9010到O9019中的宏程序。
参数号从7080到7089分别调用O9020到O9029中的宏程序。

半径偏置的设定:
偏置号        存储器A        存储器B        存储器C        备注
        几何/磨损        几何        磨损        几何-D        磨损-D       
1        #2001        #2001        #2201        #2401        #2601       
2        #2002        #2002        #2202        #2402        #2602       
3        #2003        #2003        #2203        #2403        #2603       
4        #2004        #2004        #2204        #2404        #2604       
5        #2005        #2005        #2205        #2405        #2605       
6        #2006        #2006        #2206        #2406        #2606       
……        ……        ……        ……        ……        ……       
……        ……        ……        ……        ……        ……       
200        #2200        #2200        #2400        #2600        #2800

sshong86 发表于 2012-4-27 21:42:15

自己顶!ddddddddddddddd

konglw 发表于 2012-4-28 07:45:00

好,相当的好

zhilin.zhang 发表于 2012-4-28 13:20:55

谢谢分享。。。

wuqiwei 发表于 2012-4-29 08:53:05

這動作實在太快了

jh136232927 发表于 2012-5-3 11:26:13

看不懂顶顶顶

haigoo 发表于 2012-5-6 11:31:59

:L悲惨哥看不懂

zhuyoncai 发表于 2012-5-11 21:27:39

悲惨哥看不懂不过还要顶

1083796076 发表于 2012-5-14 19:48:07

:lol 路过看看

hao226965 发表于 2012-11-26 16:32:04

看不懂!!!
页: [1] 2 3 4 5 6
查看完整版本: 宏程序学习资料