Signální věž#
Zavedení#
Signální věž je zařízení, které pomocí barevných světel zobrazuje stav robota. Má také vestavěný nárazníkový spínač, který dokáže detekovat jeho stisknutí.
V níže uvedených příkladech bude nakonfigurovaná Signal Tower pojmenována signal_tower_1 a bude použita ve všech následujících příkladech v této dokumentaci k API při odkazování na SignalTower.
Níže je uveden seznam všech dostupných metod:
Setters – Konfigurace barev a vzorů světel signální věže.
set_color– Nastaví vzor pro jednu nebo všechny LED diody signální věže.set_colors– Nastaví stav každé LED diody signální věže.
Gettery – Přečtěte si stav nárazníku signální věže.
pressing– Vrátí, zda je nárazník Signal Tower aktuálně stisknutý.
Zpětná volání – Spustí kód, když se změní stav nárazníku Signal Tower.
pressed– Registruje funkci, která se má volat při stisknutí nárazníku Signal Tower.released– Registruje funkci, která se má zavolat při uvolnění nárazníku Signal Tower.
Konstruktory – Ruční inicializace a konfigurace signální věže.
SignalTower– Vytvořte signální věž.
Setrové#
set_color#
set_color nastavuje světelný vzorec jedné nebo všech LED diod na signální věži. Tato světla lze použít ke sledování, kde se robot v projektu nachází, nebo k indikaci splnění určitých podmínek.
Usage:
signal_tower_1.set_color(value, state)
Parametr |
Popis |
|---|---|
hodnota |
Barva světla k ovládání:
|
stát |
Použitý světelný vzor:
|
# Set the Signal Tower to start blinking the blue LED
signal_tower_1.set_color(SignalTower.BLUE, signal_tower.BLINK)
set_colors#
set_colors nastavuje stav každé LED diody signální věže. Tato světla lze použít ke sledování, kde se robot v projektu nachází, nebo k indikaci splnění určitých podmínek.
Usage:
signal_tower_1.set_colors(r, y, g, b, w)
Parametr |
Popis |
|---|---|
r |
Stav červeného světla:
|
y |
Stav žlutého světla:
|
G |
Stav zeleného světla:
|
b |
Stav modrého světla:
|
w |
Stav bílého světla:
|
# 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)
Gettery#
pressing#
pressing vrátí booleovskou hodnotu označující, zda je nárazník signální věže aktuálně stisknut. Toto lze použít jako nouzové zastavení.
True— Nárazník signální věže se právě lisuje.False— Nárazník signální věže není stlačen.
Usage:
signal_tower_1.pressing()
Zpětná volání#
pressed#
pressed registruje funkci, která se volá při stisknutí nárazníku signální věže.
Tato metoda vrací instanci třídy Event.
Usage:
signal_tower_1.pressed(callback, arg)
Parametry |
Popis |
|---|---|
|
Dříve definovaná funkce, která se provede při stisknutí nárazníku signální věže. |
|
Volitelné. N-tice tuple obsahující argumenty, které se mají předat zpětné funkci. Další informace naleznete v části Funkce s parametry. |
# 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 registruje funkci, která má být volána při uvolnění nárazníku signální věže.
Tato metoda vrací instanci třídy Event.
Usage:
signal_tower_1.released(callback, arg)
Parametry |
Popis |
|---|---|
|
Dříve definovaná function, která se provede při uvolnění nárazníku signální věže. |
|
Volitelné. N-tice tuple obsahující argumenty, které se mají předat zpětné funkci. Další informace naleznete v části Funkce s parametry. |
# 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)
Konstruktéři#
SignalTower#
SignalTower vytvoří signální věž.
SignalTower(smartport)
Parametr |
Popis |
|---|---|
|
Inteligentní port, ke kterému je připojena signální věž, zapsaný jako |
# Construct a Signal Tower "signal_tower_1" with the
# SignalTower class
signal_tower_1 = SignalTower(Ports.PORT1)