|
|
5仿真币
你好,帮我看个程序,好吗& X9 w) z. i+ Y7 x
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)
2 r2 L$ ?2 ]9 i( D/ k7 A m. U# r7 g& _" Z0 A! d, j: S* Y
procedure mech_Pro_Type()$ a1 e3 n E/ E9 J& A+ Y6 J% ^
var" n/ q* |" _3 v' q& ?
pro1_process,pro2_process:process
5 t7 {, d, W# k+ y7 rthe_logic:logic
4 S: @0 b# t& I7 b. Mbegin
! n7 j% u* E7 d$ y G5 L) k1 ] S& n wait until out part_count 0
- ~( p j# g8 R9 G4 B0 K require part any$ c7 m4 g; G2 ?* S _% M
pro1_process=get_process('Mechanism400')
6 d2 [, u$ e& J% `6 |0 c, A! O0 ] pro2_process=get_process('Mechanism500')( {2 B, }3 b& g# k8 `* e
" I6 M$ u$ O \7 _) T
if(cpart<>NULL)then* C6 o" p- v/ C
if( cpart->Product_Type==400)then, @" G1 n# ~0 }& f8 b
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
( ?/ n( f2 }% t3 d; v -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
" N/ _' f# K5 i! U else
1 O* \, W# {& }9 P9 l8 H" @9 Z$ ] do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
9 c" n) h" B2 V! a" R$ [, ? --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
5 i0 v* W! U/ K0 m/ [ endif
5 M Z+ s; W: z endif
- I$ Z6 C# \7 U5 X- n, f Pend |
|