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.

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í:

  • SignalTower.RED
  • SignalTower.GREEN
  • SignalTower.BLUE
  • SignalTower.YELLOW
  • SignalTower.WHITE
  • SignalTower.ALL — Použije akci na všechny barvy.

stát

Použitý světelný vzor:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Světla blikají.

# 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:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Světla blikají.

y

Stav žlutého světla:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Světla blikají.

G

Stav zeleného světla:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Světla blikají.

b

Stav modrého světla:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Světla blikají.

w

Stav bílého světla:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Světla blikají.

# 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

callback

Dříve definovaná funkce, která se provede při stisknutí nárazníku signální věže.

arg

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

callback

Dříve definovaná function, která se provede při uvolnění nárazníku signální věže.

arg

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

smartport

Inteligentní port, ke kterému je připojena signální věž, zapsaný jako Ports.PORTx , kde x je číslo portu.

# Construct a Signal Tower "signal_tower_1" with the
# SignalTower class
signal_tower_1 = SignalTower(Ports.PORT1)