T3_6_フロー棚.vb 詳細説明
📖 概要
このモジュール(フロー棚計算F)は、フロー棚(Flow Rack)システムの設計と容積計算を行うためのフォームです。
フロー棚は、高流動商品のピッキング効率を最大化するための重力式(傾斜式)保管システムで、後方から補充し前方でピッキングする「先入先出(FIFO)」を自動的に実現します。
🎯 主な目的
- フロー棚単体の寸法計算(間口幅・奥行・高さ・段数など)
- レイアウト全体の面積・容積計算(棚配置、通路、必要面積)
- 保管容積の計算(棚充填率を考慮)
- 在庫回転日数の目安計算(フロー棚vs他設備の保管日数比較)
🏗️ 主要なクラス/モジュール
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³
3. レイアウト容積
Private Sub レイアウト容積()
' 棚数計 = 列数 × 連数
' 間口数計 = 棚数計 × 間口数_棚
' 棚充填率を考慮
' 保管容積_棚 = 計算容積_棚 × 棚充填率
' 保管容積計 = 保管容積_棚 × 棚数計
End Sub
処理内容:
- 棚数計: 列数 × 連数
- 間口数計: 棚数計 × 間口数_棚
- 棚充填率: 入力された充填率(%)を小数に変換
- 保管容積_棚: 計算容積_棚 × 棚充填率
- 保管容積計: 保管容積_棚 × 棚数計(四捨五入して整数化)
📐 容積計算式:
棚数計 = 列数 × 連数
間口数計 = 棚数計 × 間口数_棚
保管容積_棚 = 計算容積_棚 × (棚充填率 ÷ 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通路面積 + 補充通路面積 + 補助通路面積
5. 計算例再計算
Private Sub 計算例再計算()
' フロー棚在庫日数の計算
' 他設備在庫日数の計算
End Sub
処理内容:
- フロー棚在庫日数: 例フロー棚保管量 ÷ 例出荷量(小数第1位まで)
- 他設備在庫日数: 例高流動品全在庫日数 − 例フロー棚在庫日数(小数第1位まで)
📐 在庫日数計算式:
フロー棚在庫日数 = フロー棚保管量 ÷ 出荷量
他設備在庫日数 = 高流動品全在庫日数 − フロー棚在庫日数
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 |
📝 改訂履歴
💡 計算ロジックサマリー
フロー棚システムの構成
フロー棚の特徴:
- 傾斜式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ケース
- 1日あたり出荷量: 50ケース
- → フロー棚在庫日数: 200 ÷ 50 = 4.0日
- → 他設備在庫日数: 10 − 4 = 6.0日
この結果から、高流動品の40%をフロー棚に、残り60%を他設備に配置することが適切と判断できます。
🚀 まとめ
T3_6_フロー棚.vbは、高流動商品のピッキング効率を向上させるフロー棚システムの設計支援ツールです。
棚単体の寸法計算からレイアウト全体の容積・面積計算まで、包括的な設計支援を提供します。
特に、補充とピッキングの動線を分離できる点、重力式FIFOにより在庫管理が容易になる点が最大の特徴です。
このモジュールを使用することで:
- ✅ フロー棚システムの最適な寸法を設計できる
- ✅ レイアウトの必要面積を正確に算出できる
- ✅ 保管容積を充填率を考慮して評価できる
- ✅ フロー棚と他設備の保管分担を最適化できる
- ✅ 高回転商品の効率的な保管・ピッキングシステムを構築できる