3498 ИСПОЛЬЗОВАНИЕ ПАКЕТА VISSIM ДЛЯ ИССЛЕДОВАНИЯ НЕЛИНЕЙНЫХ СИСТЕМ УПРАВЛЕНИЯ

ПРЕДИСЛОВИЕ

 

Указания содержат сведения, необходимые для анализа нелинейных динамических систем  управления любого вида с помощью пакета VisSim [1]. Как известно, не существует общих методов анализа нелинейных систем [2,3]. Устойчивость автономной линейной системы можно всегда определить, например, с помощью критерия Найквиста. Если же автономная система является нелинейной, то с помощью метода гармонической линеаризации, например, не всегда можно ответить на вопрос о её устойчивости. Для этого придётся обратиться к другим методам, но ни один из них не является универсальным. Для нелинейных систем особую актуальность приобретает проблема имитационного (компьютерного) моделирования; что касается систем высокого порядка с более чем одной нелинейностью (обычная ситуация для реальных физических систем), то моделирование является возможным единственным методом определения их характеристик.

Пакет VisSim позволяет осуществить визуальное моделирование систем управления, структура которых содержит самые разнообразные нелинейности: статические (безынерционные) и динамические, с однозначными и неоднозначными характеристиками, типовыми и пользовательскими. При написании данных указаний составители предполагали, что читатель знаком с технологиями построения блок-схем (визуальных моделей) систем управления в пакете VisSim [1].

1. БИБЛИОТЕКА БЛОКОВ VISSIM

В пакете VisSim вы строите модели систем управления в виде блок-схем (визуальных моделей), основными компонентами которых являются так называемые блоки. Причём каждый блок представляет собой графический символ специфической математической функции. Эта функция (уравнение) может быть  простой, как, например, синусоидальная функция, так и сложной, как, например, передаточная функция системы высокого порядка. Библиотека блоков VisSim включает свыше 90 блоков для исследования линейных и нелинейных,   непрерывных  и  дискретных,  стационарных,  нестационарных  и

гибридных (цифровых) систем управления. Она разделена на категории, содержимое которых не может изменяться пользователем. Со структурой библиотеки  можно познакомиться, выбрав команду Blocks из меню модельного окна VisSim [1]. При этом появляется список категорий блоков. Указав курсором мыши на интересующую вас категорию, например на категорию Nonlinear, вы получаете доступ к списку блоков, входящих в эту категорию, в рассматриваемом случае в категорию Nonlinear. В данных указаниях нас будут интересовать в основном блоки, входящие в категории  Arithmetic (арифметические), Nonlinear (нелинейные) и Signal Consumer (регистраторы сигналов). Дело в том, что блоки из других категорий, которые будут использованы нами для построения блок-схем нелинейных систем управления, в основном  описаны в [1].

1.1. КАТЕГОРИЯ NONLINEAR

 

Несмотря на своё название, категория Nonlinear содержит не только  нелинейные, но и другие универсальные блоки, которые могут быть использованы при построении моделей различных типов. Рассмотрим некоторые нелинейные блоки из этой категории.

1.1.1. Блок  deadband (зона нечувствительности) моделирует нелинейный элемент (НЭ) типа зона нечувствительности, описываемый уравнением

(1)

которому соответствует характеристика, представленная на рис. 1. Здесь 2 - зона нечувствительности, - порог чувствительности.

 

 

 

 

 

 

 

 

 

Рис. 1

Чтобы   построить    модель    нелинейного    элемента    типа           зона нечувствительности:

а) укажите на категорию Nonlinear и щёлкните в появляющемся списке над названием deadband. В модельном окне появляется изображение блока deadband в виде прямоугольника со значком, соответствующим характеристике, представленной на рис. 1;

 

Рис. 2

 

 

б) щёлкните правой клавишей мыши над блоком deadband. Появляется диалоговое окно настройки deadband Properties (параметры блока deadband);

в) введите в   текстовое    окно      Dead Band (зона  нечувствительности)

желаемое значение 2, например 2, и нажмите кнопку OK.

Пример использования блока deadband приведён на рис. 2.

1.1.2. Блок limit (ограничение) моделирует нелинейный элемент типа ограничение. Этот элемент описывается уравнением

(2)

и ему соответствует при   характеристика, представленная на рис. 3.

 

 

Рис. 3

Нелинейный элемент  данного типа   ограничивает выходной сигнал нижним  и верхним  пределами. Если входной сигнал меньше нижнего предела, то выход равен нижнему пределу. Аналогично, если вход больше верхнего предела, то выход равен верхнему пределу. Если же вход лежит внутри диапазона, ограниченного этими пределами, то выход повторяет вход.

Диалоговое окно настройки  блока (рис. 4) имеет два текстовых окна.

 

 

 

 

Рис. 4                                                                                      Рис. 5

 

