找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 750|回复: 3

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

[复制链接]

433

主题

5759

回帖

901万

积分

管理员

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

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

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

×
在mastercam2017之前如果想要获取Z最大最小值,需要用过buff来实现,其过程为先预读深度值并写入缓存文件,再读取缓存文件并对缓存的数据进行比较获取最大最小值,另外由于buff缓冲器的数量是有限的(buff1-buff10共计10组),可能会导致buff不够用的情况发生。3 p: a# c9 V/ j1 v% ^. P

6 U4 L) i8 m$ P. M* d  Y6 w3 V. V4 K  R6 i  Q( O  x5 s
6 \* v* U3 b3 |+ V  ^
现在可以利用新版本的opinfo函数来实现,前面介绍过opinfo函数的用法,下面来实战一下opinfo函数的强大功能。
+ ~( _2 ~% C# ^0 v9 y! p: p0 D

  L8 n% O. \+ q- ^+ _9 j2 w7 V/ n# q6 y% ?2 _
opinfo用法介绍如下:
, }) f8 k$ |! _" B/ E$ A% |! c. k+ s4 b& u. |$ a1 X" F, y
opinfo函数用法
* n( z4 w$ G0 e8 K/ N4 F
6 o0 G5 F) c+ L! }3 p2 y$ j5 \
) G6 v$ e$ w; X7 v; d8 X, g. [以下为相关代码,增加方法及步骤:* P* m2 r" A9 k1 J

4 x3 F9 c8 K7 v/ q6 [$ f1:增加以下标签,如有重复,需要改名。9 L7 t( d& ?- F0 L
7 l% }" x5 c- k6 D( E7 b5 y
loop : 02:定义4个存储关于Z方向最大最小值的标签,,如有重复,需要改名。
+ I" v3 m1 n: jfmt  2   z_min_comm8 j4 h3 a! O+ k' C
fmt    2      z_max_comm
8 g7 c: k- B! D, ~) Afmt  2   z_min_op. g5 l# F1 f$ ]
fmt    2      z_max_op 3:任意位置增加以下代码.,用于循环查找当前所选刀轨中Z轴的最大最小值,并输出最大最小,,如有重复,需要改名。
8 s: G" K* j& k" w2 G5 e9 lpcomm_max_min_for_all
+ K# N  _# f! Q, M2 S+ C2 m      z_min_comm = opinfo(19, 0)5 `# ~8 u- J7 f$ e
      z_max_comm = opinfo(16, 0)
6 E5 B* n! `* D' z/ D+ ?      loop = 1
3 l; b/ s0 }6 I% h& `- c7 R      result = opinfo(92, loop)$ K( y& E4 |" t. c* o% s# V
      while result <> -99999,+ T* s8 j8 c+ U0 R$ V, D
        [
6 J  z; y' O$ s. H0 R5 p" U1 a        z_min_op = opinfo(19, loop)
' H4 M8 ?) l2 ?) b        z_max_op = opinfo(16, loop)
7 b' }- Z- G' n' ^% C3 k        if z_min_op < z_min_comm, z_min_comm = z_min_op
5 C# x, `# h! I) v% n        if z_max_op > z_max_comm, z_max_comm = z_max_op
) U: X' `* u! P) h4 R        loop = loop + 1: w5 u( @$ |0 j9 e6 S! H7 z
        result = opinfo(92, loop)  l& c, `& ]. S; u" R
        ]8 [2 m% O' W2 q% V) t1 @/ d& z3 f
      "OAL MAX Z = ", *z_max_comm, e$& J$ v, v' V" G: K! U
      "OAL MIN Z = ", *z_min_comm, e$4:在psof$或任意想要输出的位置调用Z最大最小输出的代码块
( M, [1 i; F/ Zpcomm_max_min_for_all以下为输出结果:
1 r& b* G6 l& R" l* i4 `, m1 p0 y. i, U7 e3 R$ M
%O0(TEST)5 o& T9 p3 D5 a* s$ m+ W
(DATE=DD-MM-YY - 14-12-21 TIME=HH:MM - 20:06)2 q1 e2 ~. `7 `: D% M
&#8203;(------------------------------)9 n7 L3 m' a  O3 c
OAL MAX Z= 1.5OAL MIN Z= -.12
" e/ O" S) i& c% h# c# l  n9 c0 o(------------------------------)" V1 G3 D! U3 x2 D# S* [$ `
&#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;
8 q. R4 @& R: @, t4 g& Y$ Q4 y, j7 `% }1 ]8 N- s9 }
至此,全局Z轴最大最小值获取并输出代码增加结束。
' w+ b2 x, a3 n: Y1 v
, G3 N  z# |6 q; r; t1 i& P4 D' }以上代码结构相对buff的用法,更简洁,更容易,更好扩展功能,此方法采用了新版本中opinfo函数的使用,让实现的过程更简单。; u' E$ o  q/ C. L, P. F8 U9 I

# R9 y/ t: h* e' Q3 L# Y; `6 Z, J* {% L
: M) b1 y+ [. V( T
opinfo函数支持版本:Mastercam2017及更新的版本。. U& Y& q# x  v$ F0 H
# h, I" b0 n- h

! ~9 _: y& m7 G下期将介绍获取每个刀具及每个操作的Z最大最小值。
6 i" \, E* c( e. d3 P

7 {- r# w; `9 O- x
( z( A8 `( M2 S6 ^0 m7 ~. k8 n! @" k5 i4 T
$ z4 a# B  R0 W' J$ V1 ]5 t: \6 q
8 s/ }) n- L6 z

& k. U/ Q) E* L5 p7 y, J; e8 f& {
3 ^: Q4 M  u1 _3 O$ Q& Y, |

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-10-19 04:14 , Processed in 0.168952 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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