Я буду краток и четок, чтобы даже начинающий читатель получил представление о том, что скрывается за беспилотным автомобилем. Итак, давайте погрузимся прямо в это.

Что такое PID и зачем он нужен?

Это алгоритм управления, который позволяет вашей системе следовать желаемой команде. Встречается почти во всех промышленных приложениях. Основная идея ПИД-регулятора заключается в установке/настройке пропорционального, производного и интегрального усиления (константы AKA). Он обеспечивает возможность автоматического поддержания заданного значения и компенсации изменений в процессе и окружающей среде.

Вот как выглядит типичная структура PID.

Блок-схема системы ПИД-регулирования с обратной связью. Здесь τ(t) — уставка или желаемое значение, а y(t) — значение переменной, известной как переменная процесса (PV). Значение PV рассчитывается как PV = y(t) : e(t) = τ(t) -y(t), и корректирующее действие применяется на основе пропорционального, интегрированного и отклонения правила. Этот контроллер предпринимает корректирующие действия, регулируя управляющую переменную (CV) u(t).

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

Постановка задачи

Наше автономное транспортное средство должно следовать определенной траектории/пути. Рассмотрим случай автомобиля и разделим задачу на две части:

Продольный контроль и боковой контроль

Продольный контроль:

Мы удостоверяемся, что можем контролировать скорость автомобиля, позволяя ему следовать заданному профилю скорости. Мы предполагаем, что нет ошибки смещения/пересечения пути, что означает, что наше транспортное средство точно следует намеченному пути. Нас интересует только скорость, с которой автомобиль должен разогнаться, чтобы достичь желаемого положения. Очень простая идея состоит в том, чтобы уменьшить скорость автомобиля там, где кривизна пути больше, и наоборот.

Боковой контроль:

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

Мы можем разделить боковое управление еще на три приема управления, учитывающие кинематику системы, которые мы ранее пропустили.

Эти алгоритмы управления называются Pure Pursuit, Stanley и MPC controller.

Контроллер Pure Pursuit

Чистое преследование — это контроллер отслеживания геометрического пути. Контроллер отслеживания геометрического пути — это любой контроллер, который отслеживает опорный путь, используя только геометрию кинематики транспортного средства и опорный путь. Контроллер Pure Pursuit использует упреждающую точку, которая представляет собой фиксированное расстояние на контрольном пути перед транспортным средством следующим образом. Транспортное средство должно перейти к этой точке, используя угол поворота рулевого колеса, который нам нужно вычислить.

Целевая точка выбрана красной точкой на рисунке выше. А расстояние между задней осью и целевой точкой обозначается как ld(расстояние просмотра вперед). Наша цель — заставить автомобиль поворачивать под правильным углом, а затем перейти к этой точке. Таким образом, фигура геометрического соотношения выглядит следующим образом: угол между направлением движения автомобиля и линией обзора вперед обозначается как α. Потому что транспортное средство является твердым телом и движется по кругу. Мгновенный центр вращения (ICR) этой окружности показан следующим образом, а радиус обозначен как R.

Формула чистого преследования

Из закона синусов:

k - кривизна. Используя модель велосипеда (если вы не имеете представления о кинематической модели велосипеда, вы можете обратиться к другой статье под названием «Простое понимание кинематической модели велосипеда»),

Таким образом, угол поворота δ можно рассчитать как:

Контроллер чистого преследования представляет собой простое управление. Он игнорирует динамические силы, воздействующие на транспортные средства, и предполагает, что на колесах выполняется условие прилипания. Более того, если он настроен на низкую скорость, контроллер будет опасно агрессивен на высоких скоростях. Одним из улучшений является изменение упреждающего расстояния ld в зависимости от скорости транспортного средства.

Таким образом, угол поворота рулевого колеса изменился как:

В моей следующей статье я объясню Стэнли и контроллер MPC. Будет объяснено дальнейшее обсуждение контроллеров MPC и основ проектирования контроллера MPC.

Справочник

https://www.youtube.com/watch?v=XmjjmnDcduU&list=PLgnQpQtFTOGQo2Z_ogbonywTg8jxCI9pD&index=15