Ich habe versucht, mit Raspeye 4 (Python Edition) ein signalähnliches Signal zu erzeugen.

Als Anwendung von L Chika habe ich versucht, die Bewegung der Ampel zu reproduzieren.

Dinge vorzubereiten

1. Lassen Sie das Fußgängersignal L flackern

Reproduzieren Sie die Ampel am Zebrastreifen. Versuchen wir es mit "RGB LED".

Verdrahtung

  1. Verbinden Sie das Stecker-Buchse-Kabel des Überbrückungskabels mit ** Pin 11 ** (6. von oben links) von "GPIO".
  2. Setzen Sie die andere Seite in das Steckbrett ein.
  3. Führen Sie ein Bein des Widerstands in dieselbe Reihe wie das Überbrückungskabel ein.
  4. Setzen Sie die ** rote Anodenseite ** der "RGB-LED" (nach dem Aufsetzen der Lichtstreuungskappe) in dieselbe Reihe wie das gegenüberliegende Bein des Widerstands ein.

** <Was ist eine RGB-LED? > ** Es ist eine 4-beinige LED, die Farbe ausdrücken kann. Basierend auf Rot, Grün und Blau können Sie mit dem Schalter auch Lila, Gelb und Hellblau ausgeben. Dieses Mal verwende ich hauptsächlich "RGB LED". Bitte beachten Sie, dass sich die Rolle abhängig von der Länge des Fußes ändert. IMG_3809.jpg

  1. Führen Sie weitere Schritte 1-5 aus. Verbinden Sie zu diesem Zeitpunkt das Stecker-Buchse-Kabel des Überbrückungskabels mit ** Pin 13 ** (6. von oben links) von "GPIO". Fügen Sie außerdem die ** blaue Anodenseite ** der RGB-LED in dieselbe Reihe wie der Widerstand ein. 7. Stecken Sie das Stecker-Buchse-Kabel des Überbrückungskabels in die Minus-Spur und verbinden Sie die andere Seite mit ** Pin 39 ** (zuerst von unten links) von "GPIO". 8. Schalten Sie "1. Fußgängersignal" vom "signalähnlichen Rahmen" aus und befestigen Sie es an der LED. Draht wie dieser. IMG_3805.jpg

Programm

$ sudo nano walk_shingo.py

Füllen Sie Folgendes aus

walk_shingo.py


import RPi.GPIO as GPIO
import time, sys

GPIO.setmode(GPIO.BCM)

PORT_L = 27 #rot
PORT_R = 17 #Blau
GPIO.setup(PORT_L, GPIO.OUT)
GPIO.setup(PORT_R, GPIO.OUT)

try:
    while True:
        GPIO.output(PORT_L, GPIO.LOW) #Grünes Licht
        GPIO.output(PORT_R, GPIO.HIGH)
        time.sleep(5)

        for i in range(10): #Grünes Blinklicht
            GPIO.output(PORT_R, GPIO.HIGH)
            time.sleep(0.2)
            GPIO.output(PORT_R, GPIO.LOW)
            time.sleep(0.2)

        GPIO.output(PORT_L, GPIO.HIGH) #Rotlicht
        GPIO.output(PORT_R, GPIO.LOW)
        time.sleep(5)

except KeyboardInterrupt:
    GPIO.cleanup()
    sys.exit()

Drücken Sie "control" + "X", dann "y" und drücken Sie die Eingabetaste, um zu speichern.

$ python walk_shingo.py

Aktivieren Sie die Ampel mit. Wenn Sie beenden möchten, drücken Sie "Strg" + "C". In diesem Programm wird grünes Licht 5 Sekunden → grünes Licht blinkt 0,2 Sekunden Intervall x 10 Mal → rotes Licht 5 Sekunden wird wiederholt. Fühlen Sie sich frei, von "time.sleep ()" anzupassen.

2. L flackert das Fußgängersignal mit Druckknopf

Verwenden wir hier den Taktschalter als Druckknopf, um ein Fußgängersignal vom Typ Druckknopf zu reproduzieren.

Verdrahtung

Fügen Sie der Verkabelung in 1 oben einen Taktschalter und ein Überbrückungskabel hinzu.

  1. Stecken Sie das Stecker-Buchse-Kabel des Überbrückungskabels in ** Pin 1 ** (das erste links). Setzen Sie die andere Seite in das Steckbrett ein.
  2. Setzen Sie den Taktschalter ein, indem Sie die Nut in die Mitte des Steckbretts legen. Stellen Sie zu diesem Zeitpunkt sicher, dass sich eines Ihrer Beine in derselben Reihe befindet wie das Überbrückungskabel, das mit Pin 1 verbunden ist.
  3. Stecken Sie das Überbrückungskabel zwischen Stecker und Buchse in ** Pin 7 ** (zuerst links). Führen Sie die andere Seite in dieselbe Reihe wie das andere Bein des Taktschalters ein.
  4. Schalten Sie "2. Fußgängersignal (Druckknopf-Typ)" aus dem "signalähnlichen Rahmen" aus und setzen Sie es in die LED ein.

Draht wie dieser. IMG_3804.jpg

Programm

$ sudo nano push_shingo.py

Füllen Sie Folgendes aus

push_shingo.py


import RPi.GPIO as GPIO
import time, sys

GPIO.setmode(GPIO.BCM)

