ctrect

Постоянная прямоугольная целевая модель движения со скоростью поворота

Описание

updatedstates = ctrect(states) возвращает обновленные прямоугольные состояния из текущей прямоугольной states на основе прямоугольной целевой модели движения. Временной шаг по умолчанию составляет 1 секунду.

updatedstates = ctrect(states,dt) определяет временной шаг, dt, в секундах.

пример

updatedstates = ctrect(states,w,dt) дополнительно задает технологический шум, w.

Примеры

свернуть все

Задайте прямоугольное состояние.

state = [1 2 2 30 1 4.7 1.8];

Спрогнозируйте состояние dt = 1 секунду вперед с использованием синтаксиса по умолчанию.

state = ctrect(state,0.1)
state = 1×7

    1.1731    2.1002    2.0000   30.1000    1.0000    4.7000    1.8000

Спрогнозируйте состояние dt = 0,1 секунды вперед без шума.

state = ctrect(state,0.1)
state = 1×7

    1.3461    2.2006    2.0000   30.2000    1.0000    4.7000    1.8000

Спрогнозируйте состояние dt = 0,1 секунды вперед с шумом.

state = ctrect(state,0.01,0.1)
state = 1×7

    1.5189    2.3014    2.0010   30.3000    1.0010    4.7000    1.8000

Задайте матрицу состояний.

states = [1 3 4;-1 2 10;5 3 1.3;1 1.3 2.1;30 0 -30;4.7 3.4 4.5;1.8 2 3];

Спрогнозируйте состояние dt = на 1 секунду вперед.

states = ctrect(states)
states = 7×3

    5.7516    5.9992    5.2528
    0.3625    2.0681    9.7131
    5.0000    3.0000    1.3000
   31.0000    1.3000  -27.9000
   30.0000    0.0000  -30.0000
    4.7000    3.4000    4.5000
    1.8000    2.0000    3.0000

Спрогнозируйте состояние dt = на 0,1 секунды вперед без шума.

states = ctrect(states,0.1)
states = 7×3

    6.1732    6.2992    5.3660
    0.6311    2.0749    9.6493
    5.0000    3.0000    1.3000
   34.0000    1.3000  -30.9000
   30.0000    0.0000  -30.0000
    4.7000    3.4000    4.5000
    1.8000    2.0000    3.0000

Спрогнозируйте состояние dt = на 0,1 секунды вперед с шумом.

states = ctrect(states,0.1*randn(2,3),0.1)
states = 7×3

    6.5805    6.5979    5.4759
    0.9216    2.0816    9.5795
    5.0054    2.9774    1.3032
   37.0009    1.3004  -33.9007
   30.0183    0.0086  -30.0131
    4.7000    3.4000    4.5000
    1.8000    2.0000    3.0000

Входные параметры

свернуть все

Текущие прямоугольные состояния, заданные как вектор с реальным значением 1 на 7, вектор с реальным значением 7 на 1 или матрица с 7 N байтами, где N - количество состояний. Семимерное прямоугольное целевое состояние задано как [x; y; s; θ; ω; L; W]:

ПеременнаяЗначение Модуль
x

Положение центра прямоугольника в x направлении

m
y

Положение центра прямоугольника в y направлении

m
s

Скорость в направлении курса

м/с
θ

Угол ориентации прямоугольника относительно x направления

степень
ω

Скорость поворота

градус/с
L

Длина прямоугольника

m
W

Ширина прямоугольника

m

Пример: [1;2;2;30;1;4.7;1.8]

Типы данных: single | double

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

Типы данных: single | double

Технологический шум, заданный как 2-байтовая N вещественная матрица, где N - количество состояний, заданное в states вход. Если задан как скаляр, он расширяется до 2-бай- N матрицы со всеми элементами, равными скаляру. Первая строка матрицы задает технологический шум в ускорении (m/s2). Вторая строка задает шум процесса при ускорении рыскания (градусы/с2).

Типы данных: single | double

Выходные аргументы

свернуть все

Обновленные состояния, заданные как вектор с реальным значением 1 на 7, вектор с реальным значением 7 на 1 или как 7-байтовая N вещественная матрица, где N - количество состояний. Размерности и настройки updatedstates выходные данные в точности совпадают с выходными данными states вход.

Типы данных: single | double

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.
Введенный в R2019b