T3_3_MobileRack.vb Detailed Explanation

1. Overview

This file is a Windows Forms application designed to perform design calculations for Mobile Racks (Electric Racks). Its primary responsibility is to calculate foundational data for comparative analysis between fixed racks and mobile racks.

Mobile racks are storage systems that use racks movable on rails, consolidating aisles into one, thereby significantly improving storage efficiency compared to fixed racks. This system compares and calculates the following four configurations:

  • Fixed Rack: Standard fixed pallet rack (Baseline)
  • Mobile Rack 1: 1 mobile rack bay (4 columns storage, 2x storage efficiency)
  • Mobile Rack 2: 2 mobile rack bays (6 columns storage, 3x storage efficiency)
  • Mobile Rack 3: 3 mobile rack bays (8 columns storage, 4x storage efficiency)

For each configuration, it calculates the storage capacity, required dimensions, area, and area per PL, enabling comparison of space efficiency. It is implemented as a trial version with an expiration date check feature, verifying the expiration date upon form load.

2. Main Classes / Modules

2.1. MobileRackAreaCalcF Class

Purpose

The main form class that performs design calculations for the mobile rack system. It executes comparative calculations for fixed racks and 3 mobile rack patterns simultaneously, clearly presenting differences in storage efficiency.

Key Properties

This class inherits from System.Windows.Forms.Form and holds numerous UI controls such as TextBoxes (Tb), Labels (L), Buttons (Bt), and TabControls (Tc). The main variable groups are as follows:

  • Common PL Specs: PL Width, PL Depth, PL Total Height, PL Thickness, Load Height
  • Common Aisles: Handling Aisle Width, Auxiliary Aisle Width
  • Common Spaces: Adjacent C1, Adjacent C2, Pillar Width, Rack C, Beam Thickness, Lift C, Ceiling C
  • Fixed Rack: Storage Capacity, Required Width, Required Length, Required Height, Required Area, Area per PL
  • Mobile Rack 1 (4 Columns): Storage Capacity, Mobile Rack Width, Required Width, Required Length, Required Height, Required Area, Area per PL
  • Mobile Rack 2 (6 Columns): Storage Capacity, Mobile Rack Width, Required Width, Required Length, Required Height, Required Area, Area per PL
  • Mobile Rack 3 (8 Columns): Storage Capacity, Mobile Rack Width, Required Width, Required Length, Required Height, Required Area, Area per PL

Key Methods / Functions

  • MobileRackCalcF_Load - Form initialization and startup of main processes
  • MobileRackCalc - Main calculation logic (batch calculation for all configurations)
  • MobileRackRecalcBt_Click - Processing when the recalculation button is clicked
  • MobileRack_CoverPb_Click / MobileRackCalcBt_Click - Tab switching processing
  • MobileRack_CloseBt_Click - Form close processing

3. Details of Main Functions / Subroutines

3.1. MobileRackCalcF_Load

Function Description

Event handler executed when the form loads. It sets the copyright and expiration date displays, performs the expiration check, and executes the initial calculation.

Arguments

Argument Name Type Description
sender Object The source object of the event
e EventArgs Event arguments

Return Value

Type: None (Sub)
Description: No return value as it is an event handler

Processing Flow

  1. Set text for the copyright label and expiration date label.
  2. Get the current date and compare it with the trial version's expiration date.
  3. If expired, display a message box and close the form.
  4. If within the valid period, call MobileRackCalc() to execute the initial calculation.
Special Notes:
An expiration date check is implemented as a trial version feature. The application terminates immediately if expired.

3.2. MobileRackCalc

Function Description

The main process that executes all calculations for the mobile rack system simultaneously. It sequentially calculates dimensions, areas, and storage efficiency for fixed racks and 3 mobile rack patterns (4, 6, 8 columns).

Arguments

None (gets values from textboxes on the form)

Return Value

Type: None (Sub)
Description: Calculation results are displayed in respective TextBoxes

