Студентам > Курсовые > Расчет напряженности поля радиотелецентров
Расчет напряженности поля радиотелецентровСтраница: 4/5
В таблице указаны расчетные данные, которые рассчитала компьютерная
программа и экспериментальные, которые были измерены специальным прибором. Если
сравнить данные полученные в результате расчета и экспериментальные, то они несколько
отличаются друг от друга. Экспериментальные данные больше, чем расчетные, это
может зависеть от рельефа рассматриваемой местности. Также оказало влияние то,
что в расчетах не учитывалась ДН передающей антенны в азимутальной плоскости.
ЗАКЛЮЧЕНИЕ
При выполнении данной работы были получены следующие результаты:
1) были изучены методы расчета напряженности
поля;
2) была разработана программа, рассчитывающая
напряженность электромагнитных волн, излучаемых телерадиопередатчиками, в зависимости
от расстояния до опоры передающей антенны;
3) были рассчитаны значения напряженности
поля вблизи ИОРТПЦ, также были рассчитаны значения нормированной суммарной напряженности,
где санитарные нормы не нарушаются;
4) были рассчитаны значения напряженности
поля вблизи Усольского телерадиопередающего центра и сделаны сравнения с экспериментальными
данными.
ПРИЛОЖЕНИЕ
Приложение 1 – программа расчета
напряженности поля.
uses crt,graph,omenu;
const f_fi= 1;
NBg = {blue}1;
NFg = {white}15;
HBg = {white}15;
HFg = {black}0;
BC = {black}0;
SC = {lightcyan}11;
col = 200;
delta_rm =90;
var
vf
:text;
VMenu
:OVMenu;
HMenu
:OHMenu;
HVMenu
:OHVMenu;
p,d,hb,em
:real;
i,j,choice,errc,
a,x,Hmenu_choice,len
:integer;
rm
:longint;
ord
:array[1..col] of real;
del
:array[1..10] of real;
delstr,si,AStr,vstr
:string;
ch,rk
:char;
input_is
:boolean;
{Процедуры ввода данных}
procedure input_value(xi,yi:integer;
var zn:real);
begin
vstr:='';
while rk<>#13 DO begin
rk:=readkey;
if (((rk>#47)and(rk<#58))or(rk=#46))and(len<10)
then begin
vstr:=vstr+rk;
len:=length(vstr);
gwritexy(xi+len,yi+1,rk,3,2);
end;
end;
val(vstr,zn,errc);
end;
procedure input;
begin
gwritexy(1,5,'Мощность:
',3,2); input_value(11,4,p); readln;
gwritexy(1,6,'К.
у.
антенны:
',3,2); input_value(1,6,d); readln;
gwritexy(1,7,'Высота передающей антенны:
',3,2); input_value(1,7,hb); readln;
end;
{Функция выводит осн. меню на экран
и возвращает номер выбранного пункта меню}
Function ddt:integer;
begin
HVMenu.init;
gwritexy(0,1,'',0,0);
HVMenu.SetHorItems(00,00,80,01,NBg,
NFg,HBg,HFg,BC,SC,1,1,BorderOn,ShadowOff,' File |
Антенна
');
HVMenu.SetVerItems(01,00,01,10,03,NBg,NFg,HBg,HFg,BC,SC,4,1,BorderOn,ShadowOff,'
Данные
| Выход
');
HVMenu.SetVerItems(2,6,01,29,04,NBg,NFg,HBg,HFg,BC,Sc,
4,1,BorderOn,ShadowOff,
' Ант.
решетка
№1 - 1,3 | Ант.
решетка
№2 - 2 | Диполь ');
HMenu.EraseOK:=False;
X:=HVMenu.MenuResult(false,true);
ddt:=x;
end;
{Функции расчета напряженности}
function f_alfa:real;
begin
case choice of
1: f_alfa:=(1+2*cos(1.3*pi*sin(arctan((hb)/rm))))/3;
2: f_alfa:=(1+2*cos(2*pi*sin(arctan((hb)/rm))))/3;
3: f_alfa:=(cos(pi/2*sin(arctan((hb)/rm)))/cos(arctan((hb)/rm)));
end;
end;
function Rb:real;
begin
rb:=rm/sin(arctan(hb/rm));
end;
function E2:real;
begin
E2:=30*p*d*sqr(f_alfa)*sqr(f_fi)/sqr(Rb);
end;
{Заполнение массива ординат}
procedure ordinates;
begin
rm:=1;
for i:=1 to col do
begin
rm:=rm+delta_rm;
ord[i]:=1000*SQRT(E2);
{х1000,
т.к.
ед.
изм.
- мВ/м}
end;
end;
{Максимальное значение напряженности}
procedure E_maximum;
var i:integer;
max:real;
begin
Max:=ord[1];
if col>1 then
for i:=2 to col do
if ord[i]>Max then
Max:=ord[i];
if max=0 then max:=1;
Em:=max;
end;
{Сохранение результатов расчета в
файл "results.txt"}
procedure ToFile;
begin
assign(vf,'results.txt');
rewrite(vf);
rm:=0;
for i:=1 to col do begin
rm:=rm+delta_rm;
writeln(vf,rm,' m','
- ',ord[i]:0:5,' mV/m');
end;
end;
{Инициализация графики}
procedure grinit;
var
grDriver: Integer;
grMode: Integer;
ErrCode: Integer;
begin
grDriver := Detect;
InitGraph(grDriver,
grMode,'c:pgi');
ErrCode := GraphResult;
if ErrCode <> 0 then
Writeln('Graphics error:',
GraphErrorMsg(ErrCode));
end;
procedure drawcoords;
{Оси координат}
begin
setcolor(darkgray);
{Oy} line(100,445,100,30);
line(99,445,99,30);
line(99,30,96,35);
line(100,30,103,35);
outtextxy(25,23,'
Е,
мВ/м');
{Ox} line(95,440,515,440);
line(95,441,515,441);
line(515,440,510,437);line(515,441,510,444);
outtextxy(525,445,'R,
м');
end;
procedure drawgrid;{Сетка}
begin
setcolor(lightgray);
{Горизонтальная}
j:=40;
for i:=1 to 10 do
begin
line(100,440-j,500,440-j);
j:=j+40
end;
{Вертикальная}
j:=round(80/ln(1.91));
for i:=1 to 6 do
begin
line(100+round(j),440,100+round(j),40);
j:=j+round(80/ln(i+1.8))
end;
end;
procedure values;{Разметка сетки}
begin
{По вертикали}
del[1]:=em/10; {Цена
деления}
for
i:=2 to 10 do
del[i]:=del[1]+del[i-1];
setcolor(darkgray);
outtextxy(90,445,'0');
j:=40;
for i:=1 to 10 do
begin
str(del[i]:0:1,delstr);
outtextxy(90-length(delstr)*8,438-j*i,delstr)
end;
{По горизонтали}
j:=95+round(80/ln(1.91));
outtextxy(j,445,'3');
j:=j+round(80/ln(2.8));
outtextxy(j,445,'6');
j:=j+round(80/ln(3.8));
outtextxy(j,445,'9');
j:=j+round(80/ln(4.8));
outtextxy(j,445,'12');
j:=j+round(80/ln(5.8));
outtextxy(j,445,'15');
j:=j+round(80/ln(6.8));
outtextxy(j,445,'18');
end;
{
Построение графика
}
procedure drawgrafic;
var dlt:integer;
x1,x2,y1,y2:integer;
begin
setcolor(choice+1);
x1:=100-round(2/ln(1.91));;
for i:=1 to col do
begin
y1:=440-round(400*ord[i]/em);
y2:=440-round(400*ord[i+1]/em);
if (i>=1)and(i<40)
then begin
x1:=x1+round(2/ln(1.91));
x2:=x1+round(2/ln(1.91));
end;
if (i>=40)and(i<80)
then begin
x1:=x1+round(2/ln(3.71));
x2:=x1+round(2/ln(3.71));
end;
if (i>=80)and(i<120)
then begin
x1:=x1+round(2/ln(5.51));
x2:=x1+round(2/ln(5.51));
end;
if (i>=120)and(i<160)
then begin
x1:=x1+round(3/ln(7.31));
x2:=x1+round(3/ln(7.31));
end;
if (i>=160)and(i<=200)
then begin
x1:=x1+round(4/ln(9.11));
x2:=x1+round(4/ln(9.11));
end;
line(x1,y1,x2,y2);
line(x1,y1-1,x2,y2-1);
line(x1,y1-2,x2,y2-2);
delay(20);
end;
end;
{Графические процедуры}
procedure drawing1st; {Инициализирует
графику, подготавливает экран}
begin
grinit;
setbkcolor(15);
cleardevice;
setcolor(darkgray);
rectangle(10,10,getmaxx-10,getmaxy-10);
drawgrid;
drawcoords;
end;
procedure drawing2nd;
{Выводит график на экран}
begin
drawgrafic;
readln;
closegraph;
end;
begin
ClrScr;
{ Input;}p:=100; d:=8;
hb:=127;
grinit;
repeat
cleardevice;
i:=2;
repeat
a:=ddt;
until a<>0;
Hmenu_choice:=a div
100;
Case Hmenu_choice of
1: begin
choice:=a mod
100;
if choice=2
then break else begin
input;
input_is:=true;
end;
end;
2: if not(input_is)
then begin
gwritexy(17,10,'! Сначала необходимо ввести даннные
!',5,1);
ch:=readkey;
continue;
{end else begin
choice:=a mod
100;
Drawing1st;
Ordinates;
E_Maximum;
ToFile;
Values;
Drawing2nd;
}
end;
end;
until false;
HVMenu.Done;
cleardevice;
closegraph;
write(p:1:2,' ',d:1:2,'
',hb:1:2);
end.
Приложение 2 – таблица измерения напряженности
поля вблизи Усольского ретранслятора.
Места проведения
измерений
|
Расстояние
|
Направленная
антенна
|
|
Круговая антенна
|
|
|
км
|
Е (видео), мкВ/м
|
Е (звук), мкВ/м
|
Е (видео), мкВ/м
|
Е (звук), мкВ/м
|
1.Тайтурка
|
11
|
178
|
112
|
316
|
200
|
2.Средний
|
11
|
280
|
126
|
708
|
354
|
3.Мальта
|
6
|
630
|
354
|
1412
|
708
|
4.Белореченск
|
7
|
707
|
446
|
1258
|
708
|
5.Тракт
|
2
|
4466
|
1995
|
25118
|
7080
|
6.Зеленый гор.
ул.Энергетиков
|
4
|
17780
|
5010
|
2512
|
1412
|
7.Зеленый гор.
ул.Фурманова
|
2,5
|
12590
|
4466
|
5012
|
1122
|
8.У- С. Горбольница
|
5,5
|
3980
|
1258
|
2238
|
1258
|
9.У-С. ул. Горького
|
6
|
3548
|
1122
|
1778
|
890
|
10. У- С. ул.Крупской
|
5
|
3548
|
1412
|
2623
|
1238
|
11. У- С. ж/д.
переход
|
2,4
|
19952
|
7080
|
5623
|
2238
|
12. У- С. площадь
|
4
|
6310
|
1995
|
2512
|
1122
|
13. У- С. Комсомольский
пр-т
|
5
|
2818
|
708
|
1778
|
890
|
14. У- С. мр-н
Привокзальный
|
7
|
1995
|
708
|
708
|
400
|
15. У- С. Ленинский
пр-т
|
8
|
1995
|
794
|
890
|
446
|
16. У- С. Восточ.
окраина
|
9
|
2339
|
630
|
708
|
500
|
17. Тельма,
Зап. окраина
|
15
|
|