找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 232|回复: 3

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

[复制链接]

433

主题

5759

回帖

901万

积分

管理员

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

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

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

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

% q* _0 ~7 @0 }9 a# p, q+ X2 V' U) ?, F5 z4 O6 _) h$ [
7 n. {* }0 U" `$ @$ s4 h! f8 c9 P5 t% J
现在可以利用新版本的opinfo函数来实现,前面介绍过opinfo函数的用法,下面来实战一下opinfo函数的强大功能。- J1 ^% E) S9 m9 F; l) _# W! z$ H
- P/ ?7 v* x  W
6 }) j  W7 i! c: p1 f; {; D' D
opinfo用法介绍如下:6 Q. c  p9 `6 v; ]

! n% b' d; n5 mopinfo函数用法
! G/ B$ x0 \- U8 }2 u7 K2 Y9 l) p0 \' G6 r4 D- E4 O; F' ?
/ G4 p: u; \# B/ k5 P
以下为相关代码,增加方法及步骤:
9 K! q4 l0 l8 r+ ~
# e! z$ ^4 J$ u' I" a0 D* R1:增加以下标签,如有重复,需要改名。5 }% P& d) j" q+ S& s( k2 U4 p
7 i; ^6 j+ C, N( r! o
loop : 02:定义4个存储关于Z方向最大最小值的标签,,如有重复,需要改名。9 _- V5 D( \2 y) i$ g6 g8 W- ?3 H
fmt  2   z_min_comm$ E1 a( @' E: n7 T+ }; [1 j
fmt    2      z_max_comm0 @4 w9 `4 [7 I7 m/ C8 Y5 y
fmt  2   z_min_op
. X2 y; V+ F& o2 }6 T" \& ?fmt    2      z_max_op 3:任意位置增加以下代码.,用于循环查找当前所选刀轨中Z轴的最大最小值,并输出最大最小,,如有重复,需要改名。
" [0 m5 T5 K& }5 Q, @' V! V# [pcomm_max_min_for_all
* {% y& f8 V  x  A5 C      z_min_comm = opinfo(19, 0)
0 A1 E9 L* y" }7 }' I3 z7 ]& Z      z_max_comm = opinfo(16, 0)/ x) H' C6 Q: E9 _2 s
      loop = 11 R: V+ I- V9 F- W& A9 i7 @& ^
      result = opinfo(92, loop)
0 v& N* \% F- e6 G# z      while result <> -99999,
; i" W4 H. m6 q4 k% O0 _  A        [
' f' @4 J# ~  T- t        z_min_op = opinfo(19, loop)
4 H3 p9 m1 t  l& g- w        z_max_op = opinfo(16, loop)
& ]1 x9 Y& ]2 @. M2 X2 M" d  z        if z_min_op < z_min_comm, z_min_comm = z_min_op9 @% z$ U3 n- X  V' f" b. n
        if z_max_op > z_max_comm, z_max_comm = z_max_op
( N5 ^5 B- ~4 J& N        loop = loop + 1* R) W3 K; S0 c+ D  I2 }
        result = opinfo(92, loop)
5 F( x4 e3 k  E$ O% j7 l! r        ]
  |. N7 C* o0 x. K% f      "OAL MAX Z = ", *z_max_comm, e$, E# c% I4 [7 j" }& t
      "OAL MIN Z = ", *z_min_comm, e$4:在psof$或任意想要输出的位置调用Z最大最小输出的代码块' ^* y. w% y/ @6 o* ^% z
pcomm_max_min_for_all以下为输出结果:
3 v# W3 G" H: \* J6 R0 `8 Z9 i
3 t0 q6 K* F* f, h%O0(TEST)
' r' s) \+ u! x# G9 x(DATE=DD-MM-YY - 14-12-21 TIME=HH:MM - 20:06)' V( @0 t6 M  ]6 n
&#8203;(------------------------------)' @$ l4 E0 r. y* N  T. T$ j
OAL MAX Z= 1.5OAL MIN Z= -.12
) Y/ x$ K& [& k. J7 j) q/ U(------------------------------)
2 R+ \/ ^" s7 X4 M0 k&#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;1 u$ v$ S& J, \2 O& Z2 X2 [
% D3 {/ }' q7 |1 v0 R
至此,全局Z轴最大最小值获取并输出代码增加结束。
; R( I3 n6 ]0 e. p/ f* M( X  B( R( @' H9 Q
以上代码结构相对buff的用法,更简洁,更容易,更好扩展功能,此方法采用了新版本中opinfo函数的使用,让实现的过程更简单。
* v& u' L8 L  {2 W5 ^

% V: q9 _. C) @$ ]7 C' C1 D+ E/ e9 M4 `1 k9 T% Q

0 b+ @  P6 v0 Q' Vopinfo函数支持版本:Mastercam2017及更新的版本。% T, [( |# |" b* c9 k

0 j  @' i5 z$ r" T3 p9 R& D
4 b# ?5 M" p6 J' T* V8 c/ O+ L下期将介绍获取每个刀具及每个操作的Z最大最小值。
; z6 M+ n3 d& `3 V

$ h' W( m. o7 r' T  H% t5 V- B% Z" U! G5 p5 }* k0 E1 V7 I, x! r

  h& z$ h/ E0 d, x& P
8 |2 o2 V8 g7 P6 m/ z# D5 R  D
# Y. u* S6 {5 g/ Q' K2 ?
6 d3 u8 t/ l* V; |

# w& Z2 w, Q/ z+ R* {
- ~: b* i6 p! U8 @  E

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-7-20 00:55 , Processed in 0.372440 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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