设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4783|回复: 4

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

  [复制链接]
发表于 2014-10-8 20:31:26 | 显示全部楼层 |阅读模式
遇见一个难题,请教各位高手。. M* Z8 C5 y& u( |9 c# x5 c: e+ r8 a
+ l! F* Q) }- f" A- I& g6 D
使用transporter将物料从A点运送到B点,通常情况下,每次运输100件,但是运输几次后,剩余的产品不够100件(例如订单总数是220件,第一次运输100件,第二次运输100件,第三次只有 20件可以运了),当运行到第三次的时候,仿真就停滞了,无法继续下去。不知道如何修改程序(我现在的程序如下)。1 W0 s! a! W8 `1 L8 h* b) e7 G
" a- u- r9 d4 m  k( L* D7 F
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量。
6 b$ _& ]$ Y; \7 N; [
* u8 Y' ~9 p# G# t% [7 ` is
8 N4 ^/ j$ f- M5 F, K7 \& a        i,m: integer; -- 整数变量
% w8 E2 ]) x& G% o8 [        Name:string; -- 字符串变量
* H4 J% j% D2 P0 o- t, q+ ?8 }+ ~% Z        Obj:Object; -- 对象类型变量/ H: ?( \- f3 `7 J7 q, N
- _3 z- [0 m& n  o% G
do
' b6 W3 X' l( A* c, S$ r5 e' K        m := str_to_num(omit(?.Name,1,1)); -- 先取Drain*后面的数字,在转换成整数类型8 q% X% R. ^! ^, q: L
        Name := sprint("BA", m);  -- 生产线名称. {6 N9 o7 T# C, P: V
        Obj := str_to_obj(Name);  -- 转换成对象变量0 ~7 ~4 w! G# x, Q. h
   ; m/ d( Y' S( q
        FOR i:=1 to 100 LOOP
  _/ V0 m" k4 h: J; N# g$ c                    waituntil OBJ.occupied prio 1;
# e$ B, `# V2 P$ }" I# v6 \3 s                 OBJ.cont.move(@);        , [$ s) I( d3 s  m
        2 k1 s5 r3 X3 Y  H4 x4 |% t% E; y
        NEXT;
3 v1 ^# T; q) V                @.backwards:=false;
* h5 y& n& T9 b& y* O* h; ?2 o2 Bend;
# M2 p' B8 e7 n) K' ?& S
发表于 2014-10-9 15:03:23 | 显示全部楼层
FOR i:=1 to 100 LOOP, 这里肯定要变化啊。1 W+ P0 b1 ]3 z& ]+ y
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量,不太明白。
发表于 2014-10-10 10:43:12 | 显示全部楼层
函数主体 缺少对source物料的数量判断
8 I0 f6 R6 M. q+ X1 s$ J# Lif numberMus = 100 or numberMus > 100 then7 s2 @0 Y' m/ J* ?* \+ V
       vehicle takes 100 units.
" s( ?0 }2 r; o3 d0 k* Q$ O8 Oelseif numberMus < 100 then* S. a/ f5 h+ H9 |" d( c0 l, J
       vehicle takes really number of units.# V) Q1 j0 X# s* o7 @7 G8 g. W. X
end;
0 U" o) Z$ c3 p8 m7 z/ A( k- y* P; i& O& ]
希望帮到你

点评

解答不错,关键最后一次的数量是多少如何确定。  发表于 2014-10-12 07:57
 楼主| 发表于 2014-10-12 19:19:59 | 显示全部楼层
多谢各位! & O. R( s4 G) D3 R1 n2 c0 D
# i% V- k. g- e. f& X
 楼主| 发表于 2014-10-12 19:20:50 | 显示全部楼层
dongshui8558 发表于 2014-10-9 15:03
5 D9 k+ [, ]% d+ c7 QFOR i:=1 to 100 LOOP, 这里肯定要变化啊。# i" E9 o* j- X9 X4 p: S
需要说明的是,A点的运输量不是固定的,因为有两台并联的机器, ...
  Q) C: c/ b8 |" X# s6 s
多谢您提供的方法!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-7 09:18 , Processed in 0.020055 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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