🔧 T3_Uty4_ForkliftLoadingAisleWidth.vb - Detailed Explanation

📋 Overview

This file is a specialized utility designed to calculate the required aisle width for a forklift to perform a 90-degree right-angle stacking operation. In warehouse layout design, it automatically calculates the minimum required aisle width based on the forklift model and pallet size.

Main Uses:
  • Design and verification of warehouse aisle widths
  • Support for selecting forklift models
  • Optimization of pallet sizes and aisle widths
  • Calculation of turning radius for right-angle stacking
  • Support for both catalog specifications and manual data entry
What is Right-Angle Stacking? It is the operation where a forklift travels down an aisle and turns 90 degrees to stack a pallet onto a rack or shelf. This is the most common operational pattern in warehouses, making aisle width calculation critical.

🔧 Dependencies

Imports Microsoft.Office.Interop
Imports OfficeOpenXml.FormulaParsing

Technologies Used:

🚜 Supported Forklift Types

1. Reach Type Forklift

Features:
- Structure where the mast slides back and forth
- Reach Stroke (RS) is a critical dimension
- Back Overhang (BO) = RS - FO
- Most common indoor forklift

Calculation Formula:
R2 = √((PW/2)² + (PD - BO)²)
R = R1 + R2 + C×2

2. 3-Wheel Counterbalance Forklift

Features:
- Counterweight equipped at the rear
- 3 wheels provide a tight turning radius
- No Reach Stroke (Fixed mast)
- For both indoor and outdoor use

Calculation Formula:
R2 = √((PW/2)² + (PD + BO)²)
R = R1 + R2 + C×2

3. 4-Wheel Counterbalance Forklift

Features:
- Counterweight equipped at the rear
- 4 wheels provide high stability
- Often larger vehicles
- Primarily for outdoor use

Calculation Formula:
R2 = √((PW/2 + W/2)² + (PD + BO)²)
R = R1 + R2 + C×2

📐 Calculation Parameter Details

Parameter Symbol Description Unit
Vehicle Total Width W Width of the forklift body mm
Minimum Turning Radius R1 Outer turning radius of the forklift (Catalog value) mm
Pallet Width PW Width of the pallet (Usually 1100mm) mm
Pallet Depth PD Depth of the pallet (Usually 1100mm) mm
Reach Stroke RS Forward/backward movement amount of the mast (Reach type only) mm
Front Overhang FO Distance from axle center to fork tip mm
Back Overhang BO Distance from axle center to rear end of vehicle mm
Clearance C Safety margin (One side) mm
Pallet Diagonal Radius R2 Calculation result (Formula varies by vehicle type) mm
Required Aisle Width R Final calculation result mm
Importance of Clearance (C): In actual operation, a safety margin between the vehicle and racks/walls is necessary. Typically, about 100-150mm is secured per side. Because this applies to both sides, the formula uses C × 2.

🧮 Detailed Explanation of Formulas

Calculation for Reach Type Forklift

Calculation Steps:

1. Calculation of Back Overhang (BO)
BO = RS - FO

Reach stroke minus front overhang.

2. Calculation of Pallet Diagonal Radius (R2)
R2 = √((PW/2)² + (PD - BO)²)

Pythagorean calculation using half pallet width and pallet depth minus BO.

3. Calculation of Required Aisle Width (R)
R = R1 + R2 + C×2

Turning radius + Diagonal radius + Clearance on both sides.

Calculation for 3-Wheel Counterbalance Forklift

Calculation Steps:

1. Calculation of Pallet Diagonal Radius (R2)
R2 = √((PW/2)² + (PD + BO)²)

Unlike the reach type, it uses PD + BO (because the mast is fixed).

2. Calculation of Required Aisle Width (R)
R = R1 + R2 + C×2

Calculation for 4-Wheel Counterbalance Forklift

Calculation Steps:

1. Calculation of Pallet Diagonal Radius (R2)
R2 = √((PW/2 + W/2)² + (PD + BO)²)

The 4-wheel type also takes half the vehicle width (W/2) into consideration.

2. Calculation of Required Aisle Width (R)
R = R1 + R2 + C×2
Rounding of Results: All calculation results are rounded using Int(value + 0.5). For safety reasons, standard rounding is used rather than rounding down.

🔍 Main Methods Details

1. Form Load Processing

Private Sub LoadingAisleWidthCalcFrom_Load(sender As Object, e As EventArgs)

