Menara Sinyal#

Perkenalan#

Menara Sinyal adalah perangkat yang menggunakan lampu berwarna untuk menunjukkan status robot. Perangkat ini juga memiliki sakelar tekan terintegrasi yang dapat mendeteksi saat ditekan.

Untuk contoh-contoh di bawah ini, Signal Tower yang dikonfigurasi akan diberi nama signal_tower_1 dan akan digunakan di semua contoh selanjutnya di seluruh dokumentasi API ini ketika merujuk ke SignalTower.

Berikut adalah daftar semua metode yang tersedia:

Pengatur – Mengonfigurasi warna dan pola lampu Menara Sinyal.

  • set_color – Mengatur pola untuk satu atau semua LED Menara Sinyal.

  • set_colors – Mengatur status setiap LED Menara Sinyal.

Para pengguna Getters – Bacalah kondisi bumper Menara Sinyal.

  • pressing – Mengembalikan apakah bumper Menara Sinyal sedang ditekan.

Callback – Jalankan kode saat status bumper Signal Tower berubah.

  • pressed – Mendaftarkan fungsi yang akan dipanggil ketika bumper Menara Sinyal ditekan.

  • released – Mendaftarkan fungsi yang akan dipanggil ketika bumper Menara Sinyal dilepaskan.

Konstruktor – Inisialisasi dan konfigurasikan Menara Sinyal secara manual.

Setter#

set_color#

set_color mengatur pola cahaya satu atau semua LED pada Menara Sinyal. Lampu-lampu ini dapat digunakan untuk melacak posisi robot dalam suatu proyek atau untuk menunjukkan kapan kondisi tertentu terpenuhi.

Usage:
signal_tower_1.set_color(value, state)

Parameter

Keterangan

nilai

Warna lampu yang akan dikontrol:

  • SignalTower.RED
  • SignalTower.GREEN
  • SignalTower.BLUE
  • SignalTower.YELLOW
  • SignalTower.WHITE
  • SignalTower.ALL — Menerapkan aksi ke semua warna.

negara

Pola lampu yang akan diterapkan:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Lampu berkedip menyala dan mati.

# Set the Signal Tower to start blinking the blue LED
signal_tower_1.set_color(SignalTower.BLUE, signal_tower.BLINK)

set_colors#

set_colors mengatur status setiap LED Menara Sinyal. Lampu-lampu ini dapat digunakan untuk melacak posisi robot dalam suatu proyek atau untuk menunjukkan kapan kondisi tertentu terpenuhi.

Usage:
signal_tower_1.set_colors(r, y, g, b, w)

Parameter

Keterangan

R

Status lampu merah:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Lampu berkedip menyala dan mati.

y

Status lampu kuning:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Lampu berkedip menyala dan mati.

G

Status lampu hijau:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Lampu berkedip menyala dan mati.

B

Status lampu biru:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Lampu berkedip menyala dan mati.

w

Status lampu putih:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Lampu berkedip menyala dan mati.

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

Pencari#

pressing#

Menekan pressing akan menghasilkan nilai Boolean yang menunjukkan apakah bumper Menara Sinyal sedang ditekan. Ini dapat digunakan sebagai pemberhentian darurat.

  • True — Bumper Menara Sinyal saat ini sedang dicetak.

  • False — Bumper Menara Sinyal tidak ditekan.

Usage:
signal_tower_1.pressing()

Panggilan balik#

pressed#

pressed mendaftarkan fungsi yang akan dipanggil ketika bumper Menara Sinyal ditekan.

Metode ini mengembalikan sebuah instance dari kelas Event.

Usage:
signal_tower_1.pressed(callback, arg)

Parameter

Keterangan

callback

Sebuah fungsi yang telah didefinisikan sebelumnya yang akan dieksekusi ketika bumper Menara Sinyal ditekan.

arg

Opsional. Sebuah tuple yang berisi argumen untuk diteruskan ke fungsi callback. Lihat Fungsi dengan Parameter untuk informasi lebih lanjut.

# 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 mendaftarkan sebuah fungsi yang akan dipanggil ketika bumper Menara Sinyal dilepaskan.

Metode ini mengembalikan sebuah instance dari kelas Event.

Usage:
signal_tower_1.released(callback, arg)

Parameter

Keterangan

callback

Sebuah fungsi yang telah didefinisikan sebelumnya yang akan dieksekusi ketika bumper Menara Sinyal dilepaskan.

arg

Opsional. Sebuah tuple yang berisi argumen untuk diteruskan ke fungsi callback. Lihat Fungsi dengan Parameter untuk informasi lebih lanjut.

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

Konstruktor#

SignalTower#

SignalTower membuat Menara Sinyal.

SignalTower(smartport)

Parameter

Keterangan

smartport

Port Pintar yang terhubung ke Menara Sinyal, ditulis sebagai Ports.PORTx di mana x adalah nomor port.

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