|
|
5仿真币
你好,帮我看个程序,好吗
- t" _5 A6 }# X' o1 s! i G: ? 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)7 s* @: F* R) b1 ]% W- o d8 V
+ t1 `% I' V# J) C. z' E" o
procedure mech_Pro_Type()
8 m' j6 W5 f6 a3 Gvar
" m% o# U7 j( ]) dpro1_process,pro2_process:process
6 h5 K; p+ M E+ `. Wthe_logic:logic# q* A# ?0 x& z4 g
begin3 w! ^. d5 [+ R9 `6 B0 R
wait until out part_count 0 ; h* g) s) O( \' a4 v0 o% U; {- E
require part any
5 x# @5 R4 F. s7 a1 p3 B, x pro1_process=get_process('Mechanism400')
7 K6 g, E0 I [5 v) X2 {) {+ v pro2_process=get_process('Mechanism500')8 E: I7 L0 W. n, k) n, I) Q
: |. P! t0 P& `" {6 [6 \
if(cpart<>NULL)then
7 `6 `; |( N" O$ v8 n if( cpart->Product_Type==400)then3 s2 W, ?6 |7 T4 T3 \$ u5 p0 F
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING `% u1 \7 J, [
-- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)6 R9 ^3 j# W- U
else
' V0 v8 C3 S0 F( C0 M do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING # j/ i) E6 m5 U/ v
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)* E \& M& ]& ^
endif9 g1 F9 ]# ?$ S, K2 @
endif% z2 d" @2 M4 f( G- m+ @' P
end |
|