Смекни!
smekni.com

Напряженность поля радиотелецентров (стр. 2 из 2)

На рисунке 8 построен примерный график, который может изобразить нам компьютерная программа.

Расчет напряженности поля в близи зоны Усольского радиотелецентра

Напряженность поля в близи Усольского района рассчитывает компьютерная программа, написанная на языке TURBOPASCAL 7.0. В программу входит четыре типа антенн: первый тип - антенная решетка с коэффициентом b, равным 2p; второй тип - антенная решетка с коэффициентом b, равным 1.3p; третий тип - это полуволновой вибратор; четвертый тип определяет сам пользователь - вводит функцию F(a) для конкретной антенны. В данном случае используется антенна типа 3-х элементный волновой канал с круговой поляризацией, направленная на город.

Данные измерения напряженности поля указаны в таблице. График зависимости напряженности поля Ед, мВ/м от расстояния R, км, построен на рис. 10. Как мы видим, с увеличением расстояния от ретранслятора напряженность поля убывает. На графике максимальное расстояние 18 км.

Рис.10

Сравнение результатов измерения и расчетов Усольского радиотелецентра.

Таблица № 1.

Расстояние от ретранслятора, км Напряженность поля, мкВ/м
Расчетные данные Экспериментальные данные
2 4741,5 4466
2,4 3209,2 19952
2,5 2992 12590
4 1237,1 12045
5 767,9 3183
5,5 648 3980
6 537,8 2089
7 397,5 1351
8 305,6 1995
9 242,2 2339
11 162,9 229,5
15 93,6 890

В таблице указаны расчетные данные, которые рассчитала компьютерная программа и экспериментальные, которые были измерены специальным прибором. Если сравнить данные полученные в результате расчета и экспериментальные, то они несколько отличаются друг от друга. Экспериментальные данные больше, чем расчетные, это может зависеть от рельефа рассматриваемой местности. Также оказало влияние то, что в расчетах не учитывалась ДН передающей антенны в азимутальной плоскости.

ПРИЛОЖЕНИЕ

Приложение 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:&bsol;bp&bsol;bgi');

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 890 354 446 224