|
|
5仿真币
你好,帮我看个程序,好吗
: O2 Q: y( C1 I; _5 v+ a4 l1 | 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)5 `% s' J, }: ?+ \
+ I( f$ B) K' K5 lprocedure mech_Pro_Type(). k' m' H; `7 c
var: S3 {0 o3 t% i# h9 w8 {) U
pro1_process,pro2_process:process9 P k4 s: W1 g. ^& {/ |
the_logic:logic5 X* h$ Q& D* G& {
begin
' u4 q0 X+ G, T1 c' `2 ~ wait until out part_count 0
6 N; u7 `7 G+ B require part any- T0 I4 }2 O3 l
pro1_process=get_process('Mechanism400')
$ U. w& Z6 t, ~ pro2_process=get_process('Mechanism500')
& w4 }3 p" j* f; G v4 G
2 M4 Q% J! m6 a: T1 y if(cpart<>NULL)then
/ _3 s4 n C, I1 r$ | if( cpart->Product_Type==400)then
# p5 t) i7 ^6 g8 _! W% ~1 A do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
& [! E- F @' l$ y/ g" M0 V -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)3 ]( q, y; j7 G6 C; n; C
else : r% e. Q" }, m. h. B
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
$ e2 ~! p. v b7 w: h" i+ F- \ --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr): s+ f4 }! q7 C/ s
endif
; ] }6 c- Q, M2 V6 l& H endif" q: z5 J$ R, J) b
end |
|