Raspberry Pi Projekt: Daily Philosophy


+++ Dieser Artikel dokumentiert ein laufendes Projekt und wird deshalb regelmäßig von uns aktualisiert +++

Autoren: Laura Jung, Dennis Jung

Die Idee für dieses Projekt ist entstanden, als wir mal wieder der Barsch’schen Filosofie von SWR3 gelauscht haben. Wir wollten einen Weg finden, die Zitate automatisiert von der SWR3 Homepage zu laden und über die Raspberry Pi auf einem kleinen Drucker auszugeben. Nach einer kleinen Recherche sind wir auf den Thermal Printer von Adafruit gestoßen. Der Drucker arbeitet mit einer Spannung von 5 V (1,5 A) und kann in einer Variante über die serielle Schnittstelle UART direkt mit der Raspberry Pi verbunden werden.

Steckplan

In dem Steckplan unten wurde der Adafruit Thermal Printer zur Vereinfachung als kleiner schwarzer Baustein mit 6 Kontakten eingezeichnet. Die Schaltung enthält außerdem zwei LED (rot und grün) zur Status-Anzeige und zwei Taster (Druck und Aktualisierung) für die Bedienung.

circuit_diagram_steckplatine

(Dieses Bild wurde mit Fritzing erstellt)

Schaltplan

Der Schaltplan wurde aus dem oberen Steckplan abgeleitet und gemäß Datenfluss in die Bereiche Input, Processing und Output aufgeteilt.

circuit_diagram_schaltplan

(Dieses Bild wurde mit Fritzing erstellt)

Einrichten der Raspberry Pi

Für dieses Projekt haben wir eine Raspberry Pi 3 eingesetzt. Die Konfiguration der Raspberry Pi setzt eine erfolgreiche Inbetriebnahme, wie im Artikel Raspberry Pi 3 in Betrieb nehmen beschrieben, voraus.

Aktivieren der seriellen Schnittstelle

Der eingesetzt Adafruit Thermal Printer wird über die serielle Schnittstelle der Raspberry Pi angesprochen. Dafür muss zunächst das Modul Serial in der Raspberry Pi Konfiguration aktiviert werden. Führen Sie dazu auf der Kommandozeile folgenden Befehl aus.

pi@RaspberryPi# sudo raspi-config

Aktivieren Sie dann unter 9 Advanced Options das Modul A8 Serial und führen Sie einen Neustart der Raspberry Pi durch.

raspiconfig_1

raspiconfig_2

Software

Die Python Anwendung wurde in drei Module aufgeteilt, die jeweils eine spezialisierte Klasse enthalten. Die Anwendung läuft bereits stabil in Version 0.7.0 und wird in Kürze auf dieser Seite veröffentlicht.

  • DailyPhilosophy.py – Hauptprogramm inkl. Tasterauswertung und LED-Ansteuerung
  • BarschPhilosophyGrabber.py – Auslesen der Zitate von der SWR3 Homepage mit Datenspeicherung
  • Adafruit_Thermal.py –  Ansteuerung des Druckers (GitHub Adafruit-Thermal-Printer-Library; von uns angepasst auf Python3)

Dazu kommt eine Datenbank zur Aufnahme der heruntergeladenen Zitate, die zur Laufzeit von der Anwendung erzeugt wird.

  • BarschPhilosophy.db

 


Dennis Jung

Über Dennis Jung

Herr Jung hat 2008 ein Studium zum Dipl.-Ing. (FH) im Bereich Informationstechnik mit Schwerpunkt Softwaretechnik abgeschlossen. Er arbeitet seit 4 Jahren als Projektleiter für die ZF TRW Produktlinien SCS und EPB. Seit 2017 ist er Abteilungsleiter im Bereich Globale Bremsen Softwareentwicklung – Software Projektmanagement.

Schreibe einen Kommentar