Inspiration

The action-packed robot conflicts in Big Hero 6, where fighting and robotics blend in a future, exhilarating manner, served as the inspiration for Battle Bots PVP. Inspired by the movie's focus on collaboration, creativity, and robot harm, we set out to make an interactive, engaging experience. In first-person combat, players control battle bots, and LEGO bricks display damaging effects in real time. By combining interactive games and physical engineering, the aim was to make robotics more approachable and enjoyable while enabling users to witness robot combat firsthand. This project creates a playable, captivating format that captures the thrill of Big Hero 6.

What it does

Battle Bots PvP is a smart combat robot platform that combines real-time control with autonomous battle features:

  • Real-time Video Streaming: Uses ESP32-CAM to provide live video feed during battles, allowing for precise tactical control
  • Smart Combat System: Features a servo-powered battle hammer that can be triggered manually or automatically when opponents are detected within 30cm
  • Defensive AI: Includes color-based opponent detection and evasion strategies
  • Touch-Sensitive Armor: Implements a clever damage detection system using limit switches that trigger a 30-second "recovery mode" when hit
  • Visual Feedback: Sports an 8x8 LED matrix displaying dynamic patterns during normal operation and red alert patterns when damaged
  • WebSocket Control: Offers responsive remote control through a Python-based server, allowing for keyboard-based operation

How we built it

We approached the build in several key phases:

  1. Core Hardware Integration

    • Built around dual ESP32 boards - one dedicated to camera operations and another for robot control
    • Integrated various sensors (color, ultrasonic, limit switch) for battle awareness
    • Designed a dual-motor drive system for mobility and a servo mechanism for the battle hammer
  2. Software Architecture

    • Developed a WebSocket server in Python for real-time control
    • Implemented real-time video streaming using ESP32-CAM
    • Created complex state management for various battle conditions
    • Programmed autonomous features using sensor fusion
  3. Battle Logic

    • Designed a sophisticated state machine for different combat scenarios
    • Implemented emergency protocols for damage control
    • Created visual feedback systems for battle status
    • Developed autonomous defensive and offensive behaviors
  4. Control Interface

    • Built a responsive control system using keyboard inputs
    • Implemented real-time video feed integration
    • Created intuitive command mapping for movement and attacks

Challenges we ran into

  1. Latency Management: One of our biggest challenges was minimizing control latency while maintaining stable video streaming. We had to carefully optimize our WebSocket implementation and video compression settings to achieve responsive control.

  2. Sensor Integration: Coordinating multiple sensors (color, ultrasonic, limit switch) while maintaining fast response times required careful timing and interrupt management. We initially faced issues with sensor interference but solved this through strategic timing and priority scheduling.

  3. Power Management: Balancing the power requirements of motors, servo, LED displays, and processing units while maintaining battery life was challenging. We had to implement efficient power management strategies and optimize our code for better battery performance.

  4. Mechanical Design: Creating a robust battle hammer mechanism that could deliver effective strikes while protecting the servo motor required several design iterations. We needed to find the right balance between striking power and mechanical durability.

What's next for Battle Bots PvP

We have exciting plans for the future of Battle Bots PvP:

  1. Enhanced Battle Features

    • Implement machine learning for better opponent prediction
    • Add more weapon types and customization options
    • Develop advanced autonomous battle strategies
    • Create a scoring system based on hit detection and battle performance
  2. Community Features

    • Develop a mobile app for easier control and battle management
    • Create a platform for users to share their bot modifications
    • Implement a ranking system for competitive play
    • Organize online tournaments with live streaming capabilities
  3. Hardware Improvements

    • Design modular weapon attachments
    • Improve armor systems with better damage detection
    • Add more sensors for better battle awareness
    • Create a standardized kit for easy replication
  4. Educational Integration

    • Develop curriculum materials for STEM education
    • Create tutorials for building and programming custom modifications
    • Design simplified versions for younger students
    • Partner with educational institutions for robotics programs

We believe Battle Bots PvP has the potential to become a powerful platform for learning robotics, programming, and engineering while maintaining the excitement of competitive robot combat. Our goal is to create an engaging, accessible, and educational robot combat experience that can inspire the next generation of engineers and makers.

Built With

  • c++
  • colour-sensor
  • esp-32
  • esp-camera
  • motor-drivers
  • neo-pixel-leds
  • python
  • servo-motor
  • ultrasonic-sensor
  • web-sockets
Share this project:

Updates