日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

(FlexSim 学习笔记)合成器打包的工作机制分析和实现

發布時間:2024/1/1 编程问答 64 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (FlexSim 学习笔记)合成器打包的工作机制分析和实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

????????在之前文章《“(FlexSim 學習筆記)案例1:不合格產品二次優先加工,兩次不合格作廢》中簡單描述了下 flexsim 合成器的合成打包工作原理,并在該文“3.3、合成器合成打包選擇“這節內容中,通過直接修改“更新合成器組件列表”事件的代碼,以適應實際要求。

? ? ? ? 言猶未盡。直接修改“更新合成器組件列表”事件的總代碼量雖然只有幾行,但涉及到樹節點操作,不太方便理解。故本文嘗試再仔細闡述flexsim的合成器工作機制,并采取不用代碼的方式來實現其工作過程。

一、合成器打包工作機制

????????首先我們來看合成器的組件列表。合成器始終會先接收來自輸入端口1的貨品(并把它當作容器),然后再按下圖所示的組件列表,分別接收其他輸入端口的貨物進行組合打包。例如下圖表示合成器從輸入端口1接收到容器后,再從輸入端口2/3/4分別接收2、3、2個貨物,然后進行打包。也即打包完成后,該容器中共有7個貨物。

? ? ? ? 上圖的數量設置多少無所謂,因為實際案例中往往需要按訂單,設法動態更新此表的數量。

? ? ? ? 如何更新呢?方法就是在合成器的On Entry觸發器中,設置動態更新合成器組件表。這樣的話,只要合成器從輸入端口1收到某個容器,就會立刻執行更新合成器的組件列表。

????????上圖涉及的order表是全局表,需要預先創建,例如下圖(3行5列)。是不是與3行1列的合成器組件表非常相像,除了列多了點?

?

?? ? ? ? order全局表有5列,要用它去更新合成器組件列表,那么究竟該取那列值呢?這就涉及利用某個標簽值了。例如下圖的流程,某個標簽值 item.orderID=3(左圖),就是取全局表order(中圖)的第3列值的意思,再用此列值去更新合成器組件表(右圖)的相應數量。

? ??? ??

? ? ? ? 那么標簽orderID 又從哪來呢?可以考慮給容器定義orderID標簽。這樣的話,按合成器的工作機制,合成器會先從輸入端口1接收容器,緊接著觸發On Entry 事件,因為我們在該事件中設置了更新合成器組件,那么flexsim就可利用此容器的orderID標簽值,去執行更新合成器組件列表的一系列操作。

?二、案例

????????接下來我們用一個案例來具體實現合成器的打包工作機制。

? ? ? ? ?如上圖,有4個發生器,第1個是托盤發生器產生托盤容器(與合成器A連接時,應保證是合成器的第一個輸入端口),其他是貨物發生器,分別產生紅/綠/藍貨物。托盤離開發生器時,將生成訂單信息。合成器接收到托盤后,按訂單要求進行打包(即合成器最終在此托盤中分別放置紅/綠/藍貨物若干數量,進行打包)。

三、解決方案

1、創建order訂單全局表,3行1列

?2、托盤

????????在工具箱臨時實體欄中選擇托盤,新增4個數值標簽,名稱及值分別為 r=0,g=0,b=0,orderID=1

????????r 表示訂單中的紅色貨物數量,g 表示綠色貨物數量,b 表示藍色貨物數量,orderID 對應訂單全局表 order 的第幾列(列索引) ,因為order表只有1列,故orderID初始值設置為1,表示取訂單表order的第1列。

3、托盤發生器

3.1、托盤發生器的臨時實體欄選托盤,表示該發生器產生托盤。

????????

3.2、在托盤發生器的On Creation觸發器分別設置托盤的 r,g,b 標簽值為1~5的隨機數。

????

????????這樣的話,每產生1個托盤,托盤的 r/g/b 分別就有隨機值,比如 r=3,g=5,b=2,表示此托盤要對應的訂單為紅色貨物3個,綠色貨物5個,藍色貨物2個。

3.3、在托盤發生器的On Exit 觸發器中,設置”寫入全局表“3次,分別將托盤的 r,g,b 數量寫入訂單全局表order的第1行第1列,第2行第1列,第3行第1列。

?? ?? ?

4、紅色貨物發生器/綠色貨物發生器/藍色貨物發生器

????????在紅色貨物發送器的On Creation 觸發器中,設置Type標簽和顏色為1,產生類型為1的紅色貨物。

? ? ? ? 其他顏色貨物發生器的設置類推。

5、合成器

????????在合成器的On Entry觸發器中,設置”更新合成器組件列表“,表為order,標簽為orderID,表示通過托盤的orderID值,來取order表的對應列,去更新組件表。這里托盤的orderID值已經有初始值=1,所以更新取的是order表的第1列。

?

6、全部完成。

四、最終效果

五、小結

1、定義一個訂單全局表;

2、對托盤容器,定義和訂單數量相關的標簽,以及和訂單列索引相關的標簽;

3、在某個合適的觸發器中,利用托盤標簽值去修改訂單全局表;

4、在合成器的進入觸發器中,用訂單全局表去更新合成器組件表。

總結

以上是生活随笔為你收集整理的(FlexSim 学习笔记)合成器打包的工作机制分析和实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。