Моделирование систем с использованием блока чистого запаздывания | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 4 мая, печатный экземпляр отправим 8 мая.

Опубликовать статью в журнале

Автор:

Рубрика: Технические науки

Опубликовано в Молодой учёный №6 (53) июнь 2013 г.

Статья просмотрена: 2977 раз

Библиографическое описание:

Бильфельд, Н. В. Моделирование систем с использованием блока чистого запаздывания / Н. В. Бильфельд. — Текст : непосредственный // Молодой ученый. — 2013. — № 6 (53). — С. 25-30. — URL: https://moluch.ru/archive/53/7127/ (дата обращения: 25.04.2024).

Рассмотрены особенности моделирования систем с использованием блока чистого запаздывания. Выявлены случаи некорректной работы блока, при времени запаздывания равном нулю. Приведены способы устранения некорректной работы блока. Приведены варианты программной корректировки структурной схемы модели.

При моделировании систем управления в пакете Simulink, как правило, используется блок чистого запаздывания, так как большинство реальных объектов обладает этим запаздыванием. Пример такой модели приведен на рисунке 1.

Рис. 1. Модель замкнутой системы управления (Z1)

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

Рис. 2. Настройки блока чистого запаздывания

Timedelay — время запаздывания в секундах.

Initialinput — начальное значение входного сигнала.

Initialbuffersize — размер буфера для хранения сигнала задержки.

Padeorder — Порядок рада Паде для аппроксимации выходного сигналя.

В данном случае, время чистого запаздывания задается идентификатором ZP. Обозначив, таким образом, переменные модели идентификаторами удобно управлять моделями из M-файлов.

Возьмем объект с передаточной функцией:

Оптимальные настройки ПИ — регулятора для данного объекта составляют Кр=2,6; Ти=7,5.

Напишем следующий М-файл:

%открываем модель

openZ1

% параметры передаточной функции

W1_C= [1]; W1_Z= [50 20 1];

% параметры регулятора

Kr1=2.6; Ti1=7.5; Td1=0;

% значение запаздывания

ZP=5;

% запускаем модель

simZ1

% строимграфик

G1=GR1(:,2); figure; plot(tout,G1, 'b'),grid;

Выполнив файл, получим график переходного процесса, приведенный на рисунке 3.

Рис. 3. Переходный процесс для передаточной функции W1(s)

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

Оптимальные настройки ПИ — регулятора составляют Кр=20; Ти=0.3. Изменим соответствующие строки M-файла:

% параметры регулятора

Kr1=20; Ti1=0.3; Td1=0;

% значение запаздывания

ZP=0

В результате получим переходный процесс, приведенный на рисунке 4.

Рис. 4. Переходный процесс для передаточной функции W2(s)

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

Проверим это утверждение. Сформируем переходный процесс аналитическим способом. Для этого напишем M-файл со следующими командами:

% Передаточная функция объекта

Wo=tf([1], [50 20 1])

% Передаточная функция регулятора

Wp=tf([6 1], [0.3 0])

% Передаточная функция замкнутой системы

Wc=Wo/(1+Wo*Wp)

% Строим график

step(Wc,100),grid

В результате получим переходный процесс, приведенный на рисунке 5.

Рис. 5. Переходный процесс

Как видно их рисунка 5 переходный процесс является затухающим. Дело в том, что колебания в процесс вносит блок чистого запаздывания при нулевом значении времени запаздывания. К сожалению, это недоработка разработчиков пакета MATLAB. Не помогает также установка в ноль параметра Padeorder (количество членов ряда Пада).

Можно рассмотреть два варианта, чтобы обойти эту проблему.

Первый вариант — это программно добавлять и удалять блок чистого запаздывания в зависимости от значения времени запаздывания. Фрагмент, реализующий этот вариант, приведен в следующем М-файле:

ZP=5;

f=find_system('Z2', 'BlockType', 'TransportDelay')

u=char(f);L=length(u);

if (ZP==0) & (L==5)

%удаляем блок чистого запаздывания

delete_block('Z2/Z1');

delete_line('Z2', [300 40]);

delete_line('Z2', [355 40]);

add_line('Z2', [280 40;400 40]);

add_line('Z2', [380 40;380 130; 230 130]);

end

if (ZP>0) & (L==0)

%устанавливаем блок чистого запаздывания

delete_line('Z2', [365 40])

add_block('simulink/Continuous/Transport Delay','Z2/Z1','delay','ZP')

set_param('Z2/Z1','Position', [320 25 350 55])

add_line('Z2', [285 40;320 40])

add_line('Z2', [350 40;410 40])

add_line('Z2', [380 40;380 130; 230 130])

end

Если ZP>0 то модель будет выглядеть как на рисунке 1. Если ZP=0 блок чистого запаздывания автоматически удалится, и модель будет выглядеть, как показано на рисунке 6.

Рис. 6. Модель с удаленным блоком (Z2)

Хотя фрагмент M-файла и является рабочим, и тестировался автором на реальной модели — это не самый лучший вариант. Его можно повторить только на конкретной модели, где координаты, по которым размещены блоки и соединительные линии имеют конкретные значения. В противном случае придется менять все координаты под свою модель.

Второй вариант заключается в байпасировании блока чистого запаздывания. Поместим в модель еще два усилителя B1 и B2, как показано на рисунке 7.

Рис. 7. Модель замкнутой системы управления (Z3)

