Work

Ball Balancing Robot

Robotics
ROS
CAD

A ball-balancing robot with 3-RPS parallel manipulator and PID control system

Tools & Technologies

Arduino Arduino
Inventor Inventor

Collaborators

Loading profiles...
Loading Ball Balancing Robot...

The Ball-Balancing Robot dynamically stabilizes a steel ball on a tilting touchscreen platform, preventing it from rolling off the edges. This project required integrating mechanical, electrical, and software components into a cohesive system, highlighting practical applications of control systems and robotics.

Key Features

1. 3-RPS Parallel Manipulator Framework

The platform uses three stepper motors to control three mechanically operated legs, achieving precise movements with three degrees of freedom.

3-RPS parallel manipulator framework showing three mechanically operated legs

2. PID Control Algorithm

A closed feedback loop processes real-time data from the resistive touchscreen to adjust platform tilt, maintaining balance.

  • Proportional gain: ( K_p = 4E-4 )
  • Integral gain: ( K_i = 2E-6 )
  • Derivative gain: ( K_d = 7E-3 )
PID control system diagram showing feedback loop for ball balancing

3. Inverse Kinematics

Stepper motors adjust based on derived angles to position the ball precisely, calculated through mathematical models and implemented in Arduino.

4. Microstepping

Fine control with 1/32 microstepping for smooth and precise motor movements, achieving 6400 steps per revolution.

5. Custom 3D Design

View Model

All components, including the platform and mechanical legs, were designed and 3D-printed using PLA material.

3D CAD model of ball balancing robot platform
Detailed view of robot mechanical components and assembly

Challenges and Solutions

  • Current Limitations: Optimized motor performance by calibrating driver current to 1.25A.
  • 3D Printing Tolerances: Adjusted designs for better assembly fit, ensuring stability and precision.
  • Hardware Upgrades: Transitioned from Arduino UNO to Arduino Mega for expanded I/O capabilities and resolved serial communication issues.

Learning Outcomes

This project provided hands-on experience with mechatronics systems, emphasizing:

  • Designing and implementing control algorithms.
  • Integrating hardware components.
  • Systematic debugging and troubleshooting in a complex interdisciplinary setting.

Future Improvements

  • Enhanced Responsiveness: Refine PID tuning to reduce oscillations and improve ball stability during disturbances.
  • Dynamic Movement Patterns: Add features to move the ball in predefined paths using updated control logic.
  • User Interaction: Integrate an LED screen and control buttons for better usability and testing.

Explore the intricacies of control systems and robotics through this project that blends innovation and practical application.