|
|
5仿真币
你好,帮我看个程序,好吗
# v% U' I0 a: D/ s( Q 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)' m ^& X' Z; P
- z5 q+ |0 Z4 o& w3 ] O- w. I6 sprocedure mech_Pro_Type() P# G! b( F0 o9 ^
var
9 V! O8 M B) N9 o; Npro1_process,pro2_process:process, i- ?& K) U. ?# X
the_logic:logic
2 \7 B; @9 c5 D, k5 A7 f; f8 Ebegin
9 X% z8 p3 y- [ wait until out part_count 0
1 `. h5 y; u9 C: E" c require part any) A/ F/ \: h6 f" U: B1 h1 J0 h3 Y% p
pro1_process=get_process('Mechanism400')
3 ^/ o* j( L) Y' {9 B pro2_process=get_process('Mechanism500')9 g) q! q1 I8 ^/ W! u* u4 @; f E: {
7 |) g) p" R* D8 c7 l" K; {# X6 i) b
if(cpart<>NULL)then
" _( O& s) c2 O8 W7 E, R3 q. C1 L if( cpart->Product_Type==400)then
) w8 m1 t" ^5 s, H$ \ do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
% c0 |, Z, w2 s. ^3 \ t& Z9 b) G -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)4 ]* y% z5 q" s- _" e; x
else ! ]! [( \) W0 T0 Y! ?. r
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
1 u7 G6 V% ~+ `. P [ --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
( R% z( G9 s8 F5 y: R# Q- [8 G endif+ h M& w, d4 ~0 I. Z4 ^6 N# a& W
endif
, e* J7 s- C! c/ o# k7 M% fend |
|