机械社区

标题: 谁能看懂这西门子程序就牛逼了 [打印本页]

作者: liu65178454    时间: 2010-10-12 16:31
标题: 谁能看懂这西门子程序就牛逼了
%_N_L9851_SPF8 }( O: M' m% |2 q# i# {2 E
PROC L9851(INT TOOLNO)
3 j& O' N# t8 u. n0 uDEF INT ACT_TOOLNO( }& U7 f; b( M- j; E/ H5 J
DEF REAL ACT_TOOL_LENGTH,W_POS,V_POS
3 Y+ v8 w9 H$ ^* HIF $P_SUBPAR[1]==TRUE- @1 _, E! u+ v
ACT_TOOLNO=TOOLNO
2 U" i; p4 }; X0 g& P' s- cELSE
6 {3 h* U# J# S5 v, A6 E* {ACT_TOOLNO=$P_TOOLNO1 m% G$ }8 L3 {/ D; A
ENDIF' n$ R4 f4 X9 n1 H9 p1 z
ACT_TOOL_LENGTH=$TC_DP3[ACT_TOOLNO,1]+$TC_DP12[ACT_TOOLNO,1]2 f$ Z8 ~* ?, n# z# _+ m* n
W_POS=$AA_IM[W]& `) ]# J" \% V0 {; L0 e
V_POS=$AA_IM[V]8 L% m& j+ R  R3 V- q1 M* a
$P_CHBFR[0]=CTRANS(Z,ACT_TOOL_LENGTH-W_POS-V_POS)
4 `. v: c! y* lR0=$P_GG[8]
5 f( ?$ b6 n& o1 vG[8]=R0* {/ n4 `2 f! y2 A) X& C
M17
作者: lxg254    时间: 2010-10-15 01:32
这是一个循环程序
作者: hua_102a    时间: 2010-10-15 08:34
回复 2# lxg254 7 w8 v( V( ~% T, a8 K2 Y

5 T2 r3 e( W& ^! R0 N$ X! N: H  U+ s/ g3 `; |
    专业人士顶
作者: liu65178454    时间: 2010-10-15 10:24
镗铣床,每把刀镗杆和滑枕长度不一样,这程序是刀补计算,z轴。
作者: tuya194    时间: 2010-10-15 23:15
我承认,我看不懂
作者: 重庆打杂工    时间: 2010-10-15 23:21
我承认,我看不懂
( |0 U1 E, h6 F  c+ d# m. Utuya194 发表于 2010-10-15 23:15
3 t- F6 d1 {; \' F2 C! s% C; K" ?
1 J3 w: Z5 H7 l; u% o
) L% F0 c6 w1 e: L7 {8 H) X# p% ^
    牛B的人不屑回答,所以楼主自问自答了
作者: liu65178454    时间: 2010-10-16 19:24
你的意思 是你牛逼 了
作者: wq96151    时间: 2010-10-19 21:10
知道了TOOLNO   $P_SUBPAR[1]等这些是什么就知道了
作者: huangpan1234    时间: 2010-10-20 22:43
不是这行                               ,
作者: yanyongqing    时间: 2010-10-21 17:12
这是高级编程里面的内容。
作者: yanyongqing    时间: 2010-10-21 17:14
做系统程序的才编这样的程序。加工的很少有人能编这样的程序,能编这样的程序的人都不做加工了。
作者: liu65178454    时间: 2010-10-21 23:19
R0=$P_GG[8]. E6 V1 W6 U! ^, r! r% ]0 k
G[8]=R0
) m3 o3 N  U% p/ X1 y: \& u哪位高手能帮我解答这块,小弟在这拜谢了
作者: 被遗忘的一族    时间: 2012-12-20 18:18
是系统子程序
作者: tongpoyu52260    时间: 2012-12-20 21:10
这个程序应该是软件编的,一般好像是在开头部分!" h7 |' [. Y* a+ s3 W2 Q% c
以前也遇到,但一直也没特别关注呢!7 ~% e6 z9 l: R0 B/ @9 p
这个要问编程的工程师了
作者: jihuangy    时间: 2012-12-20 21:37
看不懂,但是不难。
作者: 沙漠水手    时间: 2012-12-21 11:01
牛,全是调用的标准循环吧
作者: congtou822    时间: 2012-12-21 14:09
呵呵
作者: 麦兜11    时间: 2012-12-21 17:17
感觉就是是英语编的宏程序。看不懂
作者: djc199006    时间: 2012-12-22 08:38
这应该是专机上用的程序,以前我们厂有一台加工中心也是这样的程序,这程序看懂也没啥用,知道怎么加刀补就OK了。
作者: yanxuan908    时间: 2012-12-22 10:22

作者: yanxuan908    时间: 2012-12-22 10:22
菜鸟路过
作者: 虚缈    时间: 2012-12-24 23:33
我确实不懂,给我讲我也不懂,但我想问一个问题在机床上你SUBPAR这样的单词如何让它组在一起?在FUNUC如果有这样的它显示的是S U B P A R都是单个的字母不组成单词
作者: onelee    时间: 2012-12-25 06:42
类似于C语言,
作者: assd12321    时间: 2012-12-26 19:23
高级编程的内容!一般用不到!
作者: 191164729    时间: 2012-12-31 22:24
看不懂,目前还是菜鸟水平
作者: wangice    时间: 2013-1-21 17:35
本人也是自学的840d,其中有可能解释有误,仅供参考交流。/ ?4 ~- `% O) o2 s8 ]: Q
+ t& H+ g; Q% c  {7 E! t
%_N_L9851_SPF
8 t. q& G  O5 Z( {* N7 a, _( u6 M# N( O$ U
PROC L9851(INT TOOLNO) :传递来自主程序或上一子程序的用户自定义变量TOOLNO,变量类型INT(INT类型:带正负号的整数)
$ N6 K: |6 D9 ~& h+ D3 m2 I
9 t5 j) c: Z  v1 u) `' D DEF INT ACT_TOOLNO     :新增用户自定义变量一个ACT_TOOLNO,变量类型INT
3 b2 I" f; j: `2 k4 z0 `
) g1 B9 _+ ]0 @ DEF REAL ACT_TOOL_LENGTH,W_POS,V_POS  :新增用户自定义变量3个ACT_TOOL_LENGTH,W_POS,V_POS,变量类型REAL(REAL类型:实数)
9 l6 V+ U! D) ^$ a, e$ \
, F7 u4 @; K* a6 m IF $P_SUBPAR[1]==TRUE                 :检查第一个形式参数是否有效(目的是检查上一级程序传递下来的自定义变量TOOLNO是否有效)2 K; M3 Q9 ?: V7 k' S6 b$ X
- P. r( V7 T5 r  n* P4 i4 G
ACT_TOOLNO=TOOLNO                     :如果有效,ACT_TOOLNO赋值=TOOLNO* C9 P, {# m/ O8 ]

, _; p8 N: s+ i6 a- Y2 b' N: o2 a ELSE                                             :否则
3 h$ a( o$ ]& J% u: ~4 F: @! B) j1 L7 S& f3 s: u9 W  X
ACT_TOOLNO=$P_TOOLNO               :ACT_TOOLNO赋值=当前主轴刀具号码(这个号码不等于程序内的T“XXX”的XXX)4 n# Z; {/ u7 ?+ v6 b, ^4 e

7 w' a, Q, f9 p: R0 Q' n5 _ ENDIF                                            :结束判断2 x2 `7 V4 A: K: l: I5 D/ B+ i
+ Y; g6 M% u8 J( }% c( G
ACT_TOOLNO_LENGTH=$TC_DP3[ACT_TOOLNO,1]+$TC_DP12[ACT_TOOLNO,1] :自定义变量ACT_TOOLNO_LENGTH计算赋值=当前刀具第一长度+第一长度磨损量; k4 D% X% t0 o! F, X' n  p

+ [7 i: @" R6 X W_POS=$AA_IM[W]                       :自定义变量W_POS赋值=当前W轴在机床坐标系下的位置$ q" k# I. L6 R- I

8 t5 s2 E. F/ h& L; |) e V_POS=$AA_IM[V]                         :自定义变量V_POS赋值=当前V轴在机床坐标系下的位置& |! q% s7 i3 v2 c2 X
( R4 d# h6 U8 R# ~& v% t- K) B
$P_CHBFR[0]=CTRANS(Z,ACT_TOOL_LENGTH-W_POS-V_POS) :全局框架Z定义:Z=ACT_TOOL_LENGTH-W_POS-V_POS(使所有坐标系做Z的增量)
5 r% o: k; C- K# z$ h. f
; F1 s4 B; s. L% Y! a0 B R0=$P_GG[8]                           :定义R0,记录当前所处坐标系% ]# }" C/ ?9 ^2 ^2 M" c

$ o# U2 t7 U( w, h7 a8 n2 U0 z G[8]=R0                                  :重新进入坐标系,为R0记录的坐标系。
) v# e% \/ u% K/ ]+ L: N1 V
' U% D8 Z$ {. j. Y; I9 N M17                                        :子程序结束,返回上一级程序
作者: 认真便输了!    时间: 2013-1-21 19:39
我承认,我也看不懂
作者: 吃玩乐    时间: 2013-1-21 21:41
我承认,我看不懂
作者: 伤情于剑    时间: 2013-1-21 22:26
就算看懂了,也成不了牛逼啊




欢迎光临 机械社区 (http://www.cmiw.cn/) Powered by Discuz! X3.4