This is a school project created by me and my friend. The RoboCave project is designed to create a robotic vehicle capable of gathering and transmitting information about environmental conditions 🌍, including air quality and distance measurements. The robot can be controlled via a web interface 🖥️, providing real-time data and control options.
- Microcontroller: ESP32 or similar microcontroller.
- Sensors:
- BME280: Measures temperature 🌡️, humidity 💧, and atmospheric pressure 🌬️.
- Gas Sensors:
- LPG sensor (analog output).
- CO sensor (analog output).
- Smoke sensor (analog output).
- Ultrasonic Distance Sensor: Used to measure distance 📏.
- DC Motors: Two DC motors for movement control 🏎️.
- Motor Driver: H-Bridge motor driver for controlling the direction and speed of the motors.
- PWM Pins: For controlling motor speed via Pulse Width Modulation.
- Connection Pins: GPIO pins for connecting sensors and motors.
❗The picture doesn't show what the robot looks like now, it's an old picture from the start of the project when it didn't have all the sensors and the design is different without a cover for the robot.
- MicroPython: The firmware running on the microcontroller.
- Libraries:
usocket: For socket communication 🔌.network: For connecting to Wi-Fi 📶.machine: For controlling hardware components ⚙️.BME280: For interfacing with the BME280 sensor.json: For handling JSON data.
-
Web Interface:
- Displays real-time sensor data (temperature, humidity, pressure, gas concentrations, and distance).
- Provides control buttons for motor actions (forward, backward, left, right, stop) 🚦.
-
Data Fetching: JavaScript is used to periodically fetch sensor data from the server and update the webpage without refreshing 🔄.
-
Distance Measurement: The robot can measure the distance to obstacles using an ultrasonic sensor 📏.
- Setup: Connect the hardware components as specified in the circuit diagram 🔌.
- Code Deployment: Upload the provided MicroPython script to the microcontroller 📤.
- Wi-Fi Configuration: Update the SSID and password in the code for your Wi-Fi network 🔑.
- Accessing the Web Interface:
- Once connected to Wi-Fi, open a web browser and navigate to the microcontroller's IP address to access the control interface 🌐.
- Controlling the Robot: Use the buttons on the web interface to control the robot's movement and monitor environmental conditions 🎮.
- Clone this repository or download the code files 📥.
- Download Thoney micropython
- Flash the MicroPython firmware onto your ESP32 💻.
- Install the necessary libraries (if not included in the firmware).
- Connect your ESP32 to your computer and upload the script ⬆️.
- Open the web interface and begin monitoring and controlling the RoboCave 🚀.
The RoboCave project combines hardware and software to create a functional robot capable of navigating and monitoring environmental conditions 🛰️. This project serves as a foundation for further enhancements, such as adding more sensors, improving user interface design, and enhancing the robot's navigation capabilities.

