Raspberry Pi und Servo-Motor für einen Time-Safe, Teil2: Software Vorbereitungen

Im letzten Teil, der sich mehr um die Hardware drehte haben wir den Grundstein gelegt um eine durch einen Raspberry verschlossen und wieder geöffnet werden kann.

Heute kümmern wir uns um den Software-Teil!

Design des Pakets

Generell handelt es sich hier am Ende um ein einfach PHP-Backend, das mit HTTP-GET angesprochen werden kann und seinerseits JSON antwortet. Keine Ahnung wovon ich hier rede? Gar nicht sooo wichtig! HTTP-GET bedeutet, dass man dem PHP-Skript durch Anhängen von Informationen an die URL eben jene Informationen zukommen lassen kann.  Bei http://meineAdresse.com/meinSkript.php?variable1=gesetzt&variable2=auchgesetzt würde dem Skript „meinSkript.php“ die zwei Variablen „variable1“ und „variable“ mit den Werten „gesetzt“ und „auchgesetzt“ übergeben.

JSON ist ein typischen Format für Datenaustausch über Webservern.  Es kann in Python sehr komfortabel eingelesen werden und nimmt uns die Arbeit ab uns zu überlegen wie wir mehrere Variablen / Variablentypen und deren Inhalte in ein Textformat bringen können.

Nun muss die Frage gestattet sein „Warum dieser Aufwand?“ – und die Antwort ist, dass es flexiblen Zugriff auf den Timer der Box gewährt und gleichzeitig die Sicherheit erhöht. Um GPIO Aktionen durchzuführen, muss die Anwendung auf dem Raspberry mit root-Rechten laufen. Gleichzeitig möchte ich eventuell jemand anderem erlauben den Timer der Box zu verlängern. Mit einem einfachen Link-Aufruf kann das jeder tun, auch ohne physisch in der Nähe unserer bösen Kreation zu sein.

Außerdem kann man mit dem flexibleren Design mehrere Boxen betreiben und separat voneinander steuern, benutzen oder verlängern.

Vorbereitungen

  • PyQt4 für Python3 installieren (ist in den Repositories)
  • PHP 7/SQLite 3-Server aufsetzen
  • Winkelwerte für euer Boxdesign auslesen

PyQt4 für Python3 installieren

Der Befehl:

sudo apt-get install python3-pyqt4

sollte direkt alles notwendige installieren!

PHP 7/SQLite 3-Server aufsetzen

Über diesen Schritt wurde schon enorm viel geschrieben! Ich verweise hier einfach frech auf Google und wünsche euch viel Glück dabei. Unter Linux ist dies meistens im Wiki eurer Distribution beschrieben, unter Windows gibt es extra Installationspakete für Apache+PHP vorkonfiguriert. Am einfachsten ist es natürlich, wenn ihr schon irgendwo privaten Webspace habt, den ihr dafür nutzen könnt.

Winkel für „offen“ und „geschlossen“ finden

Um die passenden Winkel für euer Box-Design zu finden, lege ich euch das Skript vom Tutorial hier ans Herz. Dort könnt ihr so lange am Schieberegler ziehen bis die Box perfekt verschlossen und perfekt offen ist. Beide Zahlen solltet ihr natürlich notieren, da wir sie der Software angeben müssen.

To be continued

Sobald ich meine github Zugangsdaten bekommen habe, lade ich die Software hoch und erkläre direkt die Benutzung!

 

 

Schreibe einen Kommentar