Расчёт полного электрического сопротивления участка электрической цепи
Описание программного обеспечения используемого при разработке и оформлении курсовой работы. Работа основной программы иллюстрируется блок-схемой алгоритма, представленной на рисунке 2. При разработке программы были созданы процедуры работы с комплексными числами: Турецкий В. Я. Математика и информатика. Учебник для вузов. М.:ИНФРА-М, 2002. 560с. Формулы для расчёта последовательного… Читать ещё >
Расчёт полного электрического сопротивления участка электрической цепи (реферат, курсовая, диплом, контрольная)
1. Постановка задачи
2. Расчёт комплексного сопротивления участка электрической цепи
3. Разработка программы расчета электрической цепи в среде Turbo Pascal
4. Анализ результатов расчёта
5. Описание программного обеспечения используемого при разработке и оформлении курсовой работы Список использованной литературы ПРИЛОЖЕНИЕ. Листинг исходного кода и результаты работы программы
1. Постановка задачи
Расчёт полного электрического сопротивления участка электрической цепи и анализ полученных результатов.
Рисунок 1. Схема участка эл. цепи.
Исходные данные:
R1=1500 Ом
C1=100 пФ
C2=22 пФ
L1=0.012 мГн
L2=1 мГн
f=95 Гц Задание на курсовую работу:
Разработать программу на языке Pascal, осуществляющую расчёт полного (комплексного) сопротивления Z, модуля Z, его действительной R и мнимой X составляющих и угол сдвига фаз ц, а также провести анализ полученного результата.
2. Расчёт комплексного сопротивления участка электрической цепи
Краткие сведения из теории:
Закон изменения значения синусоидального тока:
где
— амплитуда тока;
— угловая частота колебаний;
— начальная фаза.
Закон Ома для участка цепи в комплексной форме:
где
— комплексы действующих значений тока и напряжения соответсвенно;
Z — полное комплексное сопротивление участка эл. цепи.
Для резистора Z=R, где R — активное сопротивление резистора;
для конденсатора
где С — емкость конденсатора;
для катушки индуктивности
где L — индуктивность катушки;
В общем случае Z имеет действительную и мнимую часть:
Z=R+jX,
где
R — активное сопротивление;
X — реактивное сопротивление.
Модуль полного сопротивления:
Угол сдвига фаз:
Формулы для расчёта последовательного и параллельного соединения ветвей:
Для последовательного соединения 2х ветвей:
Для параллельного соединения 2х ветвей:
Используя данные формулы можно произвести расчёт полного электрического сопротивления участка эл. цепи.
3. Разработка программы расчета электрической цепи в среде Turbo Pascal
электрическое сопротивление цепь pascal
При разработке программы были созданы процедуры работы с комплексными числами:
Сложение:
Procedure AddC (c1,c2: Complex; var C: Complex);
begin
c.Re:=c1.Re+c2.Re;
c.Im:=c1.Im+c2.Im;
end;
Умножение:
Procedure MulC (c1,c2: Complex; var C: Complex);
begin
c.Re:=c1.Re*c2.Re-c1.Im*c2.Im;
c.Im:=c1.Re*c2.Im+c1.Im*c2.Re;
end;
Деление:
Procedure DivC (c1,c2: Complex; var C: Complex);
begin
c.Re:=(c1.Re*c2.Re-c1.Im*c2.Im)/(sqr (c2.Re)-sqr (c2.Im));
c.Im:=c1.Re*c2.Im+c1.Im*c2.Re/(sqr (c2.Re)-sqr (c2.Im));
end;
Также была создана процедура вычисления эквивалентного сопротивления двух параллельных ветвей:
Procedure Par (c1,c2: Complex; var C: Complex);
var m, a: Complex;
begin
AddC (c1,c2,a);
MulC (c1,c2,m);
DivC (m, a, C);
end;
Эти процедуры были объединены в модуль COMPL.PAS.
Также были созданы две процедуры работающие с графикой.
Одна для вывода на экран рисунка схемы участка электрической цепи, а вторая для вывода на экран графиков анализа погрешностей.
Эти процедуры были объединены в модуль находятся в модулях PICT. PAS и GRAFIK. PAS, исходный код которого содержится в приложении.
Работа основной программы иллюстрируется блок-схемой алгоритма, представленной на рисунке 2.
Рисунок 2. Блок-схема алгоритма работы программы Результат работы программы содержится в приложении.
4. Анализ результатов расчёта
В результате работы программы можно проанализировать 6 графиков зависимости модуля полного сопротивления от погрешности задания каждого параметра (0 — 5%).
Графики представлены на рисунке 3.
Рисунок 3. Графики зависимости модуля полного сопротивления от погрешности задания каждого параметра.
Как видно из рисунка 3 графики зависимости модуля полного сопротивления от изменения всех параметров кроме С1 идут параллельно оси абсцисс, отсюда следует вывод о незначительном влиянии этих параметров на значение модуля полного сопротивления.
5. Описание программного обеспечения используемого при разработке и оформлении курсовой работы
1) Среда разработки приложения Turbo Pascal — для создания программы расчёта полного сопротивления эл. цепи.
2) Эмулятор операционной системы MS-Dos DOSBox v0.62 — для снятия снимков экрана с результатами работы программы.
3) Графический редактор Paint — для редактирования рисунков.
4) Текстовый редактор Microsoft Office Word — для оформления пояснительной записки.
1. Основы теории цепей. Учебник для вузов.Г. В. Зевеке, П. А. Ионкин, А. В. Нетушин, С. В. Страхов. М. Энергоатомиздат, 1989,328с.
2. Нейман Л. Р., Демирчан К. С. Теоретические основы электротехники. Учебник для вузов. В 2 т. — 3-е изд, перераб и доп — Л.: Энергоиздат, 1981. Т1=536с, Т2−416с.
3. Бессонов Л. А. Теоретические основы электротехники: Учебник для энергет и электротех вузов. В3ч. — 6-е изд., перераб. и доп. -М: Высш.шк., 1973 — 752с.
4. Турецкий В. Я. Математика и информатика. Учебник для вузов. М.:ИНФРА-М, 2002. 560с.
5. Журин А. А. Самоучитель работы на компьютере. М.: Дельта, 2001.-640с.
6. Фаронов В.В.TurboPascal 7,0: Учебное пособие. М.:Нолидж., 2003. -416с.
Приложение. Листинг исходного кода и результаты работы программы
Листинг исходного кода программы
1) Модуль COMPL. PAS
unit Compl;
INTERFACE
type
Complex=Record
Re, Im: Real
end;
Procedure AddC (c1,c2: Complex; var C: Complex);
Procedure MulC (c1,c2: Complex; var C: Complex);
Procedure DivC (c1,c2: Complex; var C: Complex);
Procedure Par (c1,c2: Complex; var C: Complex);
IMPLEMENTATION
Procedure AddC (c1,c2: Complex; var C: Complex);
begin
c.Re:=c1.Re+c2.Re;
c.Im:=c1.Im+c2.Im;
end;
Procedure MulC (c1,c2: Complex; var C: Complex);
begin
c.Re:=c1.Re*c2.Re-c1.Im*c2.Im;
c.Im:=c1.Re*c2.Im+c1.Im*c2.Re;
end;
Procedure DivC (c1,c2: Complex; var C: Complex);
var chisl, znam: real;
begin
c.Re:=(c1.Re*c2.Re-c1.Im*c2.Im)/(sqr (c2.Re)-sqr (c2.Im));
chisl:=c1.Re*c2.Im+c1.Im*c2.Re;
znam:=(sqr (c2.Re)-sqr (c2.Im));
c.Im:=chisl/znam;
end;
Procedure Par (c1,c2: Complex; var C: Complex);
var m, a: Complex;
begin
AddC (c1,c2,a);
MulC (c1,c2,m);
DivC (m, a, C);
end;
end.
2) Модуль GRAFIK. PAS
unit Grafik;
INTERFACE
uses graph;
const
MAX = 100;
type
DataArray = array [1.MAX, 0.5] of Real;
StAr = array [0.5] of String;
Procedure Simpleplot (data: DataArray; num: integer;SA: StAr);
Function lg (x:real):real;
IMPLEMENTATION
Function lg (x:real):real;
begin
lg:=ln (x)/ln (10)
end;
Procedure Simpleplot (data: DataArray; num: integer;SA: StAr);
const x0=40;
xmax=580;
y0=450;
ymax=10;
var
t, incr: integer;
a, d, maxd: real;
str1,str2: String;
GraphDriver, Craphmode: integer;
x, y, xp, yp, i, j, s: integer;
begin
GraphDriver:= detect;
InitGraph (GraphDriver, Craphmode, '');
OutTextXY (x0, y0+5, '0'); { }
OutTextXY (0, 50, '50'); { }
OutTextXY (xmax-60, y0+5, '5'); { }
Line (x0, y0, x0, ymax);
for i:=1 to 10 do
Line (x0−2, y0−40*i, x0+2, y0−40*i);
Line (x0, y0, xmax, y0);
for i:=1 to 5 do
Line (x0+100*i, y0−2, x0+100*i, y0+2);
maxd:=data[1,0];
for j:=0 to 5 do begin
for i:=1 to num do if data[i, j]>max then maxd:=data[i, j];
end;
d:=1;
s:=trunc (lg (maxd))-1;
for i:=1 to s do d:=d*10;
str (s:1,Str2);
str1:='*10^'+str2;
OutTextXY (0, 60, str1);
for j:=0 to 4 do begin
setcolor (13-j);
OutTextXY (600, 10+10*j, SA[j]);
for t:= 2 to num do
begin
y:= trunc (8*data[t, j]/d);
yp:= trunc (8*data[t-1,j]/d);
x:= ((t-1)*100)+x0;
xp:= x-100;
Line (xp, y0-yp, x, y0-y);
end;
end;
end;
end.
3) Основная программа CEP. PAS
program cep;
uses graph, Grafik, Compl, Pict;
var i, j, gd, gm: integer;
r1,r2,c1,c2,l1,l2,f: Real;
cr1,cr2,cc1,cc2,cl1,cl2,ct1,ct2,ct3: Complex;
z: array[0.5,0.5] of Complex;
SA: StAr;
zr: DataArray;
begin
picture (0,0,'r2.bmp', true); {}
For i:=0 to 10 do Writeln;
WriteLn ('Введите начальные данные:');
Write ('Значение частоты сети f, Гц f='); Readln (f);
Write ('Значение сопpотивления R1, Ом R1='); Readln (r1);
Write ('Значение емкости C1, пФ C1='); Readln (c1);
Write ('Значение емкости C2, пФ C2='); Readln (c2);
Write ('Значение индуктивности L1, мГн L1='); Readln (l1);
Write ('Значение индуктивности L2, мГн L2='); Readln (l2);
for j:=0 to 4 do begin
for i:=0 to 5 do begin
cr1.Re:=r1; cr1. Im:=0;
cc1.Re:=0; cc1. Im:=-1 000 000 000/(2*pi*f*c1);
cc2.Re:=0; cc2. Im:=-1 000 000 000/(2*pi*f*c2);
cl1.Re:=0; cl1. Im:=2*pi*f*0.001*l1;
cl2.Re:=0; cl2. Im:=2*pi*f*0.001*l2;
case j of
0: cr1. Re:=r1+0.01*i*r1;
1: cc1. Im:=-1 000 000 000/(2*pi*f*(c1+0.01*i*c1));
2: cc2. Im:=-1 000 000 000/(2*pi*f*(c2+0.01*i*c2));
3: cl1. Im:=2*pi*f*0.001*(l1+0.01*i*l1);
4: cl2. Im:=2*pi*f*0.001*(l2+0.01*i*l2);
end;
Par (cl2,cc2,ct1);
AddC (ct1,cc1,ct3);
AddC (ct3,cr1,ct1);
AddC (ct1,cl1,ct2);
Z[i, j]. Re:=ct2.Re; Z[i, j]. Im:=ct2.Im
end;
end;
for j:=0 to 4 do begin
for i:=1 to 6 do begin
zr[i, j]: =sqrt (sqr (Z[i-1,j].Re)+sqr (Z[i-1,j].Im));
end;
end;
Writeln;
WriteLn ('Полное сопpотивление Z=', Z[0,0]. re:8:4,'+j', Z[0,0].Im:8:4);
WriteLn ('Модуль полного сопpотивления |Z|=', Zr[1,0]: 8:4);
WriteLn ('Угол сдвига фаз F=', Arctan (Z[0,0]. re/Z[0,0].Im):8:4);
readln;
SA[0]:='R1';
SA[1]:='C1';
SA[2]:='C2';
SA[3]:='L1';
SA[4]:='L2';
Simpleplot (zr, 6, SA);
readln;
CloseGraph;
end.
Результаты работы программы
(цвета рисунков инвертированы)
1) Ввод данных
2) Результаты расчёта
3) Анализ результатов расчёта