Міністерство освіти і науки України
Національний університет “Львівська політехніка”
Кафедра КСА
Звіт
до лабораторної роботи № 2
з курсу “Моделювання процесів
та елементів систем керування”
на тему: Аналіз перехідних процесів електромаґнетних
елементів систем керування
Варіант №14
Виконала:
ст. гр. КС-43
Перевірив:
Павельчак А.Г.
Львів-2009
Мета роботи – вивчити принципи побудови рівнянь динаміки електромаґнетних елементів систем керування в нормальній формі Коші, а також дослідити перебіг перехідних процесів в цих елементах використовуючи числові методи розв’язування систем нелінійних диференціальних рівнянь.
ЗАВДАННЯ ДЛЯ ЛАБОРАТОРНОЇ РОБОТИ
Завдання для лабораторної роботи дають із зазначенням номеру схеми трансформатора та варіанту чисельних значень параметрів схеми і навантаження. Дані кривої намаґнечування слід взяти з лабораторної №1, проте вибір апроксимаціної функції залишається за студентом.
2.1. Варіант схеми
2.2 Варіанти параметрів і навантажень
2.3. Домашня підготовка до роботи
1. Вивчити методи формування рівнянь динаміки трансформаторів в нормальній формі Коші.
2. Вивчити числові методи розв’язування систем нелінійних диференціальних рівнянь.
3. Скласти блок-схему розрахунку перехідного процесу заданої схеми методом Рунге-Кутта четвертого порядку точності з постійним кроком інтегрування.
4. Згідно блок-схеми написати програму розрахунку перехідного процесу заданої схеми алгоритмічною мовою С.
2.4. Робота в лабораторії
1. Ввести в комп’ютер програму, написану мовою С згідно отриманим завданням.
2. Відлагодити програму. При необхідності скоригувати блок-схему алгоритму та програму у відповідності з виявленими логічними та синтаксичними помилками.
3. Результати розрахунку 7 періодів перехідного процесу записати до текстового файлу у вигляді стовпців t, i1, i2, i3, uC1, uC2, uC3.
4. Використовуючи програму GRAFER нарисувати залежності EMBED Equation.3 . Можна суміщати декілька змінних однакової розмірності на одному графіку, якщо це дозволяє масштаб.
5. Остаточні версії блок-схеми, програми та отримані результати занести у звіт з лабораторної роботи.
6. Здати звіт з лабораторної роботи.
Остаточна версія програми
// lab2.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "math.h"
#include "fstream"
#include "iostream"
#include "conio.h"
using namespace std;
const double a1=230, a2=170, a3=170,r1=7, r2=8,
r3=11, C1=7e-3, C2=0.6e-3, C3=0.9e-3, Um=310, Rn2=17,Rn3=13,i1=0.2,i2=20;
const double h=0.0001;
double ff(double psi)
{
if (psi<=0.2)
return 1*psi;
if ((psi<1.5)&&(psi>0.2))
return 0.419-3.175*psi+10.314*psi*psi+0.319*psi*psi*psi;
if (psi>1.5)
return 30*psi+20-30*1.5;
}
double aii (double psi)
{
if (psi<=0.2)
return 1;
if ((psi<1.5)&&(psi>0.2))
return -3.175+2*10.314*psi+3*0.319*psi*psi;
if (psi>1.5)
return 30;
}
void DfDt(double K[5],double X[5],double t)
{double g1,g2,g3,g;
g=a1+a2+a3+aii(X[0]);
g1=a1/g;
g2=a2/g;
g3=a3/g;
double B[5][5]={{g1,g2,g3,0,0},
{-a2*g1,a2*(1-g2),-a2*g3,0,0},
{a3*g1,a3*g2,a3*(1+g3),0,0},
{0,0,0,1/C2,0},
{0,0,0,0,1/C3}};
double I[3]={ff(X[0])-X[1]+X[2],X[1],X[2]}, U[3]={Um*sin(2*3.14159*50*t),-X[3]-X[4],-X[4]},
R[3][3]={{r1,0,0},{0,r2+Rn2,0},{0,0,r3+Rn3}},Z[3]={0,0,0};
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
Z[i]+=R[i][j]*I[j];
for (int i=0;i<3;i++)
Z[i]=U[i]-Z[i];
double Y[5]={Z[0],Z[1],Z[2],X[1],X[1]+X[2]};
for(int i=0;i<5;i++)
{
K[i]=0;
for(int j=0;j<5;j++)
K[i]+=B[i][j]*Y[j];
}
}
int _tmain(int argc, _TCHAR* argv[])
{
fstream file;
file.open ("lab2.txt",ios_base::out | ios_base::trunc );
double X[5]={0,0,0,0,0},K1[5],K2[5], K3[3],K4[5],Z[5];
for (double t=0;t<0.1;t+=h)
{
DfDt (K1,X,t);
for (int i=0;i<5;i++)
Z[i]=X[i]+h/2*K1[i];
DfDt (K2,Z, t+h/2);
for (int i=0;i<5;i++)
Z[i]=X[i]+h/2*K2[i];
DfDt (K3,Z, t+h/2);
for (int i=0;i<5;i++)
Z[i]=X[i]+h*K3[i];
DfDt (K4,Z, t+h);
for (int i=0;i<5;i++)
X[i]=X[i]+h/6*(K1[i]+2*K2[i]+2*K3[i]+K4[i]);
cout<<t<<" "<<X[0]<<" "<<X[1]<<" "<<X[2]<<" "<<X[3]<<" "<<X[4]<<" " <<endl;
file <<t<<" "<<X[0]<<" "<<X[1]<<" "<<X[2]<<" "<<X[3]<<" "<<X[4]<<" " <<endl;
}
file.close ();
getch();
return 0;
}
Результати роботи програми
Висновки: вивчитли принципи побудови рівнянь динаміки електромаґнетних елементів систем керування в нормальній формі Коші, а також дослідили перебіг перехідних процесів в цих елементах використовуючи числові методи розв’язування систем нелінійних диференціальних рівнянь.