|
5仿真币
你好,帮我看个程序,好吗
3 _: a- K# Y4 k% I 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)
3 j& ]( H! f/ U3 r: U) m. _. b4 o
& Q! f1 e% r! q9 fprocedure mech_Pro_Type()
4 w) M6 f$ E0 ?6 H- |8 n: f( Wvar
* X- W- m& ]/ ]$ R1 e& T) i7 wpro1_process,pro2_process:process
* P R, J8 N1 E3 K4 hthe_logic:logic- u' g: B: H& b1 c
begin; j* s# A1 g0 [7 U& Q
wait until out part_count 0 ! c; X9 Z' k% q& W( _
require part any
+ u/ |5 X; f5 m6 I pro1_process=get_process('Mechanism400')
1 I6 e8 S3 p9 K pro2_process=get_process('Mechanism500')
5 ~: s4 }: K" S5 i( U9 f; ^+ z ' n( S% h+ X) D5 s9 `3 ]& a. V
if(cpart<>NULL)then
2 Z# R; j% ~/ [$ \" i- p if( cpart->Product_Type==400)then* U! b( n% \" C3 i6 }6 T* g
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
0 q B0 \7 g8 e2 z& |" G/ F7 R -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr) s! b E3 f: f! h2 ?- m: E
else
4 s! O& I6 p9 r1 D+ v X do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
: S# K# @" a9 R- V1 U, r1 W --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
. i. m8 R0 Z- X* h& V endif; Y9 M2 P* ?/ Q" e+ {, ~
endif
9 j# u5 e. M. {8 ?* E0 kend |
|