Second-Order Integrator Limited
Интегрируйте входной сигнал дважды
- Библиотека:
Simulink / Непрерывный
Описание
Блок Second-Order Integrator и блок Second-Order Integrator Limited решают задачу с начальными значениями второго порядка:
где u является входным параметром к системе. Блок является поэтому динамической системой с двумя непрерывными состояниями: x и dx/dt.
Примечание
Эти два состояния имеют математическое отношение, а именно, что dx/dt является производной x. Чтобы удовлетворить это отношение в течение моделирования, Simulink помещает различные ограничения на блочные параметры и поведение.
Блок Second-Order Integrator Limited идентичен блоку Second-Order Integrator за исключением того, что это принимает значение по умолчанию к ограничению состояний на основе заданного верхнего и нижних пределов. Для получения дополнительной информации смотрите Ограничение Штаты.
Программное обеспечение Simulink® может использовать несколько различных методов численного интегрирования, чтобы вычислить выходные параметры блока. У каждого есть преимущества для определенных приложений. Используйте панель Решателя диалогового окна Configuration Parameters, чтобы выбрать метод, подходящий лучше всего для вашего приложения. (Для получения дополнительной информации смотрите Типы Решателя.) Выбранный решатель вычисляет состояния блока Second-Order Integrator на шаге текущего времени с помощью текущего входного значения.
Используйте блочное диалоговое окно параметра для:
Задайте, является ли источник каждого начального условия состояния внутренним или внешним
Задайте значение для начальных условий состояния
Задайте верхний и нижние пределы или на или на оба состояния
Задайте абсолютные допуски к каждому состоянию
Задайте имена для обоих состояний
Выберите внешнее условие сброса
Включите обнаружение пересечения нулем
Повторно инициализируйте dx/dt, когда x достигнет насыщенности
Укажите, что Simulink игнорируют пределы состояния и внешний сброс для операций линеаризации
Определение начальных условий
Можно задать начальные условия каждого состояния индивидуально в качестве параметра на блочном диалоговом окне или ввести один или они оба от внешнего сигнала.
Чтобы задать начальные условия состояния x как блочный параметр, используйте Начальный источник условия x выпадающее меню, чтобы выбрать internal
и ввести значение в Начальное условие x поле.
Чтобы обеспечить начальные условия из внешнего источника для состояния x, задайте Начальный источник условия x параметр как external
. Дополнительный входной порт появляется на блоке.
Чтобы задать начальные условия состояния dx/dt как блочный параметр, используйте Начальный источник условия dx/dt выпадающее меню, чтобы выбрать internal
и ввести значение в Начальное условие dx/dt поле.
Чтобы обеспечить начальные условия из внешнего источника для состояния dx/dt, задайте Начальный источник условия dx/dt как external
. Дополнительный входной порт появляется на блоке.
Если вы принимаете решение использовать внешний источник для обоих начальных условий состояния, ваш блок появляется можно следующим образом.
Примечание
Simulink не позволяет начальные значения условия inf
или NaN
.
Если вы ограничиваете состояние x или утверждаете dx/dt путем определения пределов насыщенности (см. Ограничение Штаты), и одно или несколько начальных условий вне соответствующих пределов, то соответствующие состояния инициализируются к самому близкому допустимому значению, и набор сопоставимых начальных условий вычисляется.
Ограничение Штатов
При моделировании системы второго порядка вы, возможно, должны ограничить блочные состояния. Например, движением поршня в цилиндре управляет Второй Закон Ньютона и имеет ограничения на поршневое положение (x). С блоком Second-Order Integrator можно ограничить состояния x и dx/dt независимого политика друг друга. Можно даже изменить пределы во время моделирования; однако, вы не можете измениться, ограничиваются ли состояния. Важное правило следовать состоит в том, что верхний предел должен быть строго больше, чем его соответствующий нижний предел.
Блочный внешний вид изменяется, когда вы ограничиваете одно или оба состояния. С обоими ограниченными состояниями блок появляется можно следующим образом.
Для каждого состояния можно использовать блочное диалоговое окно параметра, чтобы установить соответствующие пределы насыщенности.
Ограничение x Только
При использовании блок Second-Order Integrator Limited, оба состояния ограничиваются по умолчанию. Но можно также вручную ограничить состояние x на блоке Second-Order Integrator путем выбора Limit x и ввода пределов в соответствующие поля параметра.
Блок затем определяет значения состояний можно следующим образом:
Когда x меньше чем или равен своему нижнему пределу, значение x сохранено в его нижнем пределе, и dx/dt обнуляется.
Когда x является промежуточным свои нижние и верхние пределы, оба состояния следуют за траекторией, данной ОДУ второго порядка.
Когда x больше, чем или равен его верхнему пределу, значение x сохранено в его верхнем пределе, и dx/dt обнуляется.
Можно принять решение повторно инициализировать dx/dt к новому значению в то время, когда x достигает насыщенности. Смотрите Переинициализацию dx/dt, Когда x Достигнет Насыщенности.
Ограничение dx/dt Только
Как с состоянием x, утвердите, что dx/dt установлен, как ограничено по умолчанию на dx/dt панели диалогового окна блока Second-Order Integrator Limited. Можно вручную установить этот параметр, Предел dx/dt, на блоке Second-Order Integrator. В любом случае необходимо ввести соответствующие пределы для dx/dt.
Если вы ограничиваете только состояние dx/dt, то блок определяет значения dx/dt можно следующим образом:
Когда dx/dt меньше чем или равен своему нижнему пределу, значение dx/dt сохранено в его нижнем пределе.
Когда dx/dt является промежуточным свои нижние и верхние пределы, оба состояния следуют за траекторией, данной ОДУ второго порядка.
Когда dx/dt больше, чем или равен его верхнему пределу, значение dx/dt сохранено в его верхнем пределе.
Когда состояние dx/dt считается в нем верхнее или нижний предел, значением x управляет задача с начальными значениями первого порядка:
где L является пределом dx/dt (верхний или ниже), tL является временем, когда dx/dt достигает этого предела, и xL является значением состояния x в то время.
Ограничение обоих состояний
Когда вы ограничиваете оба состояния, Simulink поддерживает математическую непротиворечивость состояний путем ограничения допустимых значений верхнего и нижних пределов для dx/dt. Такие ограничения необходимы, чтобы удовлетворить следующие ограничения:
Когда x в его пределах насыщенности, значение dx/dt должно быть нулем.
Для x, чтобы оставить верхний предел, значение dx/dt должно быть строго отрицательным.
Для x, чтобы оставить его нижний предел, значение dx/dt должно быть строго положительным.
Для таких случаев верхний предел dx/dt должен быть строго положительным, и нижний предел dx/dt должен быть строго отрицательным.
Когда оба состояния ограничиваются, блок определяет состояния можно следующим образом:
Каждый раз, когда x достигает своих пределов, получившееся поведение эквивалентно, который описал в “Ограничении x только”.
Каждый раз, когда dx/dt достигает одного из своих пределов, получившееся поведение эквивалентно, который описал в “Ограничении dx/dt только” — включая вычисление x использование ОДУ первого порядка, когда dx/dt сохранен в одном из его пределов. В таких случаях, когда x достигает одного из своих пределов, это сохранено в том пределе, и dx/dt обнуляется.
Каждый раз, когда оба достигают их соответствующих пределов одновременно, состояние x поведение заменяет dx/dt поведение, чтобы поддержать непротиворечивость состояний.
Когда вы ограничиваете оба состояния, можно принять решение повторно инициализировать dx/dt в то время, когда состояние x достигает насыщенности. Если повторно инициализированное значение является внешними заданными пределами на dx/dt, то dx/dt повторно инициализируется к самому близкому допустимому значению, и непротиворечивое множество начальных условий вычисляется. Смотрите Переинициализацию dx/dt, Когда x Достигнет Насыщенности
Сброс состояния
Блок может сбросить свои состояния к заданным начальным условиям на основе внешнего сигнала. Чтобы заставить блок сбрасывать свои состояния, выберите один из Внешнего выбора сброса на панели Атрибутов. Триггерный порт появляется на блоке ниже его входного порта и указывает на триггерный тип.
Выберите rising
, чтобы сбросить состояния, когда сигнал сброса повысится от нуля до положительного значения от отрицания до положительного значения или отрицательной величины, чтобы обнулить.
Выберите falling
, чтобы сбросить состояния, когда сигнал сброса упадет от положительного значения, чтобы обнулить от положительного до отрицательной величины, или от нуля до отрицания.
Выберите either
, чтобы сбросить состояния, когда сигнал сброса изменится от нуля до ненулевого значения или изменит знак.
Порт сброса имеет прямое сквозное соединение. Если блок вывод возвращается в этот порт, или непосредственно или через серию блоков с прямым сквозным соединением, алгебраический цикл заканчивается (см. Алгебраические Циклы).
Включение обнаружения пересечения нулем
Этот параметр управляет, включено ли обнаружение пересечения нулем для этого блока. По умолчанию Разрешать параметр обнаружения пересечения нулем выбран на панели Атрибутов. Однако этот параметр находится только во влиянии, если управление Пересечением нулем, на панели Решателя диалогового окна Configuration Parameters, установлено в Use local settings
. Для получения дополнительной информации смотрите Обнаружение Пересечения нулем.
Переинициализация dx/dt, Когда x Достигает Насыщенности
Для определенных приложений моделирования должен быть повторно инициализирован dx/dt, когда состояние x достигает своих пределов в порядке вытащить x из насыщенности сразу. Можно достигнуть этого путем выбора Reinitialize dx/dt, когда x достигает насыщенности на панели Атрибутов.
Если эта опция идет, то в момент, когда x достигает насыщенности, Simulink Check, позволяет ли текущая стоимость dx/dt начального условия (параметр или сигнал) состоянию x сразу оставить насыщенность. Если так, Simulink повторно инициализирует состояние dx/dt со значением начального условия (параметр или сигнал) в тот момент. В противном случае Simulink игнорирует этот параметр в текущий момент и обнуляет dx/dt, чтобы сделать блочные состояния сопоставимыми.
Этот параметр только применяется в то время, когда x на самом деле достигает предела насыщенности. Это не применяется ни в какое будущее время, когда x сохранен в насыщенности.
Обратитесь к разделам по ограничению состояний для получения дополнительной информации. Для примера смотрите Моделирование Прыгающего мяча.
Игнорирование пределов состояния и внешнего сброса для линеаризации
Для случаев, где вы упрощаете свою модель путем линеаризации его, вы можете сделать, чтобы Simulink игнорировал пределы состояний и внешнего сброса путем выбора пределов состояния Ignore и сброса для линеаризации.
Определение абсолютного допуска к блоку Выходные параметры
Значением по умолчанию программное обеспечение Симулинка использует абсолютное значение допуска, заданное в диалоговом окне Configuration Parameters (см. Ошибочные Допуски к Решателям Переменного Шага) вычислить вывод блоков интегратора. Если это значение не обеспечивает достаточный контроль ошибок, задайте больше соответствующего значения для состояния x в Абсолютном допуске x поле и для состояния dx/dt в Абсолютном допуске dx/dt поле диалогового окна параметра. Симулинк использует значения, которые вы задаете, чтобы вычислить значения состояния блока.
Определение отображения выходных портов
Можно управлять, отобразить ли x или dx/dt выходной порт с помощью параметра ShowOutput
. Можно отобразить один выходной порт или обоих; однако, необходимо выбрать по крайней мере один.
Определение имен состояния
Можно задать имя состояний x и состояний dx/dt с помощью параметров StateNameDXDT
и StateNameX
. Однако необходимо задать имена для обоих или ни одного; вы не можете задать имена для просто x или просто dx/dt. Оба имени состояния должны иметь идентичный тип и длину. Кроме того, количество имен должно равномерно разделить количество состояний.
Выбор всех опций
Когда вы выбираете все опции, блочный значок выглядит так.
Порты
Входной параметр
развернуть все
u
Входной сигнал u
скаляр | вектор | матрица
Входной сигнал u
к системе интегратора, заданной как скаляр, вектор или матрица.
Типы данных: double
x0
Начальное условие x0
скаляр | вектор | матрица
Внешний сигнал, задающий начальное условие x0
к системе интегратора. Можно задать начальное условие как скаляр, вектор или матрицу.
Зависимости
Чтобы включить этот входной порт, установите Начальный источник условия x параметр к external
.
Типы данных: double
dx0
— Начальное условие dx0
скаляр | вектор | матрица
Внешний сигнал, задающий начальное условие dx0
к системе интегратора. Можно задать начальное условие dx0
как скаляр, вектор или матрица.
Зависимости
Чтобы включить этот входной порт, установите Начальный источник условия dx/dt параметр к external
.
Типы данных: double
Вывод
развернуть все
x
Выходной сигнал x
скаляр | вектор | матрица
Выходной сигнал состояния x
, обеспеченный как скаляр, вектор или матрица.
Типы данных: double
dx
— Выходной сигнал dx
скаляр | вектор | матрица
Выходной сигнал состояния dx
, заданный как скаляр, вектор или матрица.
Типы данных: double
Параметры
развернуть все
x
Initial condition source x
— Источник начального условия для состояния x
internal
(значение по умолчанию) | external
Задайте источник начальных условий для состояния x.
internal
— Получите начальные условия состояния x от Начального условия x параметр.
external
— Получите начальные условия состояния x от внешнего блока, соединенного с входным портом X0.
Ограничения
Программное обеспечение Simulink не позволяет начальному условию этого блока быть inf
или NaN
.
Зависимости
Выбор internal
включает Начальное условие x параметр и удаляет входной порт X0.
Выбор external
отключает Начальное условие x параметр и включает входной порт X0.
Программируемое использование
Блочный параметр: ICSourceX |
Ввод: вектор символа, строка |
Значения: 'внутренний' | 'внешний' |
Значение по умолчанию: 'internal' |
Initial condition x
— Начальное условие состояния x
0.0
(значение по умолчанию) | скаляр | вектор | матрица
Задайте начальное условие состояния x.
Ограничения
Программное обеспечение Simulink не позволяет начальному условию этого блока быть inf
или NaN
.
Зависимости
Чтобы включить этот параметр, установите Начальный источник условия x на internal
.
Установка Начального источника условия x к external
отключает этот параметр и включает входной порт X0.
Программируемое использование
Блочный параметр: ICX |
Ввод: вектор символа, строка |
Значения: скаляр | вектор | матрица |
Значение по умолчанию: '0.0' |
Limit x
— Предельные значения состояния x
off
| on
Предельное состояние x блока к значению между Нижним пределом x и Верхним пределом x параметры. Значением по умолчанию блока Second-Order Integrator является off
. Значением по умолчанию Second-Order Integrator Limited является on
.
Чтобы ограничить состояние x значением между Нижним пределом x и Верхним пределом x параметры, установите этот флажок.
Чтобы удалить ограничения области значений на состояние x, снимите этот флажок.
Зависимости
Установка этого флажка включает Верхний предел x и Нижний предел x параметры.
Программируемое использование
Блочный параметр: LimitX |
Ввод: вектор символа, строка |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' (интегратор второго порядка) | 'on' (Second-Order Integrator Limited) |
Upper limit x
— Верхний предел состояния x
1
| inf
| скаляр | вектор | матрица
Задайте верхний предел состояния x. Значением по умолчанию для блока Second-Order Integrator является inf
. Значением по умолчанию для блока Second-Order Integrator Limited является 1
.
Советы
Верхний предел насыщенности для состояния x должен быть строго больше, чем более низкий предел насыщенности.
Зависимости
Чтобы включить этот параметр, выберите Limit x флажок.
Программируемое использование
Блочный параметр: UpperLimitX |
Ввод: вектор символа, строка |
Значения: '1' | 'inf' | скаляр | вектор | матрица |
Значение по умолчанию: '1' (Second-Order Integrator Limited) | 'inf' (интегратор второго порядка) |
Lower limit x
— Нижний предел состояния x
0
(значение по умолчанию) | -inf
| скаляр | вектор | матрица
Задайте нижний предел состояния x. Значением по умолчанию для блока Second-Order Integrator является -inf
. Значением по умолчанию для блока Second-Order Integrator Limited является 0
.
Совет
Более низкий предел насыщенности для состояния x должен быть строго меньше, чем верхний предел насыщенности.
Зависимости
Чтобы включить этот параметр, выберите Limit x флажок.
Программируемое использование
Блочный параметр: LowerLimitX |
Ввод: вектор символа, строка |
Значения: '0' | '-inf' | скаляр | вектор | матрица |
Значение по умолчанию: '0' (Second-Order Integrator Limited) | '-inf' (интегратор второго порядка) |
Wrap x
— Позвольте перенестись x
off
(значение по умолчанию) | on
Позвольте перенестись x между Перенесенным верхним значением x и Перенесенным нижним значением x параметры. Включение переноса x избавляет от необходимости обнаружение пересечения нулем, уменьшает сброс решателя, улучшает производительность решателя и точность, и увеличивает промежуток времени симуляции при моделировании ротационных и циклических траекторий состояния.
Если вы зададите Перенесенное верхнее значение x как inf
и Перенесенное нижнее значение x как -inf
, перенос никогда не будет происходить.
Зависимости
Установка этого флажка включает Перенесенное верхнее значение x и Перенесенное нижнее значение x.
Программируемое использование
Блочный параметр: WrapX |
Ввод: вектор символа, строка |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' |
Wrapped upper value x
— Верхнее значение для переноса x
pi
(значение по умолчанию) | скаляр | вектор | матрица
Задайте верхнее значение для переноса x.
Зависимости
Чтобы включить этот параметр, выберите Wrap x флажок.
Программируемое использование
Блочный параметр: WrappedUpperValueX |
Ввод: вектор символа, строка |
Значения: скаляр | вектор | матрица |
Значение по умолчанию: \Pi |
Wrapped lower value x
— Нижнее значение для переноса x
-pi
(значение по умолчанию) | скаляр | вектор | матрица
Задайте нижнее значение для переноса x.
Зависимости
Чтобы включить этот параметр, выберите Wrap x флажок.
Программируемое использование
Блочный параметр: WrappedLowerValueX |
Ввод: вектор символа, строка |
Значения: скаляр | вектор | матрица |
Значение по умолчанию: \Pi |
Absolute tolerance x
— Абсолютный допуск к вычислению состояния x
auto
(значение по умолчанию) | -1
| скаляр | вектор
Задайте абсолютный допуск к вычислению состояния x.
Можно ввести auto
, –1, положительный действительный скаляр или вектор.
Если вы вводите auto
или –1, Симулинк использует абсолютное значение допуска в диалоговом окне Configuration Parameters (см. Панель Решателя) вычислить состояние x.
Если вы вводите действительное скалярное значение, то значение заменяет абсолютный допуск в диалоговом окне Configuration Parameters и используется для вычисления всех состояний x.
Если вы вводите действительный вектор, размерность того вектора должна совпадать с размерностью состояния x. Эти значения заменяют абсолютный допуск в диалоговом окне Configuration Parameters.
Программируемое использование
Блочный параметр: AbsoluteToleranceX |
Ввод: вектор символа, строка |
Значения: 'auto' | '-1' | любой положительный действительный скаляр или вектор |
Значение по умолчанию: 'auto' |
State name x
— Назовите для состояния x
''
(значение по умолчанию) | вектор символа | строка
Присвойте уникальное имя, чтобы утвердить x.
Советы
Чтобы присвоить имя к единственному состоянию, введите имя между кавычками, например, положение'.
Чтобы присвоить имена к нескольким состояниям x, введите разграниченный запятой список, окруженный фигурными скобками, например, {'b', 'c'}. Каждое имя должно быть уникальным.
Имена состояния применяются только к выбранному блоку.
Если вы задаете имя состояния для x, необходимо также задать имя состояния для dx/dt.
Имена состояния для x и dx/dt должны иметь идентичные типы и длины.
Количество состояний должно быть равномерно разделено на количество имен состояния. Можно задать меньше имен, чем состояния x, но вы не можете задать больше имен, чем состояния x. Например, можно задать два имени в системе с четырьмя состояниями. Имя применяется к первым двум состояниям и второму имени к последним двум состояниям. Однако необходимо быть сопоставимыми и применить ту же схему к именам состояния для dx/dt.
Чтобы присвоить имена состояния с переменной в рабочей области MATLAB®, введите переменную без кавычек. Переменная может быть вектором символа, строкой или массивом ячеек.
Программируемое использование
Блочный параметр: StateNameX |
Ввод: вектор символа, строка |
Значения: '' | пользовательский |
Значение по умолчанию: ' ' |
dx/dt
Initial condition source dx/dt
— Источник начального условия для состояния dx/dt
internal
(значение по умолчанию) | external
Задайте источник начальных условий для состояния dx/dt как internal
или external
.
Ограничения
Программное обеспечение Simulink не позволяет начальному условию этого блока быть inf
или NaN
.
Зависимости
Программируемое использование
Блочный параметр: ICSourceDXDT |
Ввод: символьный вектор |
Значения: 'внутренний' | 'внешний' |
Значение по умолчанию: 'internal' |
Initial condition dx/dt
— Начальное условие состояния dx/dt
0.0
(значение по умолчанию) | скаляр | вектор | матрица
Задайте начальное условие состояния dx/dt.
Ограничения
Программное обеспечение Simulink не позволяет начальному условию этого блока быть inf
или NaN
.
Зависимости
Программируемое использование
Блочный параметр: ICDXDT |
Ввод: символьный вектор |
Значения: скаляр | вектор | матрица |
Значение по умолчанию: '0.0' |
Limit dx/dt
— Предельные значения состояния dx/dt
off
| on
Ограничьте dx/dt состояние блока к значению между Нижним пределом dx/dt и Верхним пределом dx/dt параметры. Значением по умолчанию блока Second-Order Integrator является off
. Значением по умолчанию Second-Order Integrator Limited является on
.
Совет
Если вы устанавливаете пределы насыщенности для x, то интервал, заданный Верхним пределом dx/dt и Нижним пределом dx/dt, должен содержать нуль.
Зависимости
Установка этого флажка включает Верхний предел dx/dt и Нижний предел dx/dt параметры.
Программируемое использование
Параметр: LimitDXDT |
Ввод: символьный вектор |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' (интегратор второго порядка) | 'on' (Second-Order Integrator Limited) |
Upper limit dx/dt
— Верхний предел состояния dx/dt
inf
(значение по умолчанию) | скаляр | вектор | матрица
Задайте верхний предел для состояния dx/dt.
Зависимости
Если вы ограничиваете x, то этот параметр должен иметь строго положительное значение.
Чтобы включить этот параметр, выберите Limit dx/dt флажок.
Программируемое использование
Блочный параметр: UpperLimitDXDT |
Ввод: символьный вектор |
Значения: скаляр | вектор | матрица |
Значение по умолчанию: Inf |
Lower limit dx/dt
— Нижний предел состояния dx/dt
-inf
(значение по умолчанию) | скаляр | вектор | матрица
Задайте нижний предел для состояния dx/dt.
Зависимости
Если вы ограничиваете x, то этот параметр должен иметь строго отрицательную величину.
Чтобы включить этот параметр, выберите Limit dx/dt флажок.
Программируемое использование
Блочный параметр: LowerLimitDXDT |
Ввод: символьный вектор |
Значения: скаляр | вектор | матрица |
Значение по умолчанию: Inf |
Absolute tolerance dx/dt
— Абсолютный допуск к вычислению состояния dx/dt
auto
(значение по умолчанию) | -1
| скаляр | вектор
Задайте абсолютный допуск к вычислению состояния dx/dt.
Можно ввести auto
, –1
, положительный действительный скаляр или вектор.
Если вы вводите auto
или –1
, то Симулинк использует абсолютное значение допуска в диалоговом окне Configuration Parameters (см. Панель Решателя) вычислить dx/dt вывод блока.
Если вы вводите числовое значение, то значение заменяет абсолютный допуск в диалоговом окне Configuration Parameters.
Программируемое использование
Блочный параметр: AbsoluteToleranceDXDT |
Ввод: вектор символа, строка, скаляр или вектор |
Значения: 'auto' | '-1' | любой положительный действительный скаляр или вектор |
Значение по умолчанию: 'auto' |
State name dx/dt
— Назовите для состояния dx/dt
' '
(значение по умолчанию) | вектор символа | строка
Присвойте уникальное имя, чтобы утвердить dx/dt.
Советы
Чтобы присвоить имя к единственному состоянию, введите имя между кавычками, например, 'скоростью'.
Чтобы присвоить имена к нескольким состояниям dx/dt, введите разграниченный запятой список, окруженный фигурными скобками, например, {'b', 'c'}. Каждое имя должно быть уникальным.
Имена состояния применяются только к выбранному блоку.
Если вы задаете имя состояния для dx/dt, необходимо также задать имя состояния для x.
Имена состояния для x и dx/dt должны иметь идентичные типы и длины.
Количество состояний должно быть равномерно разделено на количество имен состояния. Можно задать меньше имен, чем состояния dx/dt, но вы не можете задать больше имен, чем состояния dx/dt. Например, можно задать два имени в системе с четырьмя состояниями. Имя применяется к первым двум состояниям и второму имени к последним двум состояниям. Однако необходимо быть сопоставимыми и применить ту же схему к именам состояния для x.
Чтобы присвоить имена состояния с переменной в MATLAB workspace, введите переменную без кавычек. Переменная может быть вектором символа, строкой или массивом ячеек.
Программируемое использование
Блочный параметр: StateNameDXDT |
Ввод: вектор символа, строка |
Значения: '' | пользовательский |
Значение по умолчанию: ' ' |
Атрибуты
External reset
— Сбросьте состояния к их начальным условиям
none
(значение по умолчанию) | rising
| falling
| either
Сбросьте состояния к их начальным условиям, когда триггерное событие будет иметь место в сигнале сброса.
'none'
Не сбрасывайте состояние к начальным условиям.
rising
— Сбросьте состояние, когда сигнал сброса повысится от нуля до положительного значения или от отрицания до положительного значения.
falling
— Сбросьте состояние, когда сигнал сброса упадет от положительного значения, чтобы обнулить или от положительного до отрицательной величины.
either
— Сбросьте состояние, когда сигнал сброса изменится от нуля до ненулевого значения или изменит знак.
Программируемое использование
Блочный параметр: ExternalReset |
Ввод: вектор символа, строка |
Значения: 'ни один' | 'повышающийся' | 'падающий' | 'также' |
Значение по умолчанию: 'none' |
Enable zero-crossing detection
— Включите обнаружение пересечения нулем
on
(значение по умолчанию) | off
Выберите, чтобы включить обнаружение пересечения нулем. Для получения дополнительной информации смотрите Обнаружение Пересечения нулем.
Программируемое использование
Parameter:ZeroCross |
Ввод: вектор символа, строка |
Значения:
'on' | 'off' |
Значение по умолчанию:
'on' |
Reinitialize dx/dt when x reaches saturation
— Сбросьте dx/dt, когда x достигнет насыщенности
off
(значение по умолчанию) | on
В момент, когда состояние x достигает насыщенности, сбрасывает dx/dt к его текущим начальным условиям.
Совет
dx/dt начальное условие должно иметь значение, которое позволяет x сразу оставить насыщенность. В противном случае Simulink игнорирует начальные условия для dx/dt, чтобы сохранить математическую непротиворечивость блочных состояний.
Программируемое использование
Блочный параметр: ReinitDXDTwhenXreachesSaturation |
Ввод: вектор символа, строка |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' |
Ignore state limits and the reset for linearization
— Проигнорируйте пределы состояния и внешний сброс для линеаризации
off
(значение по умолчанию) | on
В целях линеаризации сделайте, чтобы Simulink проигнорировал заданные пределы состояния и внешний сброс.
Программируемое использование
Блочный параметр: IgnoreStateLimitsAndResetForLinearization |
Ввод: вектор символа, строка |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' |
Show output
— Выходные порты, чтобы отобразиться
both
(значение по умолчанию) | x
| dxdt
Задайте выходные порты на блоке.
both
— Покажите и x и dx/dt выходные порты.
x
Покажите только x выходной порт.
dx/dt
— Покажите только dx/dt выходной порт.
Программируемое использование
Блочный параметр: ShowOutput |
Ввод: вектор символа, строка |
Значения: 'оба' | 'x' | 'dxdt' |
Значение по умолчанию: 'both' |
Блокируйте характеристики
Типы данных | 'double'
|
Многомерные сигналы | No
|
Сигналы переменного размера | No
|
Расширенные возможности
Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.
Не рекомендуемый для кода производственного качества. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код.
В целом рассмотрите использование Образцового Discretizer Simulink, чтобы сопоставить непрерывные блоки в дискретные эквиваленты та генерация производственного кода поддержки. Чтобы запустить Образцовый Discretizer, выберите Analysis > Control Design > Model Discretizer
. Одним исключением является блок Second-Order Integrator, потому что для этого блока Образцовый Discretizer производит аппроксимированную дискретизацию.
Представленный в R2010a