nav.StatePropagator class

Пакет: военно-морской

Распространитель состояния для основанного на управлении планирования

Описание

nav.StatePropagator класс является интерфейсом для всех распространителей состояния, используемых с kinodynamic планировщиками пути, выведенными из nav.StateSpace. Выведите из этого класса, если вы задаете распространителя для своей пользовательской модели движения или системы управления. Для конкретной реализации для мобильных роботов смотрите mobileRobotPropagator объект.

Этот класс генерирует средства управления, распространяет состояние и оценивает стоимость или расстояние между состояниями. Управляемые системы используют два основных уравнения для двух шагов:

Начальное управление

  • [u(i),steps] = controlFcn(q(i-1),u(i-1),qTgt) генерирует следующую команду управления от предыдущего состояния, входа управления и целевого состояния.

Распространите систему

  • q(i) = q(i-1) + integrate(q,u(i),steps) распространяет q(i-1) состояния использование сгенерированной команды u(i) для конкретного количества шагов. Распространитель использует фиксированный размер шага, заданный свойством ControlStepSize.

nav.StatePropagator.propagateWhileValid метод задает интегрирование и опционально, поведение управления, и также проверяет, допустимы ли сгенерированные состояния в пространстве состояний. Чтобы пропустить валидацию состояния, используйте nav.StatePropagator.propagate метод.

При создании экземпляра класса задайте свойство StateSpace, которое задает количество переменных состояния, границ состояния и поведения выборки распространителя. Кроме того, задайте пределы управления на создании, которое определяет значение свойства NumControlOutput.

Когда вы изменяете свойства, такие как пространство состояний, вы, возможно, должны изменить внутреннее поведение распространителя. Для этого реализуйте изменения в nav.StatePropagator.setup метод и вызов setup(obj) прежде, чем вызвать другие методы снова.

nav.StatePropagator классом является handle класс.

Создание

Описание

propagatorObj = nav.StatePropagator(stateSpace,stepSize,numControlOutput) создает объект распространителя состояния для распространения kinodynamic системы.

Свойства

развернуть все

Общественные собственности

Пространство состояний для выборки во время планирования в виде объекта подкласса nav.StateSpace.

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

Длительность каждой команды управления в виде положительной скалярной величины.

Защищенные свойства

Количество переменных в команде управления в виде положительного целого числа.

Атрибуты:

GetAccess
protected
SetAccess
immutable

Методы

развернуть все

Введенный в R2021b