SWITCH = 4 #Taktschalter
PORT_L = 27 #rot
PORT_R = 17 #Blau
GPIO.setup(PORT_L, GPIO.OUT)
GPIO.setup(PORT_R, GPIO.OUT)
GPIO.setup(SWITCH, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)

try:
    while True:
         if (GPIO.input(SWITCH) == GPIO.LOW): #Rotlicht
            GPIO.output(PORT_L, GPIO.LOW)
            GPIO.output(PORT_R, GPIO.HIGH)
         if (GPIO.input(SWITCH) == GPIO.HIGH): #Grünes Licht
            GPIO.output(PORT_L, GPIO.LOW)
            GPIO.output(PORT_R, GPIO.HIGH)
            time.sleep(1)
            GPIO.output(PORT_L, GPIO.HIGH)
            GPIO.output(PORT_R, GPIO.LOW)
            time.sleep(5)
            for i in range(10): #Grünes Blinklicht
                GPIO.output(PORT_L, GPIO.HIGH)
                time.sleep(0.2)
                GPIO.output(PORT_L, GPIO.LOW)
                time.sleep(0.2)

except KeyboardInterrupt:
    GPIO.cleanup()
    sys.exit()

Sparen ...

$ python push_shingo.py

Lauf mit! Grundsätzlich handelt es sich um ein rotes Licht, und wenn der Schalter eingeschaltet wird, blinkt das grüne Licht 5 Sekunden lang → das grüne Licht blinkt alle 10 Sekunden im Abstand von 0,2 Sekunden. Durch Ändern des Signals 1 Sekunde nach Drücken des Schalters kommt die Form der der tatsächlichen Maschine nahe.

3. Lassen Sie das Fahrzeugsignal L-flackern

Als nächstes reproduzieren Sie die Ampel auf der Straße. Diesmal sind Rot und Blau "RGB-LEDs" und Gelb ist eine im Handel erhältliche gelbe LED. Ich denke, Sie können die weiße LED mit einem Marker malen.

Verdrahtung

Entfernen Sie den Taktschalter von der Verkabelung in 2 oben. Fügen Sie einen weiteren Satz LEDs hinzu und so weiter.

(0. Bei Verwendung einer gelben LED ... Ersetzen Sie "RGB LED" in "PORT_R" durch gelbe LED. Lassen Sie zu diesem Zeitpunkt ein Leerzeichen neben beiden Füßen der LED. )

  1. Stecken Sie das Stecker-Buchse-Kabel des Überbrückungskabels in ** Pin 15 ** (8. oben links). Setzen Sie die andere Seite in dieselbe Reihe wie den Widerstand ein.
  2. Setzen Sie den Widerstand in die gleiche Reihe wie die ** blaue Anode ** der "RGB-LED" ein.
  3. Verbinden Sie das Stecker-Stecker-Überbrückungskabel aus derselben Reihe wie die ** Kathode ** mit der Minus-Spur.
  4. Schalten Sie "3. Fahrzeugsignal" am "Signalähnlichen Rahmen" aus und befestigen Sie es an der LED.

Draht wie dieser. IMG_3811.png

Programm

$ sudo nano car_shingo.py

Füllen Sie Folgendes aus

car_shingo.py


import RPi.GPIO as GPIO
import time, sys

GPIO.setmode(GPIO.BCM)


PORT_L = 17 #rot
PORT_C = 27 #Gelb
PORT_R = 22 #Blau
GPIO.setup(PORT_L, GPIO.OUT)
GPIO.setup(PORT_C, GPIO.OUT)
GPIO.setup(PORT_R, GPIO.OUT)

try:
    while True:
        GPIO.output(PORT_L, GPIO.LOW) #Grünes Licht
        GPIO.output(PORT_C, GPIO.LOW)
        GPIO.output(PORT_R, GPIO.HIGH)
        time.sleep(4)
        GPIO.output(PORT_L, GPIO.LOW) #Gelbes Licht
        GPIO.output(PORT_C, GPIO.HIGH)
        GPIO.output(PORT_R, GPIO.LOW)
        time.sleep(0.5)
        GPIO.output(PORT_L, GPIO.HIGH) #Rotlicht
        GPIO.output(PORT_C, GPIO.LOW)
        GPIO.output(PORT_R, GPIO.LOW)
        time.sleep(4)

except KeyboardInterrupt:
    GPIO.cleanup()
    sys.exit()

undefined

Speichern Sie es und verwenden Sie den folgenden Befehl, um es zum Leuchten zu bringen.

$ python car_shingo.py

In diesem Programm wird grünes Licht 4 Sekunden → gelbes Licht 0,5 Sekunden → rotes Licht 4 Sekunden wiederholt.

Mehr Anwendung!

Einige Ampeln bewegen sich, indem sie das Auto mit einem Sensor erkennen. Es kann eine gute Idee sein, einen Sensor an der Raspeltorte anzubringen und es zu versuchen. Wenn Sie eine etwas kleinere LED verwenden und diese in die Welt der Diorama- und Eisenbahnmodelle integrieren, können Sie sie anscheinend realistischer genießen.

Signalartiger Rahmen

Es ist ein Rahmen, der es wie eine Ampel aussehen lässt. Wenn Sie mit A4 entsprechend der Seite drucken, hat es die richtige Größe. Bitte genießen Sie es realistischer damit.

Recommended Posts