设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5389|回复: 4

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

  [复制链接]
发表于 2014-10-8 20:31:26 | 显示全部楼层 |阅读模式
遇见一个难题,请教各位高手。
& p: J+ G6 W5 s  H1 M  Q7 A. S% d( u. Y+ j
使用transporter将物料从A点运送到B点,通常情况下,每次运输100件,但是运输几次后,剩余的产品不够100件(例如订单总数是220件,第一次运输100件,第二次运输100件,第三次只有 20件可以运了),当运行到第三次的时候,仿真就停滞了,无法继续下去。不知道如何修改程序(我现在的程序如下)。. d2 }1 W$ G! a' a& n) O/ l: G
- w  w8 |+ ?5 b
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量。6 \( K; _( ]. \/ M
) b4 r0 x4 R) o0 Z* O) C/ }: e
is% r: \+ b6 F: ?8 ~
        i,m: integer; -- 整数变量
3 U" I' t* }1 L  w/ v7 {        Name:string; -- 字符串变量# ], W* a% ?* ^! i+ f9 K& [
        Obj:Object; -- 对象类型变量( U) A2 z- J0 B8 l
" E  f" c3 g% M- j0 R! W0 u
do9 e( }6 I, g3 z: i5 c/ o
        m := str_to_num(omit(?.Name,1,1)); -- 先取Drain*后面的数字,在转换成整数类型9 p7 c) x; p' f! U* o4 ^- @
        Name := sprint("BA", m);  -- 生产线名称
" P- Y4 ]  E( J$ O* `; }0 s        Obj := str_to_obj(Name);  -- 转换成对象变量8 S. B9 f+ L0 U, C$ m' f9 }7 O7 J. i! B
   . f. @( a7 h1 o! ]3 ^2 E
        FOR i:=1 to 100 LOOP
( N! E0 ~1 C* l4 @6 C! D                    waituntil OBJ.occupied prio 1;# ^" x8 v1 b' U" d- R. l( v+ h
                 OBJ.cont.move(@);        0 [! T& V& n/ D' f! D
        2 c3 m& |; I- O
        NEXT;
7 y% M, [$ H: V                @.backwards:=false;
5 A4 D; s7 y$ {! F# Rend;
5 z0 P. \" J. L* v  X' `( n' ~
发表于 2014-10-9 15:03:23 | 显示全部楼层
FOR i:=1 to 100 LOOP, 这里肯定要变化啊。
- D' a+ G2 {$ F. z需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量,不太明白。
发表于 2014-10-10 10:43:12 | 显示全部楼层
函数主体 缺少对source物料的数量判断
# i5 @2 H; X' f3 N" Vif numberMus = 100 or numberMus > 100 then
8 \  a& j) t9 v+ J       vehicle takes 100 units.
5 U0 F2 c, E+ i5 d  g( v% ]elseif numberMus < 100 then
& T9 y" n! `0 v* A- y: O       vehicle takes really number of units.
" A5 \; G" D7 v9 [end;
6 ^; c& F# h. h7 a4 h8 D# u4 g
( j1 m& ]5 A2 d( ~希望帮到你

点评

解答不错,关键最后一次的数量是多少如何确定。  发表于 2014-10-12 07:57
 楼主| 发表于 2014-10-12 19:19:59 | 显示全部楼层
多谢各位! ! ~  _; r2 _, n; j3 b& m

2 i$ X/ c% A- o" S
 楼主| 发表于 2014-10-12 19:20:50 | 显示全部楼层
dongshui8558 发表于 2014-10-9 15:03
0 Y1 Q! U' h: _& Q/ gFOR i:=1 to 100 LOOP, 这里肯定要变化啊。) I3 z3 `$ [" n9 y+ y! m: j- j
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器, ...
7 n2 {7 ^3 a8 x% c) R7 }
多谢您提供的方法!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-5 21:25 , Processed in 0.023726 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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