Моделирование антиблокировочной тормозной системы

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

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

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

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

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

Уравнение 1

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

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

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

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

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

Создание временной директории для примера

Во время этого примера Simulink генерирует файлы в текущей рабочей директории. Если вы не хотите генерировать файлы в этой директории, изменять рабочую директорию в подходящую директорию:

origdir = cd(tempdir);

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

Открыть этот тип модели sldemo_absbrake в терминале MATLAB (или нажимают на гиперссылку, если вы используете Справку MATLAB).

Рисунок 1: антиблокировочная система, тормозящая (ABS) модель

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

Рисунок 2: подсистема Скорости Колеса

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

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

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

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

Рисунок 3: базовые результаты симуляции

  • Примечание: модель регистрирует соответствующие данные к рабочему пространству MATLAB в структуре под названием sldemo_absbrake_output. Регистрируемые сигналы имеют синий индикатор. В этом случае yout и slp регистрируются (см. модель). Читайте больше о Сигнале, Входящем в систему Справка Simulink.

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

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

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

ctrl = 0;

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

Рисунок 4: Максимальные результаты симуляции торможения (тормозящий без ABS)

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

В верхнем графике рисунка 4 заметьте, что колесо запирается приблизительно за семь секунд. Торможение, от той точки на, применяется в меньше оптимальной части кривой промаха. Таким образом, когда slip = 1, как замечено в более низком графике рисунка 4, шина скользит так на тротуаре, что сила трения понизилась.

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

Рисунок 5: Тормозной путь для резкого торможения с и без ABS

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

Закройте модель. Закройте 'подсистему' Скорости Колеса. Очистите записанные данные. Возвратитесь к исходной директории.

cd(origdir);

Заключения

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

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