Processing Flow

  1. Loading Common Parameters:
    • PL Specs: PL Width, PL Depth, PL Total Height, PL Thickness, Load Height
    • Aisles: Handling Aisle Width, Auxiliary Aisle Width
    • Adjacent C: Adjacent C1, Adjacent C2
    • Fixed Values Setting: Pillar Width (100), Rack C (100), Beam Thickness (100), Ceiling C (200), Lift C (100), Mobile Cart Height (250), Inter-rack C (100)
  2. Fixed Rack Calculation:
    • Storage Capacity = 2 Columns × Bays × 2 Sides × Tiers
    • Fixed Rack Depth = PL Depth + Adjacent C
    • Required Width = Fixed Rack Depth × 2 + Handling Aisle Width
    • Rack Length = (Pillar Width + Rack C + PL Width + Rack C + PL Width + Rack C) × Bays + Pillar Width + Adjacent C1
    • Required Length = Rack Length + Auxiliary Aisle Width + Adjacent C1
    • Required Height = (PL Total Height + Lift C + Beam Thickness) × (Tiers - 1) + (PL Total Height + Lift C) + Ceiling C
    • Required Area = (Required Width × Required Length) / 1000²
    • Area per PL = Required Area / Storage Capacity
  3. Common Calculation for Mobile Racks:
    • Mobile Rack Width = PL Depth × 2 + Inter-rack C
  4. Calculation for Mobile Rack 1 (4 Columns):
    • Storage Capacity = 4 Columns × Bays × 2 Sides × Tiers
    • Required Width = Fixed Rack Required Width + Mobile Rack Width
    • Required Length = Rack Length + Auxiliary Aisle Width + Adjacent C2
    • Required Height = Fixed Rack Required Height + Mobile Cart Height
    • Required Area = (Required Width × Required Length) / 1000²
    • Area per PL = Required Area / Storage Capacity
  5. Calculation for Mobile Rack 2 (6 Columns):
    • Storage Capacity = 6 Columns × Bays × 2 Sides × Tiers
    • Total Mobile Rack Width = Mobile Rack Width × 2
    • Required Width = Fixed Rack Required Width + Mobile Rack Width × 2
    • Required Length = Rack Length + Auxiliary Aisle Width + Adjacent C2
    • Required Height = Fixed Rack Required Height + Mobile Cart Height
    • Required Area = (Required Width × Required Length) / 1000²
    • Area per PL = Required Area / Storage Capacity
  6. Calculation for Mobile Rack 3 (8 Columns):
    • Storage Capacity = 8 Columns × Bays × 2 Sides × Tiers
    • Total Mobile Rack Width = Mobile Rack Width × 3
    • Required Width = Fixed Rack Required Width + Mobile Rack Width × 3
    • Required Length = Rack Length + Auxiliary Aisle Width + Adjacent C2
    • Required Height = Fixed Rack Required Height + Mobile Cart Height
    • Required Area = (Required Width × Required Length) / 1000²
    • Area per PL = Required Area / Storage Capacity
Special Notes:
Mobile racks improve space efficiency by consolidating aisles through the addition of electrically movable racks compared to fixed racks. For each additional mobile rack bay, the storage columns increase by 2, and the mobile rack width is added to the required width.
Storage Efficiency: Fixed Rack (2 Cols) → Mobile Rack 1 (4 Cols, 2x) → Mobile Rack 2 (6 Cols, 3x) → Mobile Rack 3 (8 Cols, 4x)

3.3. MobileRackRecalcBt_Click

Function Description

Event handler executed when the "Recalculate" button is clicked. After parameters are changed, it executes recalculation and toggles the background color of the result display area to provide visual feedback.

Arguments

Argument Name Type Description
sender Object The button that triggered the event
e EventArgs Event arguments

Return Value

Type: None (Sub)
Description: No return value as it is an event handler

