Mittwoch, 30. Dezember 2020

Raspberry Pi - Python programmieren

Basics:

https://www.w3schools.com/python/default.asp


Um Python-Programme von der Komandozeile zu starten muss am Anfang folgendes stehen:

#!/usr/bin/python


Sollen auch deutsche Umlaute verwendet werden, dann noch folgendes:

# -*- coding: utf-8 -*-


und los geht's

Ach halt, wenn Ihr das Python-Skript stoppen wollt dann:

strg + c

Das bringt uns gleich zu einem wichtigen Programmcode

try:

    blablabla

except KeyboardInterrupt:

    weiterer Code

    weiterer Code

    sys.exit()

 Wenn ihr nun strg + c drückt wird der "weiterer Code" ausgeführt und das Programm beendet.

Das ist wichtig, falls ihr statt blablabla z.B. while True: verwendet, um eine Endlosschleife zu erhalten :)

Mit strg + c kommt Ihr wieder heraus :) 

---

Python-Skripte automatisch starten:

https://webnist.de/python-script-auf-dem-raspberry-pi-automatisch-starten/

https://webnist.de/autostart-eines-python-programm-auf-dem-raspberry-pi/

Temperatur messen - DS 18b20

 Temoeratur messen mit dem DS 18b20 :

Tutorial:

https://st-page.de/2018/01/20/tutorial-raspberry-pi-temperaturmessung-mit-ds18b20/

Etwas rustikal, aber geht schon :)


Parallele Funktionen / Timer:

*** https://stackoverflow.com/questions/8600161/executing-periodic-actions-in-python ***

https://stackoverflow.com/questions/474528/what-is-the-best-way-to-repeatedly-execute-a-function-every-x-seconds

https://www.raspberrypi.org/forums/viewtopic.php?t=28102

Dienstag, 3. November 2020

Iron Man Ark Reaktor

 Hi Leute,

wir versuchen den Ark Reaktor von Toni Stark unter dem T-Shirt nachzubauen.

Material:

RasperyPi-Zero

Runde Neopixel 24 RGB (https://www.adafruit.com/product/1586)

Spannungswandler Platine (Powerboost 1000C - inkl. Charging) USB-LiPoAkku 

Abmessungen Akku: 5.1 x 6.5 x 0.8 cm

Updates:

Sprachbefehle:

Mikrofon + SW 


Neopixel:

https://github.com/adafruit/Adafruit_NeoPixel

https://cdn-shop.adafruit.com/datasheets/WS2812.pdf

https://learn.adafruit.com/adafruit-neopixel-uberguide/python-circuitpython

https://circuitpython.readthedocs.io/projects/neopixel/en/latest/


***

https://learn.adafruit.com/adafruit-neopixel-uberguide/python-circuitpython

***


https://www.elektronik-kompendium.de/sites/raspberry-pi/2002231.htm

https://thepihut.com/blogs/raspberry-pi-tutorials/using-neopixels-with-the-raspberry-pi


Schritt 2:

Ein/Aus- schalten per Taster:

https://forum-raspberrypi.de/forum/thread/5633-hoch-und-runterfahren-mittels-taster-incl-status-led/



GPIO.setmode(GPIO.Board)    : Verwendet die Nummerierung der Pins!

GPIO.setmode(GPIO.BCM)     : Verwendet die Bezeichnung GPIO xx


Zusätzlich lässt sich über einen weiteren Taster der Modus der LED Anzeige wechsel (Alle an, alle aus, alle auf und abdimmen, Lauflicht)


Da die Neopixel die BCM Codierung verwenden, habe ich auch für die Taster und LED diese Codierung verwendet.


Board | BCM

Pin 5  | GPIO 3            : Taster On/Off

Pin 7  | GPIO 4            : LED

Pin 18 | GPIO 24        : Taster Mode-Wechsel


Taster mit 10k Pullup an 3,3V(Mode-Wechsel) - 5V bei On/Off

LED mit 100 Ohm an 3,3V