Перейти к основному содержимому

Графический интерфейс

Для демонстрации принципов работы обратного маятника на практических занятиях или для визуального отображения состояния обратного маятника часто бывает удобно использовать оконное приложение с графическим пользовательским интерфейсом. Для этого стенда разработанно именно такое приложение с помощью Qt/C++. Ниже представлены инструкция по установке всего, что нужно для запуска приложения, и основные принципы работы с ним.

Прошивка микроконтроллера

Для работы с графическим приложением необходимо загрузить специальную прошивку в микроконтроллер. В предлагаемой прошивке реализованы Energy-Based Control для управления раскачиванием и LQR-регулятор для стабилизации маятника в верхнем вертикальном положении. Для загрузкип рошивки выполните следующие действия:

  • Установите Arduino IDE и настройте все необходимые библиотеки по инструкции.
  • Воспользуйтесь еще одной инструкцией для работы с микроконтроллерным модулем, встроенным в стенд.
  • Скачайте на свой компьютер Github-репозиторий ReactionWheel_InvertedPendulum.
  • Подстыкуйте кабель USB Type-C к компьютеру и к разъему USB, расположенном на задней панели стенда.
  • Откройте файл прошивки, расположенный по адресу ReactionWheel_InvertedPendulum/Firmware/React_wheel_pendulum_practicum/React_wheel_pendulum_practicum.ino.
  • Скомпилируйте программу нажатием на кнопку с символом галочки в верхней части окна Arduino IDE:
sch
  • Если компиляция прошла успешно, и компилятор не выдал никаких ошибок, загрузите программу нажатием кнопки с символом стрелки (находится справа от галочки).

Установка программы RWIP GUI

  • Запустите с правами администратора файл rwip_gui_1.0.0_install.exe, расположенный в папке rwip_gui.
  • Перед вами откроектся окно мастера установки. Следуйте инструкциям на экране для полной установки программы. В процессе установки мы рекомендуем вам отметить пункт Создать значок на Рабочем столе.
  • По завершении установки выберите пункт Запустить RWIP GUI и нажмите кнопку Завершить.

Работа с программой RWIP GUI

При запуске программы перед вами откроется главное окно. Для начала работы необходимо подключиться к стенду. Для этого:

  • в выпадающем списке Последовательный порт выберите нужный COM-порт. Он должен называться COMx (STMicroelectrnics STLink Virtual COM Port), где x - номер вашего порта
sch
  • нажмите кнопку Подключить
sch
примечание

Иногда подключение происходит не с первого раза. Если вы увидели ошибку подключения, проверьте, что выбрали правильный номер порта, и попробуйте подключиться снова.

При успешном подключении становятся доступны все элементы управления, и на графиках начинают отображаться переменные состояния стенда.

sch
  1. Кнопка открытия окна параметров программы. В нём вы можете изменить физические параметры стенда и настроить визуальное представление программы.
  2. Меню подключение к стенду
  3. Решение LQR-задачи на основе введенных значений матриц критерия оптимальности Q и R. В строках ввода Q вводятся диагональные элементы матрицы штрафов по состоянию в следующем порядке: угол стержня, угловая скорость стержня, угловая скорость маховика. Для решения LQR-задачи нужно нажать кнопку Рассчитать. Справа отображаются коэффициенты обратной связи регулятора, полученные путем решения уравнения Риккати.
  4. Параметры управления раскачиванием: k - коэффициент обратной связи энергетического управления; epsilon - порог энергии системы, при котором происходит переключение между режимами раскачивания и стабилизации.
  5. Перевод стенда в режим раскачивания и стабилизации в верхнем вертикальном положении.
  6. Перевод стенда в режим стабилизации в нижнем вертикальном положении.
  7. Остановка выполнения команд и сброс питания с двигателя.
  8. Графики
  9. Пауза/Продолжить - приостановить/запустить отрисовку графиков
  10. Сохранения всех графиков в виде изображений в формате png.
  11. Сохранение всех графиков в виде csv-таблицы. Дальше вы можете использовать её для анализа в других программных пакетах, например, Engee или PlotJuggler.

Стандартный рабочий процесс с программой выглядит следующим образом:

  • подключиться к COM-порту
  • выбрать параметры управления. Для начала можно выбрать: Q = [1,1,1], R = 1, k = 8, epsilon = 0.12.
  • включить управление
  • получить графики
  • сохранить графики для дальнейшего анализа
  • повторить процедуру начиная с выбора коэффициентов