getxu

Состояния и входные параметры от рабочих точек

Синтаксис

x = getxu(op)
[x,u] = getxu(op)
[x,u,xstruct] = getxu(op)

Описание

x = getxu(op) извлекает вектор из значений состояния, x, от объекта рабочей точки, op.

[x,u] = getxu(op) также извлекает вектор из входных значений, u, от объекта рабочей точки. Упорядоченное расположение входных параметров в u соответствует нумерации входного порта корневого уровня в Simulink®.

[x,u,xstruct] = getxu(op) также извлекает структуру значений состояния, xstruct, от объекта рабочей точки. Структура значений состояния, xstruct, имеет тот же формат, как это возвратилось из симуляции Simulink.

Примеры

свернуть все

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

op = operpoint('magball');

Просмотрите состояния в рабочей точке.

op.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         

Извлеките векторы из и входных значений состояния и структуры состояния от рабочей точки.

[x,u,xstruct] = getxu(op)
x = 5×1

    0.0500
         0
   14.0071
    7.0036
         0

u =

     []
xstruct = struct with fields:
       time: 0
    signals: [1x5 struct]

Просмотрите состояния в структуре состояния.

xstruct.signals
ans=1×5 struct array with fields:
    values
    dimensions
    label
    blockName
    stateName
    inReferencedModel
    sampleTime

values поле показывает значения состояния для рабочей точки. blockName поле показывает имена блока, которые содержат каждое состояние.

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

|

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