找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 392|回复: 3

[原创] Mastercam函数opinfo用法之获取全局最大最小值

[复制链接]

433

主题

5759

回帖

901万

积分

管理员

积分
9014266
发表于 2021-12-15 19:59:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

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

×
在mastercam2017之前如果想要获取Z最大最小值,需要用过buff来实现,其过程为先预读深度值并写入缓存文件,再读取缓存文件并对缓存的数据进行比较获取最大最小值,另外由于buff缓冲器的数量是有限的(buff1-buff10共计10组),可能会导致buff不够用的情况发生。3 U* Q( U6 D- k9 L4 g( U

" ?5 s, F( v$ f6 _$ b8 I  S- s! k! g2 W0 w. K3 ]
) r; L/ J9 C" e& E
现在可以利用新版本的opinfo函数来实现,前面介绍过opinfo函数的用法,下面来实战一下opinfo函数的强大功能。3 S$ o0 v  Z6 o6 V& i. `

% f! _, A% @2 y2 D5 z  g$ h, }" f6 C/ m1 D8 S' F- \8 E
opinfo用法介绍如下:
, m, [0 b1 W' X+ r; C. s5 U1 g' l/ G$ ?3 ?
opinfo函数用法
) }0 F8 c0 O5 F$ d% U5 g( k9 G% q/ _" E8 U
6 l# n% l5 N# I
以下为相关代码,增加方法及步骤:
  K! i6 t. H: J: G
% T" e: {/ @+ s6 K1:增加以下标签,如有重复,需要改名。
& ~# u9 P/ g8 B* x6 q2 M6 F/ D  U7 S9 D! y* r# }7 H  u+ F
loop : 02:定义4个存储关于Z方向最大最小值的标签,,如有重复,需要改名。
  e+ z+ }: I4 h9 L& _- `9 k5 O3 Ufmt  2   z_min_comm
3 z: o1 q. K0 S! x' bfmt    2      z_max_comm5 a3 A6 I8 ~4 L* @: a
fmt  2   z_min_op
. c/ j1 U+ ~+ Dfmt    2      z_max_op 3:任意位置增加以下代码.,用于循环查找当前所选刀轨中Z轴的最大最小值,并输出最大最小,,如有重复,需要改名。
; u5 K3 r$ ^% e! l% J% T9 S* Ipcomm_max_min_for_all1 R- \5 T1 }: x8 ]
      z_min_comm = opinfo(19, 0)$ S" x3 S" I; u9 L5 G1 N
      z_max_comm = opinfo(16, 0)( v  f2 B& n( y$ i# I4 z3 e
      loop = 1
8 F; p  r. M5 ~; L2 s# }/ h% f9 M% R      result = opinfo(92, loop)7 ^% }$ p/ z1 N7 ?( Y+ _' ~% I
      while result <> -99999,
- d2 U# ]; v# N  {" f2 N        [
: I- z9 P6 g* L5 j! y5 t  D) R        z_min_op = opinfo(19, loop) ) M0 A" Z& O. Q) L+ S2 k
        z_max_op = opinfo(16, loop)
: n+ X" O4 m: C        if z_min_op < z_min_comm, z_min_comm = z_min_op
* s; [3 c) f! R" Q# `8 o        if z_max_op > z_max_comm, z_max_comm = z_max_op 0 `+ `. u1 W0 h: Z, T9 L6 \
        loop = loop + 1& H* J4 n0 k0 f7 n" ~1 C# Q& j+ {
        result = opinfo(92, loop)