Processing Flow

  1. Execute recalculation using MobileRackCalc().
  2. Toggle the background color of the MobileRack_CalcTp based on the CalcStart_Chk2 flag (LightYellow ⇔ AliceBlue).
Special Notes:
Toggling background colors is a UI enhancement designed to let users visually confirm that results have been updated every time the recalculate button is pressed.

3.4. MobileRack_CoverPb_Click / MobileRackCalcBt_Click

Function Description

Switches the tab control to the "Mobile Rack_CalcTp" tab when the cover image (Pb) or the start calculation button is clicked.

Arguments

Argument Name Type Description
sender Object The control that triggered the event
e EventArgs Event arguments

Return Value

Type: None (Sub)
Description: No return value as it is an event handler

Processing Flow

  1. Set the SelectedTab property of MobileRackTc to MobileRack_CalcTp.
Special Notes:
Provides application navigation, transitioning from the cover screen to the calculation screen.

3.5. MobileRack_CloseBt_Click

Function Description

Closes the form when the "Close" button is clicked.

Arguments

Argument Name Type Description
sender Object The button that triggered the event
e EventArgs Event arguments

Return Value

Type: None (Sub)
Description: No return value as it is an event handler

Processing Flow

  1. Close the form using Me.Close().
Special Notes:
A simple form closing process.

4. Dependencies

  • System.Windows.Forms - For basic Windows Forms application functionality
  • System.Drawing - For UI color settings (Color type)
  • System - For basic types and DateTime processing
  • Global Variable Module (Assumed) - To reference global variables such as copyright, company name, and trial expiration date
Note:
Variables referenced within the code (Company, Copyright, TrialExpirationDate, CalcStart_Chk2, etc.) are assumed to be defined in another module or a common configuration file.

5. Revision History

Revision Date Version Revision Details Author
2025 1.0 Initial creation of detailed explanation document -

6. Calculation Formula Summary

Common Parameters (Fixed Values)

  • PL Thickness = 150mm
  • Pillar Width = 100mm
  • Rack C = 100mm
  • Beam Thickness = 100mm
  • Ceiling C = 200mm
  • Lift C = 100mm
  • Mobile Cart Height = 250mm
  • Inter-rack C = 100mm

Fixed Rack

  • Load Height = PL Total Height - 150
  • Storage Capacity = 2 Columns × Bays × 2 Sides × Tiers
  • Fixed Rack Depth = PL Depth + Adjacent C
  • Required Width = Fixed Rack Depth × 2 + Handling Aisle Width
  • Rack Length = (Pillar Width + Rack C + PL Width + Rack C + PL Width + Rack C) × Bays + Pillar Width + Adjacent C1
  • Required Length = Rack Length + Auxiliary Aisle Width + Adjacent C1
  • Required Height = (PL Total Height + Lift C + Beam Thickness) × (Tiers - 1) + (PL Total Height + Lift C) + Ceiling C
  • Required Area = (Required Width × Required Length) / 1000² [m²]
  • Area per PL = Required Area / Storage Capacity [m²]

Common for Mobile Racks

  • Mobile Rack Width = PL Depth × 2 + Inter-rack C

Mobile Rack 1 (4 Column Config)

  • Storage Capacity = 4 Columns × Bays × 2 Sides × Tiers
  • Required Width = Fixed Rack Required Width + Mobile Rack Width
  • Required Length = Rack Length + Auxiliary Aisle Width + Adjacent C2
  • Required Height = Fixed Rack Required Height + Mobile Cart Height
  • Required Area = (Required Width × Required Length) / 1000² [m²]
  • Area per PL = Required Area / Storage Capacity [m²]

Mobile Rack 2 (6 Column Config)

  • Storage Capacity = 6 Columns × Bays × 2 Sides × Tiers
  • Required Width = Fixed Rack Required Width + Mobile Rack Width × 2
  • Required Length = Rack Length + Auxiliary Aisle Width + Adjacent C2
  • Required Height = Fixed Rack Required Height + Mobile Cart Height
  • Required Area = (Required Width × Required Length) / 1000² [m²]
  • Area per PL = Required Area / Storage Capacity [m²]

