|
5仿真币
你好,帮我看个程序,好吗& ?/ h% J' p' N$ Q0 s' Z# x
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)2 ?5 V6 F& T: _
) ~3 s1 t! u4 b/ D9 n& Y1 B% Y0 Hprocedure mech_Pro_Type()' r9 K$ O X5 M9 H, b( |
var! N9 S4 c& i* p0 x% j
pro1_process,pro2_process:process) U/ S4 D/ Z$ K+ z. X
the_logic:logic v5 C4 P) b/ G
begin
1 o: {; P* |8 p1 j2 T wait until out part_count 0 8 @7 J: m0 v/ m, d* U
require part any) ]/ I ~9 L" j0 L; E6 j6 E' k
pro1_process=get_process('Mechanism400')7 h; j' J$ `% ]8 ^2 v
pro2_process=get_process('Mechanism500')
7 V3 l" g6 A S7 J 9 c6 E. |7 C1 t1 f, d
if(cpart<>NULL)then; s F# E, G! L0 x, m+ j" q) s3 e
if( cpart->Product_Type==400)then
8 X0 h1 E# x8 q4 K# Y/ ], a/ r do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING. q& M8 T1 g$ y/ e# e' V* o
-- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr); {& {& r. ]0 D' A
else 3 H; q. { k. \- t- v5 p) q
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
; Z' i4 y" b, ? --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
& S& C# l' {/ k4 u, W* A9 H9 N endif; j# ], X& U6 S
endif7 I/ d }, T2 l8 s
end |
|