|
|
5仿真币
你好,帮我看个程序,好吗
8 g+ E8 Z7 e2 l0 c4 Q 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)0 g4 E- o+ L& P- q
, ~' u% j" O0 T1 R Z" U" {) Hprocedure mech_Pro_Type()
7 ]" l3 Q! O4 {var1 g3 f$ B: E2 m; c$ z- E4 K. J
pro1_process,pro2_process:process
0 Y- v3 t% ~& \6 h2 v, a$ j8 qthe_logic:logic
3 f' J9 w% m) e0 W) k* Q6 ~begin
+ A# R/ o" Y% w% [8 R2 P wait until out part_count 0 ! S7 _- J2 v+ K j1 A
require part any
: u6 Q( Q% r1 A6 n1 B6 `- a pro1_process=get_process('Mechanism400'), | T" s2 [: X. i4 h7 _$ x
pro2_process=get_process('Mechanism500')
& `, q2 K! t: e6 o6 i " j2 l& w* j8 T2 j' d1 G4 J
if(cpart<>NULL)then
, ]6 J( P ?) }+ T2 V: h, {# L if( cpart->Product_Type==400)then# g8 s7 W! c) ?8 A; q4 z
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
% [) O3 F5 m( m5 f3 r2 H& M -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)3 S) g0 ^( p* P0 A
else . d; k5 k0 ^0 S/ ^' {$ U$ r
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING & l/ E; H0 [7 ]/ ]2 N% q0 c6 D
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)+ k4 u" [" c0 m. }3 s
endif
. y* Q- n$ f3 `+ @% h endif4 H, L0 C2 p, X1 \
end |
|