Инструкция по выполнению работы. Основная часть команд вводится в командном окне среды Matlab
Основная часть команд вводится в командном окне среды Matlab. Команды, которые надо применять в других окнах, обозначены иконками соответствующих программ.
Этап выполнения задания
| Команды и иллюстрации
| 1. Создайте новый m-файл (скрипт) с командами, которые строят модели объекта и входного сигнала:
clear all;
P = tf (1, [1 1]); % объект
R = tf (1, [1 0]); % модель входного сигнала
| 2. Постройте стандартную систему и найдите оптимальный регулятор без ограничений на управление с помощью функции h2opt (файл h2opt.m нужно скопировать в рабочую папку):
sys = [ R -P
R 0];
C = h2opt (sys)
Запустите скрипт, нажав (F5).
| 3. Постройте частотную характеристику полученного регулятора и сделайте выводы.
| bode (C)
| 4. Добавьте в скрипт (в нужное место!) команды для определения установившегося значения сигнала управления и изображения по Лапласу эталонного управляющего сигнала :
uInf = dcgain(tf([1 0],1)*R/P);
U0 = uInf*tf(1, [1 0]);
| 5. Измените стандартную систему с учетом ограничения на мощность сигнала управления
kU = 1;
sys = [ R -P
kU*U0 -kU
R 0];
Снова запустите скрипт (постройте оптимальный регулятор) и постройте частотную характеристику полученного регулятора. Сравните с предыдущим вариантом.
| 6. Запустите Simulink, соберите модель, как показано на рисунке, и сохраните ее под именем lab7sim1.mdl.
Для того, чтобы вывести на осциллограф два сигнала, используйте мультиплексор (блок Mux, группа Singal Routing).
| 7. Установите параметры блоков, как показано на рисунках:
Step Signal Controller Plant
Обратите внимание, что в числитель блока Signal добавлен множитель , поскольку входной сигнал – это единичная ступенька, а не дельта-функция.
| 8. В параметрах осциллографа снимите флажок Limit data points (ограничивать число запоминаемых точек) и установите режим сохранения данных (Save data to workspace) в виде массива (Array) с именем out.
|
| 9. Добавьте в конец скрипта команды для построения числителей и знаменателей отдельных блоков
[nP,dP] = tfdata(P, 'v');
[nR,dR] = tfdata(R, 'v');
[nC,dC] = tfdata(C, 'v');
а также для запуска моделирования
sim('lab7sim1');
и построения графиков
figure(1);
plot(out(:,1), out(:,2), out(:,1), out(:,3));
| 10. Запустите скрипт и перенесите полученный график в отчет.
| 11. Повторите расчеты при и . Сделайте выводы. Закройте файлы (скрипт и модель).
| 12. Теперь будем исследовать замкнутую систему управления судном по курсу. Создайте новый скрипт и добавьте в него команды для построения моделей судна, привода, измерительной системы и входного ступенчатого сигнала:
clear all;
P = tf (0.0694, [18.2 1 0]); % модель судна
H = tf (1, [2 1]); % привод
G = tf (1, [6 1]); % обратная связь
R = tf (1, [1 0]); % модель сигнала
| 13. Добавьте команды для подготовки данных к моделированию
[nP,dP] = tfdata(P, 'v');
[nR,dR] = tfdata(R, 'v');
[nH,dH] = tfdata(H, 'v');
[nG,dG] = tfdata(G, 'v');
| 14. Найдите передаточную функцию оптимального регулятора без учета ограничений на управление:
sys = [ R -P*H
R -P*H*G];
[C,Poles] = h2opt (sys)
| 15. Постройте частотную характеристику полученного регулятора и сделайте выводы.
| bode (C)
| 16. Постройте оптимальный регулятор с ограничением на управление (учитывая, что установившееся значение сигнала управления для объекта с интегратором равно нулю):
kU = 1;
sys = [ R -P*H
0 -kU
R -P*H*G];
[C,Poles] = h2opt (sys)
Приведите в отчете его передаточную функцию и частотную характеристику. Сделайте выводы.
| 17. Запустите Simulink, соберите модель, как показано на рисунке, и сохраните ее под именем lab7sim.mdl.
Для того, чтобы вывести на осциллограф два сигнала, используйте мультиплексор (блок Mux, группа Singal Routing).
| 18. Установите параметры блоков, как показано на рисунках:
Step Signal Controller Actuator Plant Measurement
Обратите внимание, что в числитель блока Signal добавлен множитель , поскольку входной сигнал – это единичная ступенька, а не дельта-функция.
| 19. В параметрах осциллографа снимите флажок Limit data points (ограничивать число запоминаемых точек) и установите режим сохранения данных (Save data to workspace) в виде массива (Array) с именем out. Аналогично для осциллографа Control установите вывод данных в массив u.
|
| 20. Добавьте в скрипт команды для выполнения моделирования
[nC,dC] = tfdata(C, 'v');
sim('lab7sim');
построения графика (эталонный и фактический переходные процессы):
figure(1);
plot(out(:,1), out(:,2), out(:,1), out(:,3));
и расчета интегральных квадратических ошибок по выходу и по управлению (интегрирование методом трапеций, функция trapz):
uInf = 0; % установившееся значение управления
err2 = (out(:,2)-out(:,3)).^2; % квадрат ошибки
errOpt = trapz(out(:,1),err2) % интегральная кв. ошибка
errU2 = (u(:,2) - uInf).^2; % квадрат ошибки по управлению
errU = trapz(u(:,1),errU2) % интегральная кв. ошибка
| 21. Установите время моделирования 100 с (меню Simulation-Simulation parameters-Stop time). Запустите скрипт и скопируйте в отчет полученный график.
| 22. Измените скрипт так, чтобы построить кривую качества системы (зависимость интегральный квадратических ошибок по выходу и управлению для Парето-оптимальных регуляторов):
kU = [0.2 0.25 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.2 1.5 1.7 2];
uInf = 0; % установившееся значение управления
errOut = []; % освободить массивы
errU = [];
for i=1:length(kU)
fprintf('\n%g', kU(i)); % вывод текущего kU
sys = [ R -P % стандартная система
0 -kU(i)
R -P];
[C,Poles] = h2opt (sys); % синтез оптимального регулятора
[nC,dC] = tfdata(C, 'v');
sim('lab7sim'); % моделирование
err2 = (out(:,2)-out(:,3)).^2;
u2 = (u(:,2) - uInf).^2;
errOut(i) = trapz(out(:,1),err2);
errU(i) = trapz(u(:,1),u2);
end;
| 23. После цикла добавьте команды для построения кривой качества
figure(1);
plot(errOut, errU, '-o');
xlabel('Error');
ylabel('Control error');
| 24. Запустите скрипт на выполнение. Скопируйте в отчет полученную кривую качества. Сделайте выводы.
| | | | |
Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...
|
ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при которых тело находится под действием заданной системы сил...
|
Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...
|
Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...
|
Менадиона натрия бисульфит (Викасол) Групповая принадлежность
•Синтетический аналог витамина K, жирорастворимый, коагулянт...
Разновидности сальников для насосов и правильный уход за ними
Сальники, используемые в насосном оборудовании, служат для герметизации пространства образованного кожухом и рабочим валом, выходящим через корпус наружу...
Дренирование желчных протоков Показаниями к дренированию желчных протоков являются декомпрессия на фоне внутрипротоковой гипертензии, интраоперационная холангиография, контроль за динамикой восстановления пассажа желчи в 12-перстную кишку...
|
Внешняя политика России 1894- 1917 гг. Внешнюю политику Николая II и первый период его царствования определяли, по меньшей мере три важных фактора...
Оценка качества Анализ документации. Имеющийся рецепт, паспорт письменного контроля и номер лекарственной формы соответствуют друг другу. Ингредиенты совместимы, расчеты сделаны верно, паспорт письменного контроля выписан верно. Правильность упаковки и оформления....
БИОХИМИЯ ТКАНЕЙ ЗУБА В составе зуба выделяют минерализованные и неминерализованные ткани...
|
|