Damit der smarte Bierdeckel das auf ihm stehende Getränk identifizieren kann, werden die Gläser mit zuvor beschriebenen RFID Sticker beklebt. Da jedes Glas in der Gastronomie theoretisch mit jedem Getränk gefüllt werden kann, wird vor Ausgabe des Getränkes auf jeden RFID Chip die entsprechende Information aufgespielt. Beispielhaft für ein Weizenbier wäre dies: „Weizen 0,5l“. Hierzu wird die Verbindung zu dem RFID Scanner (RC522) benötigt, welche nachfolgend beschrieben wird.

Dieser Chip kann von dem im Bierdeckel verbauten Mikrocontroller ESP8266 ausgelesen und der prozentuelle Füllstand des Glases berechnet werden. Diese Anbindung wird in einem separaten Blogeintrag behandelt.

Verbindung mit dem Raspberry Pi 4:

Die Verbindung erfolgt über die GPIO-Pins der Raspberry PIs. Das Pinlayout wird in der Anleitung aufgeführt und kann genauso übernommen werden. Die Verbindung erfolgt über die sogenannten Jumperkabel.

Codebeispiel mit Python:

Nach der Verbindung muss zunächst einmal das SPI-Protokoll des PIs eingeschalten und der PI neugestartet (! -> meine erste Fehlerquelle 😊) werden.

Anschließend müssen mit Pip3 (einem Verwaltungssystem von Bibliotheken) die Bibliotheken SpiDev und MFRC522 (spezifisch für das verwendete Board) installiert werden. 

Daraufhin können mit einem sehr simplen Pythonskript über die Methoden read() und write() die Werte des RFID-Stickers ausgelesen und beschrieben werden. Insgesamt ist das Vorgehen recht selbsterklärend und einfach in Projekte integrierbar.

Zunächst werden hierzu die beiden Bibliotheken RPiO und MFRC über einen Import eingebunden. Anschließend wird über einen Konstruktor die Konfiguration des RFID-Scanners geladen.

Nach diesem Schritt kann das Skript ausgeführt werden und erfüllt dabei seine Funktion. Die Beschreibung ist in Form eines Strings möglich, wodurch dieser Schritt sehr einfach umzusetzen ist.

Für den weiteren Projektverlauf ist es aus Gründen des Bedienungskomforts geplant, die Beschreibung der RFID-Sticker über eine Webschnittstelle umzusetzen, welche den zugrundeliegenden Pythoncode aufruft.

Python Programmcode

Alternatives Vorgehen:

Falls das Beschreiben des RFID-Sticker nicht möglich gewesen wäre, hätten die auf den Stickern hinterlegten Informationen zur Bestimmung des Getränks benutzt werden können.

Diese wären in einer Datenbanktabelle mit einem Getränk z.B. „Weizen 0,5l“ verknüpft worden. Der ESP8266 hätte die Informationen via MQTT an das Backend (Raspberry PI) versendet, wo sie für Auswertungen weiterverwendet würden.

Anbindung Raspberry PI an einen RFID Scanner

Ein Kommentar zu „Anbindung Raspberry PI an einen RFID Scanner

Schreibe einen Kommentar