Energy-Saving Automatic Street Lamp

The Energy-Saving Automatic Street Lamp was developed as a mini-project for the Embedded C for Microcontrollers module. The aim was to design and program a light that automatically responds to ambient conditions, saves energy by reducing output at low-use times, and stays synchronised with the sun without maintenance.

Street lamp hardware layout
Hardware setup with microcontroller, LDR input, and LED outputs

How it works

Light detection: An LDR and comparator trigger an interrupt when light levels change. If the change is before midday it is treated as sunrise (lights off), otherwise as sunset (lights on).

Timekeeping: A real-time clock is maintained in software with timers. The current hour is displayed in binary on an LCD for clear output.

Energy saving: Between 1 am and 5 am, only one third of the LEDs are lit, with rotation each night for even wear. Lights turn fully off if sunrise occurs before 5 am.

Daylight savings: The system checks for the last Sunday in March and October to apply DST changes automatically.

Solar synchronisation: Sunrise and sunset are logged to calculate solar noon using a simplified Equation of Time. This keeps the internal clock aligned with the sun and compensates for drift.

Daylight detection test
Daylight savings test
Demonstrations of automatic light control