Stromsteuerung mit Arduino und Relay
Idee und Fernziel
Bis anhin waren die externen (Backup-)Festplatten 24h pro Tag an den Server angebunden obwohl sie nur wenige Minuten pro Tag genutzt wurden. Durch automatisches ein- und ausschalten sollte der Stromverbrauch verringert werden.
Die Stromversorgung wird von einer Arduino/Relay-Kombination übernommen, die Einbindung (mount/unmount) durch ein Python Script auf dem Server selbst.
Aktueller Stand
Nach Ende der Woche was der Prototyp mehr oder weniger Funktionsfähig. Die Stromsteuerung und Kommunikation zwischen Server und Arduino bzw. Relay funktioniert einigermassen Zuverlässig, wenn auch mit einigen Sekunden Verzögerung. Die Einbindung der eingeschalteten Festplatten lässt noch zu wünschen übrig, da eine wiederholte Einbindung ohne Neustart des Servers an den temporären Ordnern der Laufwerke scheitert.
Da das Relay Netzspannung regelt wurde es in ein 3D gedrucktes Gehäuse verpackt, um Kontakt zu vermeiden.
Bericht
Material
- Solid State Relay (z.B. https://goo.gl/aN8PzP)
- Arduino Uno
- 3 LEDs zum Debuggen
- 3 220Ω Widerstände für LEDS
- Div. Kabel
Aufbau
Arduino Code
Python Code (Server-Side)
Verwendete Libraries
- Pyudev - Serien Schnittstellenüberwachung (erkennt, wenn Festplatte hochgefahren ist und per USB “anklopft” https://pyudev.readthedocs.io/en/latest/
- Python Serial - Kommunikation mit Arduino (Standart Library)
- Python Glib - Laufzeit Library für Loops (Standart Library)
Fazit
- Vieles über die Verwendungszwecke von Arduinos gelernt
- Grundlagen von Elektronik mit Relays
- Bei Problemen Austausch mit Mitschülern