Моделирование системы антиблокировочного торможения

В этом примере показано, как смоделировать простую модель для антиблокировочной тормозной системы (ABS). Он моделирует динамическое поведение транспортного средства в условиях жесткого торможения. Модель представляет одно колесо, которое может быть повторено несколько раз, чтобы создать модель для многоколесного транспортного средства.

Эта модель использует функцию логгирования сигналов в Simulink ®. Модель регистрирует сигналы в рабочей области MATLAB ®, где можно их анализировать и просматривать. Вы можете просмотреть код в ModelingAnAntiLockBrakingSystemExample.m чтобы увидеть, как это делается.

В этой модели скорость колеса вычисляется в отдельной модели с именем sldemo_wheelspeed_absbrake. Затем на этот компонент ссылаются с помощью блока 'Model'. Обратите внимание, что и верхнюю часть, и модель-ссылку используют решатель переменного шага, поэтому Simulink будет отслеживать пересечения нулем в модели-ссылке.

Анализ и физика

Колесо вращается с начальной угловой скоростью, которая соответствует скорости транспортного средства перед применением тормозов. Мы использовали отдельные интеграторы, чтобы вычислить угловую скорость колеса и скорость транспортного средства. Мы используем две скорости, чтобы вычислить скольжение, которое определяется уравнением 1. Обратите внимание, что мы вводим скорость транспортного средства, выраженную в виде скорости вращения (см. ниже).

$$\omega_v = \frac{V}{R} \mbox{ (equals the wheel angular speed if there is no slip)}$$

Уравнение 1

$$ \omega_v = \frac{V_v}{R_r}$$

$$slip=1-\frac{\omega_w}{\omega_v}$$

$$\omega_v = \mbox{ vehicle speed divided by wheel radius}$$

$$ V_v = \mbox{ vehicle linear velocity}$$

$$ R_r = \mbox{ wheel radius}$$

$$ \omega_w = \mbox{ wheel angular velocity}$$

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

Моделирование

Коэффициент трения между шиной и поверхностью дороги, mu, является эмпирической функцией скольжения, известной как кривая mu-скольжения. Мы создали кривые mu-slip путем передачи переменного MATLAB в блок с помощью интерполяционной таблицы Simulink. Модель умножает коэффициент трения, mu, по весу на колесе, W, для получения силы трения, Ff, действуя на окружность шины. Ff разделяют на массу транспортного средства для получения замедления транспортного средства, которое интегрируется в модель для получения скорости транспортного средства.

В этой модели мы использовали идеальный антиблокировочный тормозной контроллер, который использует управление 'bang-bang', основанное на ошибке между фактическим скольжением и желаемым скольжением. Мы устанавливаем желаемое скольжение на значение скольжения, при котором кривая mu-скольжения достигает пикового значения, что является оптимальным значением для минимального пути торможения (см. примечание ниже).

  • Примечание: В фактическом транспортном средстве скольжение не может быть измерено непосредственно, поэтому этот алгоритм управления не практичен. Он используется в этом примере, чтобы проиллюстрировать концептуальную конструкцию такой модели симуляции. Реальное инженерное значение симуляции, подобного этому, состоит в том, чтобы показать потенциал концепции управления до решения конкретных вопросов реализации.

Открытие модели

Дважды кликните подсистему Wheel Speed в окне модели, чтобы открыть ее. Учитывая скольжение колеса, желаемое скольжение колеса и крутящий момент шины, эта подсистема вычисляет угловую скорость колеса.

Чтобы контролировать скорость изменения тормозного давления, модель вычитает фактическое скольжение из необходимого скольжения и подает этот сигнал в релейное управление (+1 или -1, в зависимости от признака ошибки). Эта скорость включения/выключения проходит через задержку первого порядка, которая представляет задержку, связанную с гидравлическими линиями тормозной системы. Затем модель интегрирует фильтрованную скорость, чтобы получить фактическое тормозное давление. Полученный сигнал, умноженный на площадь базового поршня и радиус относительно колеса (Kf), - момент привода, приложенный к колесу.

Модель умножает силу трения на колесо на радиус колеса (Rr) для придания ускоряющего крутящего момента дорожного покрытия на колесе. Вычитается момент привода, чтобы задать крутящий момент привода на колесе. Деление крутящего крутящего момента привода на инерцию вращения колеса, I, приводит к ускорению колеса, которое затем интегрируется, чтобы обеспечить скорость колеса. В порядок поддержания скорости вращения колеса и транспортного средства положительной, в этой модели используются ограниченные интеграторы.

Выполнение симуляции в режиме ABS

На вкладке Simulation нажмите запуск, чтобы запустить симуляцию. Можно также запустить симуляцию, выполнив sim('sldemo_absbrake') команда в MATLAB. ABS включается во время этой симуляции.

  • Примечание. Модель регистрирует соответствующие данные в рабочем пространстве MATLAB в структуре под названием sldemo_absbrake_output. Зарегистрированные сигналы имеют синий индикатор. В этом случае yout и slp регистрируются. Подробнее о регистрации сигналов в справке Simulink.

На графиках выше показаны результаты симуляции ABS (для параметров по умолчанию). Первый график показывает скорость вращения колеса и соответствующую скорость вращения транспортного средства. Этот график показывает, что скорость колеса остается ниже скорости транспортного средства, не блокируя, со скоростью транспортного средства идущей к нулю менее чем за 15 секунд.

Выполнение симуляции без ABS

Для получения более значимых результатов рассмотрим поведение транспортного средства без ABS. В командной строке MATLAB установите переменную модели ctrl = 0. Это отключает обратную связь скольжения от контроллера, приводя к максимальному торможению.

ctrl = 0;

Теперь запустите симуляцию снова. Это будет моделировать торможение без ABS.

Торможение с ABS в зависимости от торможения без ABS

На графике, показывающем скорость транспортного средства и скорость колеса, заметьте, что колесо блокируется примерно за семь секунд. Торможение с этой точки применяется в менее чем оптимальной части кривой скольжения. То есть, когда slip = 1как показывает график скольжения, шина так скользит по дорожному покрытию, что сила трения упала.

Это, пожалуй, более значимо с точки зрения сравнения, показанного ниже. Расстояние, пройденное транспортным средством, строится для двух случаев. Без ABS транспортное средство перемещается на дополнительные 100 футов, что занимает около трех секунд дольше, чтобы остановиться.

Закрытие модели

Закройте модель. Закройте подсистему 'Wheel Speed'. Очистить записанные данные.

Заключения

Эта модель показывает, как вы можете использовать Simulink, чтобы симулировать тормозную систему под действием контроллера. Контроллер в этом примере идеализирован, но можно использовать любой предложенный алгоритм управления на его месте, чтобы оценить эффективность системы. Можно также использовать Coder™ Simulink ® с Simulink в качестве ценного инструмента для быстрого прототипирования предлагаемого алгоритма. Код С генерируется и компилируется для оборудования контроллера, чтобы протестировать концепцию в транспортном средстве. Это значительно сокращает время, необходимое для доказывания новых идей, позволяя фактическая проверка в начале цикла разработки.

Для цикла тормозной системной симуляции можно удалить контроллер 'bang-bang' и запустить уравнения движения на оборудовании в реальном времени, чтобы эмулировать колесо и динамику аппарата. Вы можете сделать это, сгенерировав код С в реальном времени для этой модели с помощью Simulink Coder. Затем можно протестировать фактический контроллер, подключив его к оборудованию в реальном времени, которое запускает сгенерированный код. В этом сценарии модель реального времени отправит скорость колеса контроллеру, а контроллер - действие торможения модели.

Похожие темы