exponenta event banner

Программная инициализация конструктора системы управления

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

Конфигурации конструктора системы управления

Конструктор систем управления имеет шесть доступных конфигураций систем управления с обратной связью:

1) Стандартный контур обратной связи с компенсатором в прямом тракте и предварительным фильтром.

2) Стандартный контур обратной связи с компенсатором в тракте обратной связи и предварительным фильтром.

3) Обратная компенсация и контур обратной связи с компенсатором в прямом тракте. Эта конфигурация часто используется для ослабления возмущений, которые могут быть измерены до их воздействия на систему.

4) Конфигурация вложенной многолучевой конструкции. Эта конфигурация обеспечивает возможность разделения конструкции на этапы путем изоляции частей контуров управления.

5) Стандартная структура управления внутренней моделью (IMC).

6) Конфигурация каскадной многолучевой конструкции. Эта конфигурация обеспечивает возможность разделения конструкции на этапы путем изоляции частей контуров управления.

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

Инициализация конструктора системы управления

В этом примере создайте структуру инициализации проекта со следующими параметрами:

  • Конфигурация обратной связи 4

  • Завод G со значением tf (1, [1,1])

  • Корневой локус и модовые редакторы для внешнего разомкнутого контура

  • Редактор Николса для внутреннего разомкнутого цикла

Создайте структуру инициализации проекта для конфигурации 4 с помощью sisoinit команда.

s = sisoinit(4)
             Name: ''
    Configuration: 4
      Description: 'Design snapshot.'
     FeedbackSign: [2x1 double]
            Input: {4x1 cell}
           Output: {2x1 cell}
         LoopView: [10x1 sisodata.looptransfer]
                G: [1x1 sisodata.system]
                H: [1x1 sisodata.system]
               C1: [1x1 sisodata.TunedZPKSnapshot]
               C2: [1x1 sisodata.TunedZPKSnapshot]
              OL1: [1x1 sisodata.TunedLoopSnapshot]
              OL2: [1x1 sisodata.TunedLoopSnapshot]

В структуре инициализации s, компоненты модели системы:

  • Компенсатор внешнего контура - C1

  • Компенсатор внутреннего контура - C2

  • Динамика установки - G

  • Динамика датчика - H

Конфигурации редактора циклов для системы:

  • Внешний контур - OL1

  • Внутренний контур - OL2

Укажите значение завода.

s.G.Value = tf(1,[1,1]);

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

s.OL1.Name = 'Outer Loop';
s.OL1.View = {'rlocus','bode'};
s.OL2.Name = 'Inner Loop';
s.OL2.View = {'nichols'};

Откройте конструктор системы управления с помощью структуры инициализации.

controlSystemDesigner(s)

Создание пользовательской функции инициализации

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

function mycustomcontrolsysdesignerfcn(G)
% mycustomcontrolsysdesignerfcn(G)
%
% Creates the following Control System Designer session:
%   1) Configuration 4 with the plant specified by G
%   2) Root locus and bode editors for the outer-loop
%   3) Bode editor for the inner-loop.

%   Copyright 1986-2005 The MathWorks, Inc. 

% Create initialization object with configuration 4
s = sisoinit(4);

% Set the value of the plant
s.G.Value = G;

% Specify the editors for the Open-Loop Responses
s.OL1.View = {'rlocus','bode'};
s.OL2.View = {'nichols'};

controlSystemDesigner(s)

Для открытия конструктора систем управления с помощью этой функции введите:

mycustomcontrolsysdesignerfcn (G)