全球FlexSim系统仿真中文论坛

搜索
查看: 9664|回复: 13
打印 上一主题 下一主题

Flexsim邏輯問題

[复制链接]
跳转到指定楼层
1#
r0805995 发表于 2015-4-19 16:56:34 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
目前有5個訂單,於Source隨機產生priority數值 - M+ k7 }* I& L# t, D9 J
Order1     5.32    200個Item3 p: b6 J' ?8 W) i
Order2     1.45    300個Item+ O. U5 T1 T2 ]/ t, M) ]
Order3     3.83    300個Item
2 v& @/ ?& M) M1 POrder4     2.51    200個Item
. w* H# u" H8 E( J. @- @Order5     3.04    100個Item
& n3 p- X. m$ ?5 `, Y+ d& q. e0 t$ y, g. t$ R
Source 產生產品會到Input buffer, , N: t' b' U4 l& V
如何在Input buffer排優先權,使最高優先權最先進入產線加工??
14#
慧娴亚伦 发表于 2015-4-26 21:25:23 | 只看该作者
不好意思,昨天比较忙没看到。" G  n* C0 l+ a5 T! b5 j
r先生您的原模型太多内容了。。。我不知道如何下手,复制了一下您的发生器,新建了一个模型(版本为7.1.4),修改了一下不同批次达到时间,添加了几个标签来作为标示,下游的传送带只有当符合条件(即是一个批次里面的最后一个产品)才会拉入(为了更明确看出,我把该item变为白色)希望对您有帮助。) ~8 \% R- N( [3 I2 R, @; M9 v% _' f& {
可能我的表述问题,我觉得r先生您有时候把一些简单的事情想得过于复杂了。
) e# y  e& \4 H: l  m& j  Q
% p8 f" ]# {7 h' _  YPS.您的发生器太大了,第一次复制吓了我一跳。。。

本帖子中包含更多资源

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

x
13#
 楼主| r0805995 发表于 2015-4-24 21:01:04 | 只看该作者
本帖最后由 r0805995 于 2015-4-24 21:50 编辑 # G. B  f* d2 G. G% X; R* w9 H

. w8 Z4 b, L3 J/ }( w+ w& ~慧嫻 我重整你說的邏輯( |! m' j9 Z1 ^6 t0 S" ]
在Source訂單加上一欄表示批量的標籤(Quantity),在需要判斷的實體上面(Item)添加一個標籤計數(QuantityNo),在Input buffer之OnEntry用inc()函數來累積統計進入的產品數量,當符合它(產品)身上的批量值,該產品即為最後一個產品,然後將OnEntry統計數量的標籤值歸00 ?! K: O2 G' O& o

6 ]/ q3 S! s6 X* \/ r是這樣嗎??
- f# d( Q4 {: V7 `' V7 s
3 v, j2 e7 P9 z
% b5 h* N& E. `$ D- d) m2 K) e我有點不知道要判斷什麼條件,我附上模型能幫我加入嗎??6 m6 O: [$ s9 d, Z$ {
& ^' A2 k7 h9 n# A* D
在Source訂單已經有新增標籤(Quantity)來記錄數量,產品標籤也有判斷是該訂單的第幾個產品(QuantityNo)

本帖子中包含更多资源

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

x
12#
慧娴亚伦 发表于 2015-4-24 19:58:11 | 只看该作者
r先生,这个问题1我觉得可以这么来判断,给同一批订单加上一个表示批量的标签,在需要判断的实体上面再添加一个标签来计数,在OnEntry中用inc()函数来累积统计进入的产品数量,如何符合他身上的标签值(即批量值),那么该产品即为最后一个产品,同时不要忘记将统计的标签清零。; z% y# m: x9 Y# r( x7 ?1 [3 X5 H
同样适用用于最后一个订单的最后一个产品的判断。
11#
 楼主| r0805995 发表于 2015-4-24 18:14:16 | 只看该作者
9# 慧娴亚伦
1 Q8 D# D* U. @) _# n8 m9 Y  h& C7 E& ]1 }0 O
慧嫻,您提供的方法似乎不適用於此模型,因為模型內全程只使用centerport並搭配任務序列指派,我嘗試將op1加入於Input buffer之output,並於Input buffer之OnEntry時closeout(current);並無效果,有無可能一個物件不能同時加入Centerport與outputport。$ g  Q. e5 L  U% r% F

# B3 n# O) G% `+ @  a& f另我有一想法是:在Input buffer之OnEntry判斷是否是最後一個訂單的最後一產品,是的話傳送訊息給自己,並在OnMessage進行排序後接續任務序列。
; ]# y: e+ v/ }( Z9 ~9 l4 `1 h: e8 Y8 \& ?
問題:
# c* C( o+ u3 w. d8 @1.該如何在OnEntry判斷是否是最後一訂單的最後一產品?? (不以寫死程式來判斷,if(Sourceoutput     ==100))/ Q  ]  s4 O  X1 S/ I
5 g/ \5 g5 v; C
如果可以解問題1,應該就可以實現先於Input buffer排優先序後接續任務序列
10#
 楼主| r0805995 发表于 2015-4-23 18:32:11 | 只看该作者
謝謝慧嫻,待我試試再與您討論!
9#
慧娴亚伦 发表于 2015-4-22 19:15:58 | 只看该作者
第一个产品是有这个问题,我的建议是,一开始先关闭这个暂存区的输出,当第一次需要释放之前再打开(当然肯定要在打开前完成排序)* H9 Z: |( j/ c+ m- N# I
希望对您有帮助,另外在网络上我还是习惯大家以网名称呼
8#
 楼主| r0805995 发表于 2015-4-22 17:14:22 | 只看该作者
6# 慧娴亚伦 5 Q: |9 e; s# ?& V/ `

% O; G0 l! r, ^1 ?感謝慧嫻(陳老師),目前仿氣泡排序成功排列優先權,但問題是,不管邏輯寫在Send To Port還是OnExit,第一個訂單的第一個產品都無法被判斷,該如何修改??
& u, ?6 c- J. P4 ^3 z: C" v3 O5 [% a) I1 ]2 \
做法:" n9 y& {- g5 i+ K" F. t5 \
Source於Creation時,創造隨機1~6的優先序之值並存入Order_Priority_Table,Exit時把值丟給對應的訂單產品,並於Input buffer之Send To Port排優先權。: r4 k, S- g8 o
5 x$ U* y, B, W; A, I/ V
Version: 7.1

本帖子中包含更多资源

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

x
7#
shadowwind 发表于 2015-4-22 08:31:26 | 只看该作者
陈老师讲解的好详细啊~~~
6#
慧娴亚伦 发表于 2015-4-20 23:21:30 | 只看该作者
下游拉入的话,可以穷举一下,毕竟每次都只要决定一个拉入的值即可。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-9-6 08:06 , Processed in 0.085984 second(s), 15 queries .

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

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