Second-Order Integrator
Интегрируйте входной сигнал дважды
- Библиотека:
Simulink / Непрерывный
Описание
Блок Second-Order Integrator и блок Second-Order Integrator Limited решают задачу с начальными значениями второго порядка:
где u является входом к системе. Блок является поэтому динамической системой с двумя непрерывными состояниями: x и dx/dt.
Примечание
Эти два состояния имеют математическое отношение, а именно, что dx/dt является производной x. Чтобы удовлетворить этому отношению в течение симуляции, Simulink помещает различные ограничения на параметры блоков и поведение.
Блок Second-Order Integrator Limited идентичен блоку Second-Order Integrator за исключением того, что это принимает значение по умолчанию к ограничению состояний на основе заданного верхнего и нижних пределов. Для получения дополнительной информации смотрите Limiting the States.
Программное обеспечение Simulink® может использовать несколько различных методов численного интегрирования, чтобы вычислить выходные параметры блока. У каждого есть преимущества для определенных приложений. Используйте панель Решателя диалогового окна Configuration Parameters, чтобы выбрать метод, подходящий лучше всего для вашего приложения. (Для получения дополнительной информации смотрите Критерии выбора Решателя.) Выбранный решатель вычисляет состояния блока Second-Order Integrator на шаге текущего времени с помощью текущего входного значения.
Используйте диалоговое окно параметров блоков для:
Задайте, является ли источник каждого начального условия состояния внутренним или внешним
Задайте значение для начальных условий состояния
Задайте верхний и нижние пределы или на или на оба состояния
Задайте абсолютные погрешности для каждого состояния
Задайте имена для обоих состояний
Выберите внешнее условие сброса
Включите обнаружение пересечения нулем
Повторно инициализируйте dx/dt, когда x достигнет насыщения
Укажите, что Simulink игнорирует пределы состояния и внешний сброс для операций линеаризации
Определение начальных условий
Можно задать начальные условия каждого состояния индивидуально в качестве параметра на диалоговом окне блока или ввести один или они оба от внешнего сигнала.
Чтобы задать начальные условия x состояния как параметры блоков, используйте Initial condition source x выпадающее меню, чтобы выбрать internal
и введите значение в поле Initial condition x.
Чтобы обеспечить начальные условия из внешнего источника для x состояния, задайте параметр Initial condition source x как external
. Дополнительный входной порт появляется на блоке.
Чтобы задать начальные условия dx/dt состояния как параметры блоков, используйте Initial condition source dx/dt выпадающее меню, чтобы выбрать internal
и введите значение в поле Initial condition dx/dt.
Чтобы обеспечить начальные условия из внешнего источника для state dx/dt, задайте Initial condition source dx/dt как external
. Дополнительный входной порт появляется на блоке.
Если вы принимаете решение использовать внешний источник для обоих начальных условий состояния, ваш блок появляется следующим.
Примечание
Simulink не позволяет начальные значения условия inf
или NaN
.
Если вы ограничиваете x состояния или утверждаете dx/dt путем определения пределов насыщения (см. Limiting the States), и одно или несколько начальных условий находятся вне соответствующих пределов, то соответствующие состояния инициализируются к самому близкому допустимому значению, и набор сопоставимых начальных условий вычисляется.
Ограничение Штатов
При моделировании системы второго порядка вы, возможно, должны ограничить состояния блока. Например, движением поршня в цилиндре управляет Второй Закон Ньютона и имеет ограничения на положение поршня (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 the Second-Order Integrator Limited диалогового окна блока. Можно вручную установить этот параметр, Limit 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 (верхний или ниже), t L является временем, когда dx/dt достигает этого предела и x, L является значением 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 достигает одного из своих пределов, это сохранено в том пределе and dx/dt, обнуляется.
Каждый раз, когда оба достигают их соответствующих пределов одновременно, поведение x состояния заменяет поведение dx/dt, чтобы обеспечить непротиворечивость состояний.
Когда вы ограничиваете оба состояния, можно принять решение повторно инициализировать dx/dt в то время, когда x состояния достигает насыщения. Если повторно инициализированное значение находится вне заданных пределов на dx/dt, то dx/dt повторно инициализируется к самому близкому допустимому значению, и непротиворечивое множество начальных условий вычисляется. Смотрите Переинициализацию dx/dt, Когда x Достигнет Насыщения
Сброс состояния
Блок может сбросить свои состояния к заданным начальным условиям на основе внешнего сигнала. Чтобы заставить блок сбрасывать свои состояния, выберите один из выбора External reset на панели Attributes. Триггерный порт появляется на блоке ниже его входного порта и указывает на триггерный тип.
Выберите rising
сбрасывать состояния, когда сигнал сброса повышается от нуля до положительного значения от отрицания до положительного значения или отрицательной величины, чтобы обнулить.
Выберите falling
сбрасывать состояния, когда сигнал сброса падает от положительного значения, чтобы обнулить от положительного до отрицательной величины, или от нуля до отрицания.
Выберите either
сбрасывать состояния, когда сигнал сброса изменяется от нуля до ненулевого значения или изменяет знак.
Порт сброса имеет прямое сквозное соединение. Если блок выход возвращается в этот порт, или непосредственно или через серию блоков с прямым сквозным соединением, алгебраический цикл заканчивается (см. Алгебраические Концепции Цикла).
Включение обнаружения пересечения нулем
Этот параметр управляет, включено ли обнаружение пересечения нулем для этого блока. По умолчанию параметр Enable zero-crossing detection является выбранным On панели Attributes. Однако этот параметр находится только во влиянии, если Zero-crossing control, на панели Solver диалогового окна Configuration Parameters, установлен в Use local settings
. Для получения дополнительной информации смотрите Обнаружение Пересечения нулем.
Переинициализация dx/dt, когда x достигает насыщения
Для определенных приложений моделирования должен быть повторно инициализирован dx/dt, когда x состояния достигает своих пределов для того, чтобы вытащить x из насыщения сразу. Можно достигнуть этого путем выбора Reinitialize dx/dt when x reaches saturation на панели Attributes.
Если эта опция идет, то в момент, когда x достигает насыщения, Simulink Check, позволяет ли текущее значение условия начальной буквы dx/dt (параметр или сигнал) x состояния сразу оставить насыщение. Если так, Simulink повторно инициализирует dx/dt состояния значением начального условия (параметр или сигнал) в тот момент. В противном случае Simulink игнорирует этот параметр в текущий момент и обнуляет dx/dt, чтобы сделать состояния блока сопоставимыми.
Этот параметр только применяется в то время, когда x на самом деле достигает предела насыщения. Это не применяется ни в какое будущее время, когда x сохранен в насыщении.
Обратитесь к разделам по ограничению состояний для получения дополнительной информации. Для примера смотрите Симуляцию Прыгающего мяча.
Игнорирование пределов состояния и внешнего сброса для линеаризации
Для случаев, где вы упрощаете свою модель путем линеаризации его, у вас может быть игнорирование Simulink пределы состояний и внешнего сброса путем выбора Ignore state limits and the reset for linearization.
Определение абсолютной погрешности для блока Выходные параметры
Simulink по умолчанию программное обеспечение использует значение абсолютной погрешности, заданное в диалоговом окне Configuration Parameters (см. Ошибочные Допуски к Решателям Переменного Шага) вычислить выход блоков интегратора. Если это значение не обеспечивает достаточный контроль ошибок, задайте больше соответствующего значения для x состояния в поле Absolute tolerance x и для dx/dt состояния в поле Absolute tolerance dx/dt диалогового окна параметра. Simulink использует значения, которые вы задаете, чтобы вычислить значения состояния блока.
Определение отображения выходных портов
Можно управлять, отобразить ли x или выходной порт dx/dt с помощью ShowOutput
параметр. Можно отобразить один выходной порт или обоих; однако, необходимо выбрать по крайней мере один.
Определение имен состояния
Можно задать имя состояний x и состояний dx/dt с помощью StateNameX
и StateNameDXDT
параметры. Однако необходимо задать имена для обоих или ни одного; вы не можете задать имена для только x или только dx/dt. Оба имени состояния должны иметь идентичный тип и длину. Кроме того, количество имен должно равномерно разделить количество состояний.
Выбор всех опций
Когда вы выбираете все опции, значок блока выглядит так.
Порты
Входной параметр
развернуть все
u
— Входной сигнал u
скаляр | вектор | матрица
Входной сигнал u
к системе интегратора в виде скаляра, вектора или матрицы.
Типы данных: double
x0
— Начальное условие x0
скаляр | вектор | матрица
Внешний сигнал, задающий начальное условие x0
к системе интегратора. Можно задать начальное условие как скаляр, вектор или матрицу.
Зависимости
Чтобы включить этот входной порт, установите параметр Initial condition source x на external
.
Типы данных: double
dx0
— Начальное условие dx0
скаляр | вектор | матрица
Внешний сигнал, задающий начальное условие dx0
к системе интегратора. Можно задать начальное условие dx0
как скаляр, вектор или матрица.
Зависимости
Чтобы включить этот входной порт, установите параметр Initial condition source dx/dt на external
.
Типы данных: double
Вывод
развернуть все
x
— Выходной сигнал x
скаляр | вектор | матрица
x
выходной сигнал состояния, обеспеченный как скаляр, вектор или матрица.
Типы данных: double
dx
— Выходной сигнал dx
скаляр | вектор | матрица
dx
выходной сигнал состояния в виде скаляра, вектора или матрицы.
Типы данных: double
Параметры
развернуть все
x
Initial condition source x
— Источник начального условия для x состояния
internal
(значение по умолчанию) | external
Задайте источник начальных условий для x состояния.
internal
— Получите начальные условия x состояния от параметра Initial condition x.
external
— Получите начальные условия x состояния от внешнего блока, соединенного с входным портом X0.
Ограничения
Программное обеспечение Simulink не позволяет начальному условию этого блока быть inf
или NaN
.
Зависимости
Выбор internal
включает параметр Initial condition x и удаляет входной порт X0.
Выбор external
отключает параметр Initial condition x и включает входной порт X0.
Программируемое использование
Параметры блоков: ICSourceX |
Ввод: вектор символов, строка |
Значения: 'internal' | 'external' |
Значение по умолчанию: 'internal' |
Initial condition x
— Начальное условие x состояния
0.0
(значение по умолчанию) | скаляр | вектор | матрица
Задайте начальное условие x состояния.
Ограничения
Программное обеспечение Simulink не позволяет начальному условию этого блока быть inf
или NaN
.
Зависимости
Чтобы включить этот параметр, установите Initial condition source x на internal
.
Установка Initial condition source x к external
отключает этот параметр и включает входной порт X0.
Программируемое использование
Параметры блоков: ICX |
Ввод: вектор символов, строка |
Значения: скаляр | вектор | матрица |
Значение по умолчанию: '0.0' |
Limit x
— Предельные значения x состояния
off
| on
Предельное состояние x блока к значению между Lower limit x и параметрами Upper limit x. Значением по умолчанию блока Second-Order Integrator является off
. Значением по умолчанию Second-Order Integrator Limited является on
.
Чтобы ограничить x состояния значением между Lower limit x и параметрами Upper limit x, установите этот флажок.
Чтобы удалить ограничения области значений на x состояния, снимите этот флажок.
Зависимости
Установка этого флажка включает параметры Lower limit x и Upper limit x.
Программируемое использование
Параметры блоков: LimitX |
Ввод: вектор символов, строка |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' (Second-Order Integrator) | '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' (Second-Order Integrator) |
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' (Second-Order Integrator) |
Wrap x
— Позвольте перенестись x
off
(значение по умолчанию) | on
Позвольте перенестись x между параметрами Wrapped lower value x и Wrapped upper value x. Включение переноса x избавляет от необходимости обнаружение пересечения нулем, уменьшает сброс решателя, улучшает производительность решателя и точность, и увеличивает промежуток времени симуляции при моделировании ротационных и циклических траекторий состояния.
Если вы задаете Wrapped upper value x как inf
и Wrapped lower value x как -inf
, перенос никогда не будет происходить.
Зависимости
Установка этого флажка включает Wrapped upper value x и Wrapped lower value 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, Simulink использует значение абсолютной погрешности в диалоговом окне 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, но вы не можете задать больше имен than 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' | 'external' |
Значение по умолчанию: '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 блока к значению между параметрами Upper limit dx/dt и Lower limit dx/dt. Значением по умолчанию блока Second-Order Integrator является off
. Значением по умолчанию Second-Order Integrator Limited является on
.
Совет
Если вы устанавливаете пределы насыщения для x, то интервал, заданный Upper limit dx/dt и Lower limit dx/dt, должен содержать нуль.
Зависимости
Установка этого флажка включает параметры Lower limit dx/dt и Upper limit dx/dt.
Программируемое использование
Параметр: LimitDXDT |
Ввод: символьный вектор |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' (Second-Order Integrator) | '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
, затем Simulink использует значение абсолютной погрешности в диалоговом окне Configuration Parameters (см. Панель Решателя) вычислить dx/dt выход блока.
Если вы вводите числовое значение, то значение заменяет абсолютную погрешность в диалоговом окне Configuration Parameters.
Программируемое использование
Параметры блоков: AbsoluteToleranceDXDT |
Ввод: вектор символов, строка, скаляр или вектор |
Значения: 'auto' | '-1' | любой положительный действительный скаляр или вектор |
Значение по умолчанию: 'auto' |
State name dx/dt
— Назовите для dx/dt состояния
' '
(значение по умолчанию) | вектор символов | строка
Присвойте уникальное имя, чтобы утвердить dx/dt.
Советы
Чтобы присвоить имя к одному состоянию, введите имя между кавычками, например, 'скоростью'.
Чтобы присвоить имена к нескольким состояниям dx/dt, введите разграниченный запятой список, окруженный фигурными скобками, например, {'b', 'c'}. Каждое имя должно быть уникальным.
Имена состояния применяются только к выбранному блоку.
Если вы задаете имя состояния для dx/dt, необходимо также задать имя состояния for x.
Имена состояния для x и dx/dt должны иметь идентичные типы и длины.
Количество состояний должно быть равномерно разделено на количество имен состояния. Можно задать меньше имен, чем состояния dx/dt, но вы не можете задать больше имен, чем состояния dx/dt. Например, можно задать два имени в системе с четырьмя состояниями. Имя применяется к первым двум состояниям и второму имени к последним двум состояниям. Однако необходимо быть сопоставимыми и применить ту же схему к именам состояния для x.
Чтобы присвоить имена состояния с переменной в рабочем пространстве MATLAB, введите переменную без кавычек. Переменная может быть вектором символов, строкой или массивом ячеек.
Программируемое использование
Параметры блоков: StateNameDXDT |
Ввод: вектор символов, строка |
Значения: ' ' | пользовательский |
Значение по умолчанию: ' ' |
Атрибуты
External reset
— Сбросьте состояния к их начальным условиям
none
(значение по умолчанию) | rising
| falling
| either
Сбросьте состояния к их начальным условиям, когда триггерное событие будет иметь место в сигнале сброса.
none
— Не сбрасывайте состояние к начальным условиям.
rising
— Сбросьте состояние, когда сигнал сброса повысится от нуля до положительного значения или от отрицания до положительного значения.
falling
— Сбросьте состояние, когда сигнал сброса упадет от положительного значения, чтобы обнулить или от положительного до отрицательной величины.
either
— Сбросьте состояние, когда сигнал сброса изменится от нуля до ненулевого значения или изменит знак.
Программируемое использование
Параметры блоков: ExternalReset |
Ввод: вектор символов, строка |
Значения: 'none' | 'rising' | 'falling' | 'either' |
Значение по умолчанию: 'none' |
Enable zero-crossing detection
— Включите обнаружение пересечения нулем
on
(значение по умолчанию) | off
Выберите, чтобы включить обнаружение пересечения нулем. Для получения дополнительной информации смотрите Обнаружение Пересечения нулем.
Программируемое использование
Параметр:
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 |
Ввод: вектор символов, строка |
Значения: 'both' | 'x' | 'dxdt' |
Значение по умолчанию: 'both' |
Характеристики блока
Типы данных | double
|
Прямое сквозное соединение | yes
|
Многомерные сигналы | no
|
Сигналы переменного размера | no
|
Обнаружение пересечения нулем | yes
|
Расширенные возможности
Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.
Не рекомендуемый для кода производственного качества. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко различные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код.
В общем случае рассмотрите использование Модели Simulink Discretizer, чтобы сопоставить непрерывные блоки в дискретные эквиваленты та генерация производственного кода поддержки. Чтобы запустить Discretizer Модели, в Редакторе Simulink, на вкладке Apps, под Apps, под Control Systems, нажимают Model Discretizer. Одним исключением является блок Second-Order Integrator, потому что для этого блока Discretizer Модели производит аппроксимированную дискретизацию.
Введен в R2010a