|
|
5仿真币
你好,帮我看个程序,好吗# H$ e! ~+ i/ H7 Q( z9 t% u; m, @
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)
7 A p! Q# D& y0 z( l
" c; a5 _2 P8 O. @9 L. P" [8 ?& fprocedure mech_Pro_Type()
6 ^/ ~$ W6 C7 R" x% E' ]' H0 g9 t2 B/ Ivar- B5 y8 t# u0 W& ]) M3 l% W7 z
pro1_process,pro2_process:process6 f0 q0 ~1 p5 s' a2 C
the_logic:logic
# U! w! E/ Z& c, ]begin
) O4 V$ | M/ Q, f: p* j wait until out part_count 0
, p" L8 W5 `1 ]: X$ F require part any( z' L& E9 b5 S+ ~9 X( r4 \2 e. Q6 e, `
pro1_process=get_process('Mechanism400')
5 I/ M- B6 g$ t" r; l+ \ pro2_process=get_process('Mechanism500')
9 Z% R: S0 Y1 v* E$ J # v$ y/ N" x7 |2 {# S
if(cpart<>NULL)then
$ V/ P, M% L5 }; S/ c if( cpart->Product_Type==400)then
3 `: I, }- g/ I; Z5 e do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
/ q) ^$ g& ?3 q0 O -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
! g, ]1 [( n- C1 d Y V else , Y3 J2 Z6 ~% {; Q: m/ Q
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING - u0 D, H6 z8 a' M" T
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)4 F' u& Y: G% T( m6 f* o
endif G/ [3 \% F h7 O& K$ Q8 R& [" M
endif0 z0 A) x( M/ P* B
end |
|