|
5仿真币
你好,帮我看个程序,好吗
" ~- n; B( C7 m9 Z* O 这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)
, W1 v# d$ g; H& E4 L5 j: Z' ~$ M( N) z& [
procedure mech_Pro_Type(): G" J4 V5 _2 ]* P+ \5 X7 R `& h
var
; j' @1 s2 l' k* F* ?pro1_process,pro2_process:process
9 z0 o- t6 |9 j) e/ ythe_logic:logic; ]$ ?$ W( _ j1 K! g* ]
begin7 Y% q# J0 ~- t8 o6 j
wait until out part_count 0
; p E2 w/ ]) R% _ require part any1 x1 G) q4 N2 ^9 e
pro1_process=get_process('Mechanism400')
9 s+ D$ g( v" v, X5 s% H) Q/ t pro2_process=get_process('Mechanism500')
$ Z- Y% d8 g" g5 M% v# R' z7 n( N
4 W& }, a2 `3 `* _ if(cpart<>NULL)then
( J7 i8 l. U( Z8 Z; h3 a if( cpart->Product_Type==400)then* D* d/ _, b6 B3 y. g
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING2 [9 j. a3 R9 [; j1 m" C
-- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
- ~. ~. [4 |1 S2 J* x3 X' Q else
3 m$ K8 U a$ D. S do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING 8 q4 Z3 }# q2 b5 O
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
. p9 M6 z* x7 }3 X* p% j1 b f endif
* B( ?" D/ G7 J7 Y4 W6 ~$ W endif# v3 V, f+ h1 V5 |
end |
|