全球FlexSim系统仿真中文论坛

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

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

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

本帖子中包含更多资源

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

x
4#
 楼主| Amy1220 发表于 2013-12-25 20:03:39 | 只看该作者
2# 慧娴亚伦
: h, g6 X- h$ Q2 J1 U  V3 o我是建了10个20X5的货架 都连接到发生器 在0时刻产生200个进口货和200个出口货 货物摆放位置见EXCEL
5#
慧娴亚伦 发表于 2013-12-25 21:39:02 | 只看该作者
做了一个小模型,关于如何导入全局表不懂的话你再自己学一下
+ `7 I6 `9 v& |  s, ?我直接用了里面的全局表,不过表的格式跟你是一样的,只是简化成2批货,每批5个。
2 C' ?/ Z" q2 `# [  ?同itemtype要发往多个货架的话我的建议是,读表里的数据打标签,然后根据标签发。, k, G& R4 J% W; \+ W
代码主要写在货架的放置到层和放置到列,本来想写点注释的,后来发现没什么好写的= =||大概就是一些数学规律而已。
1 e- y' K  T7 s; G希望对你有启发。

本帖子中包含更多资源

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

x
6#
yushaozheng1990 发表于 2013-12-25 23:16:41 | 只看该作者
5# 慧娴亚伦 下载下来学习一下
7#
 楼主| Amy1220 发表于 2013-12-29 13:31:37 | 只看该作者
5# 慧娴亚伦 * O! e3 Q) K( i1 I% d/ a. m+ |

. D/ \/ g( u% w0 I7 o( Z: X. x+ E4 Y' Q
你好 前面那部分我是可以搞定了 但是同itemtype发往多个货架问题 我觉得也是应该对产生的item贴标签,然后根据标签发 具体不知道怎么操作 只是有思路 麻烦详细说明下 谢谢
8#
慧娴亚伦 发表于 2013-12-29 13:51:15 | 只看该作者
7# Amy1220 % Y7 U0 H7 Z! w2 d  S  c+ V

6 u- w0 @; U2 X, i* k9 w& g" S' O4 J
既然你知道运用getitemtype来区别itemtype发送不同端口,那么运用getlabelnum不是一个道理么?
9#
 楼主| Amy1220 发表于 2013-12-30 14:24:11 | 只看该作者
8# 慧娴亚伦
0 P  F8 T0 b3 p5 h" n" D4 v- C$ @2 f0 g# G/ |

# z+ V! T$ h' G3 q5 U! n请教下 我把发生器输出端口设为根据标签了 标签我用的是字符串 表格中的内容也是字符串 但是把您原来的代码:; b, ?, _$ d+ r4 o$ T. {
if(gettablenum("table",i,j)==getinput(current))
* _$ Q, l6 N' }8 W' S( D改为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# 慧娴亚伦
/ r) f5 \0 ?8 t8 A% ^6 K1 t1 d+ y5 I+ c
我自己试了下 发生器1产生两种item 类型1发往货架1 类型2发往货架2 他们的标签都为Impo 对应的全局表为表1;发生器2也产生两种item 类型1发往货架1 类型2发往货架2 他们的标签都为Expo 对应的全局表为表2. $ m: v. U, x! A3 N  I- O% u1 \
现发生器1、2都设置输出端口为根据类型 货架1、2编写指定行列代码时:标签为Impo的根据表1,Expo的根据表2 自己写的代码:* M8 M0 B+ f/ ~' U5 r3 p( _
for(int i=1;i<=3;i++)
5 \6 I* o( V5 `% K7 I, Y0 S2 a5 d{
0 w  [  D1 X* c4 [+ m        for(int j=1;j<=3;j++)
9 W5 @+ l* f! o# D( @        {; ?% O" h& o3 L- k
                if(getlabelstr(current,"label")=="Impo")" z8 `8 N  j3 c/ e5 x0 u1 V! O
                {6 P% E9 v! a& \$ G8 ~& ?) c
                   if(gettablenum("table1",i,j)==getinput(current))
0 O9 y, y1 G' I1 j1 ]                   {/ p) D3 e( A3 o+ f; a/ }
                          return j;) B4 T3 \" t7 i) F/ Z
                    }6 U$ G1 F' u/ U& s% J# N; a
            }
# b+ N5 L3 E( R) @2 D            if (getlabelstr(current,"label")=="Expo")
9 q! u  X: q! ]/ |" ?) d% d  E                {
9 Y; s) d; W4 q* W. u! U                   if(gettablenum("table2",i,j)==getinput(current)) , B0 _! U% b4 _6 Q1 s
                   {% `3 h$ \% U  S
                          return j;
( u4 f" k* i, Z1 L" ~! K+ Q( G                    }
" S! v7 u. ]* K. M) k2 y6 y6 ~            }
% ~. \9 U' }( {6 ~+ Z5 F3 u        }
4 u# r/ A) x. E+ s}% t4 n6 ?# y) v$ t  p( {
不好使 应该是代码有问题 求指导!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-5-11 09:42 , Processed in 0.076850 second(s), 15 queries .

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

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