久久久国产一区二区_国产精品av电影_日韩精品中文字幕一区二区三区_精品一区二区三区免费毛片爱

機(jī)械社區(qū)

標(biāo)題: 西門子840d 子程序問(wèn)題求教 [打印本頁(yè)]

作者: wangice    時(shí)間: 2015-8-25 17:42
標(biāo)題: 西門子840d 子程序問(wèn)題求教
參數(shù)傳遞問(wèn)題,希望有經(jīng)驗(yàn)的朋友給個(gè)幫助
: S! z! i# g6 M& [, k" [主程序:
. n/ X9 g$ L, oLB_1234(1)      ;調(diào)用子程序
% Y7 g( F4 y2 O6 P9 KM30  o' ]; J( k2 H: w1 w" t) w& P' Y) Q

" V2 h3 Z  {; d: b4 ]子程序LB_1234:
  ^5 L" I' I3 U! W! {proc LB_1234(int type)* g* @4 j- I7 I6 h% n7 V
if ($p_sbupar==true )
5 l" J. c  ~( b% D4 z9 Q. [4 ]gotof xxx
. w, n( T$ W2 C. a- _0 ^$ Celse
/ a4 W. Y: o3 f8 dgotof xxx" J/ s3 x& H% \7 x: U  H* @8 s

( H+ K" n: ^- q! G. ?9 p1 L
7 c  r6 k1 [/ B9 b) Z/ ]( v4 z4 n- w. u
ret
* q2 f: m5 R& T, D  E3 D1 v4 K( m9 ^: U: X) z( l( b; ]9 x( P- C
如果主程序內(nèi)不賦參數(shù)傳遞,程序可運(yùn)行。一旦賦值了參數(shù)傳遞,主程序就報(bào)錯(cuò)未激活未定義之類。感覺(jué)賦值子程序需要激活某參數(shù)或權(quán)限之類的,望高手解答。2 H% A9 r, ^% k/ |

作者: 螺旋線    時(shí)間: 2015-8-25 20:05
主程序里沒(méi)定義
作者: wangice    時(shí)間: 2015-8-25 21:00
螺旋線 發(fā)表于 2015-8-25 20:05 5 Q8 j% x3 r( O
主程序里沒(méi)定義
8 ^! X3 X3 T% M: a
還要定義什麼?  r! ~; W+ Z3 k, N# B5 u
7 ?7 X' Q( ~1 O6 P5 n5 S

作者: 螺旋線    時(shí)間: 2015-8-25 23:33
wangice 發(fā)表于 2015-8-25 21:00 3 ?% u3 i9 c# _- d( U
還要定義什麼?

. F1 E6 U! U6 _4 I9 P& p所以說(shuō)啊,看書要仔細(xì)。
6 A* n  N: A! l9 L+ d) q/ b5 _書上寫的很清楚,要用參數(shù)傳遞的子程序調(diào)用,要在主程序里先聲明,用EXTERN。
9 G7 |* h9 C6 D9 r你寫的子程序就是抄書上的,雖然沒(méi)抄全。但為什么不把主程序抄全?
+ [1 h* I# P4 _; w$ F# c1 E5 L5 n而且報(bào)警也提醒得很清楚啊。- X4 ]4 p0 ]; I; Z
% _2 x. F7 U0 t& o& x2 B" \; E

作者: wangice    時(shí)間: 2015-8-26 05:07
螺旋線 發(fā)表于 2015-8-25 23:33
0 x# }9 N4 {! m所以說(shuō)啊,看書要仔細(xì)。8 j* \9 T, I: a4 c) W
書上寫的很清楚,要用參數(shù)傳遞的子程序調(diào)用,要在主程序里先聲明,用EXTERN。
2 X! ~& b- Z0 f' N+ K ...

1 |9 Z' i+ J7 S9 S5 \" r需要在主程序中聲明嗎?7 b7 I: z! N6 p- b) \, B8 |2 S
很多使用西門子系統(tǒng)的機(jī)床製造商,在系統(tǒng)內(nèi)添加了很多自己製作的循環(huán)程序,這些程序在運(yùn)行中也是可以賦值的,甚至可以在MDA模式下只運(yùn)行賦值的子程序這一條指令,這個(gè)過(guò)程中也沒(méi)有對(duì)賦值有過(guò)任何說(shuō)明。
& f  d0 k% G; U不知道他們是通過(guò)什麼方式實(shí)現(xiàn)的。
5 d5 W- s, Q0 G; ^
作者: wangice    時(shí)間: 2015-8-26 05:29
西門子標(biāo)準(zhǔn)循環(huán)指令CYCLE81(,,,),在使用中有誰(shuí)對(duì)括號(hào)內(nèi)的賦值有聲明嗎?唯一的區(qū)別是,不賦值或者關(guān)鍵項(xiàng)未附,該程序無(wú)法運(yùn)行。
作者: wangice    時(shí)間: 2015-8-26 21:00
請(qǐng)不要無(wú)腦的抄書,我知道在主程序開(kāi)始時(shí)聲明EXTERN加類型就能使子程序傳遞參數(shù)了。
$ L8 i- b/ Y- v6 d) r但是為什麼有的程序不用聲明,他們是使用什麼方法?
作者: wangice    時(shí)間: 2015-8-28 21:10
怎麼區(qū)分是循環(huán)或者不是循環(huán)的子程序?
作者: wangice    時(shí)間: 2015-8-29 22:38
我記得我分別存在製造商循環(huán)、標(biāo)準(zhǔn)循環(huán)和子程序里,都不能直接賦值調(diào)用。
作者: wangice    時(shí)間: 2015-8-30 20:47
嗯,這個(gè)界面是Power line的老界面了,我們現(xiàn)在已經(jīng)開(kāi)始用Solution Line了。" P/ `/ t" ?2 ~2 |2 v' S5 m4 H2 `
明天我回去找找看試一下,多謝指點(diǎn)。
作者: wangice    時(shí)間: 2015-8-31 12:18
很可惜,還是沒(méi)成功😭
作者: wangice    時(shí)間: 2015-8-31 15:38
給你這個(gè)程序尼試試,衹是個(gè)程序循環(huán)時(shí)間記錄程序,可以附在加工程序里。給個(gè)郵箱我發(fā)你你試試。
作者: wangice    時(shí)間: 2015-8-31 15:43
還是貼出來(lái)吧,反正也不大
作者: wangice    時(shí)間: 2015-8-31 17:38
proc timer(int type)7 _/ `# u: ?$ ]6 h; k; {
;(1=360Basic,2=360B or AWD,3=360C)
# P" e, ~" s3 J6 ndef int error; G7 W" k7 `* f+ a# D/ T6 a$ p8 q
def string[35] ld_name
8 t/ b0 q' S/ N- m5 G' F8 {0 F
9 U- k) z! X, [! V0 b0 P, ]if ($p_subpar[1]==false) or (type<1) or (type>3)
2 x9 a$ G% A6 {1 A  ld_name=("<Unknown>")3 b! k' D% z5 k: S
    endif3 N; \! q5 p+ C( ~
if type==16 O0 K& B- b" Z- _; r# V
  ld_name=("<360Basic>"); N) Q7 S" Z6 \- _$ ^2 `" b
    endif
' v# B- ~5 k' h; X- l8 @if (type==2) and (r99==57529)9 \& T) t7 k& a
  ld_name=("<360B>")' |* c1 f. z' }  W
    endif
# b/ L9 F% d! i$ ]if (type==2) and (r99==1359)( P5 u5 I9 `' k; F. `, u  j
  ld_name=("<360AWD>")
1 J! Q% B( q8 f. A9 f! O    endif6 k+ t$ d; {. j1 T! B0 M
if type==3
, [& D3 G: L* M- D  ld_name=("<360C>")6 O; g( h7 V0 F. ]2 U7 L4 n' Y
    endif0 M& ]( _3 d7 m2 D1 Y9 u  O# O
3 d' e' |) V- A- S4 n8 j
write (error,"/_n_spf_dir/_n_cycle_timer_spf",""<<ld_name<<" Running:"<<$a_year<<"."<<$a_month<<"."<<$a_day<<"  "<<$a_hour<<":"<<$a_minute<<":"<<$a_second )
% q' T9 S! S; J$ o6 B2 T, V% H6 n( {1 W% S6 U( f4 J, i5 O% B  ~. z
r600=$a_hour*3600+$a_minute*60+$a_second+$a_msecond/1000-r600
. K/ K1 @( Y* T# e5 g+ _0 p/ g( Iif r600<0) Q4 M7 H; F! G
r600=r600+24*36003 Y' t8 g0 o1 k' a  S
endif6 t7 z' J$ _1 r: Q1 O
if r600>3600
: V) p/ w2 l. Vr600=09 \6 m$ z1 F7 W7 l$ M( B
endif
# C4 r( V( C. l" br600=round(r600)& n! j& V' n1 Q8 v( O) z& ^7 A
$ s( l1 h, U/ ^0 t. o
write (error,"/_n_spf_dir/_n_cycle_timer_spf","Cycle time :  "<<r600<<" Sec")
) n- `2 C! k0 U1 k, |: q
/ H  `6 I2 S: K- v$ k$ t, zwrite (error,"/_n_spf_dir/_n_cycle_timer_spf","Machining Time:  "<<round($ac_timer[1])<<" Sec " )- P" j8 }2 q7 m' Z% P$ ?, t( q
% `2 q8 E8 }: Z" s% f
r600=$a_hour*3600+$a_minute*60+$a_second+$a_msecond/1000/ h3 L" E& \( B2 Y4 j4 h8 k
ret




歡迎光臨 機(jī)械社區(qū) (http://www.ytsybjq.com/) Powered by Discuz! X3.5