; T) l: i9 t) p: M. W8 U        ]
2 ?5 _* y; F0 N+ @) m      "OAL MAX Z = ", *z_max_comm, e$; A# _# ]" v7 b& q+ [9 S! i2 I- @3 ]
      "OAL MIN Z = ", *z_min_comm, e$4:在psof$或任意想要输出的位置调用Z最大最小输出的代码块/ k( s; E8 i; S& d. j" h
pcomm_max_min_for_all以下为输出结果:
# O# B0 E8 x. A* d8 L) M( ?( V1 a6 K  R6 ~" g
%O0(TEST)
) H! z/ e* Y, ]1 j$ }(DATE=DD-MM-YY - 14-12-21 TIME=HH:MM - 20:06)
5 ]0 f2 X% K6 }( m  ^5 ^: K  x2 Z&#8203;(------------------------------)( S' i- ^% D+ Z! b0 G* Q3 S
OAL MAX Z= 1.5OAL MIN Z= -.12; p) ~- G) X# r* V7 `
(------------------------------). g4 h6 q6 A, b# h  _9 ]
&#8203;G20G0 G17 G40 G49 G80 G90(ROUGH PROFILES)T3 M6G187 P3 E.001G0 G90 G55 X-15.1795 Y-.7705 C0. S10000 M3G43 H3 Z1.5M8Z1.1949G1 Z-.12 F300.X-15.4662 Y-.3609 F150.G3 X-15.4775 Y-.3475 I-.082 J-.0573G1 X-15.5365 Y-.2885G2 X-15.7049 Y.1181 I.4066 J.4066G1 Y4.4823X-15.4184 Y4.7688G2 X-15.0118 Y4.9372 I.4066 J-.4066G1 X-14.3309X-14.2453 Y5.0041X15.2342X15.5995 Y4.6389G2 X15.7679 Y4.2323 I-.4066 J-.4066G1 Y.1968G2 X15.5995 Y-.2097 I-.575 J0.G1 X15.2342 Y-.575X11.428G2 X10.9577 Y-.4661 I-.0385 J.9035G1 X9.163 Y.6455X3.9039X2.1508 Y-.4415G2 X1.6819 Y-.575 I-.4689 J.7564G1 X-.5862X-15.0118G2 X-15.4184 Y-.4066 I0. J.575G1 X-15.4775 Y-.3475G3 X-15.4908 Y-.3363 I-.0707 J-.0707G1 X-15.9004 Y-.0495G0 Z1.5(ROUGH POCKET #1 WALL)G187X-10.9533 Y2.3478Z1.1949G1 Z1. F300.X-11.3196 Y2.8576 Z.12X-11.3505 F150.G2 X-11.6542 Y2.3622 I-1.4172 J.5282X-11.3196 Y1.7751 I-1.1135 J-1.0236G1 Y2.8576X-11.3378 Y2.8393G3 X-11.5873 Y3.1701 I-3.6384 J-2.4843G2 X-12.1415 Y2.3622 I-1.1804 J.2157X-11.5677 Y1.3386 I-.6262 J-1.0236G1 Y1.263X-11.0071Y3.1701X-11.5873X-11.5874 Y3.17G3 X-11.7835 Y3.3858 I-2.4389 J-2.018G1 X-12.1927G2 X-12.7677 Y2.8108 I-.575 J0.G1 X-14.3187Y2.4052G2 X-14.488 Y1.9978 I-.575 J0.G1 Y1.9136X-12.7677G2 X-12.1927 Y1.3386 I0. J-.575G1 Y1.2598G2 X-12.7677 Y.6848 I-.575 J0.G1 X-14.3187Y.638X-10.3821Y3.7951X-12.2972G2 X-12.1927 Y3.4646 I-.4705 J-.3305G1 Y3.3858G0 Z1.5M5G91 G28 Z0. M9G28 X0. Y0. C0.M30%&#8203;
, `6 r+ }. a- s' l1 Q& T
- W: o, [2 F/ m5 G5 g6 ^至此,全局Z轴最大最小值获取并输出代码增加结束。
0 d" L% S. s! S: v/ Z* z2 D4 O: p9 i9 e4 {0 W
以上代码结构相对buff的用法,更简洁,更容易,更好扩展功能,此方法采用了新版本中opinfo函数的使用,让实现的过程更简单。
) l# a9 Z6 ]3 o9 R

  Z0 ~# }5 o6 A  l( w% [9 T" g, k5 _
; K% n# j8 z& C$ W0 Y6 t6 n
' ?1 Y2 ^; V' X2 n5 q
opinfo函数支持版本:Mastercam2017及更新的版本。
5 `) U6 ?8 K' c' N" j5 c

: N- e/ |0 \7 V- s  l5 f
. H' i' d! c+ E* {- _' T" _; S下期将介绍获取每个刀具及每个操作的Z最大最小值。5 |2 U1 n' m) t) A+ D

: B- \7 A( ~  Y- z3 [. y5 d# l( e4 b# `" J

: N, k% N+ b4 u. z& h$ l
2 y/ x; P* S* m! _+ g4 W7 ~: M3 ]$ l5 x! V# _; o

6 C9 s8 v( ]( k( e. `$ `
( H& _/ K& H! l: m1 @! K5 k
. B: j( L) M  A$ E1 F; A

0

主题

75

回帖

85

积分

注册会员

积分
85
发表于 2023-10-12 09:44:36 | 显示全部楼层
谢谢分享
回复

使用道具 举报

0

主题

75

回帖

117

积分

注册会员

积分
117
发表于 2023-10-13 21:42:15 | 显示全部楼层
看着挺复杂的
回复

使用道具 举报

0

主题

14

回帖

38

积分

新手上路

积分
38
发表于 2024-7-17 09:44:58 | 显示全部楼层
谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

QQ|Archiver|手机版|小黑屋|若枫后处理论坛 ( 苏ICP备11015087号-1|苏公网安备32059002001368号 )

GMT+8, 2026-8-22 15:06 , Processed in 0.148871 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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