Mobile Rack 3 (8 Column Config)

  • Storage Capacity = 8 Columns × Bays × 2 Sides × Tiers
  • Required Width = Fixed Rack Required Width + Mobile Rack Width × 3
  • Required Length = Rack Length + Auxiliary Aisle Width + Adjacent C2
  • Required Height = Fixed Rack Required Height + Mobile Cart Height
  • Required Area = (Required Width × Required Length) / 1000² [m²]
  • Area per PL = Required Area / Storage Capacity [m²]
Note on Units:
Input values are generally handled in millimeters (mm) and are converted to square meters (m²) by dividing by 1000² during area calculations.

7. Characteristics and Comparison of Mobile Racks

How the Mobile Rack System Works

Mobile racks are storage systems that move electrically on rails. While fixed racks require an aisle for each row, mobile racks consolidate aisles into one and create an aisle only when and where needed by moving the racks.

Comparison Table by Configuration (Example: Bays=5, Tiers=4)

Configuration Columns Storage Capacity Storage Efficiency Characteristics
Fixed Rack 2 80PL Baseline Standard fixed type, aisle always available
Mobile Rack 1 4 160PL 2x 1 mobile rack bay, 2x storage efficiency
Mobile Rack 2 6 240PL 3x 2 mobile rack bays, 3x storage efficiency
Mobile Rack 3 8 320PL 4x 3 mobile rack bays, 4x storage efficiency

Advantages of Mobile Racks

  • Space Efficiency: Can increase storage capacity by 2 to 4 times within the same floor area
  • Reduction in Area per PL: Significant reduction in storage costs
  • Reduced Building Costs: Minimizes construction costs by reducing required warehouse area
  • Lower Environmental Impact: Energy savings due to a smaller area requiring air conditioning and lighting

Disadvantages of Mobile Racks

  • Initial Cost: High installation cost for electric mechanisms
  • Access Time: Rack movement takes time, lowering retrieval speed
  • Maintenance: Requires regular inspection of electric mechanisms
  • Height Limits: Requires higher ceilings due to the height of the mobile cart (250mm)
  • Simultaneous Access Restrictions: Because there is only one aisle, simultaneous work in different rows is not possible

Application Judgment

  • Mobile racks are effective: In urban areas with high land costs, for long-term storage items, and low-frequency access items
  • Fixed racks are effective: For high-frequency access items, frequent picking operations, and when simultaneous operations by multiple people are necessary
Design Points:
As the number of mobile rack bays increases, storage efficiency improves, but access time also increases. It is important to select the optimal configuration considering the frequency of inbound/outbound operations, the number of workers, and operation hours.

8. Usage Instructions and Design Guide

Input Items

  1. PL Specs: Enter PL Width, PL Depth, and PL Total Height
  2. Rack Configuration: Enter Bays and Tiers
  3. Aisles: Enter Handling Aisle Width and Auxiliary Aisle Width
  4. Adjacent C: Enter Adjacent C1 (for fixed racks) and Adjacent C2 (for mobile racks)

How to Read the Output Results

The following information is displayed for each configuration:

  • Storage Capacity: Total number of pallets stored
  • Required Width/Length/Height: Dimensions necessary for the warehouse
  • Required Area: Floor area [m²]
  • Area per PL: Indicator of space efficiency (smaller is more efficient) [m²/PL]

Points for Comparative Study

  1. Compare the "Area per PL" between fixed racks and each mobile rack configuration
  2. Check the balance between the increase in storage capacity and the increase in required area
  3. Conduct an economic comparison between the increased initial cost and the reduced storage cost
  4. Evaluate operational constraints (access time, simultaneous workability)
Practical Note:
The area calculated by this tool represents the warehouse body only. In actual building design, separate consideration must be given to offices, equipment spaces, and future expansion areas.