找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 271|回复: 0

[资料] A类宏功能应用 FANUC-0MC 数控铣床

[复制链接]
发表于 2011-7-13 23:52:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转磨削论坛

您需要 登录 才可以下载或查看,没有账号?注册会员

×
用户宏功能是提高数控机床性能的一种特殊功能,使用中,通常把能完成某一功能的一系列指令像子程序一样存入存储器,然后用一个总指令代表它们,使用时只需给出这个总指令就能执行其功能。
: w  Q3 e0 e9 b2 ^3 _  ]  用户宏功能主体是一系列指令,相当于子程序体。既可以由机床生产厂提供,也可以由机床用户自己编制。9 \2 M" M0 o7 _  {9 f+ _' c. j
  宏指令是代表一系列指令的总指令,相当于子程序调用指令。
2 f; f/ B2 t3 h! ]  用户宏功能的最大特点是,可以对变量进行运算,使程序应用更加灵活、方便。& B' E0 T6 V& k* ^! O
  用户宏功能有A、B两类。这里主要介绍A类宏功能,B类宏功能请参见本课程的B类宏程序介绍。8 P; g4 D. e! S+ @5 }# d, l2 i7 b
1.变量7 _( C7 B8 J, o: @
  在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址。为了使程序更具通用性、更加灵活,在宏程序中设置了变量。
" Y$ v% f7 Z/ S7 _) K" c9 H# s( E(1)变量的表示
/ I; r! o# \" b: Y变量可以用"#"号和跟随其后的变量序号来表示:
2 X7 W2 u* {/ l1 m/ g#i(i=1,2,3......)
; h5 D, p' b- j! ?/ w  例:#5, #109, #501。' ]/ w" B9 f5 D! F
(2)变量的引用5 i, c5 o4 j* @8 y+ E4 x
  将跟随在一个地址后的数值用一个变量来代替,即引入了变量。
2 k% I+ e, ?. _7 F6 N+ _! v' ~  例:对于F#103,若#103=50时,则为F50;
+ ^7 K3 K# I+ L- m4 x7 K' F对于Z-#110,若#110=100时,则Z为-100;
/ {# S; J3 i; T. w9 a+ T' c对于G#130,若#130=3时,则为G03。
" B7 v! g3 z  P$ R4 C" R* p+ J5 X(3)变量的类型  X! C  d3 s3 c/ l7 |
  0MC系统的变量分为公共变量和系统变量两类。. u2 F- W6 \! f0 L9 j' Q
1)公共变量
: J# y, D2 @: ?" _+ H. ^8 w  公共变量是在主程序和主程序调用的各用户宏程序内公用的变量。也就是说,在一个宏指令中的#i与在另一个宏指令中的#i是相同的。5 a$ ?+ q7 G. e5 {% j9 g" O
公共变量的序号为:#100~#131;#500~#531。其中#100~#131公共变量在电源断电后即清零,重新开机时被设置为"0";#500~#531公共变量即使断电后,它们的值也保持不变,因此也称为保持型变量。
  S: A* h2 l3 t, f2)系统变量  [& T! Q, P+ Q* i* E
  系统变量定义为:有固定用途的变量,它的值决定系统的状态。系统变量包括刀具偏置变量,接口的输入/输出信号变量,位置信息变量等。! p3 K2 H) [4 X, Z
  系统变量的序号与系统的某种状态有严格的对应关系。例如,刀具偏置变量序号为#01~#99,这些值可以用变量替换的方法加以改变,在序号1~99中,不用作刀偏量的变量可用作保持型公共变量#500~#531。- t- h* k% s! Y+ q. i% r# |
  接口输入信号#1000~#1015,#1032。通过阅读这些系统变量,可以知道各输入口的情况。当变量值为“1”时,说明接点闭合;当变量值为“0”时,表明接点断开。这些变量的数值不能被替换。阅读变量#1032,所有输入信号一次读入。
7 U  X9 V0 N* r2.宏指令G65
1 I2 m3 g  y8 w  n2 ?6 G  宏指令G65可以实现丰富的宏功能,包括算术运算、逻辑运算等处理功能。8 Z1 j3 p: D' d; N9 k  U. L
  一般形式: G65 Hm P#i Q#j R#k2 I# v/ p2 F* g& q
式中:
$ f' a5 S( t6 ~! x+ V0 Jm:表示宏程序功能,数值范围01~99;) w+ B) }; W- R4 X
#i:表示运算结果存放处的变量名;' X& D2 B3 f6 O! U, Y% E! J2 {
#j:代表被操作的第一个变量,也可以是一个常数;
7 ~* K1 @( H- x; o( Y4 t, E#k:代表被操作的第二个变量,也可以是一个常数。# l( }+ ?3 N4 a1 P
例如,当程序功能为加法运算时:" l& `+ V6 l6 s( U. S
程序 P#100 Q#101 R#102...... 含义为#100=#101+#102# f: |+ k! z6 w8 C
程序 P#100 Q-#101 R#102...... 含义为#100=-#101+#102
; h5 x$ N0 V6 F4 {& `' L3 }- i程序 P#100 Q#101 R15...... 含义为#100=#101+15* c4 Q# ]% p# H2 E8 X
宏功能指令分为:(点击下面的链接查看具体说明)
1 ~6 ]5 s* l( j8 r算术运算指令+ {. R# D( D/ B- g* B
逻辑运算指令
. O. K0 k" o% I. A. o三角函数指令+ Z" d/ q  a7 }2 U
控制类指令# P% x* r: k9 z" w* n5 C0 R( ?1 v
3.使用注意
* a& O" W* v+ x  为保证宏程序的正常运行,在使用用户宏程序的过程中,应注意以下几点;
- n% C( L0 @' Z+ T# ]! Y(1)由G65规定的H码不影响偏移量的任何选择;# R: @: ?* _% T% G
(2)如果用于各算术运算的Q或R未被指定,则当0处理;7 P9 r. m- I3 f" X( m
(3)在分支转移目标中,如果序号为正值,则检索过程是先向大程序号查找,如果序号为负值,则检索过程是先向小程序号查找。6 k4 c0 J/ \# \" w
(4)转移目标序号可以是变量。, I; a6 T0 x! ?3 W8 Q* z" C# m
200781153922.gif
4 J3 E4 L8 N' n% D* @: T0 R$ i8 |9 O' C1 g. x2 n) _) Z! r
4.用户宏程序应用举例(点击下面的链接查看具体说明)7 |* S; R* F' r- e) v: x
例一:用宏程序和子程序功能加工圆周等分孔。
4 z! L& p" X7 Y, ^5 p- F& A* C例二:根据提供的数据,用户宏程序功能加工圆周等分孔。4 @% P% _, `; n2 y, f4 s% p6 H& B
5.思考
& B) d6 f, |. o0 J- u8 k  如右图所示在边长为100毫米的正方形上钻8个孔,编程坐标系设定如右图,Z向零点设在工件的上表面,孔深为35毫米,采用用户宏程序编写其加工程序。' ?  ?: q$ ]0 P# f) v5 A
文章关键词:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

中国磨床技术论坛
论 坛 声 明 郑重声明:本论坛属技术交流,非盈利性论坛。本论坛言论纯属发表者个人意见,与“中国磨削技术论坛”立场无关。 涉及政治言论一律删除,请所有会员注意.论坛资源由会员从网上收集整理所得,版权属于原作者. 论坛所有资源是进行学习和科研测试之用,请在下载后24小时删除, 本站出于学习和科研的目的进行交流和讨论,如有侵犯原作者的版权, 请来信告知,我们将立即做出整改,并给予相应的答复,谢谢合作!

中国磨削网

QQ|Archiver|手机版|小黑屋|磨削技术网 ( 苏ICP备12056899号-1 )

GMT+8, 2025-7-12 18:33 , Processed in 0.152726 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表