Автор работы: Пользователь скрыл имя, 08 Февраля 2011 в 01:33, курсовая работа
Построение аналитической модели электрической цепи
1. Задание 3
2. Построение аналитической модели и ее анализ.
2.1 Построение аналитической модели 4
2.2 Анализ динамических процессов в системе на основе использования построенной аналитической модели 11
2.3. Моделирование с использованием солверов 18
2.4. Моделирование с использованием пакета расширения Symbolic Math Tolbox 21
2.5. Моделирование с использованием имитационного пакета моделирования динамических систем Simulink 25
Для нахождения решения системы (2.3):
используем матрично-векторное соотношение
x(t)= А-1 (exp(Аt) - 1 ) f0 , (2.4)
имеющее место при нулевых начальных условиях и внешнем воздействии f0 в виде вектора с постоянными компонентами.
Сначала находим А-1 по известной А (в МatLab).
>> A=[-1.79 7.14;-2 -168];
>> inv(A)
ans = -0.5333 -0.0227
0.0063 -0.0057
Далее находим матричную
>> poly(A)
ans = 1.0000 169.7900 315.0000
Полученный полином будет определяться выражением
Соответственно, его корни:
>> A=[-1.79 7.14;-2 -168];
>> [D]=eig(A)
D = -1.8760
-167.9140
Следовательно: λ1=--1.8760; λ2 = -167.914
Результат вычислений
Для вычисления матричной экспоненты используется формула Сильвестра, согласно которой
Для системы (2.4) можно записать экспоненту:
Подставляя все полученные данные в соотношение (2.4) приходим к следующему выражению:
После выполнения действий над матрицами получим следующее решение системы (1):
x1(t)=-16621/400*(-
x2(t)=(-3260759/
Для построения графиков функций x1(t) и x2(t) выполним команду plot в режиме командной строки. Программы приведены ниже.
>> t=0:0.1:12.54;
>>x=-16621/400*(-3260759/
>> plot(t,x)
Рис 3
>> t=0:0.02:5;
>>x=-(-3260759/
>> plot(t,x)
Рис 4
Результат моделирования, отражающий динамический процесс представлен на рис. 3 и рис. 4 (изменения во времени переменных состояния системы x1(t) и x2(t) носят апериодический характер). На рис. 3 приведена распечатка графика функции
x1(t)=-16621/400*(-
при начальном условии x1 (0) = 0 (график начинается с ординаты x1 = 0).
На рис. 4 приведена распечатка графика функции
x2(t)=(-3260759/82705932300*
при начальном условии x2 (0) = 0 (график начинается с ординаты x2 = 0).
Полученные
графики демонстрируют
x1(t)=-16621/400*(-
и
x2(t)=(-3260759/
соответственно.
Как видно из графиков
На
этом расчет вручную, с частичным
использованием моделирования в
режиме командной строки, заканчивается.
2.3. Моделирование с использованием солверов
Следующий этап моделирования состоит в нахождении решений исходной системы (2.3), используя встроенные средства для решения дифференциальных уравнений и их систем. Система MATLAB выполняет численное решение обыкновенных дифференциальных уравнений произвольного порядка и систем с начальными условиями. В MATLAB имеется целый ряд встроенных функций, предназначенных для решения задачи Коши для обыкновенных дифференциальных уравнений. Библиотека включает несколько функций, реализующих различные методы решения задачи Коши ode (ordinary differential equations).
Начнем с составления файл-
Для системы (2. 3) напишем текст программы, для этого в меню File окна системы MATLAB выполним команду New m-file и в открывшемся окне редактора/отладчика m-файлов наберем текст файл-функции, который будет таким.
function F=difur(t,x)
F=[-1.79*x(1)+7.14*x(2);-2*x(
Сохраним его в файле difur.m в текущем каталоге.
Для вычисления решения
>> [t, x]=ode45('difur',[0 10],[0;0])
Решение исходной системы (2.3) в виде числовых массивов сохраняются в папке work в виде бинарного файла с расширением .mat. Для этого служит команда Save Workspace As…. в меню File. При необходимости сохраненный файл можно загрузить в рабочую область Workspace (командой load).
После выполнения сеанса работы (сессии) в окне команд Command Window появятся результаты решения системы (1) в виде массивов аргумента t и искомых функций x, которые можно сохранить в папке work под именем rech1. mat.
Для отображения графика
>> plot(t,x(:,1),'r',t,x(:,2),'k-
Рис 5
На рис. 5 приведена экранная форма графика решения заданной системы уравнений (2. 3) x1(t), x2(t).
Графики интерпретируют
x1(t)=-16621/400*(-
x2(t)=(-3260759/
Как видно из графиков
Сравнение полученных графиков с ранее построенными x1(t) x2(t) (Рис. 5 ) при моделировании в режиме командной строки свидетельствует о идентичности результатов, полученных при использовании различных способов взаимодействия с программой при реализации ее широких возможностей.
2.4. Моделирование с использованием пакета расширения Symbolic Math Tolbox
Возможности пакета расширения Symbolic Math Tolbox позволяют в рамках системы MATLAB осуществлять аналитические вычисления и аналитические преобразования выражений. Помимо выполнения аналитических преобразований, пакет Symbolic Math Tolbox позволяет выполнять арифметические вычисления с контролируемой точностью, которую можно задать заранее. Этот пакет осуществляет алгебраические операции над объектами нового типа – sym – объектами. Такие объекты получаются после вызова одноименной функции конструктора таких объектов. Над объектами типа sym производятся манипуляции в соответствии с правилами алгебры и математического анализа.
Для решения дифференциальных уравнений в форме Коши MATLAB имеет следующую функцию:
dsolve(‘eqn1’,’eqn2’,….) – возвращает аналитическое решение системы дифференциальных уравнений с начальными условиями. Сначала задаются уравнения, затем начальные условия (равенствами eqn).
По умолчанию в качестве независимой переменной задается переменная ‘t’. Можно использовать и другую переменную, добавив ее в конце списка параметров функции dsolve. Символ D обозначает производную по независимой переменной, D2 означает вторую производную и т. д.
Начальные условия задаются в виде равенств ‘y(a)=b’, ‘Dy(a)=b’ , где y – независимая переменная, a и b – константы. Если число начальных условий меньше, чем число дифференциальных уравнений, то в решении будут присутствовать произвольные постоянные С1, С2,…и т. д.
Выполним функцию dsolve для системы (1):
Информация о работе Идентификация и моделирование систем управления