operpoint

Создайте рабочую точку для модели Simulink

Синтаксис

Описание

пример

op = operpoint(mdl) возвращает рабочую точку модели mdl Simulink®. Можно вычислить линейную модель системы в этой рабочей точке с помощью linearize функция.

Примеры

свернуть все

Открытая модель Simulink.

open_system('magball')

Создайте рабочую точку для модели.

op = operpoint('magball')
 Operating point for the Model magball.
 (Time-Varying Components Evaluated at time t=0)

States: 
----------
(1.) magball/Controller/PID Controller/Filter/Cont. Filter/Filter
      x: 0            
(2.) magball/Controller/PID Controller/Integrator/Continuous/Integrator
      x: 14           
(3.) magball/Magnetic Ball Plant/Current
      x: 7            
(4.) magball/Magnetic Ball Plant/dhdt
      x: 0            
(5.) magball/Magnetic Ball Plant/height
      x: 0.05         

Inputs: None 
----------

op списки каждый блок в модели, которая имеет состояния. Нет никакого импорта корневого уровня в этой модели, поэтому op не содержит входные параметры.

Можно создать новые переменные рабочей точки тремя способами:

  • Используя operpoint функция

  • Используя присвоение с равнянием (=оператор

  • Используя copy функция

Используя = оператор приводит к соединенным переменным что обе точки к тем же базовым данным. Используя copy функционируйте результаты в независимом объекте рабочей точки. В этом примере создайте объекты рабочей точки оба пути и исследуйте их поведение.

mdl = 'watertank';
open_system(mdl);
op1 = operpoint(mdl)
 Operating point for the Model watertank.
 (Time-Varying Components Evaluated at time t=0)

States: 
----------
(1.) watertank/PID Controller/Integrator/Continuous/Integrator
      x: 0            
(2.) watertank/Water-Tank System/H
      x: 1            

Inputs: None 
----------

Создайте новый объект рабочей точки использование присвоения с = оператор.

op2 = op1;

op2 объект рабочей точки что точки к тем же базовым данным как op1. Из-за этой ссылки вы не можете независимо изменить свойства двух объектов рабочей точки. Чтобы видеть это, измените свойство op2. Например, измените значение для первого состояния с 0 до 2. Изменение показывает в States раздел отображения.

op2.States(1).x = 2
 Operating point for the Model watertank.
 (Time-Varying Components Evaluated at time t=0)

States: 
----------
(1.) watertank/PID Controller/Integrator/Continuous/Integrator
      x: 2            
(2.) watertank/Water-Tank System/H
      x: 1            

Inputs: None 
----------

Исследуйте отображение op1 видеть что соответствующее значение свойства op1 также изменения от 0 до 2.

op1
 Operating point for the Model watertank.
 (Time-Varying Components Evaluated at time t=0)

States: 
----------
(1.) watertank/PID Controller/Integrator/Continuous/Integrator
      x: 2            
(2.) watertank/Water-Tank System/H
      x: 1            

Inputs: None 
----------

Чтобы создать независимую копию объекта рабочей точки, используйте copy функция.

op3 = copy(op1);

Теперь, когда вы изменяете свойство op3, op1 не изменяется. Например, измените значение для первого состояния от 2 до 4.

op3.States(1).x = 4
 Operating point for the Model watertank.
 (Time-Varying Components Evaluated at time t=0)

States: 
----------
(1.) watertank/PID Controller/Integrator/Continuous/Integrator
      x: 4            
(2.) watertank/Water-Tank System/H
      x: 1            

Inputs: None 
----------

В op1, соответствующее значение остается 2.

op1.States(1).x
ans = 2

Это поведение копии происходит, потому что объект рабочей точки является объектом указателя. Для получения дополнительной информации об объектах указателя, смотрите Поведение объекта Указателя.

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

свернуть все

Имя модели Simulink в виде вектора символов или строки. Модель должна быть в текущей рабочей папке или на пути MATLAB®.

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

свернуть все

Рабочая точка, возвращенная как рабочая точка, возражает со следующими свойствами.

СвойствоОписание
ModelИмя модели Simulink, возвращенное как вектор символов.
States

Рабочая точка состояния, возвращенная как вектор из объектов состояния. Каждая запись в States представляет поддерживаемые состояния одного блока Simulink.

Для списка поддерживаемых состояний для объектов рабочей точки смотрите состояния Модели Simulink, Включенные в Объект Рабочей точки.

Примечание

Если блок имеет несколько именованных непрерывных состояний, States содержит одну структуру для каждого именованного состояния.

Каждый объект состояния имеет следующие поля:

Поле Описание
Nx Только для чтения

Количество состояний в блоке

Block

Блок path, возвращенный как вектор символов.

StateName

Имя состояния

x

Значения всех поддерживаемых состояний блока, возвращенных как вектор из длины Nx.

Ts

Шаг расчета и смещение каждого поддерживаемого состояния блока, возвращенного как вектор. Для систем непрерывного времени, Ts нуль.

SampleType

Уровень времени состояния, возвращенный как одно из следующего:

  • 'CSTATE' — Состояние непрерывного времени

  • 'DSTATE' — Состояние дискретного времени

inReferencedModel

Отметьте указание, является ли блок в образце модели, возвращенном как одно из следующего:

  • 1 — Блок в образце модели.

  • 0 — Блок находится в файле текущей модели.

Description

Описание состояния блока, возвращенное как вектор символов.

Inputs

Уровень на входе в рабочей точке, возвращенной как вектор из входных объектов. Каждая запись в Inputs представляет уровни на входе одного блока импорта корневого уровня в модели.

Каждый входной объект имеет следующие поля:

Поле Описание
Block

Имя блока Inport

PortWidth

Количество блоков-сигналов импорта

PortDimensions

Размерность сигналов принята импортом

u

Уровни на входе блока Inport в рабочей точке, возвращенной как вектор из длины PortWidth.

Description

Блок Inport ввел описание, возвращенное как вектор символов.

Time

Времена, в которые выполнены любые изменяющиеся во времени функции в модели, возвратились как вектор.

Version

Номер версии объекта

Советы

  • Можно создать новый operpoint переменные тремя способами:

    • Создайте новый объект с operpoint команда.

    • Создайте новую переменную присвоением с равнянием (=) оператор.

    • Скопируйте operpoint объект с помощью copy команда.

    Используя operpoint или copy создает новый, независимый объект. Когда вы используете присвоение, существует ссылка между старой и новой переменной. Для примера см. Копию Рабочая точка.

Альтернативная функциональность

operpoint функция возвращает рабочую точку с текущим состоянием и входными значениями модели. Чтобы создать рабочую точку, которая выполняет вашим требованиям к приложению, используйте findop функция. Для получения дополнительной информации смотрите, Вычисляют Установившиеся Рабочие точки.

Смотрите также

| | | |

Представлено до R2006a