|
5仿真币
你好,帮我看个程序,好吗& T' h! {" H* Z e6 U* `
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)
# S o# q7 k2 x2 i9 Z2 d. L! f+ r. _5 Z
procedure mech_Pro_Type()1 F* L) h2 e7 k, [! t
var/ N* c \7 A9 k- \, S& s+ H3 Q" S
pro1_process,pro2_process:process, M2 q) `4 q, S. m5 ~5 Q) \
the_logic:logic
4 e( ?1 X8 A7 M% L8 {) O' m8 @begin0 N2 V" X3 b4 x3 D- t7 q3 q
wait until out part_count 0
! H4 d' v* k' M require part any
5 D: k0 u3 Z2 n) Y4 G. Y3 D3 w9 A& [ pro1_process=get_process('Mechanism400'), \2 H0 w* f, m4 \2 J
pro2_process=get_process('Mechanism500')
* y/ z& W" d% [) v% _% a% C+ V 4 j. F% O4 T: R, ^. h/ y
if(cpart<>NULL)then
1 }8 o' ~9 T- U0 X2 \ I* M* D6 D if( cpart->Product_Type==400)then
3 H& S+ n2 C) N do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
- I2 W1 I6 }% a0 X -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
* [2 {; J+ k. S _9 ] else g% C- o/ J( W3 @
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING 2 W& A/ ]' ~/ P
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)9 s* c) T3 D B1 m7 D$ I
endif
, e8 i9 b' a6 S7 O. [ endif; h! Y" @! a; f. ~7 J, i
end |
|