设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4288|回复: 4

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

  [复制链接]
发表于 2014-10-8 20:31:26 | 显示全部楼层 |阅读模式
遇见一个难题,请教各位高手。; H# X6 c0 i# Z9 {% @; `$ y
* M' W2 ?/ [1 k0 S
使用transporter将物料从A点运送到B点,通常情况下,每次运输100件,但是运输几次后,剩余的产品不够100件(例如订单总数是220件,第一次运输100件,第二次运输100件,第三次只有 20件可以运了),当运行到第三次的时候,仿真就停滞了,无法继续下去。不知道如何修改程序(我现在的程序如下)。* i; C3 S" P8 ?
0 o1 Z$ d# [* h0 R) m& [
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量。7 m) b1 ^# z. f- @* B+ G7 \0 d

" Y: O/ }! e! G6 \( V7 l is* x. p! |$ a- q, Y0 n4 j
        i,m: integer; -- 整数变量: B6 w& W% ]9 p3 K4 o) e, T
        Name:string; -- 字符串变量+ `: @/ u9 E3 R, i  s) i# j
        Obj:Object; -- 对象类型变量
2 Q3 F" U! f! W: D6 w* Y9 Y; q0 Y9 Q. J7 z, u+ m8 p7 `' B
do
5 `7 h( w0 g% f& u5 j        m := str_to_num(omit(?.Name,1,1)); -- 先取Drain*后面的数字,在转换成整数类型: |4 f% ~2 v1 L6 ?4 m
        Name := sprint("BA", m);  -- 生产线名称
) g! j3 u6 K6 @% r        Obj := str_to_obj(Name);  -- 转换成对象变量
# C8 l: j3 C3 ]- k   & m9 j6 V4 i* H% i6 }
        FOR i:=1 to 100 LOOP
$ Y# X5 D5 v+ l" R- P7 c' n; U8 H                    waituntil OBJ.occupied prio 1;" ^. W1 l4 C! ^* A* z- c
                 OBJ.cont.move(@);       
/ j( A: |$ ?" Z4 M4 v& K       
6 @2 U. D$ {! |8 |6 Q; S        NEXT;
2 Z. E5 e5 T: \5 M9 r8 S                @.backwards:=false;$ R0 \% {, N: D0 _
end;( g5 v; G% g; @) p
发表于 2014-10-9 15:03:23 | 显示全部楼层
FOR i:=1 to 100 LOOP, 这里肯定要变化啊。8 l5 B+ {9 `8 a
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量,不太明白。
发表于 2014-10-10 10:43:12 | 显示全部楼层
函数主体 缺少对source物料的数量判断
% o" r* }8 g) w9 `% Y. B5 [/ E: R- ^1 |if numberMus = 100 or numberMus > 100 then
3 s' K; ^# C1 v$ ~0 m; u  c       vehicle takes 100 units.3 s! q! c" }. f+ y: X
elseif numberMus < 100 then/ k" m4 r- B/ D* b# l
       vehicle takes really number of units.- X9 ^6 P$ ~) i6 G) i( e
end;" L0 s: v! d; p# C) E

8 w7 L- e: b4 W希望帮到你

点评

解答不错,关键最后一次的数量是多少如何确定。  发表于 2014-10-12 07:57
 楼主| 发表于 2014-10-12 19:19:59 | 显示全部楼层
多谢各位! 3 p/ [) ?) p4 z0 r

0 Z+ Q  [2 }+ r9 _) k
 楼主| 发表于 2014-10-12 19:20:50 | 显示全部楼层
dongshui8558 发表于 2014-10-9 15:03 1 `# k! e) }/ E: _
FOR i:=1 to 100 LOOP, 这里肯定要变化啊。  h5 d2 u0 q7 E/ K5 l+ l
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器, ...
" o, d4 h7 j/ q9 Z  Z. S2 Z1 W
多谢您提供的方法!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-17 04:54 , Processed in 0.019364 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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