Interested in a tiny build that moves the moment a raindrop lands? 🌧️🚗This 3D Mini Rain Car Wiper does exactly that—your model windshield gets real, automatic wiper action that flicks back and forth when the sensor gets wet.
You’ll pair an Arduino Uno, a simple rain sensor, and two micro servos with a 3D-printed windshield and wiper arms. The result is a palm-sized demo that feels like a real car: raindrops → wipe → park.
Because the parts are standard and the code is short, it’s a fast weekend project. Print the parts, wire the pins, upload the sketch, and you’re watching droplets trigger smooth servo sweeps by the end of the day.
It’s similar to the Smart Laundry Bot project, but instead of moving a clothesline, the servos control wipers on a model windshield. The concept is the same: detect rain → trigger movement automatically.
Why Build a 3D Mini Rain Car Wiper?
It’s a compact, low-risk way to learn sensing → decision → actuation. You’ll see how a digital sensor changes program flow and how servos translate code into motion—skills you can reuse in robots, animatronics, and smart gadgets.
The project invites design play: tune the arm length and sweep, try different wiper geometries, and style the 3D parts to match a car you love. It’s also classroom-friendly—easy to show, easy to grade, and visually clear when it’s working.
Finally, it gives you a realistic behavior model. Intermittent vs continuous wiping, parking position, and speed control are all ideas you can prototype here before tackling full-size mechatronics.
What You’ll Learn
By building this project, you’ll:
- Understand how a rain sensor works and how it detects water droplets.
- Learn how to use Arduino Uno to control servos based on sensor input.
- Practice wiring and coding with digital pins, power supply, and servo motors.
- Discover how automation works in real life—just like a car’s automatic wiper system.
- Gain hands-on experience in combining sensors + actuators for simple robotics and DIY automation projects.
What You’ll Need

Electronic Components
- Rain Sensor – detects water droplets on its surface
- Mini Servo – sweeps the wipers left and right
- Arduino Uno – the brain of the system
- 8 Slot Battery Holder – powers the servos and Arduino
- Battery AA – main power source
- USB Cable Type B – for uploading code to Arduino
- Jumper Wires – connections between components
Circuit Diagram:

To assemble the project:
1, Connect the rain sensor’s output pin to digital pin D2 on the Arduino.
2. Power the sensor from the Arduino’s 3.3V and GND pins.
3. Connect each servo to a separate digital pin:
- Servo 1 → D9
- Servo 2 → D10
- Power each servo with 5V and GND from Arduino.
4. Mount the servos so they act like wipers.
Pin Mapping:
- Rain Sensor: VCC → 3.3V | GND → GND | DO → D2
- Servo 1: VCC → 5V | GND → GND | Signal → D9
- Servo 2: VCC → 5V | GND → GND | Signal → D10
Sample Code
#include <Servo.h>
Servo wiperLeft;
Servo wiperRight;
const int rainSensorPin = 2;
const int servo1Pin = 9;
const int servo2Pin = 10;
void setup() {
pinMode(rainSensorPin, INPUT);
wiperLeft.attach(servo1Pin);
wiperRight.attach(servo2Pin);
// Start at initial angle
wiperLeft.write(180);
wiperRight.write(180);
}
void loop() {
int rainDetected = digitalRead(rainSensorPin);
if (rainDetected == LOW) { // Rain detected
// Swipe like wipers
wiperLeft.write(90);
wiperRight.write(90);
delay(500);
wiperLeft.write(180);
wiperRight.write(180);
delay(500);
} else {
// Stop at resting position
wiperLeft.write(180);
wiperRight.write(180);
}
delay(100);
}How it Works?
A rain sensor wired to digital pin 2 outputs LOW when wet (typical for many modules). The sketch watches that pin: if it’s LOW, it triggers a wipe; if it’s HIGH, the system parks. Two servos on pins 9 and 10 are attached as left and right wipers.
In code, both servos park at 180° on startup. When rain is detected, the program commands 90° → 180° with 500 ms delays, creating a back-and-forth sweep. No rain means the servos hold the park angle quietly.
Mechanically, your 3D-printed arms mount to each servo horn so both blades move together. Electrically, the Arduino powers signal lines while the servos draw 5 V from a stable supply; the sensor’s logic level drives the simple “wipe/park” state machine in loop().
Applications & Extensions
Use it for model cars, weather displays, or classroom demos that show closed-loop control. It’s also a neat storefront or desk piece that reacts when you mist it with water.
Extend the behavior: add intermittent modes (timer-based), variable speed by mapping rainfall to delay time, or an auto-park routine that always returns to the same angle after a sweep. Switch to an analog rain sensor and set thresholds for drizzle vs heavy rain.
Upgrade the build: incorporate a manual/auto toggle, a potentiometer for speed, proper 5 V servo power with a common ground, and sturdier 3D parts with low-friction bushings. For flair, add LED indicators for rain state or a tiny OLED showing speed and mode.
📹 Watch the Full Demo Video
Here’s the 3D Mini Rain Car Wiper.











