Автор: Christian Sundin, Filip Thortensson
Перевод: А. В. Суков.
Источник: Autonomous balancing robot. Department of Signals and Systems, Chalmers university of technology, Goteborg, Sweden, 2012.
Основная цель состоит в том, чтобы спроектировать и построить робота, который будет балансировать на двух колесах, и он должен быть в состоянии нести нагрузку вроде небольшой миски конфет. Робот должен уметь работать самостоятельно, без какого-либо руководителя. После нажатия на кнопку пуск робот должен быть автономным. Он также должен быть небольшим, чтобы не нуждаться в большом количестве места, легко переносимым и достаточно гибким, чтобы его можно было показать на небольшом пространстве, доступом на выставке. Компоненты должны быть легко просматриваемыми для зрителей. Робот должен:
• уметь балансировать на двух колесах;
• быть в состоянии перевезти небольшой груз;
• быть небольшим, легко переносимым;
• быть стабильным и не делать каких-либо больших нежелательных движений;
• быть в состоянии двигаться на маленьком столике, не падая с краёв;
• быть в состоянии обнаруживать и взаимодействовать с людьми;
• стоить меньше, чем 5000 SEK.
Для повышения интереса ожидаемой аудитории он должен быть построен из простых частей, подходящих для хобби, которые доступны для обычного человека.
Для выбранных деталей и для возможности создания проекта в заданные сроки были установлены следующие ограничения.
Из-за того, что обнаружение человека является очень обширной областью, использование обработки изображения камеры для достижения этой цели будет вынесено за рамки данного проекта. Таким образом, ограничения по обнаружению человека будет состоять в том, что робот будет использовать датчик расстояния для обнаружения объектов перед ним и останавливаться на заданном расстоянии. Затем, чтобы определить, является объект перед ним человеком или стеной, следует использовать инфракрасный датчик температуры и реагировать соответствующим образом.
Стол не должен быть чёрного или неотражающего света, так как в данном случае датчики расстояния робота для обнаружения края стола не будут работать. Он также будет горизонтальным и стабильным, это означает, что он не будет двигаться, когда колеса вращаются. Стол также будет не скользким.
Датчики расстояния до стола будут работать на расстояниях от 0 до 10 см. Они установлены на расстоянии 6 см от стола, но расстояние изменится, когда робот будет балансировать и наклоняться. Инфракрасный датчик для идентификации человека будет работать на расстоянии от 10 до 80 см, и не будет обнаруживать объекты черного цвета или человека, носящего чёрную одежду.
Для стабилизации робота было рассмотрено и протестировано несколько алгоритмов управления. Первый – это ПИД-регулятор, который использует только переменную по обратной связи – угол наклона. Моделирование и тестирование показало, что, хотя робот и устойчив относительно вращения наклона, малые возмущения в конечном итоге могут привести к большим изменениям в его положении.
Для того, чтобы преодолеть эти проблемы, был разработан ЛКР-регулятор. В отличии от ПИД, ЛКР-регулятор использует все переменные состояния (угол наклона, угловую скорость, положение и линейную скорость), чтобы рассчитать управляющее воздействие. Это позволяет роботу держать позицию и угол наклона в требуемых значениях.
Конструирование ЛКР-регулятора начинается с передачи линеаризованной модели системы в дискретном виде. Далее, матрицы Q и R устанавливаются в начальное значение, и затем регулируются. В конце, используя в пакете Matlab функцию dlqr, получаются значения усилителя К по обратной связи. Результаты построенного ЛКР-регулятора изображены на рисунке 3.
Рисунок 3 – Реакция системы, управляемой ЛКР-регулятором при отклонении от позиции в 1 метр и начальными условиями по углу в 17 градусов
Преимущества использования ЛКР-регулятора лучше всего наблюдаются при стабилизации робота на склоне. ПИД-регулятор стабилизирует угол наклона, но робот вскоре начинает движение вниз по склону и увеличивает свою скорость до тех пор, пока управляющее воздействие не становится слишком большим и робот падает. ЛКР-регулятор, с другой стороны, обеспечивает желаемое положение со смещением и углом наклона даже когда присутствует возмущающее воздействие (рис. 4).
Рисунок 4 – Реакция системы, управляемой ЛКР-регулятором при наклоне в 15 градусов и начальными условиями по углу в 15 градусов и отклонению от позиции в 2 метра
Был успешно разработан и промоделирован фаззи-регулятор, но из-за повышенной сложности его применения в среде микроконтроллера (в сравнении с другими регуляторами) он не был реализован и протестирован на реальной платформе.
Рисунок 5 – Реакция системы, управляемой фаззи-регулятором при отклонении от позиции в 7 метров и начальными условиями по углу в 17 градусов