全球FlexSim系统仿真中文论坛

搜索
查看: 9565|回复: 12
打印 上一主题 下一主题

暂存区或者货架的货物初始位置初始化

[复制链接]
跳转到指定楼层
1#
Amy1220 发表于 2013-12-25 15:31:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
要求在0时刻 暂存区或者货架上已经有一定数量的货物 货物原始摆放位置信息在一张excel表上 货物的堆放是20行、10列、5层 不知道用暂存区还是货架 然后求表格如何导入 如何设置 谢谢大家
2#
慧娴亚伦 发表于 2013-12-25 15:51:36 | 只看该作者
表格导入为模型中的全局表,然后在系统再引用这个全局表;
" P$ R' b6 U" R+ }1 Y$ T“货物的堆放是20行、10列、5层”不明白,对于flexsim内置的货架而言,层和列就指定一个货格位置。
3#
 楼主| Amy1220 发表于 2013-12-25 19:49:55 | 只看该作者
2# 慧娴亚伦 6 |3 F. J- Q( D0 a
有点启发 但是新手表示 压力很大 我做了一部分 能帮忙提点下么 感谢您!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
4#
 楼主| Amy1220 发表于 2013-12-25 20:03:39 | 只看该作者
2# 慧娴亚伦 * n( L6 }. X3 x, f- m2 j
我是建了10个20X5的货架 都连接到发生器 在0时刻产生200个进口货和200个出口货 货物摆放位置见EXCEL
5#
慧娴亚伦 发表于 2013-12-25 21:39:02 | 只看该作者
做了一个小模型,关于如何导入全局表不懂的话你再自己学一下) Q7 U" c/ ^4 b& o2 T- Q8 a
我直接用了里面的全局表,不过表的格式跟你是一样的,只是简化成2批货,每批5个。3 Y! Z# A" b  J( `0 C; F0 l+ Z
同itemtype要发往多个货架的话我的建议是,读表里的数据打标签,然后根据标签发。
  O/ [/ f) F5 X2 W/ d) A代码主要写在货架的放置到层和放置到列,本来想写点注释的,后来发现没什么好写的= =||大概就是一些数学规律而已。
" E; J' t- c0 L7 q: R; L! E希望对你有启发。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
6#
yushaozheng1990 发表于 2013-12-25 23:16:41 | 只看该作者
5# 慧娴亚伦 下载下来学习一下
7#
 楼主| Amy1220 发表于 2013-12-29 13:31:37 | 只看该作者
5# 慧娴亚伦 + D2 ?+ M' \6 i9 u, f
9 B/ ?9 e0 g  s" A7 f
% H4 u5 E, W" s; \" Y0 g9 {. S
你好 前面那部分我是可以搞定了 但是同itemtype发往多个货架问题 我觉得也是应该对产生的item贴标签,然后根据标签发 具体不知道怎么操作 只是有思路 麻烦详细说明下 谢谢
8#
慧娴亚伦 发表于 2013-12-29 13:51:15 | 只看该作者
7# Amy1220
5 d& W) g4 f) {' @+ P7 K
/ L0 `. o3 A1 D, R4 d$ s2 g8 x  b: M% l
既然你知道运用getitemtype来区别itemtype发送不同端口,那么运用getlabelnum不是一个道理么?
9#
 楼主| Amy1220 发表于 2013-12-30 14:24:11 | 只看该作者
8# 慧娴亚伦
6 u( K, _9 `' |9 H% j2 y
6 L- I6 c1 M+ M& ^. |% ]) q- e, l3 d) Y2 z
请教下 我把发生器输出端口设为根据标签了 标签我用的是字符串 表格中的内容也是字符串 但是把您原来的代码:
' g8 I. c7 R; T& M: Nif(gettablenum("table",i,j)==getinput(current))( e+ h6 R1 T& d  e7 b& K6 H
改为if(gettablestr("table",i,j)==getinput(current))之后就报错了 错误提示Invalid type for parameter 2 in call to comparetext().Expecting type str.Type is num 不知道具体什么原因
10#
 楼主| Amy1220 发表于 2013-12-30 15:36:37 | 只看该作者
8# 慧娴亚伦
7 L1 m( @/ l8 ?7 H( t2 w  E3 ^$ r8 ^  Q! }7 W
我自己试了下 发生器1产生两种item 类型1发往货架1 类型2发往货架2 他们的标签都为Impo 对应的全局表为表1;发生器2也产生两种item 类型1发往货架1 类型2发往货架2 他们的标签都为Expo 对应的全局表为表2.
, _; u2 W# k; F% s; b& r现发生器1、2都设置输出端口为根据类型 货架1、2编写指定行列代码时:标签为Impo的根据表1,Expo的根据表2 自己写的代码:) \/ j9 x% `( S5 L6 B! R) P# o# Y
for(int i=1;i<=3;i++): t" W2 s* x' X) q6 u# Q+ x2 \: D
{" x9 B1 f" c( l" v) n
        for(int j=1;j<=3;j++)/ Z; D" e: G1 h3 h5 L# p5 i
        {" @9 y5 w5 P6 {8 K
                if(getlabelstr(current,"label")=="Impo")
3 S: C7 e/ n) S/ |; X! u- D+ x                {+ L( u* E1 ~; c) K( g" d
                   if(gettablenum("table1",i,j)==getinput(current))
  v: r2 v/ r: Y$ a1 Q, t% m* o) Y                   {
7 D$ g; v3 m% n: T- F# h- V                          return j;
! V! v) I/ P9 i4 p5 W                    }
6 B! Z, u  Z# h# W# E! q' ?! u            }
; F0 P8 w. L5 @            if (getlabelstr(current,"label")=="Expo")' _0 M% O/ O& @0 x; S9 x# x1 d
                {
3 K# x1 {: z# i. G# k                   if(gettablenum("table2",i,j)==getinput(current)) % D3 p' a) p8 N. P# L" D/ P' z
                   {
4 a# v/ t; r; O8 E9 ]0 I( y7 q                          return j;, P3 |( f9 t" H% G7 n' x
                    }
9 G. _; ^6 a: a            }3 A3 _, T0 r. j/ R% x2 @
        }
! G/ D3 Z8 t' e6 @8 k2 {: e}' e- V6 g, E! R; {; o
不好使 应该是代码有问题 求指导!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2025-9-6 02:07 , Processed in 0.077616 second(s), 13 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

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