Initialization Process:

  1. Display expiration date and copyright
  2. Check existence of required files
  3. Set Excel file paths
    MyExcel = DatSavePath & "\ForkliftAisleCalc\ForkliftModels.xlsx"
    MySheet1 = "CatalogDat"
    MySheet2 = "ManualInputDat"
  4. Load catalog specification data (CatalogSpecDgv)
  5. Load manual input data (ManualInputDgv)
  6. Radio button check (Initial display setting)
  7. Set data load completion flag

2. Data Load Processing

Public Sub MyData_Load(MyDgv As DataGridView, ExcelName As String, SheetName As String)

Processing Flow:

  1. Remove all existing DataGridView columns
  2. Setup OleDb Connection
    Provider=Microsoft.ACE.OLEDB.12.0
    Data source=[File Path]
    Extended properties="Excel 8.0;HDR=YES;IMEX=1"
  3. Retrieve the entire Excel sheet using a SQL SELECT statement
    SELECT * FROM [SheetName$]
  4. Store in a DataSet and bind to the DataGridView

3. Radio Button Check Processing

Private Sub RadioButtonChk()

Processing Details:

Visual Feedback: The background color changes for each vehicle type, making it obvious at a glance which type is currently selected.

4. Vehicle Type ComboBox Change Processing

Private Sub VehicleTypeCboxChange1(VehicleType As String, Dgv1 As DataGridView)

Processing Details:

  1. Set ComboBox drop-down style (non-editable)
  2. Clear existing items
  3. Extract the models of the selected vehicle type from the DataGridView
  4. Add the models to the ComboBox
  5. Automatically select the first model
  6. Call the TextBox display processing

5. TextBox Display Processing

Private Sub TextBoxDisplay(VehicleType As String, Model As String, Dgv1 As DataGridView)

Key Features:

6. Recalculation Processing

Private Sub TextRecalcTb_Click(sender As Object, e As EventArgs)

Processing Flow:

  1. Input Check (Required fields)
    Vehicle Total Width, Min Turning Radius, Pallet Width, Pallet Depth,
    Front Overhang, Clearance
    (And Reach Stroke if Reach Type)
  2. Range Check (Validity Verification)
    Item Range
    Vehicle Total Width 800 ~ 2000 mm
    Minimum Turning Radius 1000 ~ 3000 mm
    Pallet Width 700 ~ 2000 mm
    Pallet Depth 900 ~ 2000 mm
    Reach Stroke 300 ~ 1000 mm
    Front Overhang 100 ~ 800 mm
    Clearance 80 ~ 500 mm
  3. Execute Vehicle Type Calculations
    • Reach Type: Calc BO → Calc R2 → Calc R
    • 3-Wheel Counterbalance: Calc R2 → Calc R
    • 4-Wheel Counterbalance: Calc R2 (considering W/2) → Calc R
  4. Visual Feedback
    • Toggle background color between PaleGoldenrod and Azure
    • Visually confirm that recalculation has occurred

7. Clear Values Processing

Private Sub TextValueClearBt_Click(sender As Object, e As EventArgs)

Processing Details:

🎨 UI Components

RadioButtons (Vehicle Type Selection)

Control Description Background Color Change
ReachTypeRb Select Reach Type Forklift LightCyan
Counter3WheelRb Select 3-Wheel Counterbalance PowderBlue
Counter4WheelRb Select 4-Wheel Counterbalance LavenderBlush

RadioButtons (Calculation Mode Selection)

ComboBox

DataGridView

Input TextBoxes (Parameters)

Control Content Editable
SerialNoTb Data serial number Read-only
ChangeDateTimeTb Data update date/time Read-only
ModelTb Forklift model Catalog: RO, Manual: Yes
RatedLoadTb Max load weight (Ref info) Catalog: RO, Manual: Yes
VehicleTotalLengthTb Vehicle length (Ref info) Catalog: RO, Manual: Yes
VehicleTotalWidthTb Vehicle width W Catalog: RO, Manual: Yes
R1Tb Min turning radius R1 Catalog: RO, Manual: Yes
PWTb Pallet width PW Editable (Adjustable)
PDTb Pallet depth PD Editable (Adjustable)
RSTb Reach stroke RS Catalog: RO, Manual: Yes
FOTb Front overhang FO Catalog: RO, Manual: Yes
CTb Clearance C Editable (Adjustable)
BOTb Back overhang BO Auto-calculated (Reach type only)

Output TextBoxes (Calculation Results)

Control Content
R2Tb Pallet diagonal radius R2 (Calculation result)
RTb Required Aisle Width R (Final result)

