T3_6_流利架.vb 詳細說明
📖 概述
本模組(流利架計算F)是專門用於設計與計算流利架(Flow Rack)系統容積的表單程式。
流利架是一種重力式(傾斜式)儲存系統,旨在最大化高流動性商品的揀貨效率,可自動實現從後方補貨、前方揀貨的「先進先出(FIFO)」。
🎯 主要目的
- 計算單一流利架的尺寸(格寬、深度、高度、層數等)
- 計算整體佈局的面積與容積(貨架配置、通道、所需面積)
- 計算儲存容積(考量貨架裝填率)
- 估算庫存週轉天數(比較流利架與其他設備的庫存天數)
🏗️ 主要類別/模組
Public Class 流利架計算F
這是一個用來設計、配置流利架並計算其儲存能力的 Windows Forms 類別。
特徵:
- 計算單一貨架的紙箱收納能力(根據寬度、深度、高度、層數計算出格數與紙箱數)
- 計算佈局面積(根據列數、行數、通道配置計算所需面積)
- 評估容積效率(考量裝填率後的實際儲存容積)
- 比較庫存天數(比較流利架與其他設備的庫存保留天數)
🔧 主要函式/副程式詳細說明
1. 流利架計算_Load
Private Sub 流利架計算_Load(sender As Object, e As EventArgs) Handles MyBase.Load
版權L.Text = 公司 & " 版權:" & 版權
有效期間L.Text = "有效期間:" & 試用版有效期限
單一貨架計算()
End Sub
處理內容:
- 表單載入時顯示版權資訊與授權有效期限
- 以初始值執行單一貨架計算
2. 單一貨架計算
Private Sub 單一貨架計算()
' 取得貨架尺寸
' 計算格寬・深度・高度
' 計算紙箱尺寸
' 計算紙箱容積
' 呼叫佈局容積・面積計算
End Sub
處理內容:
- 取得貨架基本尺寸: 讀取流利架寬度、貨架深度、支柱寬度、最上層高度等輸入值
- 計算貨架寬度間距: 貨架寬度 − 支柱寬度 = 貨架寬度間距
- 計算格寬間距: 貨架有效寬度 ÷ 每層格數 = 格寬間距
- 計算格高: (Pic最上層高 − 最低高1) ÷ (貨架層數 − 1) = 格高
- 計算投入高: Pic最上層高 + (最低高2 − 最低高1) = 投入高(投入紙箱位置的高度)
- 每座貨架格數: 每層格數 × 貨架層數 = 每座貨架格數
- 每座貨架紙箱數: 每座貨架格數 × 每格紙箱數 = 每座貨架紙箱數
- 紙箱寬度: 格寬間距 − (導軌寬度 + 格寬C × 2)
- 紙箱長度: 貨架深度 ÷ 每格紙箱數
- 紙箱高度: 格高 − (輸送帶厚度 + Pic安全間距)
- 紙箱容積(m³): (紙箱寬度 × 紙箱長度 × 紙箱高度) ÷ 1000³
- 每座貨架紙箱容積(m³): 紙箱容積 × 每座貨架紙箱數
- 呼叫佈局容積與佈局面積計算程序
📐 主要計算公式:
貨架寬度間距 = 貨架寬度 − 支柱寬度
格寬間距 = (貨架寬度間距 − 支柱寬度) ÷ 每層格數
格高 = (Pic最上層高 − 最低高1) ÷ (貨架層數 − 1)
投入高 = Pic最上層高 + (最低高2 − 最低高1)
紙箱寬度 = 格寬間距 − (導軌寬度 + 格寬C × 2)
紙箱長度 = 貨架深度 ÷ 每格紙箱數
紙箱高度 = 格高 − (輸送帶厚度 + Pic安全間距)
紙箱容積 = (紙箱寬度 × 紙箱長度 × 紙箱高度) ÷ 1000³
貨架寬度間距 = 貨架寬度 − 支柱寬度
格寬間距 = (貨架寬度間距 − 支柱寬度) ÷ 每層格數
格高 = (Pic最上層高 − 最低高1) ÷ (貨架層數 − 1)
投入高 = Pic最上層高 + (最低高2 − 最低高1)
紙箱寬度 = 格寬間距 − (導軌寬度 + 格寬C × 2)
紙箱長度 = 貨架深度 ÷ 每格紙箱數
紙箱高度 = 格高 − (輸送帶厚度 + Pic安全間距)
紙箱容積 = (紙箱寬度 × 紙箱長度 × 紙箱高度) ÷ 1000³
3. 佈局容積
Private Sub 佈局容積()
' 貨架數總計 = 列數 × 行數
' 格數總計 = 貨架數總計 × 每座貨架格數
' 考量貨架裝填率
' 儲存容積_貨架 = 計算容積_貨架 × 貨架裝填率
' 儲存容積總計 = 儲存容積_貨架 × 貨架數總計
End Sub
處理內容:
- 貨架數總計: 列數 × 行數
- 格數總計: 貨架數總計 × 每座貨架格數
- 貨架裝填率: 將輸入的裝填率(%)轉換為小數
- 儲存容積_貨架: 計算容積_貨架 × 貨架裝填率
- 儲存容積總計: 儲存容積_貨架 × 貨架數總計(四捨五入取整數)
📐 容積計算公式:
貨架數總計 = 列數 × 行數
格數總計 = 貨架數總計 × 每座貨架格數
儲存容積_貨架 = 計算容積_貨架 × (貨架裝填率 ÷ 100)
儲存容積總計 = 儲存容積_貨架 × 貨架數總計
貨架數總計 = 列數 × 行數
格數總計 = 貨架數總計 × 每座貨架格數
儲存容積_貨架 = 計算容積_貨架 × (貨架裝填率 ÷ 100)
儲存容積總計 = 儲存容積_貨架 × 貨架數總計
4. 佈局面積
Private Sub 佈局面積()
' 計算通道數量
' 計算 W 方向(寬度方向)
' 計算 L 方向(長度方向)
' 計算各項面積
End Sub
處理內容:
- 貨架寬度間距: 流利架寬度 − 支柱寬度
- 計算通道數量:
- 貨架數量 = 列數
- 補貨通道數量 = Int(貨架數量 ÷ 2) + 1
- Pic通道數量 = Int(貨架數量 ÷ 2 + 0.999)
- 輔助通道數量 = 2(固定)
- W 方向(寬度方向)的計算:
- W1 = 補貨通道寬度
- W2 = 貨架設置寬度(等同於貨架深度)
- W3 = Pic通道寬度
- 所需寬度 W = W1 × 補貨通道數量 + W2 × 貨架數量 + W3 × Pic通道數量
- L 方向(長度方向)的計算:
- L1 = 輔助通道寬度
- L2 = 貨架設置長度 = 貨架寬度間距 × 行數 + 支柱寬度
- 所需長度 L = L1 × 2 + L2
- 各項面積的計算:
- 貨架設置面積 = (W2 × L2) ÷ 1000² × 貨架數量
- Pic通道面積 = (W3 × L2) ÷ 1000² × Pic通道數量
- 補貨通道面積 = (W1 × L2) ÷ 1000² × 補貨通道數量
- 輔助通道面積 = (W × L1 ÷ 1000²) × 輔助通道數量
- 所需面積總計 = 貨架設置面積 + Pic通道面積 + 補貨通道面積 + 輔助通道面積
- 計算完成後,呼叫
計算範例重新計算()
📐 佈局計算公式:
通道數量:
補貨通道數量 = Int(列數 ÷ 2) + 1
Pic通道數量 = Int(列數 ÷ 2 + 0.999)
輔助通道數量 = 2
所需寬度・長度:
所需寬度 W = 補貨通道寬度 × 補貨通道數量 + 貨架深度 × 列數 + Pic通道寬度 × Pic通道數量
所需長度 L = 輔助通道寬度 × 2 + (貨架寬度間距 × 行數 + 支柱寬度)
所需面積:
所需面積總計 = 貨架設置面積 + Pic通道面積 + 補貨通道面積 + 輔助通道面積
通道數量:
補貨通道數量 = Int(列數 ÷ 2) + 1
Pic通道數量 = Int(列數 ÷ 2 + 0.999)
輔助通道數量 = 2
所需寬度・長度:
所需寬度 W = 補貨通道寬度 × 補貨通道數量 + 貨架深度 × 列數 + Pic通道寬度 × Pic通道數量
所需長度 L = 輔助通道寬度 × 2 + (貨架寬度間距 × 行數 + 支柱寬度)
所需面積:
所需面積總計 = 貨架設置面積 + Pic通道面積 + 補貨通道面積 + 輔助通道面積
5. 計算範例重新計算
Private Sub 計算範例重新計算()
' 計算流利架庫存天數
' 計算其他設備庫存天數
End Sub
處理內容:
- 流利架庫存天數: 範例流利架儲存量 ÷ 範例出貨量(計算至小數第一位)
- 其他設備庫存天數: 範例高流動品總庫存天數 − 範例流利架庫存天數(計算至小數第一位)
📐 庫存天數計算公式:
流利架庫存天數 = 流利架儲存量 ÷ 出貨量
其他設備庫存天數 = 高流動品總庫存天數 − 流利架庫存天數
流利架庫存天數 = 流利架儲存量 ÷ 出貨量
其他設備庫存天數 = 高流動品總庫存天數 − 流利架庫存天數
6. 重新計算Bt_Click
Private Sub 重新計算Bt_Click(sender As Object, e As EventArgs) Handles 重新計算Bt.Click
單一貨架計算()
If 計算開始_Chk2 = 0 Then
佈局尺寸明細Tp.BackColor = Color.LightYellow
計算開始_Chk2 = 1
Else
佈局尺寸明細Tp.BackColor = Color.PowderBlue
計算開始_Chk2 = 0
End If
End Sub
處理內容:
- 點擊重新計算按鈕時執行
單一貨架計算() - 切換佈局尺寸明細標籤頁的背景色(LightYellow ⇔ PowderBlue)
- 切換計算開始旗標(
計算開始_Chk2)
7. 計算範例重新計算Tb_Click
Private Sub 計算範例重新計算Tb_Click(sender As Object, e As EventArgs) Handles 計算範例重新計算Tb.Click
計算範例重新計算()
End Sub
處理內容:
- 點擊計算範例重新計算按鈕時,執行庫存天數的重新計算
8. 封面Pb_Click / 流利架計算Bt_Click
Private Sub 封面Pb_Click(sender As Object, e As EventArgs) Handles 封面Pb.Click
Me.TabControl1.SelectedTab = 流利架計算Tp
End Sub
Private Sub 流利架計算Bt_Click(sender As Object, e As EventArgs) Handles 流利架計算Bt.Click
Me.TabControl1.SelectedTab = 流利架計算Tp
End Sub
處理內容:
- 點擊封面圖片或流利架計算按鈕時,顯示流利架計算標籤頁
9. 關閉Bt_Click
Private Sub 關閉Bt_Click(sender As Object, e As EventArgs) Handles 關閉Bt.Click
Close()
End Sub
處理內容:
- 點擊關閉按鈕時關閉表單
🔗 依賴關係
| 依賴項目 | 說明 |
|---|---|
| System.Runtime.Remoting.Messaging | 已匯入,但在程式碼中並未被使用(可刪除) |
| Windows Forms | UI 元件(TabControl, TextBox, ComboBox, Button, Label, PictureBox 等) |
| 全域變數 | 公司, 版權, 試用版有效期限, 計算開始_Chk2 |
📝 修訂歷史
| 版本 | 日期 | 變更內容 |
|---|---|---|
| 1.0 | - | 初版建立 |
💡 計算邏輯摘要
流利架系統的組成
流利架的特徵:
- 傾斜式 FIFO: 由後方補貨,前方揀貨(紙箱會因重力自然滑動)
- 適合高流動性商品: 最適合存放需要頻繁揀取之商品
- 節省空間: 可比一般固定貨架縮短揀貨通道
- 層數・格數設計具彈性: 可根據商品尺寸與揀貨頻率進行調整
計算流程
- 輸入單一貨架尺寸: 流利架寬度、深度、層數、格數、紙箱數等
- 單一貨架計算:
- 計算格寬・深度・高度
- 計算紙箱尺寸(寬・長・高)
- 計算紙箱容積與單一貨架的紙箱容積
- 輸入佈局配置: 列數、行數、通道寬度等
- 計算佈局容積:
- 計算貨架數總計、格數總計
- 考量裝填率後計算儲存容積
- 計算佈局面積:
- 算出通道數量(補貨通道、Pic通道、輔助通道)
- 計算寬度方向・長度方向之所需尺寸
- 各項面積(貨架設置、通道)的加總
- 比較庫存天數:
- 流利架庫存天數 = 儲存量 ÷ 出貨量
- 其他設備庫存天數 = 整體 − 流利架
通道配置邏輯
通道的種類與配置:
- Pic通道(揀貨通道): 配置於流利架的前面(揀貨側)
- 補貨通道: 配置於流利架的後面(補貨側)
- 輔助通道: 配置於佈局的兩側(固定為 2 條)
- 補貨通道數量 = Int(列數 ÷ 2) + 1(位於貨架之間與兩側)
- Pic通道數量 = Int(列數 ÷ 2 + 0.999)(位於貨架之間)
- 輔助通道數量 = 2(固定位於佈局的兩側)
🎓 使用方法與設計指南
基本使用方法
- 輸入流利架的基本規格:
- 流利架寬度、貨架深度、貨架層數、每層格數、每格紙箱數
- 支柱寬度、導軌寬度、輸送帶厚度等結構參數
- 最低高1、最低高2、Pic最上層高等高度設定
- 點擊重新計算按鈕: 確認單一貨架的計算結果
- 輸入佈局配置:
- 列數、行數
- 補貨通道寬度、Pic通道寬度、輔助通道寬度
- 貨架裝填率(%)
- 確認佈局計算結果:
- 所需寬度・所需長度・所需面積
- 儲存容積總計
- 各項面積的明細
- 在計算範例中確認庫存天數:
- 輸入流利架儲存量、出貨量
- 比較流利架庫存天數與其他設備庫存天數
設計的重點
⚠️ 設計時的注意事項:
- 紙箱尺寸的相容性: 流利架較適合尺寸統一的商品。若尺寸差異較大,必須依各格位進行調整。
- 傾斜角度: 實際設計時必須考量滑道的傾斜角度(本計算予以簡化)。
- 補貨與揀貨分離: 因 Pic 通道與補貨通道是分開的,可避免作業動線相互干擾。
- 通道寬度的最佳化: 請根據堆高機或揀貨推車的尺寸來設定通道寬度。
- 設定裝填率: 實際營運時設定在 80~90% 左右較為合理(100% 僅為理論值)。
- 庫存週轉率: 由於流利架適用於高流動性商品,因此配置庫存天數短(=週轉率高)的商品會更具效益。
與其他倉儲系統的比較
| 項目 | 流利架 | 固定貨架 | 自動倉儲 |
|---|---|---|---|
| 揀貨方式 | 前面揀貨(自動 FIFO) | 貨架前揀貨 | 自動出庫 |
| 補貨方式 | 由後面補貨 | 由同一面補貨 | 自動入庫 |
| 週轉率適配性 | 最適合高流動性商品 | 中~低流動性 | 全般適用 |
| 初期成本 | 中等 | 低 | 高 |
| 空間效率 | 高(縮短通道) | 中等 | 非常高 |
| FIFO 管理 | 自動確保 | 手動管理 | 系統管理 |
🔍 流利架與紙箱自動倉儲的差異
流利架的特徵:
- 手動揀貨: 作業人員從前面直接進行揀貨
- 重力式 FIFO: 運用傾斜角度使紙箱自動往前滑
- 補貨作業: 由後面透過手動或堆高機進行補貨
- 適用於高流動性商品: 可應付頻繁的揀貨作業
- 可視性佳: 容易看見商品,方便確認庫存
- 完全自動化: 出入庫作業完全自動化
- 高密度儲存: 將通道減至最少,使儲存密度最大化
- 庫存管理: 結合 WMS 系統,實現即時庫存管理
- 初期投資: 設備建置成本較高
- 靈活性: 不受週轉率限制,可儲存所有商品
📊 活用計算範例
比較庫存天數的功能:
此模組內含「計算範例」功能,可用來比較流利架與其他設備的庫存天數。 使用者可藉此評估,在高流動性商品中應將多少比例配置於流利架。
範例:- 高流動品總庫存天數: 10天
- 流利架儲存量: 200箱
- 每日出貨量: 50箱
- → 流利架庫存天數: 200 ÷ 50 = 4.0天
- → 其他設備庫存天數: 10 − 4 = 6.0天
根據此結果,可判斷將高流動性商品的 40% 配置於流利架,剩餘 60% 存放於其他設備,會是一個恰當的規劃。
🚀 總結
T3_6_流利架.vb 是一款專門協助設計流利架系統的工具,能有效提升高流動性商品的揀貨效率。 從單一貨架的尺寸計算到整體佈局的容積與面積計算,提供全面的設計支援。 其最大特點在於能夠將補貨與揀貨的動線分開,並透過重力式 FIFO 讓庫存管理變得更加容易。
透過使用此模組,您可以:
- ✅ 設計出流利架系統的最佳尺寸
- ✅ 精確算出佈局所需的面積
- ✅ 在考量裝填率的情況下評估儲存容積
- ✅ 最佳化分配流利架與其他設備的儲存任務
- ✅ 針對高流動性商品建構出高效率的儲存與揀貨系統