Im fünften Teil der Tutorial Reihe über Raspberry Pi Roboter geht es um einige sinnvolle Erweiterungen für des Roboter.
WiFi Modul
Ein WiFi Modul ist für einen mobilen Roboter natürlich ein absolutes Muss. Darüber lässt sich der Roboter fernsteuern, wie wir in einer späteren Folge noch erfahren werden. Ebenso sind das Anfordern von Telemetrie Daten und die Übertragung von Live Video oder Bildern eine
Ein gängiges WiFi Modul ist z.B. der EDIMAX EW-7811UN Wireless USB Adapter, 150 Mbit/s, IEEE802.11b/g/n. Für unter 10€ funktioniert das Modul einwandfrei am Raspberry Pi.
[pe2-image src=“http://lh3.googleusercontent.com/-4V0ouPfAnxg/Vdy2xm9pC_I/AAAAAAAAOh8/_EWGkrBThYM/s144-c-o/IMG_1414.JPG“ href=“https://picasaweb.google.com/100614490999857774768/MURCSPi#6187020951489154034″ caption=““ type=“image“ alt=“IMG_1414.JPG“ ]
Die Einrichtung der WiFi Verbindung klappt recht intuitiv über LXDE, die grafische Desktop Oberfläche des Raspberry Pi. Eine ausführliche Anleitung findet sich auf Datenreise.de
Pi Kamera
Die Raspberry Pi Kamera ist eine 5MP Kamera zum direkten Anschluss über den CSI Steckverbinder. Die Kamera gibt es in zwei Varianten, als normale Pi und als PiNoIR (ohne Infrarot Sperrfilter).
[pe2-image src=“http://lh3.googleusercontent.com/-lr6i3Ddz1Us/Vdy-9bMqIWI/AAAAAAAAOiM/rlNz2b61KCQ/s144-c-o/IMG_9339.JPG“ href=“https://picasaweb.google.com/100614490999857774768/MURCSPi#6187029950582366562″ caption=““ type=“image“ alt=“IMG_9339.JPG“ ]
Die Kamera muss zunächst unter Raspi-Config enabled werden. Eine ausführliche Anleitung findet man auf Netzmafia.de.
Für nahezu verzögerungsfreies Streming von Live Video sind etliche tehnische Kniffe notwendig. Die besten Erfahrungen habe mit mjpg-streamer gemacht. Auch dazu gibt es hilfreiche Anleitungen im Netz:
Pi Reset/Shutdown Taster
Eine sinnvolle Erweiterung für den Raspberry Pi ist ein Taster zum geordneten Herunterfahren bzw. Neustart des Raspberry Pi. Dafür wird ein IO Pin (Pin #25) benötigt. Die Schaltung und Software wurde 1 zu 1 von IoT-projects übernommen.
[pe2-image src=“http://lh3.googleusercontent.com/-1OFjnQQ7OyU/VYXYsRq-PKI/AAAAAAAANg4/-3bNNCGbt9w/s144-c-o/IMG_5517.JPG“ href=“https://picasaweb.google.com/100614490999857774768/MURCSPi#6162569920295877794″ caption=““ type=“image“ alt=“IMG_5517.JPG“ ]
Die Schaltung ist recht simpel, besteht aus einem Taster und 2 Widerständen. Aufgebaut auf einem kleinen Stück Lochraster lässt sich der Reset/Shutdown Taster auf das MuRCSPi Hat stecken.
[pe2-image src=“http://lh3.googleusercontent.com/-fTexQqkadX4/VYXeeF6MH7I/AAAAAAAANik/_CQet9hjGA0/s144-c-o/RPiResetSwitch_Schaltplan.jpg“ href=“https://picasaweb.google.com/100614490999857774768/MURCSPi#6162576273690075058″ caption=““ type=“image“ alt=“RPiResetSwitch_Schaltplan.jpg“ ]
Software
Die Software für den Shutdown/Reset Taster erfüllt gleich zei Funktionen. Bei einem kurzen Druck auf den Taster wird ein Reset des Raspberry Pi ausgeführt. Ein langer Druck löst einen Shutdown aus.
#!/usr/bin/env python #source: http://iot-projects.com/data/uploads/files/RPi_h_r.py import RPi.GPIO as GPIO import time import os GPIO.setmode(GPIO.BCM) GPIO.setup(25,GPIO.IN) button_previous = 1 button_current = 1 brojac = 0 flag_pressed = 0 while True: button_current = GPIO.input(25); flag_pressed = button_previous + button_current if (not(flag_pressed)): brojac += 1 else: brojac = 0 if (button_current and (not button_previous)): #print("Reset") os.system("sudo shutdown -r now") if ((not flag_pressed) and brojac >= 100): #print("Shutdown") os.system("sudo shutdown -h now") break button_previous = button_current time.sleep(0.03)
Links
Die weiteren Teile der Serie: