|
5仿真币
你好,帮我看个程序,好吗' w1 c& Q0 ?% n, Z. t
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)6 Y2 f1 X j" B; x
, F" E1 m4 ?; B& V$ Q
procedure mech_Pro_Type()
3 y5 i% X( l' i& _3 R, qvar
7 k8 g( \) o8 p6 H' B qpro1_process,pro2_process:process: [0 E( \, I) M0 ?! S% E1 U8 B
the_logic:logic$ k) T, k" k, A6 n, X' |1 G F4 x( B
begin
1 M1 b* P3 O1 h7 e7 E wait until out part_count 0
4 X; w/ ?0 W3 d3 h require part any
+ B2 `. {) Q+ a/ S4 g pro1_process=get_process('Mechanism400')2 Z& H% w6 B9 j% |8 A) H
pro2_process=get_process('Mechanism500')
+ _+ i" h! G. M# e1 w' b 2 `2 n- w8 K* a9 {
if(cpart<>NULL)then
& ^" B7 {' c% G i4 U% w+ V+ S if( cpart->Product_Type==400)then
) _0 ]. ~$ d) F* |$ O do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
) I( G! R3 l: X) R! B -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr): W% [- s( S4 q9 O
else
3 A; q: z) P9 [+ X do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING 9 T% k. M. o8 L U% h
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)9 z3 ^9 v* c5 M, P3 r
endif7 n; B _/ Q) ^0 ?) y
endif- \0 T# @( e4 t; {( ^
end |
|