Владимир Шлома - Энергетический расчет канала дальней тропосферной радиосвязи (Программа для ЭВМ)
- Название:Энергетический расчет канала дальней тропосферной радиосвязи (Программа для ЭВМ)
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:2022
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Владимир Шлома - Энергетический расчет канала дальней тропосферной радиосвязи (Программа для ЭВМ) краткое содержание
Энергетический расчет канала дальней тропосферной радиосвязи (Программа для ЭВМ) - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function pushbutton1_Callback(hObject, eventdata, handles)
global Pvh1vt
global Lm1z
global Pvh1med
global L2z
global L2
global Pvh2
global h02
global Zap2
global h0t1
global Lz
global h01
global L1
global Zap1
global Rpred
global Lbz
global L0
global Lmz
global Pvh2medvt
global tipcan
global n
global TIPp
global Tm
global kan
global Sez
global Tp
global L0r
global L2med
global Pvh2vt
global m
global h0t2
global Pcht1
global Nk
global Pch2
global Lk
f = str2num(char(get(handles.edit1,'String')))
P=str2num(char(get(handles.edit2,'String'))); Pfr=str2double(char(get(handles.edit3,'String')));
Gr=str2num(char(get(handles.edit4,'String')));
a=str2double(char(get(handles.edit5,'String')));
h=str2num(char(get(handles.edit6,'String')));
Ugr=str2num(char(get(handles.edit7,'String')));
Fe=str2double(char(get(handles.edit8,'String')));
Pfp=str2double(char(get(handles.edit9,'String')));
Gp=str2num(char(get(handles.edit10,'String')));
Ugp=str2num(char(get(handles.edit13,'String')));
dfk=str2num(char(get(handles.edit22,'String')));
nk=str2num(char(get(handles.edit21,'String')));
m=str2num(char(get(handles.edit23,'String')));
V=str2num(char(get(handles.edit24,'String')));
R=150;
dF=40;
Fk=nk*3100-1250;
Po=1e-4;
Tpr=99.0;
if Sez==1
disp('Введите климатические потери для района работы радиолинии в соответствии с картой')
Lk=str2num(char(get(handles.edit14,'String'))) ;
elseif Sez==2
Lk=str2num(char(get(handles.edit14,'String')));
end
l=30000/f; L0=22+20*log10(R*1e5/l);
L0r=22+20*log10(R*1e5/l)-Gr-Gp-Pfr-Pfp; disp(['L0r=', num2str(L0r),' дБ (потери в свободном пространстве при реальных антеннах)']);
Lmed=62.92*exp(-((l+18.19)/174)^2)+(0.07608*l^(-0.4984)+0.06596)*R; sig=5.116*exp(-((R-205.7)/577.5)^2);
if Sez==2
Lmed=Lmed-12;
sig=4.676*exp(-((R-124.9)/332.4)^2)+3.165*exp(-((R-382)/508.3)^2);
elseif Sez==3
Lmed=Lmed-6;
sig=6.118*exp(-((R-158.6)/547.8)^2); end
if tipcan==2
[Lbz]=Lbzam(Tpr,n);
sig1=0.177*exp(0.2585*sig)-23.48*exp(-0.2856*sig); F=0;
for x=0:0.5:30;
F=1/2+1/2*erf(log(10^(x/20))/(10^(sig1/20)));
if F>=Tpr/100
break;
end
end
Lmz=x;
Lz=Lbz+Lmz;
if Tm==1
B=10*log10(-4/n*log(2^n*Po
elseif Tm==2
B=10*log10(-2/n*log(2^n*Po));
elseif Tm==3 || Tm==4 || Tm==5
B=10*log10(-1/n*log(2^n*Po));
end
disp(['Lbz=', num2str(Lbz),' дБ (потери от быстрых замираний)']);
disp(['Lmz=', num2str(Lmz),' дБ (потери от медленных замираний)']);
elseif tipcan==1
B=35;
if sig<3
sig=3;
elseif sig>7
sig=7;
end
sigma=fix(sig);
[ Lz1 ] = Lzam(Tpr, n, sigma);
sigma=fix(sig)+1;
if sigma>7
Lz2=Lz1;
else
[ Lz2 ] = Lzam(Tpr, n, sigma);
end
sigdr=sig-fix(sig);
Lz=Lz1+(Lz2-Lz1)*sigdr;
end
disp(['Lz=', num2str(Lz),' дБ (потери от медленных и быстрых замираний)']);
delta=Ugr+Ugp+0.056*sqrt(h);
if abs(R-300)
R1=300;
elseif abs(R-250)
R1=250;
elseif abs(R-200)
R1=200;
elseif abs(R-150)
R1=150;
else
R1=100;
end
if R1==100
a1=10.09;
b1=0.2266;
c1=-10.33;
d1=-1.994;
elseif R1==150
a1=9.399;
b1=0.1913;
c1=-9.604;
d1=-1.576;
elseif R1==200
a1=7.04;
b1=0.2457;
c1=-7.011;
d1=-1.612;
elseif R1==250
a1=7.807;
b1=0.1683;
c1=-7.757;
d1=-1.013;
elseif R1==300
a1=7.073;
b1=0.2235;
c1=-7.159;
d1=-1.404;
end
Lp=a1*exp(b1*delta)+c1*exp(d1*delta);
X=h*100/l;
if X<12
if abs(R-400)
R2=400;
elseif abs(R-300)
R2=300;
elseif abs(R-200)
R2=200;
elseif abs(R-150)
R2=150;
else
R2=100;
end
if R2==100
a1=1.983e15;
b1=-54.05;
c1=9.514;
a2=18.74;
b2=-6.452;
c2=11.95;
elseif R2==150
a1=1.661e15;
b1=-45.48;
c1=8.023;
a2=14.88;
b2=-3.284;
c2=8.104;
elseif R2==200
a1=1.439e9;
b1=-52.15;
c1=12.28;
a2=3.78;
b2=3.267;
c2=3.428;
elseif R2==300
a1=7835;
b1=-4.066;
c1=3.974;
a2=-7425;
b2=-3.92;
c2=3.917;
elseif R2==400
a1=8.829e13;
b1=-47.8;
c1=9.207;
a2=-4457;
b2=-6.454;
c2=3.497;
end
Lh=a1*exp(-((X-b1)/c1)^2)+a2*exp(-((X-b2)/c2)^2); else
Lh=0;
end
La=0.07*exp(0.055*(Gr+Gp));
Ldop=Lmed+Lz+Lp+Lh+La+Lk;
L1m=L0r+Ldop;
Lm1m=L1m-Lz;
Lm1c=Lm1m+4.676*exp(-((R-124.9)/332.4)^2)+3.165*exp(-((R-3828)/508.3)^2);
Lm1g=Lm1c-14.96*exp(-((R-74.66)/492.7)^2
if Tp==4
Lm1z=Lm1g;
elseif Tp==3 ||Tp==1
Lm1z=Lm1m;
else
Lm1z=Lm1c;
end
L1=Lm1z+Lz;
disp(['L1=', num2str(L1),' дБ (полное затухание)']);
Pvh1=10*log10(P)-L1;
Pvh1vt=10^(Pvh1/10); \
disp(['Pvh1=', num2str(Pvh1),' дБ (мощность сигнала на входе приемника)']);
disp(['Pvh1=', num2str(Pvh1vt),' вт (мощность сигнала на входе приемника)']);
if kan==1|| tipcan==1 \
disp(['L1med=', num2str(Lm1z),' дБ (медианные потери для заданного периода оценки)']);
Pvh1med=10^((10*log10(P)-Lm1z)/10);
disp(['Pvh1med=', num2str(Pvh1med),' вт (медианная мощность сигнала на входе приемника)']);
Pch1=4e-21*10^(Fe/10)*Nk*3100;
Pcht1=6975e-24*10^(Fe/10)*(Fk/dfk)^2/Pvh1vt;
h0t1=10*log10(1e-3/Pcht1);
h01=1e-3/Pcht1;
disp(['h01=', num2str(h01),'(отношение с/ш на входе детектора)']);
disp(['h0t1=', num2str(h0t1),' дБ (отношение с/ш на выходе тлф канала)']);
disp(['Pcht1=', num2str(Pcht1),' Вт (мощность шума в тлф канале, в точке, где Рс=1мВт)']);
disp(['Pch1=', num2str(Pch1),' Вт (мощность шума на входе приемника при частотном уплотнении)']);
elseif kan==2 && tipcan==2
Pch1=4e-21*10^(Fe/10)*V*1000;
h01=(10^(Pvh1/10))/Pch1;
disp(['h01=', num2str(h01),'(отношение с/ш на входе приемника и на входе детектора)']);
L1m=Lm1z+Lmz;
disp(['L1med=', num2str(L1m),' дБ (затухание тлг канала без быстрых замираний)']);
Pvh1med=10^((10*log10(P)-L1m)/10);
disp(['Pvh1med=', num2str(Pvh1med),' Вт (медианная мощность сигнала на входе приемника тлг канала)']);
disp(['Pch1=', num2str(Pch1),' Вт (мощность шума на входе приемника в Вт при непосредственной модуляции)']);
end
Lpred=10*log10(P)-10*log10(Pch1)-B;
disp(['Lpred=', num2str(Lpred),' дБ (допустимое значение полных потерь)']);
Zap1=Lpred-L1;
disp(['Zap1=', num2str(Zap1),' дБ (энергетический запас трассы)']);
if Zap1<1 && Zap1>0.5
Rpred=R;
else
Lp=Ldop-Lmed;
if abs(Zap1)<3
Kd=L0r/((L1-Lp)*2);
else
Kd=L0r/(L1-Lp);
end
Rpred=l*1e-5*10^((L0+Kd*(Zap1-0.7))/20)/(4*pi);
end
disp(['Rpred=', num2str(Rpred),' км (предельная дальность связи)']);
disp('Введите № климата 1-6 в соответствии с картой, или 7 – морской')
if Nk==1
Ma=39.60;
Ya=0.33;
Ur=3;
elseif Nk==2 || Nk==5
Ma=29.73;
Ya=0.27;
Ur=1;
elseif Nk==3
Ma=19.30;
Ya=0.32;
Ur=4;
elseif Nk==4
Ma=38.50;
Ya=0.27;
Ur=5;
elseif Nk==6
Ma=33.20;
Ya=0.27;
Ur=1;
elseif Nk==7
Ma=26.00;
Ya=0.27;
Ur=2;
end
tet=((Ugr+Ugp)*pi*1e3)/180+0.12*R;
Hn=1e-3*tet*R/4;
hn=4e-6*tet^2*6370/24;
Ln=20*log10(5+Ya*Hn)+4.34*Ya*hn;
ds=8.4933*tet;
if Ur==1
Y90=-2.2-(8.1-2.3e-4*min(f,4000))*exp(-0.137*hn);
elseif Ur==2
Y90=-9.5-3*exp(-0.137*hn);
elseif Ur==3
if ds<100
Y90=-8.2;
elseif 100
Y90=1.006e-8*ds^3-2.569e-5*ds^2+0.02242*ds-10.2;
else
Y90=-3.4;
end
elseif Ur==4
if ds<100
Y90=-10.845;
elseif 100
Y90=-4.5e-7*ds^3+4.45e-4*ds^2-0.122*ds-2.645;
else
Y90=-8.4;
end
elseif Ur==5
if ds<100
Y90=-11.5;
elseif 100
Y90=-8.519e-8*ds^3+7.444e-5*ds^2+4.18e-4*ds-12.1;
else
Y90=-4;
end
end
Cq=1.473e14*exp(-((Tpr-108.8)/1.534)^2)-0.2272*exp(-((Tpr-95.58)/7.786)^2)+9.047*exp(-((Tpr-153.3)/44.08)^2);
Yq=Cq*Y90;
La=0.07*exp(0.055*(Gr+Gp));
L2g=Ma+30*log10(f)+10*log10(R)+30*log10(tet)+Ln+La-Gr-Gp-Pfr-Pfp-Yq;
dq=R+8.5*((Ugr+Ugp)*pi*1e3)/180;
if abs(Tpr-50)
q=50;
elseif abs(Tpr-90)
q=90;
elseif abs(Tpr-95)
q=95;
elseif abs(Tpr-99)
q=99;
else
q=99.9;
end
if Nk==1
if q==50
p1=-4.238e-7;
p2=-0.0008043;
p3=4.185;
elseif q==90
p1=3.111e-7;
p2=-0.001963;
p3=4.108;
elseif q==95
p1=7.556e-7;
p2=-0.002476;
p3=3.956;
elseif q==99
p1=4.225e-7;
p2=-0.002412;
p3=3.701;
elseif q==99.9
p1=-3.766e-8;
p2=-0.00114;
p3=3.072;
end
elseif Nk==2 || Nk==3
if q==50
p1=2.506e-6;
p2=-0.006031;
p3=7.07;
elseif q==90
p1=2.376e-6;
p2=-0.005205;
p3=5.933;
elseif q==95
p1=1.857e-6;
p2=-0.004377;
p3=5.44;
elseif q==99
p1=1.009e-6;
p2=-0.003069;
p3=4.821;
elseif q==99.9
p1=2.279e-7;
p2=-0.001305;
p3=3.59;
end
elseif Nk==4
if q==50
p1=4.952e-6;
p2=-0.01447;
p3=12.99;
elseif q==90
p1=4.596e-6;
p2=-0.01175;
p3=10.12;
elseif q==95
p1=4.776e-6;
p2=-0.01076;
p3=8.707;
elseif q==99
p1=2.23e-6;
p2=-0.00675;
p3=6.837;
elseif q==99.9
p1=2.229e-6;
p2=-0.005639;
p3=5.548;
end
elseif Nk==5||Nk==6||Nk==7
if q==50
p1=5.358e-6;
p2=-0.1255;
p3=10.25;
elseif q==90
p1=5.507e-6;
p2=-0.0118;
p3=9.033;
elseif q==95
p1=3.981e-6;
p2=-0.00935;
p3=7.91;
elseif q==99
p1=3.349e-6;
p2=-0.008022;
p3=7.169;
elseif q==99.9
p1=2.489e-7;
p2=-0.006297;
p3=6.122;
end
end
dL=p1*dq^2+p2*dq+p3;
L2m=L2g+dL;
L2c=L2m+4.676*exp(-((R-124.9)/332.4)^2)+3.165*exp(-((R-3828)/508.3)^2);
if Tp==4
L2med=L2g;
elseif Tp==3
L2med=L2m;
else
L2med=L2c;
end
[Lbz]=Lbzam(Tpr,n);
Читать дальшеИнтервал:
Закладка: