|
5仿真币
你好,帮我看个程序,好吗( A" l1 Y/ O# D) c, U" G
这个程序是一个machine的logic,我是想根据part的型号(400号,500号),来执行不同的process.程序编译没错,能够运行.但是运行时Machine中却有两个part(process中只定义需要一个part)! g* P5 ^0 x) k a
# F# x+ |- t& z0 ]. S1 n. N Mprocedure mech_Pro_Type()
$ b! R) N; a7 @$ N( g( bvar% t3 o# x) |& D2 r% F
pro1_process,pro2_process:process8 Y; J9 `6 z; |
the_logic:logic1 J0 q' M2 s7 Y3 ?. f: [
begin
# e# K& n! p, J" \0 t, m: l5 x wait until out part_count 0 ) Z+ a2 n. Q- \2 q
require part any# l& F4 Y& K x5 C
pro1_process=get_process('Mechanism400')
# I! O( }' n! C3 g3 r pro2_process=get_process('Mechanism500')
7 q$ O9 r- \$ B4 M$ g
% N1 e' K6 F- f4 m7 A if(cpart<>NULL)then8 v4 k* T+ A4 K4 |! y) m2 _
if( cpart->Product_Type==400)then1 J( A$ m9 Z$ K5 x: [
do_process(pro1_process)in state IDLE_IDLE, BUSY_PROCESSING
4 s7 E# A- d% j& @& x" r -- write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
* _! M$ {7 l& D' {4 O else 3 _9 `0 R# @( C
do_process(pro2_process)in state IDLE_IDLE, BUSY_PROCESSING / X7 M% S6 [4 e7 {
--write('装机构工位:正在执行工艺号',cpart->Product_Type,cr)
! U$ L7 I. P6 I5 i- l, m$ I1 w5 ^ endif7 c% d+ c. a2 n& `$ O% J" B/ @
endif4 p# x8 n0 [% I7 y
end |
|