Скрипт LUA_script_start

Скрипт LUA_script_start служит для ознакомления с методом управления LUA-скриптом, заранее загруженного на квадрокоптер Пионер Мини.

Разбор скрипта

  1. Импортируем необходимые библиотеки и определяем их назначение:

  • from pioneer_sdk import Pioneer – класс Pioneer из pioneer_sdk, отвечающий за взаимодействие с коптером;
 from pioneer_sdk import Pioneer
  1. Далее используем конструкцию if __name__ == „__main__“:, которая является точкой входа в программу. Всё, что идёт до этого условия, выполнятся всегда: и при вызове в качестве модуля и при вызове, как исполняемый файл. Подробное описание данной конструкции

 if __name__ == '__main__':
  1. Создаём экземпляр класса Pioneer, чтобы начать работать с квадрокоптером. Подробное описание классов в Python

 pioneer_mini = Pioneer()
  1. Далее используем конструкцию try..except. Подробное описание данной конструкции.

  2. В блоке try входим в цикл с помощью while True. В теле цикла, в переменную cmd сохраняем введённое с клавиатуры значение. С помощью конструкции if..elif выполняем проверку значения на равенство строкам «start» и «stop».

C помощью метода .lua_script_control() запускаем и останавливаем выполнение скрипта в зависмости от переданного в метод аргумента(start/stop).

 try:
     while True:
         cmd = input()
         if cmd == "start": # Если введённое значение == "start"
             pioneer_mini.lua_script_control("Start") # Выполнить запуск LUA-скрипта
         elif cmd == "stop": # Если введённое значение == "stop"
             pioneer_mini.lua_script_control("Stop") # Остановить работу LUA-скрипта
  1. В блоке except будем обрабатывать исключение KeyboardInterrupt. KeyboardInterrupt - исключение срабатывающее при прерывании программы пользователем (сочетанием клавиш Ctrl+C либо нажатием кнопки «Stop» при работе в IDE PyCharm).

 except KeyboardInterrupt:
   pioneer_mini.lua_script_control("Stop") # Останавливаем работу LUA-скрипта
   pioneer_mini.close_connection() # Закрываем соединение
   del pioneer_mini # удаляем экземпляр класса Pioneer