F=difur(t,x)=[-1.79*x(1)+7.14*x(2);-2*x(1)-48*x(2)+210];
Для вычисления решения системы на интервале [0, 10] используем командную строку. С учетом начальных условий, обращение к функции ode 45 будет иметь следующий вид. Начальные условия: x1 (0) = 0; x2 (0) = 0.
>> [t, x]=ode45('difur',[0
10],[0;0])
Решение исходной системы (14) в виде числовых массивов. Результаты решения системы в виде массивов аргумента t и искомых функций x.
Для отображения графика исходной
системы дифференциальных уравнений (14) необходимо в режиме командной строки
выполнить команду plot:
>>
plot(t,x(:,1),'r',t,x(:,2),'k--')
На рисунке 5 приведена экранная форма графика решения заданной системы уравнений (14) x1(t), x2(t).
Графики интерпретируют изменение во
времени величины функции:
(сплошная
кривая) и величины функции
(пунктирная кривая).
Как видно из графиков временных
зависимостей, процесс асимптотически приближается к установившемуся состоянию с
принужденной составляющей x1(t)= x1 =0 и x2(t)= x2 = -3.
Рисунок 5 - Графики решения системы дифференциальных уравнений
Сравнение полученных графиков с
ранее построенными x1(t) и x2(t) (Рис. 3,4) при моделировании в режиме
командной строки свидетельствует о идентичности результатов, полученных при
использовании различных способов взаимодействия с программой при реализации ее
широких возможностей [5].
Моделирование с использованием пакета расширения Symbolic Math Tolbox
дифференциальный уравнение коши моделирование
Для решения дифференциальных уравнений в форме Коши MATLAB имеет функцию dsolve - возвращает аналитическое решение системы дифференциальных уравнений с начальными условиями.
По умолчанию в качестве независимой переменной задается переменная t. Можно использовать и другую переменную, добавив ее в конце списка параметров функции dsolve. Символ D обозначает производную по независимой переменной, D2 означает вторую производную и т. д.
Начальные условия задаются в виде равенств ‘y(a)=b’, ‘Dy(a)=b’ , где y - независимая переменная, a и b- константы [6]. Если число начальных условий меньше, чем число дифференциальных уравнений, то в решении будут присутствовать произвольные постоянные С1, С2, и т. д.
>> S=dsolve('Df=-1.79*f+7.14*g','Dg=-2*f-48*g+210','f(0)=0','g(0)=0')=
f: [1x1 sym]
g: [1x1 sym]
>> S.f=
/400*exp(1/200*(-4979+20782441^(1/2))*t)*(7789313/13882670588*20782441^(1/2)-1253/668)-1/400*exp(1/200*(-4979+20782441^(1/2))*t)*(7789313/13882670588*20782441^(1/2)-1253/668)*20782441^(1/2)-4621/400*(-7789313/13882670588*20782441^(1/2)-1253/668)*exp((-4979/200-1/200*20782441^(1/2))*t)+1/400*(-7789313/13882670588*20782441^(1/2)-1253/668)*20782441^(1/2)*exp((-4979/200-1/200*20782441^(1/2))*t)+2499/167
>> S.g
= (1/200*(-4979 +20782441^(1/2))*t) * (7789313/13882670588
*20782441^(1/2)-1253/668)+(-7789313/13882670588*20782441^(1/2)-1253/668)*exp((-4979/200-1/200*20782441^(1/2))*t)+1253/334
Окончательно будем иметь следующее
решение:
.
Для построения графиков функций
x1(t) и x2(t) выполним команду plot в режиме командной строки [7,8].
>> t=0:0.02:5;
>> x=-15.688.*exp(-2.1011.*t)+0.715.*exp(-47.688.*t)+14.973;
>> plot(t,x)
Рисунок 6 - График функции x1(t)
дифференциальный уравнение коши моделирование
>> t=0:0.02:5;
>> x=0.686.*exp(-2.1011.*t)-4.445.*exp(-47.688.*t)+3.759;
>> plot(t,x)
Рисунок 7 - График функции x2(t)
Полученные графики полностью совпадают с графиками, полученными моделированием в режиме командной строки и с использованием встроенных средств.
Для построения Simulink-модели системы (14) нам необходимы следующие библиотеки: , содержащую блок интегрирования integrator; , содержащую блоки масштабирования и суммирования gain и sum; , содержащую блоки виртуальных регистраторов scope:, содержащую блоки единичного скачка step.
На рисунке 8 представлена структурная схема
модели системы, при требуемых параметрах для системы.
Рисунок 8 - Структурная схема Simulink - модели
системы.
После редактирования параметров блоков выполним запуск процесса моделирования. Результат моделирования, отражающий движение системы, представлен на рисунках 9, 10 (изменения во времени переменных состояния системы x1(t) и x2(t)).
Рисунок 9 - График функции x1(t)
Рисунок 10 - График функции x2(t)
Полученные графики полностью совпадают с
графиками, полученными моделированием в режиме командной строки, с использованием
встроенных средств и с использованием пакета расширения Symbolic Math Tolbox
[9].
Заключение
Использование при исследовании моделей систем управления, описываемых дифференциальными уравнениями, широких возможностей системы автоматизации математических расчетов MATLAB и пакет моделирования динамических систем Simulink, входящий в состав расширенных версий MATLAB, позволяет решать всю совокупность задач различными способами: от использования режима командной строки, до использования пакета моделирования систем Simulink.
Такое многообразие методик открывает перед
пользователем большие возможности при решении задач идентификации: от
выполнения хорошо формализуемого оценивания параметров модели до решения задач
идентификации в широком смысле. А также выполнять анализ динамических
процессов, протекающих в системе, на основе изучения построенных моделей.
Список литературы
Пюкке Г.А. Идентификация и диагностика систем / Г.А. Пюкке. - Петропавловск-Камчатский: КамчатГТУ, 2012.
Горбацевич Е.Д., Левинзон Ф.Ф. Аналоговое моделирование систем управления / Е.Д. Горбацевич, Ф.Ф. Левинзон. - М.: Наука, 1984.
Андриевский Б.Р., Фрадков А.Л. Избранные главы теории автоматичексого управления с примерами в системе Matlab / Б.Р. Андриевский, А.Л. Фрадков. - Спб: Наука, 1999.
Смоленцев Н.К. Matlab. Программирование на Visual C#, Borland JBuilder, VBA / Н.К. Смоленцев. - СПб.: Питер, 2009.
Мартынов Н.Н. Введение в MATLAB 6 / Н.Н. Мартынов. -М.: Кудиц-Образ, 2002.
Кривилев А.В. Основы компьютерной математики с использованием системы MATLAB / А.В. Кривилев. - М.: Лекс-Книга, 2005.
Потемкин В.Г. Вычисления в среде MATLAB / В.Г. Потемкин. - М.: Диалог-МИФИ, 2004.
Ануфриев И.Е. Самоучитель MATLAB 5.3/6.x / И.Е. Ануфриев. - СПб.: БХВ-ПЕтербург, 2002.
Кондрашов В.Е., Королев С.Б. MATLAB как система программирования научно-технических расчетов / В.Е. Кондрашов, С.Б. Королев. - М.: Мир, 2002.
Бобцов А.А., Лямин А.В., Чежин М.С. Операторный метод анализ и синтеза линейных систем управления / А.А. Бобцов, А.В. Лямин, М.С. Чежин. - СПб, 2001.
Бройдо В.Л. Вычислительные системы, сети и телекоммуникации / В.Л. Бройдо. - Спб.: Питер, 2001.
Егоров А.И. Основы теории управления / А.И. Егоров.- М.: Физматлит, 2004.
Ким Д.П. Теория автоматического управления. Т.1. Линейные системы. - М.: Физматлит, 2003.
Лазарев Т.Я., Мартемьянов Ю.Ф. Линейные системы автоматического регулирования / Т.Я. Лазарев, Ю.Ф. Мартемьянов. - Изд-во. Тамбов. гос. тех. ун-та, 2001.
Мирошник И.В., Никифиров В.О., Фрадков А.Л. Нелинейное и адаптивное управление сложными динамическими системами / И.В. Мирошник, В.О. Никифоров, А.Л. Фрадков. - СПб.: Наука, 2000.
Музыкин С.Н., Родинова Ю.М. Моделирование нелинейных систем с использование белошумовой идентификации / С.Н. Музыкин, Ю.М. Родинова. - М.: Можайский полиграф. комбинат, 1999.
Острейковский В.А. Моделирование систем / В.А. Острейковский. - М.: Наука, 1997.
Пантелеев А.В. Теория управления в примерах и задачах / А.В. Пантелеев. - М.: Высшая школа, 2003.
Певзнер Л.Д. Теория систем управления / Л.Д. Певзнер. - М.: Издательство Московского государственного горного университета, 2002.
Подкучаев В.А. Аналитические методы теории автоматического управления / В.А. Подкучаев. - М.: Физматлит, 2002.
Угрюмов Е.П. Цифровая схемотехника / Е.П. Угрюмов. - Спб.: БХВ- Петербург, 2002.
Филлипс Ч., Харбор Р. Системы управления с обратной связью / Ч. Филлипс, Р. Харбор. - М.: Лаборатория Базовых Знания, 2001.