Buttons

TabControl (PictureBox1)

Each tab displays a dimension diagram (JPG image) corresponding to the vehicle type, allowing for visual understanding of the dimensional relationships.

🎯 Visual Feedback

Background Color Usage

Color Use Meaning
Gainsboro (Gray) Read-only TextBox Catalog data (Unchangeable)
Bisque (Beige) Editable TextBox User-adjustable parameters
LightCyan RightAngleAisleCalcTp Reach type selected
PowderBlue RightAngleAisleCalcTp 3-Wheel Counterbalance selected
LavenderBlush RightAngleAisleCalcTp 4-Wheel Counterbalance selected
WhiteSmoke RightAngleAisleCalcTp Manual input mode selected
PaleGoldenrod ⇔ Azure CatalogRefCalcGb Toggles on each recalculation (Visual confirmation)

Show/Hide Controls

🔄 Overall Processing Flowchart

┌─────────────────────────────────────┐
│   Form Load                         │
└──────────┬──────────────────────────┘
           │
           ├→ Expiration / Copyright Display
           ├→ File Verification
           ├→ Set Excel Path
           ├→ Load Catalog Spec Data
           ├→ Load Manual Input Data
           └→ RadioButton Chk (Initial Display)
           │
           ▼
┌─────────────────────────────────────┐
│   Vehicle Type Selection (RadioBtn) │
│   Reach / 3-Wheel / 4-Wheel         │
└──────────┬──────────────────────────┘
           │
           ├→ Change Background Color
           ├→ Toggle Tab Display
           └→ Call VehicleTypeCboxChange1
           │
           ▼
┌─────────────────────────────────────┐
│   Calc Mode Selection (RadioBtn)    │
│   Catalog Ref / Manual Input        │
└──────────┬──────────────────────────┘
           │
           ├→ Catalog Ref: DataGridView = CatalogSpecDgv
           └→ Manual Input: DataGridView = ManualInputDgv
           │
           ▼
┌─────────────────────────────────────┐
│   Model Selection (ComboBox Change) │
└──────────┬──────────────────────────┘
           │
           └→ TextBox Display Processing
           │
           ▼
┌─────────────────────────────────────┐
│   TextBox Display Processing        │
└──────────┬──────────────────────────┘
           │
           ├─ Retrieve model data from DataGridView
           ├─ Set values to each TextBox
           ├─ Set ReadOnly / Background Colors
           ├─ Show/Hide controls based on vehicle type
           │
           ├─ If Reach Type
           │   ├→ BO = RS - FO
           │   ├→ R2 = √((PW/2)² + (PD-BO)²)
           │   └→ R = R1 + R2 + C×2
           │
           ├─ If 3-Wheel Counterbalance
           │   ├→ R2 = √((PW/2)² + (PD+BO)²)
           │   └→ R = R1 + R2 + C×2
           │
           └─ If 4-Wheel Counterbalance
               ├→ R2 = √((PW/2+W/2)² + (PD+BO)²)
               └→ R = R1 + R2 + C×2
           │
           ▼
┌─────────────────────────────────────┐
│   Parameter Adjustment (User Input) │
│   Change PW, PD, C, etc.            │
└──────────┬──────────────────────────┘
           │
           ▼
┌─────────────────────────────────────┐
│   Recalculate Button Click          │
└──────────┬──────────────────────────┘
           │
           ├─ Input Check (Required fields)
           ├─ Range Check (Validity verification)
           ├─ Execute Calc by Vehicle Type
           ├─ Recalculate R2, R
           └─ Toggle Background Color (Visual feedback)
           │
           ▼
┌─────────────────────────────────────┐
│   Display Calculation Results       │
│   Display results in R2Tb, RTb      │
└─────────────────────────────────────┘

💡 Use Cases

1. New Warehouse & Layout Design

2. Introducing Forklifts to Existing Warehouses

3. Impact Analysis of Pallet Size Changes

4. Clearance Optimization

5. Calculating Special Specifications Not in Catalogs

📊 Calculation Examples

Example 1: Reach Type Forklift (Standard Pallet)

Input Values:
・Vehicle Total Width W = 1150 mm
・Min Turning Radius R1 = 1730 mm
・Pallet Width PW = 1100 mm
・Pallet Depth PD = 1100 mm
・Reach Stroke RS = 560 mm
・Front Overhang FO = 420 mm
・Clearance C = 100 mm

