Steuerung einer externen LED mit einem Raspberry Pi und GPIO Pins

In diesem Beitrag werden wir die Raspberry Pi GPIO-Pins untersuchen, indem wir ein GPIO-Programm „Hello World“ erstellen, das zu einer blinkenden roten LED führt. Wir werden die Programmiersprache Python verwenden. Ich verwende einen kopflosen Raspberry Pi Zero WH (drahtlos mit gelöteten Headern) mit Raspbian Stretch Lite (Raspberry Pi-Betriebssystem mit einem minimalen Bild basierend auf Debian Stretch).

Ich werde mit meinem kopflosen sshPi über scpBefehle sprechen und die erforderlichen Dateien von meinem Mac auf den Pi übertragen . Ich gehe davon aus, dass Sie Ihren Raspberry Pi mit installiertem Raspbian-Betriebssystem zum Laufen gebracht haben. Wenn nicht, gibt es im Internet viele Artikel, in denen beschrieben wird, wie Sie Ihren Pi einrichten und Raspbian installieren, einschließlich der offiziellen Raspberry Pi-Dokumentation.

Dinge, die du brauchen wirst:

  • 1 x Raspberry Pi (ich verwende das Pi Zero WH-Modell)
  • 1 x Brotbrett
  • 1 x rotes LED-Licht
  • 1 x 330 Ohm Widerstand
  • 2 x Überbrückungskabel zwischen Buchse und Stecker

Konfiguration der GPIO-Pins

GPIO steht für General Purpose Input Output . Mit Hilfe von GPIO-Pins kann ein Raspberry Pi externe elektronische Komponenten verbinden und mit diesen interagieren. Neuere Raspberry Pi-Modelle (Pi 3, Pi Zero, Pi W und Pi WH-Modelle usw.) enthalten 40 GPIO-Pins. Jeder Stift kann ein- oder ausschalten, oder geht HIGHoder LOWin elektronischer Hinsicht. Wenn der Pin ist HIGH, gibt er 3,3 Volt aus, wenn der Pin ist LOW, ist er ausgeschaltet.

In unserem Beispiel verwenden wir pin 6(Boden) und pin 25. Weitere Informationen zu den GPIO-Pins in Raspberry Pi finden Sie unter pinout.xyz.

Schaltung einrichten

Sie sollten den Pi ausschalten, während Sie die Schaltung aufbauen. Wir erstellen eine Schaltung wie in der folgenden Abbildung dargestellt:

Hinweis : Der Widerstand im Bild hat 220 Ohm, aber ich habe 330 Ohm in meiner Schaltung verwendet.

  1. Verwenden Sie ein Überbrückungskabel von Buchse zu Stecker, um pin 6(Masse) (schwarzes Kabel in der Abbildung oben) mit der negativen Reihe des Steckbretts zu verbinden.
  2. Verwenden Sie einen anderen Jumper zwischen Buchse pin 25und Stecker, um den GPIO mit dem durch Zeile Aund Spalte 12auf dem Steckbrett dargestellten Punkt zu verbinden (blaues Kabel im Bild oben).
  3. Ein Ende eines 330 - Ohm - Widerstand mit der negativen Reihe (die Reihe , die in grün hervorgehoben wird , wo das schwarze Kabel oben zuvor verbunden) und das andere Endes einer Verbindung zu dem Punkt für Zeile dargestellt CSpalte 11auf dem Steckbrett wie oben gezeigt.
  4. Das kürzere Ende der LED ist das negative Ende und das längere ist das positive Ende. Das längere Ende sollte immer mit einer höheren Spannung (dh einem höheren Potential) an den Punkt im Stromkreis angeschlossen werden. Das kürzere Ende der LED ist pin 25über das blaue Kabel mit einem GPIO (das 3,3 V ausgeben kann) verbunden, und das längere Ende ist pin 6über das schwarze Kabel mit mit der Masse verbunden (die 0 V beträgt und wie der Minuspol der Batterie wirkt) ein Widerstand dazwischen.

Widerstand

In Anbetracht dessen, dass ich vor einiger Zeit (ca. 4 bis 5 Jahre) Einführungskurse in Elektrotechnik und Elektronik besucht hatte, hatte ich zwei Fragen, auf die ich Antworten brauchte. Bitte nehmen Sie mit mir Kontakt auf, weil ich in diesem Zusammenhang naiv bin.

  1. Warum brauchen wir einen Widerstand in unserer Schaltung?
  2. Wie bestimmen wir, wie viele Ohm (das Maß für den elektrischen Widerstand) der Widerstand sein soll?

Ein Widerstand ist erforderlich, um die zusätzliche elektrische Energie (Spannung) vom Raspberry Pi abzuleiten. Raspberry Pi ist für eine Stromversorgung von 50 mA bei 3,3 V ausgelegt. Angenommen, unsere rote LED kann eine Durchlassspannung (Vorwärtsspannung ist die „negative Spannung“, die von der LED verwendet wird, wenn sie leuchtet) von etwa 2 V haben und verbraucht 4 mA Strom. Die restlichen 1,3 V sollten also vom Widerstand abgeführt werden.

Mit Ohmschen Gesetz V = IR, R= (3.3V - 2V) / (4/1000)das kommt auf etwa 325 ohms- so empfehle ich einen mit 330 Ohm Widerstand .

Ich habe dies aus einer Diskussion im Raspberry Pi-Forum herausgefunden.

Mit Python die LED blinken lassen

Nachdem wir eine vollständige Schaltung haben, besteht der nächste Teil darin, die GPIO-Ports so zu programmieren, dass die Magie entsteht: die LED zum Blinken zu bringen. Wir werden den Ausgang von GPIO verwenden pin 25, um die LED zum Blinken zu bringen.

Starten Sie Ihren Pi und stellen Sie mit ssh eine Verbindung her. Verwenden Sie im Terminal den folgenden Befehl, um die Python-Bibliothek zu installieren gpiozero. Die gpiozeroBibliothek macht das Arbeiten mit GPIO-Pins und angeschlossenen externen Komponenten sehr einfach.

Geben Sie Folgendes ein, um die Python-Bibliothek zu installieren sudo apt-get install python3-gpiozero.

Jetzt werden wir Python-Code ausführen. Speichern Sie den folgenden Code in einer Datei mit dem Namen auf Ihrem Pi-Dateisystem blink1.py. Das Skript schaltet im Grunde die angeschlossene LED ein pin 25, schläft 1 Sekunde lang, schaltet dann die LED aus und schläft erneut 1 Sekunde lang. Dies geschieht kontinuierlich in einer Schleife, bis das Programm beendet ist (Drücken von ctrl+ c).

Wechseln Sie nun vom Terminal in das Verzeichnis, in dem das Skript gespeichert ist, und führen Sie es mit dem folgenden Befehl aus : python3 blink1.py.

Die rote LED blinkt folgendermaßen:

gpiozeroMit einem ähnlichen Setup können wir viele lustige Dinge erstellen . Schauen Sie sich die Dokumentation an, gpiozerodie einige interessante Beispiele zeigt. Versuchen Sie, ein Ampelsystem zu bauen.

Ursprünglich veröffentlicht auf shahbaz.co am 7. April 2018.