Nach Let’s Hack kommt jetzt Let’s Craft. Zudem auch noch passend zum Let’s Hack: Ikea Driva oder auch Spaß mit Kinderzimmerresten.
Empfehle ich auch zuerst anzusehen, um zu verstehen was ich hier so mache.
Also los gehts. Ab hier wird der Atikel lang.
1. Relay anschließen und verkabeln
Dazu werde ich nicht sagen, da es bei jedem anders seien wird. Als Hilfestellung kannst du dir ja die Bilder aus dem erwähnten Atikel ansehen und die Videos, da wird es gut veranschaulicht.
GPIO Belegung bei mir:
gpio 2 relay 1 Stromleiste/NAS
gpio 3 relay 2 ROT
gpio 17 relay 3 GELB
gpio 23 relay 4 GRÜN
2. Webserver installieren
Dazu gibt es den Code zum ausführen:
sudo apt-get install apache2 php5 libapache2-mod-php5 sudo groupadd www-data sudo usermod -g www-data www-data
3. Scripte erstellen
Der Scriptordner liegt bei mir in /home/pi, also im Homeverzeichnis des pi Benutzers.
mkdir schaltung cd schaltung
Dort werden nun die einzelnen Dateien erstellt. Im NANO ist STRG + O speichern und STRG + X schließen.
Bei Alle an/aus werden nur die Lampen geschaltet.
Die Power Scripte sind bei mir für meine NAS mit NAS4FREE gedacht, bei der Wake on Lan nicht richtig (Softwarebug). Daher ist dort im BIOS eingestellt, dass wenn nach Verlust der Stromversorgung wieder Strom kommt automatisch gestartet wird. So kann ich per Relay die NAS starten, bzw. bei Fehlern resetten.
nano export.sh
#!/bin/sh gpio export 17 out gpio -g write 17 1 gpio export 23 out gpio -g write 23 1 gpio export 2 out gpio -g write 2 1 gpio export 3 out gpio -g write 3 1
nano off-all.sh
#!/bin/sh gpio -g write 3 1 gpio -g write 17 1 gpio -g write 23 1
nano off-gelb.sh
#!/bin/sh gpio -g write 17 1
nano off-gruen.sh
#!/bin/sh gpio -g write 23 1
nano off-power.sh
#!/bin/sh gpio -g write 2 1
nano off-rot.sh
#!/bin/sh gpio -g write 3 1
nano on-all.sh
#!/bin/sh gpio -g write 3 0 gpio -g write 17 0 gpio -g write 23 0
nano on-gelb.sh
#!/bin/sh gpio -g write 17 0
nano on-gruen.sh
#!/bin/sh gpio -g write 23 0
nano on-power.sh
#!/bin/sh gpio -g write 2 0
nano on-rot.sh
#!/bin/sh gpio -g write 3 0
nano power-nas.sh
#!/bin/sh gpio -g write 2 1 sleep 120 gpio -g write 2
4. Webseite erstellen
Alle Dateien werden in /var/www erstellt. Wenn es nicht gehen sollte, zum root-Benutzer wechseln. Damit geht es auf jeden Fall.
Aus der Index-Datei einfach alles rausschmeißen und neu befüllen.
nano index.html
<html> <head> <title>ampel</title> </head> <body> <h1>Ampel</h1> <a href="export.php">Export</a><br> <p> <h2>Ampelsteuerung</h2> <h3>Alle</h3> <a href="on-all.php">Alle AN</a><br> <a href="off-all.php">Alle AUS</a><br> <h3>Rot</h3> <a href="on-rot.php">Rot AN</a><br> <a href="off-rot.php">Rot AUS</a><br> <h3>Gelb</h3> <a href="on-gelb.php">Gelb AN</a><br> <a href="off-gelb.php">Gelb AUS</a><br> <h3>Grün</h3> <a href="on-gruen.php">Grün AN</a><br> <a href="off-gruen.php">Grün AUS</a><br> </p> <h2>Powercontroll für nas.steuber-it</h2> <a href="power-nas.php">NAS starten</a><br><br> <a href="on-power.php">Power AN</a><br> <a href="off-power.php">Power AUS</a><br> </body> </html>
Hier das Beispielscript. Den Dateinamen aus der Index-Datei und die Scriptnamen der vorher erstellten Scripte einsetzen.
<?php shell_exec ('/home/pi/schaltung/SCRIPTNAME.sh'); header("Location:index.html"); ?>
Dann viel Spaß bei blinken lassen.