Ball Beam PID Control (STL + ESP32 + Python)

ID: 28614
$3.00

Purchasing is temporarily suspended on threeding.com. Please bear with us and feel free to check out our free models to see if you can find something suitable for your needs. Thank you for your understanding!

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