Radioenlace Terrestre en JAVA
Radioenlace Terrestre en JAVA
Radioenlace Terrestre en JAVA
I. INTRODUCCIN
32
EIRP
Radio de Fresnel
Cobertura
FSL
GTX
GRX
Claridad en la
Linea de Vista
d = P 2 + ( Latitud) 2
(3)
Donde:
PTX
Transmisor
PRX
Receptor
Alcance
d en la
Azimut B
Latitud
Angulo de apuntalamiento
Azimut A
Longitud
donde
LatA = latitud del punto A en km.
LatB = latitud del punto B en km.
FSL =
3,134.71+ 3,136.63
Lm =
= 3,135.67 = 3227' 37.31"
2
P = Longitud (km)cos Lm
(2)
Donde:
Longitud = diferencia entre la longitud del punto A y la
longitud del punto B en km.
P = Long (km) cos(3227 '37.31")
= Long (km) (0.843762937) = 9.3983 km
(7)
33
PIRE = PT LL + GT
(8)
Donde:
PT = Potencia de transmisin en dB
LL = Perdida por lnea de transmisin en dB, la cual se
calcula de acuerdo a las siguientes suposiciones,
(12)
Donde:
c = velocidad de la luz
f =frecuencia de operacin
3 10 8
=
= 13.04 103 m
9
23 10
El ngulo de media potencia del lbulo se calcula
utilizando la siguiente expresin,
BW =
c
f
(9)
Donde:
70
D
(13)
Donde:
= longitud de la onda
D = dimetro del plato de la antena de transmisin
F1 = 17.32
d1d2
f GHz dkm
(15)
Donde:
(1.65)(7.94)
= 4.22m
(23)(9.59)
(16)
Donde:
h0 = altura del obstculo mas alto = 200 m
F1 = primera zona de Fresnel = 4.22 m
h=
d1d2
1.5k
(17)
34
de la cual
F1 = 17 .32
d1 d 2
( metros )
fD
LINEA DE VISTA
hTX
0.6F1
hRX
Permisionario CITEDI-IPN
Frecuencia 24 GHz
Horario 24 Horas por da
Circuito Cerro las Abejas Tx) a La Gloria (Rx)
Longitud del enlace 9.59 Km
Potencia:
Nominal:+17 dBm
P.I.R.E.: +49 dBm
Antena:
Tipo: Parablica
Polarizacin: Lnear
Angulo de abertura:
Ancho del haz, Plano H 2 59 34.03
Ancho del haz, Plano E 2 59 34.03
Angulo de elevacin 258 28 51.22
Ganancia 34 dBi min.
Azimut de mxima radiacin 348 28 51.2
Altura S.N.M 320 m
Altura S.T. 10 m
No. Canales 30 de 64 Kbps
Latitud 32 28 13
Longitud 116 51 11.4
d1
ae = ka
ho
D
k=
d2
III. RESULTADOS
Todas estas deducciones matemticas se integraron al
programa en Java para realizar el cmputo de radioenlaces
terrestres obteniendo lo siguiente:
Permisionario CITEDI-IPN
Frecuencia 24 GHz
Horario 24 Horas por da
Circuito La Gloria (Tx) a
Cerro las Abejas (Rx)
Longitud del enlace 9.59 Km
Potencia:
Nominal: +17 dBm
P.I.R.E.: +49 dBm
Antena:
Tipo: Parablica
Polarizacin: Lnear
Angulo de abertura:
Ancho del haz, Plano H 2 59 34.03
Ancho del haz, Plano E 2 59 34.03
Angulo de elevacin 11 31 8.77
Ganancia 34 dBi min.
Azimut de mxima radiacin 78 28 51.23
Altura S.N.M 280 m
Altura S.T. 10 m
No. Canales 30 de 64 Kbps
Latitud 32 27 1.62
Longitud 116 58 6.5
35
IV. CONCLUSIN
Las antenas disponibles en el mercado permiten efectuar
radioenlaces como el propuesto en este trabajo, la antena
utilizada aqu se selecciono por su frecuencia de operacin,
potencia, ganancia, tamao, modulacin y capacidad de tasa
de bits. Estas caractersticas son fundamentales en el
desempeo del enlace.
El equipo de recepcin, del cual en este anlisis solo se
contempla la antena, deber ser suficientemente sensible
para percibir el nivel de seal que llega al punto de
recepcin, de manera que el proceso de demodulacin se
pueda llevar a cabo para la recuperacin de la informacin
transmitida.
En la trayectoria del enlace no hay obstrucciones
considerables a la lnea de vista, de manera que la altura
mnima de las antenas requerida para librar el 60% de la
primera zona de Fresnel no representa un problema si se
desea implementar el enlace.
Partiendo de los clculos de prdidas de propagacin,
nivel de intensidad de la seal de recepcin, margen de
desvanecimiento y el criterio de la primera zona de Fresnel
se establece que el radioenlace punto a punto de frecuencia
de operacin de 23 GHz tiene el nivel de seal adecuado
para garantizar la demodulacin en el equipo de recepcin.
El programa implementado en Java permite simular el
radioenlace. Se selecciono este lenguaje para la
implementacin del programa debido a la portabilidad del
mismo.
REFERENCIAS
[1] Gibson J. (1996), The Communications Handbook
Press / IEEE Press
[2] Wayne T. (2003), Sistemas de comunicaciones
electrnicas. Cuarta edicin. Pearson Educacin.
[3] Townsend A. (1996) Digital Line-of-Sight Radio Links:
a handbook. Prentice Hall. UK.
[4] Mapa de curvas de nivel. INEGI.
[5] ARRL (1990), UHF/Microwave Experimenter's
Manual (American Radio Relay League).
[6] Hall, M.P.M., Barclay, L.W. and Hewitt, M.T. (1996),
Propagation of Radiowaves (Institution of Electrical
Engineers,).
[7] Parsons, J.D (1992), The Mobile Radio Propagation
Channel, Wiley & Sons.
[8] Doble, J., (1996) Introduction to Radio Propagation for
Fixed and Mobile Communications Artech House.
[9] Bertoni, H.L., Honcharenko, W., Maciel, L.R. and Xia,
H.H., (1994), UHF Propagation Prediction for Wireless
Personal Communications, Proceedings of the IEEE,
Vol. 82, No. 9, September, pp. 1333-1359.
[10] Freeman, R.L., Radio System Design for
Telecommunications (Wiley & Sons, 1987).
[11] Andersen, J.B., Rappaport, T.S. and Yoshida, S.,
(1995), Propagation Measurements and Models for
APNDICE
COMPUTO EN JAVA DE RADIOENLACES ENTRE
ESTACIONES TERRESTRES
import java.io.*;
import java.lang.Math.*;
public class enlaceT {
public static void main (String arg[]) throws
IOException {
// CLCULO DEL AZIMUT
float latA;
float latB;
float lonA;
float lonB;
double anguloElevacion;
double azimutA;
double azimutB;
double P;
double Lm;
double d;
String cadena;
float flotante;
//
InputStreamReader lector = new
InputStreamReader(System.in);
BufferedReader entrada = new BufferedReader(lector);
System.out.println("\33cCLCULO DE AZIMUT");
System.out.println();
System.out.println("Latitud Punto A: ");
cadena = entrada.readLine();
latA = new Float(cadena).floatValue();
System.out.println("Longitud Punto A: ");
cadena = entrada.readLine();
lonA = new Float(cadena).floatValue();
System.out.println("Latitud Punto B: ");
cadena = entrada.readLine();
latB = new Float(cadena).floatValue();
System.out.println("Longitud Punto B: ");
cadena = entrada.readLine();
lonB = new Float(cadena).floatValue();
System.out.println();
System.out.println("RESULTADOS ");
Lm = (latA+latB)/2;
System.out.println("Lm: "+Lm);
double angle = Lm * 2.0 * Math.PI/360.0;
P = (lonA-lonB) * 96.6 * Math.cos(angle);
System.out.println("P: "+P);
d = Math.sqrt(Math.pow(P,2)+Math.pow((latAlatB)*96.6,2));
System.out.println("d: "+d);
anguloElevacion = Math.acos(P/d);
angle = (anguloElevacion) /( 2.0 * Math.PI)*360.0;
System.out.println("Angulo de elevacion: "+angle);
azimutA=90-angle;
azimutB=360-angle;
System.out.println("Azimut A: "+azimutA);
System.out.println("Azimut B: "+azimutB);
System.out.println();
System.out.println();
// FSL
float frec;
double FSL;
//
System.out.println("CLCULO DE LAS PRDIDAS EN EL
ESPACIO LIBRE (FSL)");
System.out.println("Frecuencia de operacion (GHz): ");
cadena = entrada.readLine();
frec = new Float(cadena).floatValue();
FSL = 92.44 + 20 * Math.log(frec)/Math.log(10) + 20 *
Math.log(d)/Math.log(10);
System.out.println();
System.out.println("RESULTADOS ");
System.out.println("FSL: "+FSL);
System.out.println();
System.out.println();
// PIRE
float Pt;
float Gt;
float Llt;
36
double PIRE;
//
System.out.println("CLCULO DE POTENCIA ISOTROPICA
RADIADA EFECTIVAMENTE (PIRE)");
System.out.println("Potencia de transmision (dB): ");
cadena = entrada.readLine();
Pt = new Float(cadena).floatValue();
System.out.println("Ganancia de transmision (dB): ");
cadena = entrada.readLine();
Gt = new Float(cadena).floatValue();
System.out.println("Prdidas en la lnea de transmision
(dB): ");
cadena = entrada.readLine();
Llt = new Float(cadena).floatValue();
PIRE = Pt-Llt+Gt;
System.out.println();
System.out.println("RESULTADOS ");
System.out.println("PIRE: "+PIRE);
System.out.println();
System.out.println();
// RSL
float Gr;
float Llr;
double RSL;
//
System.out.println("CLCULO DEL NIVEL DE RECEPCION DE LA
SENAL (RSL)");
System.out.println("Ganancia de recepcion (dB): ");
cadena = entrada.readLine();
Gr = new Float(cadena).floatValue();
System.out.println("Prdidas en la lnea de recepcion
(dB): ");
cadena = entrada.readLine();
Llr = new Float(cadena).floatValue();
RSL = PIRE-FSL+Gr-Llr;
System.out.println();
System.out.println("RESULTADOS ");
System.out.println("RSL: "+RSL);
System.out.println();
System.out.println();
// FM
float a;
float b;
float w;
double FM;
//
System.out.println("CLCULO DEL MARGEN DE
DESVANECIMIENTO (FM)");
System.out.println("Factor topografico (a): ");
cadena = entrada.readLine();
a = new Float(cadena).floatValue();
System.out.println("Factor climatico (b): ");
cadena = entrada.readLine();
b = new Float(cadena).floatValue();
System.out.println("Disponibilidad del enlace (w): ");
cadena = entrada.readLine();
w = new Float(cadena).floatValue();
FM = 30 * Math.log(d)/Math.log(10) + 10 *
Math.log(6*a*b*frec*1000000000)/Math.log(10);
FM = FM - 10 * Math.log((1-w)*70)/Math.log(10);
System.out.println();
System.out.println("RESULTADOS ");
System.out.println("FM: "+FM);
System.out.println();
System.out.println();
// MARGEN
float S;
double M;
//
System.out.println("CLCULO DEL MARGEN (S)");
System.out.println("Sensibilidad (dB): ");
cadena = entrada.readLine();
S = new Float(cadena).floatValue();
M = RSL - S;
System.out.println();
System.out.println("RESULTADOS ");
System.out.println("MARGEN: "+M);
System.out.println();
System.out.println();
// APERTURA DEL LOBULO Y ANGULO DE MEDIA POTENCIA DEL
LOBULO
float D;
double aBW;
double BW;
//
System.out.println("CLCULO DEL ANGULO DE APERTURA DEL
LOBULO Y ANGULO DE MEDIA POTENCIA DEL LOBULO");
System.out.println("Diametro del plato de la antena (m):
");
cadena = entrada.readLine();
D = new Float(cadena).floatValue();
double longOnda = 300000000/(frec*1000000000);
BW = longOnda*70/D;
aBW = 2*BW;
System.out.println();
System.out.println("RESULTADOS ");
System.out.println("Angulo de apertura del lobulo:
"+BW);
System.out.println("Angulo de media potencia del lobulo:
"+aBW);
System.out.println();
System.out.println();
// PRIMERA ZONA DE FRESNEL Y ALTURA MINIMA DE LAS
ANTENAS
float h0;
float d1;
float d2;
double F1;
double hAnt;
double h;
//
System.out.println("CLCULO DE LA PRIMERA ZONA DEFRESNEL
Y ALTURA MINIMA DE LAS ANTENAS");
System.out.println("Altura del obstaculo mas alto (m):
");
cadena = entrada.readLine();
h0 = new Float(cadena).floatValue();
System.out.println("Distancia del punto A al obstaculo
mas alto (km): ");
cadena = entrada.readLine();
d1 = new Float(cadena).floatValue();
System.out.println("Distancia del punto B al obstaculo
mas alto (km): ");
cadena = entrada.readLine();
d2 = new Float(cadena).floatValue();
F1 = 17.32 * Math.sqrt(d1*d2/(frec*d));
h = d1 * d2 / ( 1.5 * 4/3 );
hAnt = h0+h+0.6*F1;
System.out.println();
System.out.println("RESULTADOS ");
System.out.println("Primera zona de Fresnel (m): "+F1);
System.out.println("Altura minima de las antenas (m):
"+hAnt);
System.out.println();
System.out.println();
}
}
/*
Latitud Punto A:
32.45045
Longitud Punto A:
116.9684722
Latitud Punto B:
32.47027778
Longitud Punto B:
116.8531667
*/