全球FlexSim系统仿真中文论坛

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

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

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

本帖子中包含更多资源

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

x
4#
 楼主| Amy1220 发表于 2013-12-25 20:03:39 | 只看该作者
2# 慧娴亚伦 1 E2 W+ |+ D! r6 ]9 r3 R( F8 U
我是建了10个20X5的货架 都连接到发生器 在0时刻产生200个进口货和200个出口货 货物摆放位置见EXCEL
5#
慧娴亚伦 发表于 2013-12-25 21:39:02 | 只看该作者
做了一个小模型,关于如何导入全局表不懂的话你再自己学一下
% Q( ^5 P4 C7 G% y+ d, F我直接用了里面的全局表,不过表的格式跟你是一样的,只是简化成2批货,每批5个。$ p/ t9 O- e0 B1 Q% L$ @5 y
同itemtype要发往多个货架的话我的建议是,读表里的数据打标签,然后根据标签发。
1 V, M, d# }% }/ }1 y6 x# j# w代码主要写在货架的放置到层和放置到列,本来想写点注释的,后来发现没什么好写的= =||大概就是一些数学规律而已。7 B' N/ i7 ~0 u' C
希望对你有启发。

本帖子中包含更多资源

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

x
6#
yushaozheng1990 发表于 2013-12-25 23:16:41 | 只看该作者
5# 慧娴亚伦 下载下来学习一下
7#
 楼主| Amy1220 发表于 2013-12-29 13:31:37 | 只看该作者
5# 慧娴亚伦 - T* Q/ O$ Z+ x1 [- r7 M, ~
5 ?& M9 g1 B# A1 Y4 S

6 ~$ n) X, n, Y" N你好 前面那部分我是可以搞定了 但是同itemtype发往多个货架问题 我觉得也是应该对产生的item贴标签,然后根据标签发 具体不知道怎么操作 只是有思路 麻烦详细说明下 谢谢
8#
慧娴亚伦 发表于 2013-12-29 13:51:15 | 只看该作者
7# Amy1220 7 m8 j" ?2 G; c7 i" K* T

( b4 c4 r/ }% k) I
! [8 s1 a" W( F; a0 |6 T% a, C3 f( A5 B0 C既然你知道运用getitemtype来区别itemtype发送不同端口,那么运用getlabelnum不是一个道理么?
9#
 楼主| Amy1220 发表于 2013-12-30 14:24:11 | 只看该作者
8# 慧娴亚伦
7 D9 x; q4 k' ~0 O% k, h! N7 B) ?
/ ?- H7 ?  k7 G9 n6 ], Q$ @+ ~$ t- D# R6 m
请教下 我把发生器输出端口设为根据标签了 标签我用的是字符串 表格中的内容也是字符串 但是把您原来的代码:8 s3 m. h3 c: J& ^! O7 h( `9 p( k
if(gettablenum("table",i,j)==getinput(current))0 ]- K# f/ R1 ~1 q) s1 j
改为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# 慧娴亚伦
% ?+ O3 n- Y1 {( M5 f* R
1 ^7 p/ e  G8 u我自己试了下 发生器1产生两种item 类型1发往货架1 类型2发往货架2 他们的标签都为Impo 对应的全局表为表1;发生器2也产生两种item 类型1发往货架1 类型2发往货架2 他们的标签都为Expo 对应的全局表为表2.
1 U7 `3 `+ ?. g7 Z现发生器1、2都设置输出端口为根据类型 货架1、2编写指定行列代码时:标签为Impo的根据表1,Expo的根据表2 自己写的代码:
/ X8 j1 ~. E8 dfor(int i=1;i<=3;i++)) `$ |; w5 G2 V: a  W8 f
{
8 M+ o+ L- c% Y, \        for(int j=1;j<=3;j++)
4 k* L2 y2 c1 k  m5 x        {+ o  {' `+ @/ [- ~6 b* d
                if(getlabelstr(current,"label")=="Impo"): t# q  @& L+ H& j* t0 o' k
                {
% M5 H) @# f3 h0 a3 p( b( J8 Q9 {                   if(gettablenum("table1",i,j)==getinput(current)) ' H% i+ z% L3 Z5 P4 e' C7 i
                   {) I" l8 r) N0 [9 {* ~) D/ e" P. j, f! `# A
                          return j;
7 ?/ y; }: @- h; G8 d7 W. W                    }6 z3 A1 M% j7 A0 w
            }
: Q& f3 }2 H1 h0 T+ A            if (getlabelstr(current,"label")=="Expo")
  }0 V* L9 e3 |- J                {( v( s, z3 L, S+ Q+ N8 ]
                   if(gettablenum("table2",i,j)==getinput(current))
% x6 p5 e! c- S" D. y; |                   {0 \5 t" q  }9 ]( `
                          return j;8 l6 x: {% [/ e& Y0 A% ~
                    }
6 T8 Z6 Y/ H' |$ _0 {( U            }, {2 F5 `" J. m4 U  r2 p
        }
2 ?! u, t- a! y( G$ A}
% ]4 {) T! Q8 n' Y不好使 应该是代码有问题 求指导!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-5-11 10:02 , Processed in 0.082283 second(s), 14 queries .

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

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