|
|
5仿真币
你好,帮我看个程序,好吗
! l! e, m6 k: d# w1 q5 h+ ^2 H 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)- G- _9 C% b: A9 F
; O7 S0 \4 r3 K8 y3 D1 Q
procedure mech_Pro_Type()! Y, n, o$ k" I/ i' B1 A# F
var
- S" V7 f2 z G3 \1 f% ^pro1_process,pro2_process:process
* |5 R3 @1 @- ?( w9 ]the_logic:logic7 P1 I- @% |% W. Q
begin
, @- g W4 o- {3 z) G1 m wait until out part_count 0 $ ~( }+ o9 d2 A# M( t u' g) c) c- G: k* b
require part any/ [3 O0 o- b- E4 \& h- M
pro1_process=get_process('Mechanism400')/ c5 s) W; O( m: w! x! N8 X: w$ |8 x* G
pro2_process=get_process('Mechanism500')
7 t( D7 i. O! E- X- f" U " `# A# _2 p5 y6 \
if(cpart<>NULL)then
$ N. P3 Z7 i& V3 B9 b* \5 ?# V) N8 v$ O& v if( cpart->Product_Type==400)then
1 H+ ]1 n6 T5 f. Z z, a+ F do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
. u* I; z: [, }. w, \ -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
: y, B8 p5 n7 ]$ @ else 2 i& V8 C- V; j5 [0 p0 k$ \9 e
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
3 J: b* q T2 X( |3 _ --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
, M3 d# a1 ^6 U2 r/ A9 K endif
4 p' h- F p C4 U' C, i endif2 z2 h5 R3 z& G" M+ w
end |
|