设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4581|回复: 4

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

  [复制链接]
发表于 2014-10-8 20:31:26 | 显示全部楼层 |阅读模式
遇见一个难题,请教各位高手。, d* Z8 S% K% K4 Q5 ~4 N
, d2 z' D9 U, c6 f
使用transporter将物料从A点运送到B点,通常情况下,每次运输100件,但是运输几次后,剩余的产品不够100件(例如订单总数是220件,第一次运输100件,第二次运输100件,第三次只有 20件可以运了),当运行到第三次的时候,仿真就停滞了,无法继续下去。不知道如何修改程序(我现在的程序如下)。8 I' ?( ^8 t1 A( R2 Z! t: f  H# v9 E

! H" w8 B0 j. U% L5 c8 c# A6 ]1 I需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量。
; Q- M* t7 _) y' M: h4 C# @% }7 H9 D+ b1 K
is
& S- ?! c$ |- J5 H6 r        i,m: integer; -- 整数变量) b; k, L) ~3 D* a8 q
        Name:string; -- 字符串变量
! `( G+ I  o% E0 p6 B* ]        Obj:Object; -- 对象类型变量. b( b% g0 W: n: }$ w! q
2 i$ p1 M' W- J' T& v2 Q) l6 D  a
do
2 v. X  _9 d- d) `* Y        m := str_to_num(omit(?.Name,1,1)); -- 先取Drain*后面的数字,在转换成整数类型* o5 S- `0 F$ q& e# n2 W$ X. C
        Name := sprint("BA", m);  -- 生产线名称
# A$ u1 h4 M* r7 n        Obj := str_to_obj(Name);  -- 转换成对象变量  u) q  I; D& o( }
   % L. f/ D6 J& s  O" W6 B
        FOR i:=1 to 100 LOOP
6 c6 j/ a+ [* T$ D2 m7 v4 h  @* F                    waituntil OBJ.occupied prio 1;! i& B/ P- b9 s7 E# B% Y, M! V
                 OBJ.cont.move(@);       
& a1 Z) U! x3 j        * `# o1 k% ?8 s5 f
        NEXT;1 c( n/ l. N/ H1 ~
                @.backwards:=false;1 w3 ]: E# S4 E2 p: J% ]
end;" E) Q$ ?! y# P" g% g; y: p
发表于 2014-10-9 15:03:23 | 显示全部楼层
FOR i:=1 to 100 LOOP, 这里肯定要变化啊。5 V8 k5 h8 b1 f8 n/ B- L$ f! a
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量,不太明白。
发表于 2014-10-10 10:43:12 | 显示全部楼层
函数主体 缺少对source物料的数量判断
  A' `- F6 {* Y$ ?if numberMus = 100 or numberMus > 100 then
1 b% x$ [8 q; a! [  }  I# }       vehicle takes 100 units.
! b' l& }: H* t, ?elseif numberMus < 100 then9 _' R2 B# t0 a( ]& \/ N9 I; Z2 @
       vehicle takes really number of units.
  b3 K" a! i9 B, d8 t' gend;$ w* h7 u$ t5 r

1 Z7 f" _3 E3 }$ Z9 @. }6 y希望帮到你

点评

解答不错,关键最后一次的数量是多少如何确定。  发表于 2014-10-12 07:57
 楼主| 发表于 2014-10-12 19:19:59 | 显示全部楼层
多谢各位! ! R' {# n5 Y% a% K! o- X
5 S" ^7 }" g5 S8 n: B
 楼主| 发表于 2014-10-12 19:20:50 | 显示全部楼层
dongshui8558 发表于 2014-10-9 15:03 " |$ [, ~, [7 }7 b  R, v0 e3 {
FOR i:=1 to 100 LOOP, 这里肯定要变化啊。( u# ]7 s9 S  I' v0 v
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器, ...
1 H' K2 X- H+ U# K* t- e
多谢您提供的方法!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-31 12:01 , Processed in 0.026549 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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