Aus Raspberry Pi Geek 06/2015

Der Raspberry Pi öffnet mittels RFID Türen (Seite 2)

Servod erstellt einen einfach zu bedienenden Gerätetreiber. Mit der Anweisung echo 0=140 > /dev/servoblaster weisen Sie Servo 0 den Wert 140 zu. Das entspricht beim vorliegenden Aufbau etwa der Mittelposition. Der Wert für die offene Tür beträgt in unserem Aufbau 60, jener für die geschlossene 170. Diese Werte müssen Sie aber durch Ausprobieren selbst ermitteln, da sich die Servomotor-Modelle leicht unterschiedlich verhalten.

Wenn Sie sich etwas intensiver mit dem Servoblaster beschäftigen, stellen Sie schnell fest, wie nützlich er für eigene Projekte ist. Er unterstützt nicht nur einen Servomotor, sondern bis zu 21 davon.

Software

Das RFID-Modul verwendet die SPI-Schnittstelle zur Kommunikation mit der Außenwelt. Um diese im RasPi zu aktivieren, benötigen Sie die entsprechende C-Bibliothek für den Baustein BCM2835. Mit den Kommandos aus Listing 2 laden Sie diese herunter und richten sie unter /usr/src/ ein.

Listing 2

 

$ cd /usr/src
$ sudo wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.42.tar.gz
$ sudo tar xvfz bcm2835-1.42.tar.gz
$ cd bcm2835-1.42/
$ sudo ./configure
$ sudo make
$ sudo make install

Es gibt im Netz schon eine Menge verschiedener Programme, um auf das RFID-Modul zuzugreifen. Die Wahl fiel auf Rc522, das sich einfach installieren und konfigurieren lässt, im Hintergrund arbeiten kann und eine einfache Schnittstelle besitzt, um abhängig von der Karten-ID verschiedene Aktionen auszuführen. Listing 3 zeigt in den Zeilen 1 bis 6 das Setup.

Listing 3

 

$ cd /usr/src
$ sudo apt-get install subversion
$ sudo svn checkout http://rpi-rc522.googlecode.com/svn/trunk/ rpi-rc522-read-only
$ cd rpi-rc522-read-only/rc522
$ sudo gcc config.c rfid.c rc522.c main.c -o rc522_reader -lbcm2835
$ sudo cp RC522.conf /etc/
$ sudo /usr/src/rpi-rc522-read-only/rc522/rc522_reader -d

Sie starten das Programm mit dem Aufruf aus Zeile 7 im Debug-Modus, in dem es unter anderem die IDs der RFID-Transponder anzeigt (Listing 4). Tragen Sie nun eine dieser IDs in die Datei /etc/RC522.conf ein und verknüpfen sie mit einer Aktion (Listing 5), führt das Programm diese aus, sobald der Transponder in die Nähe des Kartenlesers kommt. Das kleine Skript aus Listing 6 öffnet die Tür, wartet 10 Sekunden, und schließt sie dann wieder.

Listing 4

 

$ cd /usr/src/rpi-rc522-read-only/rc522
$ sudo ./rc522_reader -d
Debug mode.
Type: 0400, Serial: b97b9a1a
New tag: type=0400 SNlen=4 SN=[b97b9a1a ]
Type: 0400, Serial: 039962c7
New tag: type=0400 SNlen=4 SN=[039962c7]
Type: 0400, Serial: da9143b2
New tag: type=0400 SNlen=4 SN=[da9143b2]
Type: 0400, Serial: 503649b5
New tag: type=0400 SNlen=4 SN=[503649b5]

Listing 5

 

# /etc/RC522.conf
#
# SPI_SPEED - spi clock rate in kHz. Must be >=4 and <=125000
SPI_SPEED=5000
#User id and group id (no user root allowed)
UID=1000
GID=1000
# Path for store memory dump of UltraLight tags. File will named as serial number.
NEW_TAG_PATH=/tmp/
#GPIO pin (bsm2835 gpio number!) for indiction of active tasks.
GPIO=18
[b97b9a1a] sh /home/pi/door.sh

Listing 6

 

# /home/pi/door.sh
#
echo 0=60 > /dev/servoblaster
sleep 10
echo 0=170 > /dev/servoblaster

Fazit

Das Beispiel zeigt anhand der Katzenklappe eine komplette Zugriffskontrolle mittels RFID und stellt wieder einmal die Vielseitigkeit der RasPi-GPIO unter Beweis. Allerdings handelt es sich bei der vorgestellten Katzenklappe eher um eine Machbarkeitsstudie, die Sie beim Selbstbau an einigen Stellen nachbessern müssen. Zum einen funktioniert sie in der vorliegenden Fassung nur in eine Richtung, zum anderen dürfte sich die Katze schwer dazu dressieren lassen, den Transponder auf 3 Zentimeter an den Kartenleser anzunähern. Schließlich sollten Sie noch eine Lichtschranke einbauen, damit die Klappe nicht schließt, während sich die Mieze noch in der Tür befindet. 

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben