|
5仿真币
你好,帮我看个程序,好吗: w( k3 z/ M- l( n% E$ C/ f$ u
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)1 n/ q8 ~/ M* L; j- t4 b
1 W9 O! V8 B8 ~6 O9 Wprocedure mech_Pro_Type()
9 S2 U. n, V0 l* `var- V8 _8 k' }7 Y7 N4 j
pro1_process,pro2_process:process
5 a! v" c( \4 x- [the_logic:logic! n& V5 L8 t+ I2 V( x! m) h
begin
% r9 t3 G0 A$ Y wait until out part_count 0 ; J1 C0 i; U) Z2 W
require part any* J' |" u0 w8 ~$ L0 A
pro1_process=get_process('Mechanism400')8 Y7 z# m1 G4 m' h9 w* {7 R4 Y' i
pro2_process=get_process('Mechanism500')8 w; Z9 Y! \+ C* a4 l
# Z+ K" Y4 e2 i% H" [* m5 a$ q5 s
if(cpart<>NULL)then' P3 b' c9 F: C/ Y
if( cpart->Product_Type==400)then m* L3 Q1 y/ `5 P
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
1 a' X2 W3 E5 l& j* ~' R! {/ z- u -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
8 M' o& }$ m5 q5 H: l ` else
: I( v; u7 @# Z; a) @5 k do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING % Y; c0 G: I7 U, @
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
/ `; W: n) T3 K$ q( v0 p endif3 h) t" _2 X3 h! F
endif
, F& R' i2 {& e6 Oend |
|