The Smart Car Washing System is an innovative solution that combines cutting-edge AI technology and automation to revolutionize the traditional car washing process. Utilizing Edge Impulse for advanced object detection, the system ensures operational safety by identifying human presence, reducing the risk of accidents. Designed for efficiency, it automates the entire washing cycle, optimizing water usage and significantly cutting down resource waste. This eco-friendly approach not only enhances safety and reliability but also promotes sustainability. The system aims to streamline car washing operations, making them safer, smarter, and more resource-efficient.
Block Diagram:
Impact statement
AI-powered smart car wash improves safety, efficiency, and reduces waste with automation.
Components Required
1. ESP32 CAM (As Object Detection Module) x1
2. Arduino UNO R4 Wifi (Main Head Controller) x1
3. NEMA17 Stepper Motor x1
4. A4988 Stepper Motor Driver x1
5. Micro Limit Switch x2
6. 12V DC Water Pump x1
7. 5V Relay Module x1
8. SMPS x1
9. 10mm Fiber Glass x1sq.ft
10. 8mm Lead Screw & Nut x1
11. 8mm Stainless Steel Rod x2
12. Adjustable Spray Nozzle x3
13. 6mm pipe x3mtr
14. Buzzer x1
15. PC817 Optocoupler x2
16. 5mm LED Lights x2
17. 220E 1/4W Resistors x10
18. 6mm x 6mm Push Button x1
19. Multistrand Wire x6mtr
20. Toy Car (For Demonstration Purpose)
To see the full demonstration video, click on the YouTube Video below.
Features:
AI-based Object Detection: Uses Edge Impulse for human detection, enhancing safety.
Automated Washing Cycles: Automates the washing process with precise control over water usage.
Efficient Water Management: Optimizes resource consumption, reducing waste.
Safety Measures: Human detection minimizes risks of accidents during operation.
Reduced Human Intervention: Fully automated, requiring minimal manual input.
Sustainability Focus: Environmentally friendly, conserving water and energy.
Scalable Design: Adaptable for various car wash facilities, from small to large operations.
Circuit Diagram:
Working:
When a car arrives at the washing area, the ESP32 CAM running Edge Impulse object detection identifies whether the object is a car or a human. If a car is detected, the system indicates that it's ready to begin. The driver must lower the window and press a push button located near the driver's window. After a brief delay, the system activates.
Once initiated, the system turns on a relay that powers the water pump, which sprays high-pressure water through nozzles placed around the car to remove dirt and debris. The Arduino UNO R4, acting as the main controller, also provides a PWM signal to the motor driver to control the forward and reverse movement of the stepper motor, allowing the washing frame to move smoothly over the car.
To ensure safety, limit switches are installed to restrict the movement of the washing frame within the designated washing area. During the washing process, if the ESP32 CAM detects any human presence—either the driver or someone entering the area—the system sends an emergency stop command to the Arduino, halting the entire operation. The system will return to its initial position, and a loud buzzer will sound to notify nearby individuals of the stoppage. This ensures that the system operates safely and prevents accidents during the washing process.
Training an Object Detection Model with Edge Impulse:
Step 1: Sign Up and Create a Project
Sign up or log in to your Edge Impulse account.
Once logged in, create a new project from your dashboard to start building the model.
Step 2: Data Acquisition
In the project interface, select Data Acquisition from the left-side menu.
Click on Connect a Device to link a data-capturing device. Edge Impulse provides three connection options for this:
USB connection
Edge Impulse CLI
QR code method
Note: For this guide, we’ll connect a smartphone using the QR code method.
Use your smartphone to capture the required images for training.
Step 3: Labeling Data
Once your data is collected, click on Labeling Queue at the top of the page.
For each image, draw a bounding box around your object and assign a label. Repeat this for each image to complete the dataset labeling.
Step 4: Impulse Design
From the Impulse Design dropdown on the left side of the screen, select Create Impulse.
Set the Image Height and Width to 48x48 (suitable for ESP32-CAM).
Click Add a processing block and select Image Processing.
Similarly, click Add a learning block and select Object Detection (Image).
Save the impulse configuration and proceed.
Step 5: Configure Image Processing
In Impulse Design, select Image.
Change Colour Depth to Greyscale to simplify processing, then click Save Parameters.
Step 6: Feature Generation
After saving, you’ll be redirected to the feature generation screen.
Click Generate Features to visualize the differentiation between objects in your dataset.
Step 7: Model Training
Go back to Impulse Design and select Object Detection.
Set No. of Training Cycles to 30 and Learning Rate to 0.005.
At the bottom, click Choose a model and select FOMO Model (any available version).
Click Save & Train to begin training. Edge Impulse will show the accuracy metrics of your model upon completion.
Step 8: Deployment
Once training is complete, go to Deployment in the Impulse Design menu.
Search for Arduino Library and click Build to create the library for the model.
Step 9: Implementing the Model on ESP32-CAM
Add the generated library to the Arduino IDE.
From the Examples section, select the ESP32-Camera example in the library.
Choose the ESP32-CAM board, connect your device, and upload the code.
Once uploaded, view the object detection results on the serial monitor.
The Car's Setup:
The Washing Process:
Electronics & Controller:
Object Detection ESP32:
Conclusion:
The Smart Car Washing System represents a significant leap forward in the automation of vehicle maintenance. By integrating AI-powered object detection with advanced automation, the system ensures safety, efficiency, and sustainability. The use of Edge Impulse for detecting human presence enhances safety protocols, while features like high-pressure water spray, stepper motor-controlled frame movement, and limit switches ensure precise and controlled operation. The system reduces human intervention, optimizes water usage, and minimizes resource waste, making it an environmentally friendly solution. This innovative approach not only improves the car washing process but also ensures a safer working environment, offering a modern, scalable solution for both service providers and consumers.
For all the code, follow the GitHub link below: