找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
楼主: youxiare

FANUC宏程序

[复制链接]
发表于 2012-12-10 00:22:57 来自手机 | 显示全部楼层
马斯平 发表于 2010-11-25 15:03, G$ P* t2 v& f2 d) c$ O$ Y& G3 F/ Y
宏程序简单点说就是把宏变量运用到程序中,从而实现特定功能的程序。5 d$ J: ^4 b3 }
大家都知道变量可以进行数学或逻辑运 ...

# D& [* o7 s( i+ }$ U( M嗯 有道理
发表于 2012-12-11 14:48:02 来自手机 | 显示全部楼层
这个程序全吗,是不是还有几个参数直接赋值了啊?
发表于 2012-12-11 18:51:18 | 显示全部楼层
马斯平 发表于 2012-2-22 15:17
) J  z$ W# k; [; h. Y楼上说宏程序没用的朋友,是对其不够了解或者没有从事过具体的编程工作。
+ I: |: e+ t: ?即使发出来了,也未必能看得懂, ...
) F$ F& B  u$ R, A
IF[#532EQ99.0]GOTO900 系统不同它的宏程序也不相同发,我只懂点FUNUC的,如果用FUNUC的观点为来说你的这个问题它 只是一个在任何时间里给几个宏变量赋值的程序,我不知道这样赋值起什么作用?但同时我觉得它有些不怎么妥当的地方,. s( W4 R0 b* x9 \+ y5 m8 m
N1
7 J2 t9 ~5 @. p% ~* Z#3=3.04 h, c8 ^) J' I) {/ V
#4=3.0
1 c' |9 g) A8 N# E8 o6 q. V  F  ~#5=5.0
. b) b. l9 H' ]; w#6=10.0
" S' C/ \% G4 U+ _" JIF[#20EQ#0]THEN#20=30.0
  X" |# B% S3 i6 N1 J/ h, N#532=0
0 S. L' {* m% U7 r! Y2 \#537=04 ?( U  o# J$ K+ o9 j7 V
#538=0- R- \9 z+ z  q* u- s
, `9 q( u: s4 I9 n& X
IF[#3LE0]GOTO900
0 Z9 G' T: ^2 q+ I; V#10=#3011 在FUNUC这是读取当前的日期如今天就是20121210  }: r* |4 b  J/ i* q9 k! E4 [7 V
#11=#3012 这是时间如现在是184000+ O# b4 k% \/ o, M) i
#21=FIX[#11/100]
- S! t2 V' k( H/ c1 u$ |#22=#21-FIX[#21/100]*100这是指分钟40分
6 ]2 v, m0 i) f#23=[#21-#22]/100 这是指时针18点0 w/ {5 q% i8 q& b; _8 |6 ^
#12=ROUND[#22+#23*60] 这是把18点40分化为分钟7240* ^& X3 }+ Z! P6 S' ?
#13=0 1 {/ Y+ W; h: k. I
IF[#10EQ#535]GOTO100
7 y$ A; `+ k" ~7 Z#13=1440
7 k* X  M: ^; k" ^N100
$ h' v# i5 F# N" p5 [. VIF[ABS[#12+#13-#536]LT#20]GOTO200 这个可能是为了避免0点和23点59造成的差异
& V8 v8 w6 _3 c  f3 UN110#533=16 Z) [$ Z- n, D% {) P/ H3 {
IF[#3GE2]THEN#538=99.0
4 S& _% h4 j4 @6 t: aGOTO500 & O$ q! I0 ~/ k. \# ?1 i& u2 X6 f  S
N200
2 r" N: b$ o( n( W; z: t/ N#533=#533+1 3 E  Y9 w/ ^3 \( S/ ~' j2 F% C0 B
#534=#534+1
1 Q) @, ]( I7 j) t1 e) YIF[#25EQ1]GOTO400 这个就不明白了,程序至终都没有25号我觉得有点不妥7 g9 _7 Y+ K+ @: S" w
IF[#533LE[#3-1]]THEN#538=99
+ w: ?4 ^% B3 e7 w3 e  yIF[#533LE#3]GOTO500 5 p! ~! n1 u2 ^8 S7 A/ ?2 @
IF[#533GT#6]GOTO300 这段应该是不可能能读到的我设了很多时间都读不到这段
$ y$ w$ r! V& \3 s* CIF[#534EQ[#4-1]]THEN#538=99
8 |" H4 J' ]' b9 M3 G5 u# CIF[#534GE#4]GOTO500
, Q. u( t$ {2 {+ x- n/ aGOTO800 ) |# S% f0 f* }: e; Z  D' X7 c. v
N300$ g: z1 [' x: E0 G! u& c1 J# w  r
IF[#534EQ[#5-1]]THEN#538=99 4 [1 ?: [1 ~. b( U, z- ]
IF[#534GE#5]GOTO500 9 T, n; ]2 ~9 `8 n/ E4 a$ p8 j
GOTO800 # L  F( v# D5 R* f( y9 ?; u
N4005 X( Z+ _$ i( n$ z
#538=99
1 Y, W: p  {$ k7 O/ m0 E3 }; y- m! {# a/ A; O% t
N500/ e& s) S! p' y( c" X0 d
#537=99.0 就是为了这些赋值?如果只是为了赋值直接赋不就有了?为什么要搞得这么复杂呢?所以我还是不明白,能否赐教一二
0 Q/ X/ O8 j# P/ |1 k( f9 V#532=99.0 ! y' ?# D$ h! d3 M+ V
#534=0
8 k' [  K" U! O; ?/ K5 {% CN800
6 I  ^7 L# q- c( C! D$ D#535=#10
, G1 f5 O+ _) z% m: x#536=#12
' o9 _! H  q: \4 O$ j, x$ j6 ]
发表于 2012-12-11 21:22:29 | 显示全部楼层
我是做数控机床的  宏程序好像是很多都是相似的吧
发表于 2012-12-12 15:44:05 | 显示全部楼层
#12=ROUND[#22+#23*60] 这是把18点40分化为分钟7240,不好意思我算错了应该是1120! C' q( Z2 Q' {2 H0 Z' K0 }$ M* b
#13=0
2 U% h* J( v% S* I" I- sIF[#10EQ#535]GOTO1009 B1 i6 _8 e  ^* g2 E. Y% Y
#13=1440这个可能是说一天有1440分钟,这个程序把运行时间按分钟算到底是起什么作用呢
1 M* J9 X8 A2 ^3 @* g" T
发表于 2012-12-12 15:58:23 | 显示全部楼层
我喜欢探讨别人宏程序的编写方式,象这个程序我不知它起什么作用它涉及到运行时间问题,这个程序如果让人稍稍改一下就可能是病毒,它可以让机床在你想要的时间里修改机床参数,指令,甚至于每隔一定时间发生撞机事故。

点评

有段时间没来,没有及时回复,抱歉。 之前发的这个程序是整个程序的一部分,用于控制探针测量标定的,日期变化要标定,时间间隔超过设定值也要标定,同时,编制了连续测量的件数,以及连续测量过后,隔多少件测一次  发表于 2013-1-14 16:22
发表于 2013-1-16 08:47:00 | 显示全部楼层
虚缈 发表于 2012-12-12 15:58 2 Y; `1 A5 ?$ o$ O5 N
我喜欢探讨别人宏程序的编写方式,象这个程序我不知它起什么作用它涉及到运行时间问题,这个程序如果让人稍 ...

" f3 c* g: N" J+ H  J0 d我机床上也有一个关于测量方法的宏程序,也是读取了日期和时间,但它是以外部输入的格式写的,我就不明白了测量和日期的关系
/ U5 t3 c4 A9 Y, h$ S2 y: e6 v2 z7 g# B3 @
发表于 2013-1-28 10:13:10 | 显示全部楼层
这是我一个产品搞的部分!大家看看吧!! c- F- k# s2 M" m

; N5 l. r+ {+ M1 t- X; N
- j/ w6 b, |/ g! W. I4 P# U

本帖子中包含更多资源

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

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

本版积分规则

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

GMT+8, 2025-6-22 17:09 , Processed in 0.062475 second(s), 14 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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