|
5仿真币
你好,帮我看个程序,好吗
+ k" E7 }+ a* b! G; t9 w 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)1 v! |8 Z" d) j2 R) ]0 m" [
0 _# y" S0 M1 _; s% Y$ S
procedure mech_Pro_Type()8 Z; @/ L4 c# w/ S4 h# L
var
' q) }1 x% p- w& S# apro1_process,pro2_process:process
" Y9 Q/ [, W1 D- ethe_logic:logic
5 Q+ ]3 W. {4 \; \! j" Q" S& [* Ubegin
: h0 \) U. y' a# r6 v. i wait until out part_count 0
7 e* I( b$ q/ r$ w- H0 b require part any
8 h* `# S, b5 \0 c6 z- N! Q" K9 Z$ A pro1_process=get_process('Mechanism400')
! c7 [3 ]3 }0 T7 L4 j/ g6 e2 L& n pro2_process=get_process('Mechanism500')
, V8 {! D6 T. J; \ % A$ m) Z9 l) Q' R
if(cpart<>NULL)then
. E% d: F g+ Z0 L) M8 b& _ if( cpart->Product_Type==400)then5 E9 o7 F% [# I1 o7 G. h8 E6 @
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING* f6 N+ B g" ]* [; ?- q
-- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)+ A( G) h' z( i# l, M4 d
else 8 a8 r3 ^: y! D1 L H" B
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
+ J; |4 a/ W0 z; n8 b7 N4 Z --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
9 R2 I. q+ U3 X. G0 V$ N. S) S" C3 ^ endif
' {% h% K4 U! Q endif% O/ k% M, I# j) F! P8 v
end |
|