Для установки параметров этого блока введите в текстовые окна  Lower Bound (нижний предел) и Upper Bound (верхний предел)  соответственно желаемые значения нижнего и верхнего пределов и нажмите кнопку OK. Результат симуляции (динамического моделирования) блока при гармоническом входном сигнале для   = -0,5,  =0,5 показан на рис. 5.

Замечание. При  нелинейный элемент типа ограничение называется элементом  типа насыщение.

1.1.3. Блок  relay (трёхпозиционное  реле  без гистерезиса)   предназначен

для моделирования нелинейного элемента типа  трёхпозиционное реле без гистерезиса, которое описывается уравнением

 

 

(3)

 

 

При этом характеристика такого нелинейного элемента (рис. 6) показывает, что если вход  меньше, чем половина отрицательного значения зоны нечувствительности -2, то выход блока relay равен -1; если вход больше

 

Рис. 6

половины  положительного значения зоны нечувствительности 2, то выход блока relay равен 1; если вход  блока  лежит  внутри зоны    нечувствительности (-,), то выход блока relay равен 0.

Диалоговое окно настройки блока relay (рис. 7) содержит одно текстовое окно Dead Band (зона нечувствительности). Чтобы подготовить блок к симуляции, введите в последнее окно желаемое значение зоны нечувствительности 2 и нажмите кнопку OK.

 

Рис. 7

По умолчанию =0 и при этом блок моделирует идеальное трехпозиционное реле, уравнение которого имеет вид

 

(4)

Замечание. Для моделирования идеального трехпозиционного реле удобно использовать  также    блок  sign (знак),   который  входит  в  категорию     Arithmetic (арифметические блоки) и который не имеет параметров.

Используя соединения рассмотренных блоков, можно построить блок-схемы, моделирующие другие типовые нелинейности.

1.1.4. Охват блока relay с зоной нечувствительности 2 положительной обратной связью с передаточной функцией  (рис. 8) при  эквивалентен модели трехпозиционного реле с зоной нечувствительности 2 и гистерезисом, определяемым значением  при 0<<. Характеристика такого реле имеет вид, изображенный на рис. 9.

 

Рис. 8

 

Рис. 9                                       Рис. 10

Замечание. Если положить равной нулю зону нечувствительности блока relay и выбрать коэффициент обратной связи k =, то блок-схема, представленная на рис. 8, будет моделировать двухпозиционное реле с гистерезисом (рис. 10).

1.1.5. Охват отрицательной обратной связью блоков deadband, gain

Рис. 11

(усилитель) с коэффициентом усиления a и integrator (интегратор) (рис. 11) позволяет получить при  модель нелинейного элемента типа люфт.

Этот элемент описывается уравнением

(5)

 

и имеет характеристику, изображенную на рис. 12.

VisSim содержит  составной блок с названием  hyster.bmp (рис.13), построенный в соответствии с рис. 11.  Щелкнув правой клавишей мыши над этим блоком,  получаем блок-схему (рис. 14), из которой следует, что  желаемое значение коэффициента  a=1/(:time constant) можно  ввести   с помощью   блока  /(divide) (делитель), моделирующего уравнение .

Рис. 12                                В отличие от  схемы  на     рис. 11       выходным

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

.  Для  моделирования    уравнения

Рис. 13                           используется блок *(multiply)(умножитель).

Чтобы установить требуемые параметры блока hyster.bmp:

а) выберите из каталога Vissim30/ Toolbox/Controls файл hyster.bmp. Появляется копия блока hyster.bmp (рис. 13);

б) щелкните правой клавишей мыши над этим блоком. Появляется блок-схема (рис. 14), в нижней части которой расположены два блока типа const (постоянная величина), соединенные с блоками типа variable (переменная);

 

 

 

 

 

 

 

 

 

 

 

Рис. 14

 

в) щелкните правой клавишей мыши над  блоком const, соединенным с блоком variable, имеющим название :time constant. В появляющемся диалоговом окне установите малое значение величины :time constant = 1/a. По умолчанию значение этой величины равно 0,01;

г)  щелкните правой клавишей мыши над  блоком const, соединенным с блоком variable, имеющим название :slope. Введите в появляющееся диалоговое окно требуемое значение коэффициента k.  По умолчанию значение этого коэффициента равно 1;

д) щелкните правой клавишей мыши над  блоком deadband и в появляющееся диалоговое окно введите желаемое значение воздушного зазора 2d;

е) нажмите кнопку  OK.

 

1.2. БЛОК PLOT

 

Блок plot (графики) позволяет в процессе динамического моделирования (симуляции) нелинейной системы наблюдать, как изменяются интересующие пользователя сигналы во времени. «Смотровое» окно этого блока  (рис. 15) напоминает экран осциллографа. Размер и пропорции такого окна можно изменять произвольно, перемещая его границы с помощью мыши.

Если щелкнуть правой клавишей мыши над блоком plot, открывается диалоговое окно настройки (рис.16), содержащее 4 вкладки. Рассмотрим каждую                        из вкладок в отдельности.

 

Рис. 15