|
5仿真币
你好,帮我看个程序,好吗
+ g) Y0 f7 V, ? w9 L( F 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)
( a2 o/ z3 R X1 l( N0 R9 T# i! {
4 C8 v& ~$ f7 ]! l0 Z9 K, d) v0 ^procedure mech_Pro_Type()
: z5 }* \) J9 x; Uvar
2 Y y6 O9 D5 o+ x; Upro1_process,pro2_process:process
0 C- W7 J7 W& L5 u5 M5 gthe_logic:logic Q$ k3 ? i( n
begin
6 X0 L, v. G1 z- H- D- L' V wait until out part_count 0 6 V+ a6 E/ p0 B4 M6 ~
require part any+ O8 W" \+ o# x& l( X, i
pro1_process=get_process('Mechanism400')! V3 }0 j& i* Q; L
pro2_process=get_process('Mechanism500'), A3 N( C5 H* y# O. b" @. H! d) q
4 g& w7 f- i. Y0 y2 B
if(cpart<>NULL)then
* z9 l( s+ a4 U2 g if( cpart->Product_Type==400)then
& |2 x/ u. q, K, B- [. D do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
$ H) F$ S* N/ u7 {+ L7 y -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)# N* Q: @6 r- ?
else
7 M7 O( ]8 y g3 p/ U do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING
0 {& X( l% }2 n' o) B( D --write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
, d9 Y' { S. L' m0 | endif0 E) M7 _& V! X2 V1 L O5 y
endif; R' h5 K6 V" l! ^. j
end |
|