Ball Beam PID Control (STL + ESP32 + Python)

ID: 28614
$3.00

3D Model Details

  • Texture: No
  • Multipart model: Yes
  • File format: stl
  • File size: 87.02 KB
  • Upload date: 03/10/2026
  • Last update: 03/10/2026
Description
Introducing BallBeam Control Lab – Development Edition

Introducing BallBeam Control Lab, a compact experimental platform designed to study control systems, PID tuning, and sensor feedback using an ESP32. This project recreates the classic ball-and-beam control experiment in a modern, accessible format using affordable components and open-source tools.

Status: Development Version – Ongoing improvements
Release: March 2026

⚠ Development Notice

This project is still under active development. New improvements, optimizations, and features are planned for future updates.

Because of this, the current version is offered at a discounted price for early adopters who want to experiment with the platform and contribute feedback while development continues.

Future updates WILL include:
Improved control algorithms
Better filtering and sensing methods
Additional visualization tools
Mechanical refinements

✅ What’s Included (Complete Package)
🔹 3D Files (STL)

Beam structure and support frame
Servo mounting bracket
Sensor holder for Sharp IR sensor
Base platform and structural components
Parts optimized for easy printing and assembly

🔹 Electronics WIP

Complete electronic schematic
Wiring diagram for ESP32, servo, and Sharp IR sensor

**Bill of Materials (BOM) with all required components**
ESP32 Dev Module – Main microcontroller used to run the real-time PID controller.
Standard Servo Motor (Futaba size) – Controls the inclination of the beam.
Sharp IR Distance Sensor (4–30 cm) – Analog sensor used to measure the ball distance and provide feedback to the controller.
M3 Screws – 10 mm (x6) – Used for structural assembly of the printed parts.
M3 Screws – 20 mm (x4) – Used for mounting structural components.
M3 Brass Heat-Set Threaded Inserts (x6) – Recommended for durable threads in the 3D printed parts.
Jumper wires / Dupont cables – Used for wiring the ESP32, sensor and servo.
External 5V power supply – Required to power the servo motor safely.

🔹 Software

ESP32 Firmware and Python Control App

Designed for experimentation and learning in control systems

⚙ Key Features
🧠 ESP32 Real-Time Control

The system uses the ESP32’s hardware timer to run a deterministic 1 kHz control loop, enabling stable and responsive control behavior.

🎯 Sharp IR Distance Sensing

A short-range Sharp IR sensor (4–30 cm) measures the vertical distance of the ball, providing feedback for the PID controller.

📊 Python Control Interface

The included desktop application allows you to:

Adjust PID parameters in real time

Change the setpoint dynamically

Run automatic PID tuning

Monitor live telemetry from the controller

Perfect for experimentation, teaching, or learning practical control engineering.

🧩 Fully 3D Printable Structure

The entire mechanical structure is 3D printable, making the system easy to reproduce with common desktop printers.

Recommended Print Settings

Beam / Structural Parts
Material: PETG is recommended because it provides better mechanical resistance, durability and vibration tolerance compared to PLA.
Layer Height: 0.2 mm
Infill: 15–30%
Tags
  • robotics
  • control systems
  • pid control
  • ball and beam
  • control engineering
  • esp32
  • robotics project
  • electronics project
  • stem education
  • mechatronics
Report this design

More models from jose_pardinaz

More from category Education