📊 Телеметрия get_accel.py

Ускорение по осям X, Y, Z

get_telemetry/get_accel.py

Бесконечно читает ускорение через get_accel() и печатает три компоненты вектора ускорения.

Минимальный пример чтения одного датчика. Создаётся соединение с дроном, затем в бесконечном цикле вызывается get_accel() и результат печатается в терминал с паузой 0.5 секунды. Соединение закрывается в finally при остановке программы сочетанием Ctrl+C.

Как работает

  1. Создать объект Pioneer() — устанавливается соединение.
  2. В цикле while True вызвать get_accel().
  3. Вывести компоненты ускорения accel[0..2].
  4. Сделать паузу time.sleep(0.5).
  5. В finally вызвать close_connection().

Используемые методы SDK

Ключевые параметры

ПараметрЗначениеОписание
sleep0.5 сПериод опроса датчика.

Запуск

cd get_telemetry
python3 get_accel.py

Результат

  • Строки вида accel_x=…, accel_y=…, accel_z=… каждые 0.5 с.

Примечания

  • Для остановки нажмите Ctrl+C.

Полный исходный код

Показать get_accel.py
from pioneer_sdk2 import Pioneer        # импортируем класс Pioneer из библиотеки pioneer_sdk2
import time                             # библиотека time содержит функции для работы со временем

drone = Pioneer()                       # создаем экземпляр класса Pioneer, устанавливаем соединение

try:                                    # основной код находится внутри блока try
    while True:                         # запускаем бесконечный цикл
        accel = drone.get_accel()       # получаем ускорение дрона

        print(
            f"accel_x={accel[0]},",     # ускорение по оси X
            f"accel_y={accel[1]},",     # ускорение по оси Y
            f"accel_z={accel[2]}"       # ускорение по оси Z
        )

        time.sleep(0.5)                 # ставим паузу на 0.5 секунды

finally:                                # блок finally выполнится при завершении программы
    drone.close_connection()            # закрываем соединение