Was kann man machen um sich die Zeit zu vertreiben… solange Ausgangsbeschränkung wegen Corona Virus herrscht und sogar das Hausklettergebiet Kochel von der Polizei patrouilliert wird.
Ich habe mir die Zeit mit Programmieren vertrieben. Als absoluter Neuling ungewohnt mit Erfolg. Also keine Angst das wäre sicher auch was für Euch. Die Zeit vergeht dadurch rasend schnell und am Ende hat man immer wieder tolle “Heureka” Momente.
Gerade weil es etwas anderes als Klettern ist: Neuland! Aber dadurch irgendwie auch doch dem Klettern verwandt.
Alles Folgende basiert auf: Raspberry Pi
Was ist das? Ein Computer im Handyformat. Betriebssystem? Linux. Preis? 30€ abwärts. Was kann der? Alles was ein herkömmlicher PC auch kann. Natürlich weniger schnell.
Aber mit dem Raspberry kann man spielen ohne Angst vor großem Schaden. Es geht ja nur um 30€ und das Betriebssystem ist auf einer SD Karte.
Erste Schritte:
- Kaufen von Raspberry Pi 3B+
- Kaufen einer micro SD Karte
- Download Betriebssystem Raspian Vollversion: https://www.raspberrypi.org/downloads/raspbian/
- Download Balena Etcher: https://www.balena.io/etcher/
- Das Image des Betriebssystems mit Etcher auf die SD Karte spielen, dauert ca. 30 min
- Raspberry per LAN Kabel verbinden, HDMI Anschluss mit Bildschirm verbinden (wer alte DVI Bildschirme hat hier mit Connector), Maus und Tastatur in Raspberry einstecken, Strom einstecken (hier kannst du dein Handyladegerät verwenden). Sobald der Strom eingesteckt ist fährt der Raspberry hoch.
- Alles wird initialisiert, man muss Passwörter vergeben etc.
Erstes Projekt:
Umgebungsparameter in die Cloud streamen: Temperatur, Feuchtigkeit, Druck, Bewegung über eine Sensorplatine aufzeichnen und von überall auf dem Handy beobachten
To Do:
- Kauf eines Docker Pi Sensor Hub (17€)
- Das Hub auf das Pi montieren
- Thonny (Python Programmiertool im Raspian Menü unter Entwicklertools) öffnen und ein Python Script anlegen mit folgendem Inhalt:
[script]:
#!/usr/bin/env python
#copyright code by d-on-r.de free for private use
import smbus
MyBus = smbus.SMBus(1)
import httplib
import urllib
#import time
key = "DEINEN WRITE KEY HIER EINTRAGEN" # deinen API Key eintragen
def measure():
while True:
import time
time.sleep(15)
#Calculate CPU temperature of Raspberry Pi in Degrees C
field1 = MyBus.read_byte_data(0x17, 0x01) # Get Raspberry Pi Temperature
field2 = MyBus.read_byte_data(0x17, 0x06) # Get Raspberry Pi humidity
field3 = MyBus.read_byte_data(0x17, 0x03) # Get Raspberry Pi brightness
field4 = MyBus.read_byte_data(0x17, 0x0D) # Get Raspberry Pi human detect
field5 = MyBus.read_byte_data(0x17, 0x05) # Get Raspberry Pi onboard hsensor temp
field6 = MyBus.read_byte_data(0x17, 0x02) # Get Raspberry Pi lux
field7 = MyBus.read_byte_data(0x17, 0x07) # Get Raspberry Pi on board error
field8 = MyBus.read_byte_data(0x17, 0x08) # Get Raspberry Pi temp barometer
params = urllib.urlencode({'field1': field1,'field2': field2,'field3': field3,'field4': field4,'field5': field5,'field6': field6,'field7': field7,'field8': field8, 'key':key })
headers = {"Content-typZZe": "application/x-www-form-urlencoded","Accept": "text/plain"}
conn = httplib.HTTPConnection("api.thingspeak.com:80")
try:
conn.request("POST", "/update", params, headers)
response = conn.getresponse()
print temp
print response.status, response.reason
data = response.read()
conn.close()
except:
print "connection failed"
break
if __name__ == "__main__":
while True:
measure()
# free account has an api limit of 15sec
import time
time.sleep(15)
- Einen Account bei thingspeak erstellen und danach einen Kanal erstellen mit 8 Feldern
- Den write key im Python script und die Kanalnamen Durch Deine Namen ersetzen, Script speichern:
- Download der Smartphone APP aus dem APPstore: THINGVIEW
- In der App mit Konto und Passwort einloggen
- Konsole auf dem Raspberry öffnen und folgende Kommandos eingeben Zeile für Zeile und jeweils danach mit enter bestätigen, yes das sieht dann ähnlich wie in Matrix aus;) :
- sudo apt-get install python
- sudo apt-get install httplib
- sudo apt-get install urllib
- Jetzt das Script mit Thonny starten
- Voila: DIE DATEN WERDEN LIVE IN DIE CLOUD GESTREAMT. Alle 15 Sekunden ein neuer Wert. Du hast über dein Handy Zugriff zu den Raumparametern und ob sich z.b. jemand in dem Raum bewegt (Eltern, Einbrecher etc.)
- Alle Parameter sind aus meiner Sicht unkritisch, daher können diese ohne große Sicherheitsvorkehrungen gestreamt werden.
Ich freue mich über Eure Kommentare und Verbesserungsvorschläge. An den Links verdiene ich ohne dass ihr mehr zahlt. Aber glaubt mir allein das Script hat mich einige Nächte gekostet.
Hinweis: Ich übernehme keine Haftung für Schäden! (Muss ich leider dazu schreiben)
In einem nächsten Artikel habe ich geplant Euch zu zeigen wie Ihr eine Eigene Homepage baut und auf dem Raspberry betreibt.