Calculation Process:
BO = 560 - 420 = 140 mm
R2 = √((1100/2)² + (1100-140)²) = √(550² + 960²) = √(302500 + 921600) = √1224100 ≒ 1106 mm
R = 1730 + 1106 + 100×2 = 3036 mm ≒ 3036 mm (Approx. 3.0m)

Example 2: 3-Wheel Counterbalance Forklift

Input Values:
・Vehicle Total Width W = 1070 mm
・Min Turning Radius R1 = 1900 mm
・Pallet Width PW = 1100 mm
・Pallet Depth PD = 1100 mm
・Back Overhang BO = 680 mm
・Clearance C = 120 mm

Calculation Process:
R2 = √((1100/2)² + (1100+680)²) = √(550² + 1780²) = √(302500 + 3168400) = √3470900 ≒ 1863 mm
R = 1900 + 1863 + 120×2 = 4003 mm ≒ 4003 mm (Approx. 4.0m)
Interpreting Results: The reach type requires an aisle width of approx. 3.0m, while the 3-wheel counterbalance requires approx. 4.0m. This demonstrates that reach types can operate in narrower aisles.

⚠️ Important Notes & Constraints

Calculation Prerequisites

  • 90-Degree Stacking: This calculation assumes a 90-degree right-angle turn.
  • Flat Surfaces: Floor slopes and bumps are not considered.
  • Static Calculation: Travel speed and inertial forces are ignored.
  • Standard Pallets: Special shapes or pallet unevenness are not considered.

Practical Notes

  • Securing Margins: Computed values are theoretical. Adding a 10-20% margin is recommended in practice.
  • Operator Skill: Beginners and veterans require different clearances.
  • Floor Conditions: Extra margin is needed if there are bumps or slopes.
  • Lighting: Poor lighting reduces workability and requires wider aisles.
  • Load Visibility: High-stacked loads obstruct vision, requiring extra margin.

Data Input Notes

  • Units must be standardized in mm (millimeters).
  • Transcribe catalog values accurately.
  • Use actual measured pallet sizes (standard value ≠ actual value sometimes).
  • Set clearance considering the work environment and operator skill level.

Out-of-Range Warnings

The system displays warning message boxes for values outside the following ranges:

🔗 Related Modules

This utility integrates with the following Tera Calculation Systems:

💾 File & Data Structure

Excel Files

File Path: DatSavePath & "\ForkliftAisleCalc\ForkliftModels.xlsx"

Sheet 1: CatalogDat
- Manufacturer catalog specification data
- Vehicle type, model, dimensions, performance

Sheet 2: ManualInputDat
- User's custom registered data
- Special vehicles or modified vehicles

Data Column Structure

Data Connection

Provider=Microsoft.ACE.OLEDB.12.0
Data source=[File Path]
Extended properties="Excel 8.0;HDR=YES;IMEX=1"

🎓 Basics of Aisle Width Design

Factors Determining Aisle Width

  1. Forklift Model: Minimum turning radius is most important.
  2. Pallet Size: Larger pallets require wider aisles.
  3. Work Frequency: High frequency requires more margin.
  4. Operator Skill: Wider settings needed if many beginners.
  5. Safety Standards: Company regulations and industry standards.

Aisle Width Guidelines

Forklift Type Standard Pallet (1100mm) Characteristics
Reach Type (1.5t) 2.8 ~ 3.2 m Can operate in the narrowest aisles
3-Wheel Counterbalance (1.5t) 3.5 ~ 4.2 m Indoor & Outdoor use
4-Wheel Counterbalance (2.5t) 4.0 ~ 4.8 m Large and highly stable

Aisle Width Optimization Points

📚 Summary

T3_Uty4_ForkliftLoadingAisleWidth.vb is a specialized tool that precisely calculates the required aisle width for a forklift's right-angle stacking operations.

Key Features

Application Areas

Points for Improving Calculation Accuracy

Practical Importance: Calculation results represent the theoretical minimum value. In actual design, an aisle width with a 10-20% margin is recommended to account for safety, operational efficiency, and future expandability.

📞 Support Information

Document Date: Auto-generated

Target File: T3_Uty4_ForkliftLoadingAisleWidth.vb

Language: Visual Basic .NET (VB.NET)

Total Lines: 350 lines

Core Technologies: Windows Forms, Excel Integration (OleDb/Interop), Geometric Calculations (Pythagorean Theorem)

Calculation Targets: Reach type, 3-Wheel Counterbalance, 4-Wheel Counterbalance forklifts