全球FlexSim系统仿真中文论坛

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

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

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

本帖子中包含更多资源

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

x
4#
 楼主| Amy1220 发表于 2013-12-25 20:03:39 | 只看该作者
2# 慧娴亚伦 + t4 [7 ~$ ~  n
我是建了10个20X5的货架 都连接到发生器 在0时刻产生200个进口货和200个出口货 货物摆放位置见EXCEL
5#
慧娴亚伦 发表于 2013-12-25 21:39:02 | 只看该作者
做了一个小模型,关于如何导入全局表不懂的话你再自己学一下
& z& o% `  m- q- O$ A: E我直接用了里面的全局表,不过表的格式跟你是一样的,只是简化成2批货,每批5个。. f4 U5 `! A# t7 D$ Q' i
同itemtype要发往多个货架的话我的建议是,读表里的数据打标签,然后根据标签发。
& y" u/ e( e1 k  m; x0 W代码主要写在货架的放置到层和放置到列,本来想写点注释的,后来发现没什么好写的= =||大概就是一些数学规律而已。
) |) |) Z: k( E% R: b希望对你有启发。

本帖子中包含更多资源

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

x
6#
yushaozheng1990 发表于 2013-12-25 23:16:41 | 只看该作者
5# 慧娴亚伦 下载下来学习一下
7#
 楼主| Amy1220 发表于 2013-12-29 13:31:37 | 只看该作者
5# 慧娴亚伦
2 ?0 X4 [: y) o9 ]% i! _5 a$ j0 y8 m( U$ v" h; W
7 j" u/ ]( G: s- [0 l2 |' \2 v
你好 前面那部分我是可以搞定了 但是同itemtype发往多个货架问题 我觉得也是应该对产生的item贴标签,然后根据标签发 具体不知道怎么操作 只是有思路 麻烦详细说明下 谢谢
8#
慧娴亚伦 发表于 2013-12-29 13:51:15 | 只看该作者
7# Amy1220 3 U6 f6 W( f7 [* e

" A/ o9 O6 w, y& C. ?1 E4 ?% J. P
. E4 I9 E2 s1 S% u/ {既然你知道运用getitemtype来区别itemtype发送不同端口,那么运用getlabelnum不是一个道理么?
9#
 楼主| Amy1220 发表于 2013-12-30 14:24:11 | 只看该作者
8# 慧娴亚伦 : [4 A+ r2 g5 b
. Z+ `! p9 g9 |  C" R
  c, v) i. T+ {8 F. A* V
请教下 我把发生器输出端口设为根据标签了 标签我用的是字符串 表格中的内容也是字符串 但是把您原来的代码:
8 m+ R9 M6 Z3 D$ x, Lif(gettablenum("table",i,j)==getinput(current))( g$ X# N& V$ i2 }2 y! v3 e
改为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# 慧娴亚伦
* `0 G9 P4 D* r1 O8 c' N" B+ r  [% O2 k! ?) }4 _* z5 B  M& N  S! T
我自己试了下 发生器1产生两种item 类型1发往货架1 类型2发往货架2 他们的标签都为Impo 对应的全局表为表1;发生器2也产生两种item 类型1发往货架1 类型2发往货架2 他们的标签都为Expo 对应的全局表为表2.
3 v  X4 ?1 {0 r现发生器1、2都设置输出端口为根据类型 货架1、2编写指定行列代码时:标签为Impo的根据表1,Expo的根据表2 自己写的代码:
* g& T3 Z& E7 H9 a9 a3 e; Ufor(int i=1;i<=3;i++)& _; c3 W6 S; }8 b3 [. M
{
0 ~  c5 K& r/ G' ~        for(int j=1;j<=3;j++)+ A: ]5 O% y" o5 d' o/ `
        {
: s$ E3 ~2 N: ^                if(getlabelstr(current,"label")=="Impo")" L5 O% d! }3 B6 B7 b
                {
9 ^; |( }/ a' s; G1 {! |                   if(gettablenum("table1",i,j)==getinput(current)) # |* ~6 R4 q9 W1 E4 H, e
                   {: [" n6 X! _. p# j; v
                          return j;6 b3 B8 B5 w# t
                    }
. a6 m4 i7 b5 B, M6 R" |7 @            }7 D$ M; E+ m% }2 B& T3 ]
            if (getlabelstr(current,"label")=="Expo")
- m; O* Q6 ]% j( x8 m                {
0 `0 p$ K2 w6 K' w1 i* A, L# s! Z( V                   if(gettablenum("table2",i,j)==getinput(current)) 1 T) _. t$ J$ J, @* W- E2 G
                   {
  n3 r! }3 ]! A' n4 o# |" K                          return j;
6 g" x# }! Y2 \/ Q; ?* O" G  M  V                    }
( B0 f, B) \- X* C% R            }) |, D* `1 \& g* `
        }9 E$ B6 Q- Z* P+ h
}5 `# l/ T) r! O$ y  ]
不好使 应该是代码有问题 求指导!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-5-11 07:59 , Processed in 0.084107 second(s), 14 queries .

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

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