В приведенной модели от значений коэффициентов B1 и B2, будет зависеть, по какому «пути» пойдет сигнал. Если B1=1 и B2=0 сигнал пойдет через блок запаздывания. Если B1=0 и B2=1 сигнал пойдет в обход блока запаздывания. Остается только проанализировать значение времени запаздывания ZP и в зависимости от него установить коэффициенты B1 и B2.

Для этого напишем следующий фрагмент M-файла.

% значение запаздывания

ZP=0;

if ZP==0

B1=0; B2=1;

else

B1=1; B2=0;

end

% запускаем модель

sim Z3

Если выполнить данный M-файл, получим переходный процесс, приведенный на рисунке 8.

Рис. 8. Переходный процесс в модифицированной модели

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

Литература:

1.                 Ротач В. Я. Теория автоматического управления теплоэнергетическими процессами. М.: Энергоатомиздат, 1985. 296 с.

2.                 Ануфриев И. Е. MATLAB 7 / И. Е. Ануфриев, А. Б. Смирнова, Е. Н. Смирнова.– СПб.: БХВ-Петербург, 2005.– 1104 с.

3.                 Черных И. В. Моделирование электротехнических устройств в MATLAB, SimPowerSystem и Simulink. Питер ДМК, 2008..– 286 с.

Основные термины (генерируются автоматически): переходный процесс, чистое запаздывание, Передаточная функция, модель, рисунок, блок, значение запаздывания, MATLAB, некорректная работа блока, оптимальная настройка ПИ.


Похожие статьи

Виртуальный анализатор качества нефти на СИКН

При моделировании САР в пакете MATLAB Simulink, передаточная функция участка трубопровода приближенно описывалась апериодическим звеном первого порядка с чистым запаздыванием (3)

Оценивание параметра задержки, не управляемое решениями

Описание модели Matlab.

Эти блоки представлены на рисунке 3 и 4. Рис. 3. Содержимое блока INFORMATION.

2. Шульгин В. И. Основы работы с Simulink Matlab, 2010.

Система управления термическим объектом идентификации...

Передаточные функции САУ

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

Алгоритмы настройки для гибридной системы управления с запаздыванием.

Технологические объекты второго порядка с запаздыванием

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

Для осуществления требуется в схеме с наблюдателем переместить суммарное запаздывание за динамическую часть модели объекта.

Анализ передаточной функции структурной схемы вентильного...

вентильный двигатель, передаточная функция, MATLAB, структурная схема, структурная схема двигателя, линейное алгебраическое уравнение, метод Гаусса, рисунок, символьный вид, переходной процесс скорости двигателя.

Использование команд MATLAB — от версии к версии

Опять же в MATLAB 7.11 корректно работает фрагмент: step(W1,T,'r'); step(W2,T,'b'); и каждый график выводится указанным цветом.

3. Бильфельд Н. В. Моделирование систем с использованием блока чистого запаздывания.

Сравнение методов настройки ПИД-регулятора при колебаниях...

В работах [1], [4], [5] сравниваются методы настройки ПИ- и ПИД-регуляторов в САР, функционирующих в условиях параметрических возмущений (изменений значений передаточной функции объекта управления).

Моделирование передачи данных через трехфазный каротажный...

Схема модели, собранной для проверки работы модуля автокорреляции показана на рис. 7. Как видно на рисунке, блок автокорреляции включен через пороговый элемент к

Похожие статьи. Использование математических пакетов Matlab & Simulink при разработке цифровых фильтров.

Реализация модели приёмника 4-позиционного...

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

Разработка имитационной модели процесса ровности в среде MATLAB&Simulink.

Похожие статьи

Виртуальный анализатор качества нефти на СИКН

При моделировании САР в пакете MATLAB Simulink, передаточная функция участка трубопровода приближенно описывалась апериодическим звеном первого порядка с чистым запаздыванием (3)

Оценивание параметра задержки, не управляемое решениями

Описание модели Matlab.

Эти блоки представлены на рисунке 3 и 4. Рис. 3. Содержимое блока INFORMATION.

2. Шульгин В. И. Основы работы с Simulink Matlab, 2010.

Система управления термическим объектом идентификации...

Передаточные функции САУ

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

Алгоритмы настройки для гибридной системы управления с запаздыванием.

Технологические объекты второго порядка с запаздыванием

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

Для осуществления требуется в схеме с наблюдателем переместить суммарное запаздывание за динамическую часть модели объекта.

Анализ передаточной функции структурной схемы вентильного...

вентильный двигатель, передаточная функция, MATLAB, структурная схема, структурная схема двигателя, линейное алгебраическое уравнение, метод Гаусса, рисунок, символьный вид, переходной процесс скорости двигателя.

Использование команд MATLAB — от версии к версии

Опять же в MATLAB 7.11 корректно работает фрагмент: step(W1,T,'r'); step(W2,T,'b'); и каждый график выводится указанным цветом.

3. Бильфельд Н. В. Моделирование систем с использованием блока чистого запаздывания.

Сравнение методов настройки ПИД-регулятора при колебаниях...

В работах [1], [4], [5] сравниваются методы настройки ПИ- и ПИД-регуляторов в САР, функционирующих в условиях параметрических возмущений (изменений значений передаточной функции объекта управления).

Моделирование передачи данных через трехфазный каротажный...

Схема модели, собранной для проверки работы модуля автокорреляции показана на рис. 7. Как видно на рисунке, блок автокорреляции включен через пороговый элемент к

Похожие статьи. Использование математических пакетов Matlab & Simulink при разработке цифровых фильтров.

Реализация модели приёмника 4-позиционного...

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

Разработка имитационной модели процесса ровности в среде MATLAB&Simulink.

Задать вопрос