Valentins-Sonnenblume: Smarter Arduino-Bausatz mit Lichtverfolgung
Komponenten und Zubehör
| Komponente | Menge |
|---|---|
| Arduino Pro Mini 328 – 5 V / 16 MHz | 1 |
| Mini-Fotowiderstand (LDR) | 1 |
| Servo (Metallgetriebe, z. B. MG996R) | 1 |
Werkzeuge
- 3D-Drucker (flexibles Filament für Gras-Teile empfohlen, z. B. Filaflex)
Software & Online-Tools
- circuito.io – automatische Schaltung & Code-Generierung
- Arduino IDE
Projektbeschreibung
Zum Valentinstag: Eine künstliche Sonnenblume, die sich wie ihr natürliches Vorbild zur Lichtquelle ausrichtet. Ein Servo dreht den Blütenkopf, gesteuert von einem LDR (Light Dependent Resistor). Das Gehäuse wird 3D-gedruckt.
Elektronik
- Auf circuito.io die Komponenten auswählen (Link im Projekt). Anpassungen möglich (anderer Arduino, Batteriebetrieb).
- Generate klicken → Schritt-für-Schritt-Verdrahtungsanleitung & Bauteilliste erhalten.
- Alle Teile (inkl. Widerstände, Kabel) besorgen.
- Verdrahtung laut Anleitung durchführen.
- Generierten Beispielcode herunterladen, in Arduino IDE öffnen, aufspielen.
- Anschließend den angepassten Firmware-Code (siehe unten) in den
firmware-Tab der generierten Datei kopieren (Pin-Definitionen & Bibliotheken beibehalten).
Blume drucken & zusammenbauen
STL-Dateien (siehe Custom Parts) drucken:
- 1× Basis
- 1× Stab (Bar)
- 1× Verbindungsstück (Tie)
- 1× Kelchblätter (Sepal)
- 6× Blütenblätter (Petals)
- 10× Gras (flexibles Filament!)
Montage:
- Blütenblätter, Stab und Kelchblätter mit dünnem Federstahldraht verbinden (Bohrungen im Design vorhanden).
- Servo mit 2 Schrauben an der Basis befestigen, Welle mit Nagel am Kelchblatt fixieren.
- LDR in die vorgesehene Bohrung in der Basis (unter Servo-Halterung) einsetzen.
Firmware-Code (Ausschnitt)
Ersetzt den void loop() im generierten Code:
/* Setup: läuft einmal beim Start */
void setup() {
Serial.begin(9600);
Serial.println("start");
servo.attach(SERVO_PIN_SIG);
servo.write(servoRestPosition);
}
/* Hauptschleife: läuft endlos */
void loop() {
// Lichtwert mitteln (1000 Samples)
ldrSample = ldr.readAverage(1000);
Serial.print(ldrSample); Serial.print('\t');
// Servo-Winkel 10..95° aus Lichtwert 200..900 mappen
servoRestPosition = map(ldrSample, 200, 900, 10, 95);
servoRestPosition = constrain(servoRestPosition, 10, 95);
Serial.println(servoRestPosition);
servo.write(servoRestPosition);
delay(1000 * 20); // 20 s Pause bis nächste Messung
}
3D-Druckdateien (Custom Parts)
- Sunflower bar
- Sunflower - Petal
- Sunflower - base
- Sunflower - Sepal
- Sunflower - grass (flexibles Filament!)
- Sunflower - tie
Viel Spaß beim Nachbauen – und einen sonnigen Valentinstag!
Herstellungsprozess
- Sonnenblumenkerne: Ein köstlicher, nahrhafter Snack mit antiken Wurzeln
- KI-gestütztes Hindernisvermeidungssystem mit Arduino und Ultraschallsensoren
- Interaktives Gyroskop-LED-Display mit NeoPixel-Ring & Arduino
- DIY Arduino USB Gaming Controller – Bauen Sie Ihren eigenen High-Performance Gamepad
- DIY Wolken-Kostüm: LED-Streifen, Arduino Nano & SparkFun Teile
- Industrieroboter für Materialtransport – Linienfolger mit RFID & Ultraschall
- Pixie: DIY NeoPixel-Armbanduhr mit Arduino Pro Mini – Schick & Selbstgebaut
- Smarte Arduino-Trinkflasche: Echtzeit-Überwachung & Trinkerinnerung
- DIY Schattentheater mit Arduino 101 & adressierbarem LED-Strip (Blynk-Steuerung)
- Arduino-Sonnenblume: Elektronischer Sonnen-Tracker selbst bauen