Эта модель использует блок Velocity Profiler, чтобы сгенерировать скоростной профиль для ведущего пути, который включает кривую и изменение направления. В этой модели, перемещения транспортного средства вперед на изогнутом контуре для 50 метров, и затем перемещается прямо наоборот еще для 50 метров.
Блок Velocity Profiler генерирует скоростные профили на основе скорости, ускорения и ограничений толчка, что вы задаете параметры использования. Можно использовать сгенерированный скоростной профиль в качестве входных скоростей ссылки контроллера транспортного средства.
Эта модель в иллюстративных целях и не показывает, как использовать блок Velocity Profiler в полной автоматизированной ведущей модели. Чтобы видеть, как использовать этот блок в такой модели, смотрите, что Автоматизированный Оставляет Камердинера в примере Simulink.
Модель состоит из одного блока Velocity Profiler с постоянными входными параметрами. Откройте модель.
model = 'VelocityProfileCurvedPathDirectionChanges';
open_system(model)
Первые три входных параметров указывают информацию о ведущем пути.
Вход Directions задает направление движения транспортного средства вдоль пути, где 1 среднее значение вперед и –1 среднее значение инвертируют. В первом сегменте пути, потому что перемещения транспортного средства только передают, направление 1 вдоль целого сегмента. Во втором сегменте пути, потому что транспортное средство перемещается только наоборот, направление –1 вдоль целого сегмента.
Вход CumLengths задает длину пути. Путь состоит из двух 50-метровых сегментов. Первый сегмент представляет прямой левый поворот, и второй сегмент представляет прямой путь наоборот. Путь состоит из последовательности 200 совокупных длин пути с 100 длинами на 50-метровый сегмент.
Вход Curvatures задает искривление вдоль этого пути. Искривление первого сегмента пути соответствует поворачивающемуся радиусу 50 метров. Поскольку второй сегмент пути является прямым, искривление 0 вдоль целого сегмента.
В полной автоматизированной ведущей модели можно получить эти входные значения из выхода блока Path Smoother Spline, который сглаживает путь на основе набора положений.
Входные параметры StartVelocity и EndVelocity задают скорость транспортного средства в начале и конце пути, соответственно. Транспортное средство запускает путь, перемещающийся при скорости 1 метра в секунду, и достигает конца пути, перемещающегося при скорости-1 метра в секунду. Отрицательная скорость указывает, что транспортное средство перемещается наоборот в конце пути.
Симулируйте модель, чтобы сгенерировать скоростной профиль.
out = sim(model);
Выходной скоростной профиль является последовательностью скоростей вдоль пути, которые встречают скорости, ускорению и ограничениям толчка, заданным в параметрах блока Velocity Profiler.
Блок также выводит времена, в которые транспортное средство прибывает в каждую точку вдоль пути. Можно использовать этот выход, чтобы визуализировать скорости в зависимости от времени.
Используйте симуляцию выход, чтобы построить скоростной профиль.
t = length(out.tout); velocities = out.yout.signals(1).values(:,:,t); times = out.yout.signals(2).values(:,:,t); plot(times,velocities) title('Velocity Profile') xlabel('Time (s)') ylabel('Velocity (m/s)') annotation('textarrow',[0.63 0.53],[0.56 0.56],'String',{'Direction change'}); grid on
Для этого пути блок Velocity Profiler генерирует два отдельных скоростных профиля: один для прямого левого поворота и один для прямого противоположного движения. В окончательном результате блок конкатенирует эти скорости в один скоростной профиль.
Транспортное средство, которое следует за этим скоростным профилем:
Запускается при скорости 1 метра в секунду
Ускоряется вперед
Замедляется, пока его скорость не достигает 0, так, чтобы транспортное средство могло переключить направления движения
Ускоряется наоборот
Замедляется, пока это не достигает своей конечной скорости
В обоих направлениях движения транспортному средству не удается достигнуть максимальной скорости, заданной Максимальной допустимой скоростью (m/s) параметр блока Velocity Profiler, потому что путь слишком короток.
Для получения дополнительной информации о том, как блок вычисляет скоростной профиль, смотрите раздел Algorithms страницы с описанием блока Velocity Profiler.
Velocity Profiler | Path Smoother Spline