Holonomic Drive Robot: A Versatile Path-Planning Machine

!assets/Pasted image 20241201191055.png

Overview

The Holonomic Drive Robot is an innovative, three-wheeled robot designed for precision path planning and image-based drawing. It combines advanced robotics algorithms, custom hardware, and creative problem-solving to deliver exceptional performance in a variety of tasks, from geometric pattern generation to drawing intricate images like logos.

Key Highlights

1. Motion Planning and Control

  • Implemented a novel path-planning approach to optimize motor velocity and trajectory precision.
  • Designed custom algorithms to address trajectory distortion caused by motor speed limitations.

2. Hardware and Software Integration

  • Successfully integrated ESP32, eYFI Mega, stepper motors, and LiPo batteries into a cohesive system.
  • Overcame challenges such as faulty motor drivers and optimized power delivery for reliability.

3. Image Processing and Simulation

  • Extracted contours from images and translated them into robot motion commands.
  • Utilized ROS and Gazebo for testing and refining the system in a simulated environment.

4. Real-Time Problem Solving

  • Debugged critical hardware issues, such as malfunctioning motor drivers and damaged LiPo cells.
  • Enhanced communication latency between the laptop and ESP32 from 1 second to 200ms by identifying and resolving protocol bottlenecks.

5. Creative Outputs

  • Enabled the robot to draw patterns such as Lissajous figures (infinity loops) and complex logos.
  • Developed a custom ink mixture to ensure visibility and erasability for pattern drawing.

Technologies Used

  • Hardware: ESP32, eYFI Mega, LiPo batteries, and stepper motors.
  • Software: ROS for robot control, Gazebo for simulation, and Python, C for software logic.
  • Tools & Libraries: OpenCV for image processing, AccelStepper for motor control, and custom ROS packages for integration.

Development Timeline

January - February 2023: Prototyping and Hardware Development

  • Designed and built the physical robot body, integrating motor drivers, sensors, and controllers.
  • Calibrated the camera with over 100 samples for precise localization.
  • Debugged and optimized motor driver configurations, achieving simultaneous operation of all wheels.
  • Developed non-blocking motor control using the AccelStepper library.

March 2023: Software Refinement and Final Tests

  • Created a contour extraction function for converting images into path points for drawing.
  • Integrated a servo-based pen mechanism for on/off control during drawing operations.
  • Conducted intensive testing, fixing indexing bugs, and optimizing scripts for various patterns, including the Snapchat logo and infinity shapes.
  • Demonstrated successful path-following in a simulation environment using Gazebo. !assets/hola-collage 1.jpg

Challenges Overcome

  • Latency in Data Transmission: Resolved slow communication by identifying a missing newline character in transmitted data, reducing latency from 1 second to 200ms.
  • Battery and Power Issues: Diagnosed and replaced faulty LiPo battery cells, ensuring uninterrupted operation.
  • Hardware Failures: Addressed motor driver failures and loose connections with creative soldering solutions and robust wiring techniques.

Achievements

  • Successfully implemented conditional path-following to optimize motor velocity during complex path execution.
  • Demonstrated precise image drawing with minimal distortion using camera-calibrated localization.
  • Created a detailed documentation repository and shared project outcomes through YouTube videos, showcasing the robot’s capabilities.

Media


Conclusion

The Holonomic Drive Robot is a testament to innovative thinking, technical expertise, and perseverance. It serves as a versatile platform for robotics experimentation, offering potential applications in art, industrial automation, and beyond.


Summary - Holonomic Drive Robot

  • Jan 2023 - Mar 2023
  • Link: https://github.com/rishav-singh-0/Holonomic_Art_Bot
  • Technology: ESP32, Atmega2560, Socket Programming, I2C, ROS
  • Engineered a 3-wheeled omnidirectional robot that converts visual inputs into optimized, time-efficient drawable paths using image processing and path finding algorithms
  • Enabled precise control and real-time communication for seamless navigation and execution