Signalturm#
Einführung#
Der Signalturm ist ein Gerät, das mithilfe farbiger Lichter den Status des Roboters anzeigt. Er verfügt außerdem über einen eingebauten Stoßschalter, der erkennt, wenn er gedrückt wird.
In den folgenden Beispielen wird der konfigurierte Signal Tower als signal_tower_1 bezeichnet und in allen nachfolgenden Beispielen in dieser API-Dokumentation verwendet, wenn auf SignalTower Klassenmethoden verwiesen wird.
Nachfolgend finden Sie eine Liste aller verfügbaren Methoden:
Einsteller – Konfigurieren Sie die Lichtfarben und -muster des Signalturms.
set_color– Legt das Muster für eine oder alle Signal Tower LEDs fest.set_colors– Legt den Zustand jeder Signalturm-LED fest.
Empfänger – Beachten Sie den Zustand des Signalturm-Stoßfängers.
pressing– Gibt zurück, ob der Signal Tower Bumper aktuell gedrückt ist.
Rückruffunktionen – Code wird ausgeführt, wenn sich der Status des Signalturm-Stoßfängers ändert.
pressed– Registriert eine Funktion, die aufgerufen werden soll, wenn der Signal Tower Bumper gedrückt wird.released– Registriert eine Funktion, die aufgerufen werden soll, wenn der Signalturm-Stoßdämpfer losgelassen wird.
Konstrukteure – Signalturm manuell initialisieren und konfigurieren.
SignalTower– Einen Signalturm erstellen.
Setzer#
set_color#
Mit dem Befehl set_color wird das Lichtmuster einer oder aller LEDs am Signalturm festgelegt. Diese Leuchten können verwendet werden, um die Position des Roboters in einem Projekt zu verfolgen oder um anzuzeigen, wann bestimmte Bedingungen erfüllt sind.
Usage:
signal_tower_1.set_color(value, state)
Parameter |
Beschreibung |
|---|---|
Wert |
Die zu steuernde Lichtfarbe:
|
Zustand |
Das anzuwendende Lichtmuster:
|
# Set the Signal Tower to start blinking the blue LED
signal_tower_1.set_color(SignalTower.BLUE, signal_tower.BLINK)
set_colors#
Der Befehl set_colors legt den Zustand jeder LED am Signalturm fest. Diese LEDs können verwendet werden, um die Position des Roboters in einem Projekt zu verfolgen oder um anzuzeigen, wann bestimmte Bedingungen erfüllt sind.
Usage:
signal_tower_1.set_colors(r, y, g, b, w)
Parameter |
Beschreibung |
|---|---|
R |
Zustand der roten Ampel:
|
y |
Zustand des gelben Lichts:
|
G |
Zustand für grünes Licht:
|
B |
Der Zustand des blauen Lichts:
|
w |
Zustand des weißen Lichts:
|
# Turn on all LEDs
signal_tower_1.set_colors(SignalTower.ON, SignalTower.ON, SignalTower.ON, SignalTower.ON, SignalTower.ON)
# Turn on just the red LED
signal_tower_1.set_colors(SignalTower.ON, SignalTower.OFF, SignalTower.OFF, SignalTower.OFF, SignalTower.OFF)
Getter#
pressing#
pressing wird ein boolescher Wert zurückgegeben, der angibt, ob der Stoßfänger des Signalturms gerade betätigt wird. Dies kann als Notstopp verwendet werden.
True— Der Stoßfänger des Signalturms wird gerade gedrückt.False— Der Stoßfänger des Signalturms wird nicht gedrückt.
Usage:
signal_tower_1.pressing()
Rückrufe#
pressed#
pressed registriert eine Funktion, die aufgerufen werden soll, wenn der Stoßfänger des Signalturms gedrückt wird.
Diese Methode gibt eine Instanz der Klasse Event zurück.
Usage:
signal_tower_1.pressed(callback, arg)
Parameter |
Beschreibung |
|---|---|
|
Eine zuvor definierte Funktion, die ausgeführt wird, wenn der Stoßfänger des Signalturms gedrückt wird. |
|
Optional. Ein Tupel, das Argumente enthält, die an die Callback-Funktion übergeben werden sollen. Weitere Informationen finden Sie unter Funktionen mit Parametern. |
# Define a function tower_button_pressed()
def tower_button_pressed():
# Print that the Signal Tower's button was pressed
# to the Brain's screen.
brain.screen.print("button pressed")
# Run tower_button_pressed when the Signal Tower's
# button is pressed.
signal_tower_1.pressed(tower_button_pressed)
released#
released registriert eine Funktion, die aufgerufen werden soll, wenn der Stoßfänger des Signalturms losgelassen wird.
Diese Methode gibt eine Instanz der Klasse Event zurück.
Usage:
signal_tower_1.released(callback, arg)
Parameter |
Beschreibung |
|---|---|
|
Eine zuvor definierte Funktion, die ausgeführt wird, wenn der Stoßfänger des Signalturms losgelassen wird. |
|
Optional. Ein Tupel, das Argumente enthält, die an die Callback-Funktion übergeben werden sollen. Weitere Informationen finden Sie unter Funktionen mit Parametern. |
# Define a function tower_button_released()
def tower_button_released():
# Print that the Signal Tower's button was released
# to the Brain's screen.
brain.screen.print("button released")
# Run tower_button_released when the Signal Tower's
# button is released.
signal_tower_1.released(tower_button_released)
Konstruktoren#
SignalTower#
SignalTower erzeugt einen Signalturm.
SignalTower(smartport)
Parameter |
Beschreibung |
|---|---|
|
Der Smart Port, an den der Signal Tower angeschlossen ist, wird als |
# Construct a Signal Tower "signal_tower_1" with the
# SignalTower class
signal_tower_1 = SignalTower(Ports.PORT1)