|
|
5仿真币
你好,帮我看个程序,好吗+ C' C% o& m/ [% T" ~) Q+ C
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)
& R* A8 L) g! i1 n: S t
) Q7 _( Y: A3 s7 rprocedure mech_Pro_Type()
7 Z1 l. c }4 `$ c: p: U& |var# L$ Y- j2 S0 |% i9 }6 S8 i
pro1_process,pro2_process:process
& i4 D# ?& c C# T! ?the_logic:logic7 g' f7 g6 o; x. v
begin3 e$ O% @' \3 W @! R
wait until out part_count 0
9 S5 S, _1 X* ?& s/ p7 ? require part any
# v: F: M( z) D) p( Q3 q, S1 r" { pro1_process=get_process('Mechanism400')
5 z/ D" }2 _& y- \ pro2_process=get_process('Mechanism500'). ?+ S, ^0 k+ w1 Z; M+ ~
8 Y: Y% p7 f- Z2 h, z# a3 A if(cpart<>NULL)then3 n' C- g- `" b2 [7 D
if( cpart->Product_Type==400)then
0 {) {# G( x7 x' P do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
( I5 {7 Q* T2 G& ^- N1 ? -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)$ B4 ~. f% ~8 D: d% { ^ c
else
" c0 g' b2 L) }( N. S/ V! J% v do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING 5 ~/ i; D( Z3 P% [$ Q Q% K8 e8 d1 a* J
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr); x* u F( |7 ?; Y; J0 }1 Q
endif
7 |! o' {+ R8 O: e endif
( d ^0 H) Z8 H4 @, `+ Wend |
|