Adjustable Light Switch
December 2024
My project is a Automatic Light Switch (ALS), which is similar to the sensors in streetlights that automatically detect low light environments and turns on the light post automatically to illuminate the area. When I began this project, I wanted to improve and build on my previous bonus project, which was similar, and I believe that goal was achieved. I found the inspiration for this project by realizing that a lot of street lights are not functional, or manually turn on depending on the time. I thought that creating a product that can fix these issues by improving and restoring urban infrastructure would be beneficial to drivers and pedestrians in Toronto. Since turning on at a specific time could lead to waste, and since some days are brighter than others, this device could effectively save energy by only turning on the light when it’s needed.

Features
- Uses an arduino kit and external light sensor to detect ambient light levels
- Automatically determines if the ambient light level is above or below a variable threshold
- Displays real-time light data on a graph on the computer monitor
- Uses an adjustable potentiometer to allow the user freedom on where the threshold actually is
- Also makes uses of external OLED display to display real-time light levels
Code
Loading code...
Requirements
Hardware
- Grove Beginner Kit For Arduino (see here) - This will be how the robot is controlled
- Moisture sensor - This will give the robot moisture information
- OLED display - This will display the moisture levels
- Light Sensor - This will give the robot light information
- Adjustable Potentiometer - This will allow the user to adjust the light threshold
- Onboard LED - This will provide visual feedback
- Buzzer - This will provide audio feedback
- Pushbutton - This will allow the user to manually trigger actions
- Jumper wires - These will connect everything
- USB cable - This will be used to connect the Arduino to a computer for programming
- Laptop - This will be used for programming the Arduino