设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5647|回复: 4

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

  [复制链接]
发表于 2014-10-8 20:31:26 | 显示全部楼层 |阅读模式
遇见一个难题,请教各位高手。
4 A0 d  S8 T, L3 r8 j9 ?1 L' a+ Z, G: N: E, n; ^% [/ a; I
使用transporter将物料从A点运送到B点,通常情况下,每次运输100件,但是运输几次后,剩余的产品不够100件(例如订单总数是220件,第一次运输100件,第二次运输100件,第三次只有 20件可以运了),当运行到第三次的时候,仿真就停滞了,无法继续下去。不知道如何修改程序(我现在的程序如下)。
# f( j0 g1 h# v) s& ]1 ~6 Q% F9 M) @1 H. _$ D+ j
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量。) r2 @7 F! ]# P8 J
5 a3 C& q$ g6 Q0 s
is! y- y# h3 u  E' d
        i,m: integer; -- 整数变量. [, k; g4 Q3 c4 u' b) o% X
        Name:string; -- 字符串变量4 ?: ~9 f, ]* }5 V
        Obj:Object; -- 对象类型变量
* }) S9 h% V; h6 g$ p: Q1 l; R5 i+ M2 J5 ?. K. U
do
& @5 e* g: M# b$ z9 ~- l- Y        m := str_to_num(omit(?.Name,1,1)); -- 先取Drain*后面的数字,在转换成整数类型
& f+ A( {" l$ Q% U6 U% a/ i        Name := sprint("BA", m);  -- 生产线名称9 e& L# f8 J$ m7 `  K' c
        Obj := str_to_obj(Name);  -- 转换成对象变量) p# x' v% |+ |  B; q
   
& d" J$ o0 B% S  e5 Z6 c) h) d  T        FOR i:=1 to 100 LOOP
& j# }! Z* s4 D. g+ h                    waituntil OBJ.occupied prio 1;
" A  |! e6 s: C# x                 OBJ.cont.move(@);       
3 d% c; `* j( x% O; T  Z% Z2 E& A        : a, c% u( U5 Y. g0 [1 v& w  ?
        NEXT;7 k2 [7 B4 j$ b0 E8 o% w
                @.backwards:=false;
- h$ ^) I4 g: L4 b8 X+ ?+ [1 Fend;6 d6 w" g) z6 b: Z7 M! k3 ?! Y" R
发表于 2014-10-9 15:03:23 | 显示全部楼层
FOR i:=1 to 100 LOOP, 这里肯定要变化啊。
# J: I: L  [0 E1 V需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量,不太明白。
发表于 2014-10-10 10:43:12 | 显示全部楼层
函数主体 缺少对source物料的数量判断- s7 h# j9 M# i! y7 }
if numberMus = 100 or numberMus > 100 then
+ W* o! L+ O( ~2 {  V& Y       vehicle takes 100 units.
4 g/ z6 J! I- @4 R% @0 x5 gelseif numberMus < 100 then
1 ]- J+ L9 v- n6 b5 j1 }       vehicle takes really number of units.
* ?# M8 z* l! p' C- X8 Eend;
! y0 r! h5 v1 `4 ^( B
4 U4 c1 }0 K, _" w. u: U- t希望帮到你

点评

解答不错,关键最后一次的数量是多少如何确定。  发表于 2014-10-12 07:57
 楼主| 发表于 2014-10-12 19:19:59 | 显示全部楼层
多谢各位!
3 v1 ]: b9 }. ^# k+ M) E1 w0 p8 A8 \0 S1 h) i
 楼主| 发表于 2014-10-12 19:20:50 | 显示全部楼层
dongshui8558 发表于 2014-10-9 15:03 ! m4 [9 G# `% y0 A& ?
FOR i:=1 to 100 LOOP, 这里肯定要变化啊。' X! R' I9 b7 O2 ^
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器, ...
+ D) L6 H! x, V6 q
多谢您提供的方法!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-22 21:45 , Processed in 0.020740 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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