This project is based on the ATmega328P Xplained Mini microcontroller and transforms a conventional clothes drying stand into a smart system, capable of responding automatically to outdoor weather changes.
The idea originated from smart home awnings and automated pergola covers, adapting their weather-responsive behavior to a clothes drying stand.
The main goal of the project is to automate the clothes drying process, save time and make it more efficient and reliable, while still giving the user full control when needed.
This system is useful for anyone who dries clothes outdoors, especially people who are away from home during the day and cannot monitor weather changes.
The system is fully standalone and operates independently, requiring only a 5V power supply via a MicroUSB adapter.
The system starts in Automatic Mode by default. Once powered, it begins continuously reading data from the rain sensor and the LDR. The behavior of the system adapts based on the following scenarios:
The system logic is built around a state machine with two main states: Automatic Mode and Manual Mode. These are the main modules:
| Component | Quantity | Role |
|---|---|---|
| ATmega328P XMini | 1 | Main controller |
| Rain sensor module | 1 | Detects precipitation |
| LDR Light sensor | 1 | Measures ambient light level |
| LCD 1602 16×2 with I2C | 1 | Displays system status |
| Servomotor SG90 180° | 1 | Controls drying stand position |
| LED 5mm Green | 1 | Signals normal conditions |
| LED 5mm Red | 1 | Signals bad weather |
| LED 5mm Yellow | 1 | Signals manual mode |
| Resistor 220Ω 0.25W | 3 | Current limiting for LEDs |
| Push button 6x6x5 | 1 | Mode switching and stand toggling |
| Breadboard 830 points | 1 | Circuit prototyping |
| Jumper wires | as needed | Electrical connections |
| 5V 2A MicroUSB Power Supply | 1 | Powers the system |
| MicroUSB breakout board | 1 | MicroUSB power input connector |
| Capacitor 1000uF 50V | 1 | Power supply filtering for servomotor |
The ATmega328P Xplained Mini board was not available in the EasyEDA library, so an Arduino Nano symbol was used as a pin-compatible schematic representation. The following pin mapping was applied: