|
|
5仿真币
你好,帮我看个程序,好吗" B- Z% D# B ~
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part). n( [( P) a% b3 W+ O
' ~6 m) }) I8 `9 B( `% d6 xprocedure mech_Pro_Type()9 n: ?4 k, x3 Z/ R' t& s. T
var8 I7 `0 _% j9 A% D3 ]
pro1_process,pro2_process:process4 c6 g( m, F Q% T& ~2 n" v3 b
the_logic:logic
* |: G$ n" d6 h4 g' fbegin
6 m9 ~4 g ]) E wait until out part_count 0 2 i0 z1 \1 Q7 y2 b; t: [
require part any
0 a: i& F, \) B5 I8 D pro1_process=get_process('Mechanism400')% B$ m0 @$ |# x0 {3 q9 h
pro2_process=get_process('Mechanism500')
; h0 l }5 X! j! B ' `$ L }6 W C3 S/ l1 t% O
if(cpart<>NULL)then
: w; [6 x# f+ ^; M" M, a/ T+ z2 l5 h if( cpart->Product_Type==400)then
& H$ R4 t* y2 P9 h do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
+ D0 x- B- n" J% R -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)) x" }% I. v+ I3 U9 N
else
- y& M6 L( }9 C( _) L4 A4 a6 [ do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
* w ^' J% D: `' T F$ z --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
- p/ f) G" k5 q. k/ m endif \' o7 p9 w7 Q& ]
endif% |1 C- w& I5 I2 x% H* }
end |
|