Аналіз перехідних процесів електромаґнетних елементів систем керування

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2009
Тип роботи:
Звіт
Предмет:
Моделювання процесів та елементів систем керування
Група:
КС-43

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра КСА  Звіт до лабораторної роботи № 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; } Результати роботи програми   Висновки: вивчитли принципи побудови рівнянь динаміки електромаґнетних елементів систем керування в нормальній формі Коші, а також дослідили перебіг перехідних процесів в цих елементах використовуючи числові методи розв’язування систем нелінійних диференціальних рівнянь.
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!