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.
SignalTower– Buat Menara Sinyal.
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:
|
negara |
Pola lampu yang akan diterapkan:
|
# 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:
|
y |
Status lampu kuning:
|
G |
Status lampu hijau:
|
B |
Status lampu biru:
|
w |
Status lampu putih:
|
# 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 |
|---|---|
|
Sebuah fungsi yang telah didefinisikan sebelumnya yang akan dieksekusi ketika bumper Menara Sinyal ditekan. |
|
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 |
|---|---|
|
Sebuah fungsi yang telah didefinisikan sebelumnya yang akan dieksekusi ketika bumper Menara Sinyal dilepaskan. |
|
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 |
|---|---|
|
Port Pintar yang terhubung ke Menara Sinyal, ditulis sebagai |
# Construct a Signal Tower "signal_tower_1" with the
# SignalTower class
signal_tower_1 = SignalTower(Ports.PORT1)