找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
楼主: youxiare

FANUC宏程序

 火... [复制链接]
发表于 2012-12-11 14:48:02 来自手机 | 显示全部楼层
这个程序全吗,是不是还有几个参数直接赋值了啊?
发表于 2012-12-11 18:51:18 | 显示全部楼层
马斯平 发表于 2012-2-22 15:17   d$ [5 C) o5 b
楼上说宏程序没用的朋友,是对其不够了解或者没有从事过具体的编程工作。/ v+ {5 U& v$ p1 s
即使发出来了,也未必能看得懂, ...

: F. Z( J4 n- |  F- {IF[#532EQ99.0]GOTO900 系统不同它的宏程序也不相同发,我只懂点FUNUC的,如果用FUNUC的观点为来说你的这个问题它 只是一个在任何时间里给几个宏变量赋值的程序,我不知道这样赋值起什么作用?但同时我觉得它有些不怎么妥当的地方,5 d/ t2 u& I2 S5 p
N17 G. R# N$ H8 ^+ y/ Z2 }% ~" u% C- d; |
#3=3.0
1 L* b, H" }9 R& `1 n#4=3.0& q8 B- a% W% h: [; E
#5=5.0
% u& m0 S6 ^5 ~! e0 J3 p+ R#6=10.0 , T: I$ i- L! Y  K# H: Y  r# c
IF[#20EQ#0]THEN#20=30.0
% U8 Y% C; @7 i% D7 A  L5 e#532=0
( I  ~. J% G9 b, ~0 C#537=0+ C  Y  g+ l7 t0 n+ N. a
#538=0. }$ y: I8 H3 t+ h. F. o

) z# w. B- ^7 x: |4 Y/ @0 N6 ZIF[#3LE0]GOTO900+ B) P0 p4 m  N& n8 f
#10=#3011 在FUNUC这是读取当前的日期如今天就是20121210  u4 Q7 ?2 H: ~/ w2 s# F/ E
#11=#3012 这是时间如现在是184000; M+ Y+ j* S+ e0 F
#21=FIX[#11/100]0 `( q0 ^$ \$ }% j0 r
#22=#21-FIX[#21/100]*100这是指分钟40分
. q  @: a; y- L. ]  H' t* k#23=[#21-#22]/100 这是指时针18点
1 p% t$ X% }' S) a8 n3 w#12=ROUND[#22+#23*60] 这是把18点40分化为分钟7240  T% \% M# w0 {! o
#13=0 ; j) \& X9 s& D+ Q& G
IF[#10EQ#535]GOTO100
. Z! C8 k. D# u/ t3 m. }#13=1440
2 K7 I6 T: W' W& [N100! T2 v  P+ E9 P4 A3 f3 w5 P) H
IF[ABS[#12+#13-#536]LT#20]GOTO200 这个可能是为了避免0点和23点59造成的差异
  u5 D8 P' M/ YN110#533=17 U! g1 U8 n- ~/ A
IF[#3GE2]THEN#538=99.0
) f$ V: q+ u3 h; V* C/ J- KGOTO500 ' ]7 C( m( d5 i
N2005 B% ~* G* n. m9 a  Q! x
#533=#533+1 $ L& C9 p1 k6 t: n
#534=#534+1
6 H/ o$ L, B' {& W; @- lIF[#25EQ1]GOTO400 这个就不明白了,程序至终都没有25号我觉得有点不妥$ r; r4 e! U. H) P
IF[#533LE[#3-1]]THEN#538=99
8 C/ B* I8 f# S+ ?2 e- I' a( |IF[#533LE#3]GOTO500
2 R) ~6 S% }0 j" d  G5 mIF[#533GT#6]GOTO300 这段应该是不可能能读到的我设了很多时间都读不到这段- s8 y* \- S* ]5 j5 `* ~0 |
IF[#534EQ[#4-1]]THEN#538=99
* J+ y0 C: R; z2 Z3 f$ a: l; LIF[#534GE#4]GOTO500 3 ~) L8 Z. ]7 K. ]" c9 ~0 g; w
GOTO800
  E. ]! `# G8 k; MN300
: Z! X3 q7 h  g6 H1 YIF[#534EQ[#5-1]]THEN#538=99
# B( Y0 r$ f# r! p0 ^3 y( B; QIF[#534GE#5]GOTO500
: j/ Y$ t- `: z: }2 Q! AGOTO800
+ E2 N4 f2 Z: S- V# E  U5 s0 h* Z$ LN400
7 y1 y6 P: X6 D  c#538=99
  h) _1 p. @& G  d
* _/ V: m6 F! m+ S  [5 XN500, y+ D, [& b* l8 P% F1 t! K
#537=99.0 就是为了这些赋值?如果只是为了赋值直接赋不就有了?为什么要搞得这么复杂呢?所以我还是不明白,能否赐教一二
' w. N) }# _# J8 e#532=99.0 / [4 f+ X+ D: f& o
#534=0
$ d9 u1 ?: b- f6 @2 I0 T7 `. jN800
. h5 v+ H, p. T4 F) M& v#535=#10* Q2 F* E2 t! F6 q
#536=#12
$ J. N+ F& f2 T, Y7 f' J
发表于 2012-12-11 21:22:29 | 显示全部楼层
我是做数控机床的  宏程序好像是很多都是相似的吧
发表于 2012-12-12 15:44:05 | 显示全部楼层
#12=ROUND[#22+#23*60] 这是把18点40分化为分钟7240,不好意思我算错了应该是1120/ ~5 }8 O7 i" D4 b
#13=0
4 L( f. k; B' p; U7 _, m, T) ~5 LIF[#10EQ#535]GOTO1006 u! C, e: b) y# V" s& b1 y- C
#13=1440这个可能是说一天有1440分钟,这个程序把运行时间按分钟算到底是起什么作用呢$ J$ ~* h8 ?% ~) M) k2 _9 Z+ V6 B  q
发表于 2012-12-12 15:58:23 | 显示全部楼层
我喜欢探讨别人宏程序的编写方式,象这个程序我不知它起什么作用它涉及到运行时间问题,这个程序如果让人稍稍改一下就可能是病毒,它可以让机床在你想要的时间里修改机床参数,指令,甚至于每隔一定时间发生撞机事故。

点评

有段时间没来,没有及时回复,抱歉。 之前发的这个程序是整个程序的一部分,用于控制探针测量标定的,日期变化要标定,时间间隔超过设定值也要标定,同时,编制了连续测量的件数,以及连续测量过后,隔多少件测一次  发表于 2013-1-14 16:22
发表于 2013-1-16 08:47:00 | 显示全部楼层
虚缈 发表于 2012-12-12 15:58
0 D: b1 n( U" d. S5 X( i6 c/ t我喜欢探讨别人宏程序的编写方式,象这个程序我不知它起什么作用它涉及到运行时间问题,这个程序如果让人稍 ...
# [' E. b2 ]3 n+ P; `
我机床上也有一个关于测量方法的宏程序,也是读取了日期和时间,但它是以外部输入的格式写的,我就不明白了测量和日期的关系
" a' u5 p7 K' L, I) Y) n7 \- E' r2 S4 m) V% w
发表于 2013-1-28 10:13:10 | 显示全部楼层
这是我一个产品搞的部分!大家看看吧!
; H6 H: o7 ^. e. P% P2 o6 M
4 a% q2 O+ O4 n. E' D
( Z; \% h$ h% E0 e7 T1 c6 B

本帖子中包含更多资源

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

×
发表于 2013-1-28 19:48:32 | 显示全部楼层
正在学习
发表于 2013-1-28 19:48:38 | 显示全部楼层
加油
发表于 2013-1-30 19:59:06 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Archiver|手机版|小黑屋|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-9-23 12:45 , Processed in 0.078337 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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