|
|
5仿真币
你好,帮我看个程序,好吗
. ~. w2 L" C8 J4 ] 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)5 i! @5 l9 q1 s7 @" e" n: c4 U
- J. C( n7 @, p* t$ Xprocedure mech_Pro_Type()
- X4 Z" a& E7 d, Q4 T, A) u9 Rvar& d) e6 w& k& f3 T" T" s, z
pro1_process,pro2_process:process
. T+ _$ o s% mthe_logic:logic$ H! E! k& a2 g2 U' C2 s9 h
begin% u7 j) D! s f; y" S
wait until out part_count 0 ; V. H6 z3 Z2 `7 p! r
require part any
5 {& e( B5 C6 p R0 n pro1_process=get_process('Mechanism400')
1 ^0 e# d& ~2 g9 V# O2 {) T; E: Y+ c pro2_process=get_process('Mechanism500')
" q2 |, e$ D# n# {0 }! x+ J
3 v) S7 d- d; w) j, L if(cpart<>NULL)then$ h% x# U; `! f" D8 C& X% k- c1 m4 @
if( cpart->Product_Type==400)then
. d3 t$ ^$ I- o0 _, }, b: ?8 B; R do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
% A( B+ c5 P5 L4 G+ d -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)& Z) v' ^" K c, g+ B+ ]
else
. e8 V2 h( Z8 }0 p' ^4 V/ s do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
0 h+ i/ a5 Y/ j% q9 m --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
7 T/ o k6 o# U# M* r" r endif
$ `" S ^1 T+ ^( h5 K8 R7 M endif
% @( `3 e/ U- X. Lend |
|