SunGlass-BOT: Slimme Zonnebril Die Zichzelf Aanpast Aan Licht
Onderdelen en Benodigdheden
| Arduino Pro Mini (5V, 16 MHz) | 1 |
| Micro Servo Motor (bijv. SG90 of MG996R, klein model) | 1 |
| LDR (Lichtgevoelige Weerstand) | 1 |
| 10 kΩ Weerstand (voor spanningsdeler) | 1 |
| Zonnebril (goedkope model, glazen verwijderbaar) | 1 |
| Draadjes, lijm, zware draad voor glas-houder | 1 set |
Apps en Online Diensten
- Arduino IDE
Over Dit Project
Een zonnebril die automatisch de getinte glazen omlaag/omhoog beweegt afhankelijk van de omgevingslichtintensiteit. Bij helder licht sluiten de glazen (bescherming), bij zwakke licht openen ze (goed zicht).
Dit project is uitgelicht als TOP PROJECT in HackSpace Magazine #9: HackSpace Magazine.
Stap 1: Onderdelen
Kosten: zeer laag (~€10-15). Programmeer de Pro Mini via een Arduino Uno (ATmega328P eruit halen) of USB-TTL converter.
Stap 2: Principe
De LDR en 10kΩ weerstand vormen een spanningsdeler op analoog pin A0. De Arduino meet de spanning (0-1023):
- Heldere zon: waarde < 100
- Normale kamerverlichting: waarde ~500-600
- Donker: waarde ~1023
Drempelwaarde instelbaar in code (standaard 100).
Stap 3: De Schakeling
Eenvoudige opbouw op breadboard, daarna gesoldeerd op de Pro Mini. Zorg dat de LDR vrij ligt om licht te meten.
Stap 4: Programmeren Arduino Pro Mini
Via Arduino Uno (als programmeerder):
- Haal de ATmega328P chip uit de Uno (met schroevendraaier opprikken).
- Verbind: Uno 5V → Pro Mini VCC, GND → GND, TX → TX, RX → RX, RESET → RST.
- In Arduino IDE: Tools → Board → Arduino Pro Mini, Processor → ATmega328P (5V, 16 MHz).
- Upload code.
Stap 5: Zonnebril Prepareren
- Verwijder de originele glazen uit de montuur.
- Lijm de glazen op een stuk zware draad (vormt het bewegende frame).
- Monteer de servo op de brilmontuur.
- Bevestig een servo-arm aan het glazen-frame.
- Voeding: 5V 1A (bijv. powerbank).
Stap 6: Klaar!
Aansluiten, testen: bij helder licht gaan de glazen dicht, bij donker open. Een grappige, maar functionele wearable!
Code
#include <Servo.h>
Servo sglass;
int ldr = A0;
int value = 0;
void setup() {
Serial.begin(9600);
sglass.attach(9); // Servo op pin 9
}
void loop() {
value = analogRead(ldr);
Serial.println(value);
delay(100);
if (value < 100) { // Drempel: helder licht
sglass.write(155); // Glazen omlaag
delay(100);
} else {
sglass.write(80); // Glazen omhoog
delay(100);
}
}
Code beschikbaar op: GitHub
Schema
LDR tussen A0 en 5V, 10kΩ tussen A0 en GND. Servo: signaal → D9, VCC → 5V, GND → GND.
Productieproces
- Gaslampen: Evolutie, Ontwerp en Moderne Productie
- Laser Pointer: Ontwerp, Productie en Veiligheidsoverzicht
- Zaklamp: van ontstaan tot moderne innovatie
- De Kaleidoscoop: Van Brewsters Wetenschap tot Modern Ontwerp
- Semiconductor Lasers: Precieze Lichtgeneratie voor Moderne Technologie
- De kunst en wetenschap van fotografische processen: Van daguerreotypen tot moderne film
- Verkeerslichten: Techniek, Geschiedenis en Toekomstige Innovaties
- Van Vuur tot Draad: De Evolutie en Productie van de Moderne Glühlampe
- Optische Vezel: Technologie, Productie en Toekomst
- Gebarenbestuurde RGB-tafellamp – Interactief, Handvrij Verlichten
- Bluetooth-gecontroleerde Arduino Spybot bouwen