设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4046|回复: 4

[求助] 求教:transporter 运量不固定如何编程

  [复制链接]
发表于 2014-10-8 20:31:26 | 显示全部楼层 |阅读模式
遇见一个难题,请教各位高手。4 P) E' e; K" r/ Z" Y. b: `4 Z( a
. a# a: p9 n. ?; m
使用transporter将物料从A点运送到B点,通常情况下,每次运输100件,但是运输几次后,剩余的产品不够100件(例如订单总数是220件,第一次运输100件,第二次运输100件,第三次只有 20件可以运了),当运行到第三次的时候,仿真就停滞了,无法继续下去。不知道如何修改程序(我现在的程序如下)。8 h* k7 L: o" h9 K% p9 r% k; l

  p! L( O/ L! ~. y2 t# ~需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量。
8 ^+ B6 g' i/ Q1 w# Y
7 ?/ q, A& _  S* G# O9 R is" h+ {7 k. o! ~& T4 p$ Y
        i,m: integer; -- 整数变量+ P6 [6 c6 K1 I
        Name:string; -- 字符串变量  r! G+ C  M- u& I1 ~$ q
        Obj:Object; -- 对象类型变量
4 x- P6 }2 ^( u  h2 x& o6 s6 Q/ j& {* E# n7 N8 U4 x0 N+ s! r
do& D+ z6 l3 @2 ~  J1 T6 ?
        m := str_to_num(omit(?.Name,1,1)); -- 先取Drain*后面的数字,在转换成整数类型" l- A8 d1 _/ ~3 b$ |" h( i$ g8 n; u
        Name := sprint("BA", m);  -- 生产线名称
+ ?! W; c& R8 {4 q( J        Obj := str_to_obj(Name);  -- 转换成对象变量6 i% H+ I2 l/ s6 D: O& d
   * ^6 X+ D7 n$ N5 _. ]
        FOR i:=1 to 100 LOOP& K6 D% I1 h6 D- @3 j: L6 P5 M* V+ O2 Q9 Z! p
                    waituntil OBJ.occupied prio 1;9 _+ L5 a" |3 ~6 s( M  u- z
                 OBJ.cont.move(@);        ) a* Y7 w# w- ?) X# d- U2 y. ~
       
- v9 d8 i  A/ r! y4 m- a        NEXT;
3 Z4 s' v. ~+ {: J                @.backwards:=false;3 O4 e3 `& ?. c2 H' O& @! Q% ^
end;" v( U0 u' W: ?4 x* x% p
发表于 2014-10-9 15:03:23 | 显示全部楼层
FOR i:=1 to 100 LOOP, 这里肯定要变化啊。9 _) `# p% s' U0 v
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量,不太明白。
发表于 2014-10-10 10:43:12 | 显示全部楼层
函数主体 缺少对source物料的数量判断% x9 |9 ]& l$ t0 k( `
if numberMus = 100 or numberMus > 100 then
6 w( b5 o0 b$ x. o) x# n* K* }       vehicle takes 100 units.$ X5 f: W; q$ L$ x
elseif numberMus < 100 then
" i1 r; u' E- A. x       vehicle takes really number of units., D' O$ l9 c1 ^/ f
end;
0 h  T+ d: ]7 r% K
/ g% }$ g0 N) J8 l& h- c希望帮到你

点评

解答不错,关键最后一次的数量是多少如何确定。  发表于 2014-10-12 07:57
 楼主| 发表于 2014-10-12 19:19:59 | 显示全部楼层
多谢各位! ) T% A, P8 i0 `# K' v2 y

1 U3 |1 Z+ Z7 P8 `6 u8 p% Y: b& H% O! v
 楼主| 发表于 2014-10-12 19:20:50 | 显示全部楼层
dongshui8558 发表于 2014-10-9 15:03
% v6 b# [4 o) g- GFOR i:=1 to 100 LOOP, 这里肯定要变化啊。
/ L1 M% L9 H! v! G  S需要说明的是,A点的运输量不是固定的,因为有两台并联的机器, ...
2 c% f: d8 @" o
多谢您提供的方法!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-11-23 21:27 , Processed in 0.021902 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表