|
|
5仿真币
你好,帮我看个程序,好吗5 N# p w/ _6 ^6 U4 ?# @' n
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)/ t8 y$ C# J) o- H2 p9 g& o* E, n/ z
, |5 k& |1 ~. F8 w% Eprocedure mech_Pro_Type()' f7 O" ~3 B1 m9 I! R
var
. Q; J' v% {8 ?' u- M4 opro1_process,pro2_process:process
0 v" v* x3 i) \1 Athe_logic:logic, c6 p8 M+ U4 v7 R
begin w1 M0 P: r$ }: I' Y6 y0 |
wait until out part_count 0
0 |* U2 l3 H4 D4 l require part any2 @6 }( P* r- l( }/ D
pro1_process=get_process('Mechanism400'); g @7 ?" `+ R; L
pro2_process=get_process('Mechanism500')
2 B+ S! x O% L( C / z+ m2 y1 g- i2 \
if(cpart<>NULL)then
4 D# O2 ~8 j6 ?) d' \) D if( cpart->Product_Type==400)then ~- E7 Q; }* s2 ^% z: F, T& u
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING) K" g+ J/ w3 M/ D* @/ Q7 Z
-- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)% E$ i& B l- a) N/ m
else
8 n9 \. @) m% O0 t do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING $ l ]; P5 z1 q5 y0 [
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)4 M) Y& } p4 u" ?( y4 c. _9 l
endif ?/ _1 f2 T5 O/ _+ F1 |
endif5 d8 _2 [4 ? O% y
end |
|