Pioneer
🔔 События
метод
subscribe()
subscribe(callback: callable, event: Event = Event.ALL) -> NoneПодписывает функцию на событие автопилота.
При наступлении события вызывается callback(event). По умолчанию Event.ALL — подписка на все события.
Параметры
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
callback | callable | — | Функция, вызываемая при событии. Принимает объект Event. |
event | Event | Event.ALL | Событие для подписки. |
Возвращает
None — Метод ничего не возвращает.
Пример
subscribe_event.py
from pioneer_sdk2 import Pioneer, Event
def event_activate(event): # функция вызывается при событии
if event == Event.TAKEOFF_COMPLETE: # завершение взлета
drone.led_control(r=0, g=1, b=0) # зеленый свет
elif event == Event.COPTER_LANDED: # завершение посадки
drone.led_control(r=1, g=0, b=0) # красный свет
drone = Pioneer()
drone.subscribe(event_activate, Event.TAKEOFF_COMPLETE)
drone.subscribe(event_activate, Event.COPTER_LANDED)
Примечания
- Callback вызывается из потока обработки сообщений — избегайте тяжёлых операций.