|
|
5仿真币
你好,帮我看个程序,好吗( b8 p3 Q$ ^0 s1 V4 ]& f1 X
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)
/ O# s$ O$ J0 B! `. `' G5 S% o# O
" h [: t4 \ H8 u1 K* Gprocedure mech_Pro_Type()
2 G! N. ]( K& yvar$ U7 a; t: H6 T" f
pro1_process,pro2_process:process
' a9 N* [4 v6 C4 F3 x, jthe_logic:logic
3 a( y5 H; r }0 u/ Tbegin h! H$ u( T" a
wait until out part_count 0
6 B. w1 z2 Y8 S, ]( U5 T require part any
6 ~3 I6 B u3 n- N8 O* p8 E+ o pro1_process=get_process('Mechanism400')
" L/ p5 k0 k* y% e' ~) f5 c pro2_process=get_process('Mechanism500')4 |: |$ u) |/ j0 F! {
1 Y7 o9 L0 d7 W ] R
if(cpart<>NULL)then6 r7 e. E, a- ], X6 C
if( cpart->Product_Type==400)then& ~! t& l# n! x. v0 R
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
3 i, q) V8 `) \& w% l -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
. Y Z7 s2 U5 n& l, f else ' \( q; b# y+ w5 [+ j
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
' |4 ]; l9 k& ?* c j5 ^, R --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
5 W' y5 H; {: D& u endif
; E# N7 g6 {, y/ Q/ Q$ V3 M endif, l7 D: ?2 i3 ~
end |
|