Сигнальна вежа#
Вступ#
Сигнальна вежа – це пристрій, який використовує кольорові індикатори для відображення стану робота. Він також має вбудований вимикач-бампер, який може виявляти його натискання.
У наведених нижче прикладах налаштована Signal Tower матиме назву signal_tower_1 та використовуватиметься у всіх наступних прикладах цієї документації API під час посилання на SignalTower.
Нижче наведено список усіх доступних методів:
Сеттери – налаштуйте кольори та шаблони підсвічування сигнальної вежі.
set_color– Встановлює шаблон для одного або всіх світлодіодів сигнальної вежі.set_colors– Встановлює стан кожного світлодіода сигнальної вежі.
Геттери – Зчитують стан бампера сигнальної вежі.
pressing– Повертає, чи натиснуто бампер Signal Tower на даний момент.
Зворотні виклики – Запускають код, коли стан бампера Signal Tower змінюється.
pressed– Реєструє функцію, яка викликається при натисканні бампера Signal Tower.released– Реєструє функцію, яка викликається при звільненні бампера Signal Tower.
Конструктори – ініціалізують та налаштовують сигнальну вежу вручну.
SignalTower– Створіть сигнальну вежу.
Сеттери#
set_color#
set_color встановлює світловий шаблон одного або всіх світлодіодів на сигнальній вежі. Ці світлодіоди можна використовувати для відстеження положення робота в проекті або для індикації виконання певних умов.
Usage:
signal_tower_1.set_color(value, state)
Параметр |
Опис |
|---|---|
значення |
Колір світла для керування:
|
стан |
Застосовуваний шаблон світлового сповіщення:
|
# Set the Signal Tower to start blinking the blue LED
signal_tower_1.set_color(SignalTower.BLUE, signal_tower.BLINK)
set_colors#
set_colors встановлює стан кожного світлодіода сигнальної вежі. Ці індикатори можна використовувати для відстеження положення робота в проекті або для індикації виконання певних умов.
Usage:
signal_tower_1.set_colors(r, y, g, b, w)
Параметр |
Опис |
|---|---|
р |
Стан червоного світла:
|
у |
Стан жовтого світла:
|
г |
Стан зеленого світла:
|
б |
Стан синього світла:
|
w |
Стан білого світла:
|
# 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)
Геттери#
pressing#
Натискання pressing повертає логічне значення, яке вказує, чи натискається бампер сигнальної вежі. Це можна використовувати для аварійної зупинки.
True— Наразі триває пресування бампера сигнальної вежі.False— Бампер сигнальної вежі не натискається.
Usage:
signal_tower_1.pressing()
Зворотні виклики#
pressed#
pressed реєструє функцію, яка викликається при натисканні на бампер сигнальної вежі.
Цей метод повертає екземпляр класу Event.
Usage:
signal_tower_1.pressed(callback, arg)
Параметри |
Опис |
|---|---|
|
Раніше визначена функція, яка виконується при натисканні на бампер сигнальної вежі. |
|
Необов’язково. Кортеж tuple, що містить аргументи для передачі функції зворотного виклику. Див. Функції з параметрами для отримання додаткової інформації. |
# 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 реєструє функцію, яка викликається, коли бампер сигнальної вежі відпущено.
Цей метод повертає екземпляр класу Event.
Usage:
signal_tower_1.released(callback, arg)
Параметри |
Опис |
|---|---|
|
Раніше визначена function, яка виконується, коли бампер сигнальної вежі відпускається. |
|
Необов’язково. Кортеж tuple, що містить аргументи для передачі функції зворотного виклику. Див. Функції з параметрами для отримання додаткової інформації. |
# 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)
Конструктори#
SignalTower#
SignalTower створює сигнальну вежу.
SignalTower(smartport)
Параметр |
Опис |
|---|---|
|
Розумний порт, до якого підключена сигнальна вежа, записується як |
# Construct a Signal Tower "signal_tower_1" with the
# SignalTower class
signal_tower_1 = SignalTower(Ports.PORT1)