Академический Документы
Профессиональный Документы
Культура Документы
T E S I S
QUE PARA OBTENER EL GRADO DE
MAESTRO EN CIENCIAS DE LA COMPUTACIN
P R E S E N T A :
ING. VICTOR MANUEL MEDINA MENESES
Para mis hijas Nayibi, Andrea e Ingrid por todo el tiempo que les
robe, y por la motivacin que me hicieron sentir al querer darle
ejemplo. Gracias.
INDICE
INDICE......................................................................................................................................................................... I
ABSTRACT .............................................................................................................................................................. IV
GLOSARIO............................................................................................................................................................ VIII
INTRODUCCION .......................................................................................................................................................1
I
Centro de Investigacin en Computacin INDICE
3.2.1 Forma en que se evito el bloqueo entre el STR y el cliente para la graficacin en lnea (SL) ............33
3.3 DIAGRAMAS DE CLASES DEL SERVIDOR .....................................................................................................34
3.3.1 Detalle del diseo de las funciones para manejar la tarjeta GPIB .....................................................37
3.3.2 Determinacin del periodo del muestreo.............................................................................................40
3.4 DIAGRAMA DE DISTRIBUCIN ....................................................................................................................41
CAPITULO 4 RESULTADOS.........................................................................................................................43
4.1 INICIALIZACIN DEL ANALIZADOR DE ESPECTROS .....................................................................................43
4.2 ADQUISICIN DEL PATRN DE RADIACIN ................................................................................................45
4.3 MANIPULACIN DEL PATRN DE RADIACIN.............................................................................................45
4.4 EVALUACIN DEL PATRN DE RADIACIN.................................................................................................48
4.5 REPORTE ...................................................................................................................................................49
4.6 METODOLOGA PARA MEDIR EL PATRN DE RADIACIN............................................................................52
4.7 CONCLUSIONES .........................................................................................................................................53
4.8 RECOMENDACIONES ..................................................................................................................................54
4.9 SIGUIENTES PASOS ....................................................................................................................................54
BIBLIOGRAFIA .......................................................................................................................................................56
II
Centro de Investigacin en Computacin RESUMEN
RESUMEN
Este trabajo se da una solucin al problema de la adquisicin y evaluacin del patrn
de radiacin de una antena de manera automtica por medio del desarrollo de un
instrumento virtual.
Se desarroll un sistema cliente servidor donde la comunicacin se hace con paquetes
TCP por lo que el cliente puede ubicarse en sitios remotos a travs de una WAN o
INTERNET.
Se desarroll un cliente que encapsula la GUI y proporciona las herramientas para
evaluar el patrn de radiacin y generar reportes. El cliente se desarroll con lenguaje
JAVA por lo que puede correr en cualquier estacin de trabajo que tenga una
mquina virtual de JAVA. Adems se incluy la capacidad de evaluar el porcentaje de
rea del patrn de radiacin que sobrepasa a la curva de evaluacin.
Se desarroll un servidor que encapsula el control del analizador de espectros y puede
adquirir el patrn desde un trazo del analizador (forma tradicional) o puede hacer un
muestreo del valor de potencia que tiene el analizador para generar el trazo del patrn.
El servidor se ejecuta en el sistema operativo RT-Linux y hace uso de las funciones de
tiempo real duro para garantizar que las muestras de potencia, tomadas para generar
la grfica del patrn de radiacin, estn igualmente espaciadas y el patrn adquirido no
se deforme.
Se gener un sencillo protocolo de comunicacin entre cliente y servidor basado en el
Standard Commands for Programming Instrumentation (SCPI). Por lo que si se desea
controlar otro analizador de espectros se puede generar otro programa servidor. Sin
modificar el cliente que es la parte ms grande del software.
Con este trabajo se da cumplimiento a una necesidad de la empresa SATMEX para
realizar la evaluacin de los patrones de radiacin de las antenas satelitales y
garantizar que los usuarios no se interfieran en sus comunicaciones.
III
Centro de Investigacin en Computacin ABSTRACT
ABSTRACT
This work gives a solution to the automatic antenna pattern acquisition and evaluation,
through developing a virtual instrument
A Client-Server system was development where the communications is made with TCP
packets, for this reason the client could be in remote site through a WAN or Internet.
A client that encapsulates GUI was development, and the client gives the tools to
evaluate the antenna pattern and produce print reports. The client was developed in
Java language, thats because it can be run in any work station with a Java virtual
machine. The capability to evaluate the percentage of area above the evaluation curve
was add.
A server was development. This server encapsulates the spectrum analyzer control and
could acquire the pattern from a spectrum analyzer trace (traditional way) o sampling
the power from the spectrum analyzer to generate the trace.
The server is running in an RT-Linux operating system and makes use of the hard real
time functions to ensure that the power samplings, taking to generate the antenna
pattern, where equally distant in time pattern where not deform.
A simple communications protocol was design between the client and server; it was
based in the Standard Commands for Programming Instrumentation (SCPI). Thats
make possible make another server program if you wish to control another spectrum
analyzer with out have to modify the client, witch is the bigger part of the software
system.
This work gives a satisfaction to a SATMEX necessity to evaluate antenna patterns to
guarantee that the users dont interference with each others in theirs communications.
IV
Centro de Investigacin en Computacin INDICE DE FIGURAS
INDICE DE FIGURAS
V
Centro de Investigacin en Computacin INDICE DE FIGURAS
VI
Centro de Investigacin en Computacin INDICE DE TABLAS
INDICE DE TABLAS
VII
Centro de Investigacin en Computacin GLOSARIO
GLOSARIO
VIII
Centro de Investigacin en Computacin GLOSARIO
HP "Hewlett Packard".
IX
Centro de Investigacin en Computacin GLOSARIO
SL Sistema en lnea.
SO Sistema operativo.
X
Centro de Investigacin en Computacin INTRODUCCION
INTRODUCCION
1
Centro de Investigacin en Computacin INTRODUCCION
1
Cortesa de la compaa Vertex Corporation.
2
Centro de Investigacin en Computacin INTRODUCCION
3
Centro de Investigacin en Computacin ESTADO DEL ARTE
4
Centro de Investigacin en Computacin ESTADO DEL ARTE
5
Centro de Investigacin en Computacin ESTADO DEL ARTE
6
Centro de Investigacin en Computacin ESTADO DEL ARTE
1 -15
-20
Amplitud (dB)0 -30
270 0 -3 -6 -10 dB 90
2
0
3
0 -180 -90 0 9 180
0 180
Angulo (grados)
Lbulo Principal
Primeros Nulos (FNBW)
Lbulo Posterior
Lbulos Menores
7
Centro de Investigacin en Computacin ESTADO DEL ARTE
Lbulo Mayor
Lbulos Menores
HPBW
Lbulo Lateral
FNBW Nulo
Lbulo Posteriro
En el artculo Field Testing An Earth Station for Two Degree Compliance[Morgan A. et al,
1988]
los autores, Michael A. Morgan y Dennis Burt, sientan las bases para la medicin
automatizada del sistema de patrn de radiacin utilizando un satlite intermedio entre
la antena transmisora y receptora. En ste artculo tambin se menciona la necesidad
de la correccin del patrn de radiacin de azimut debido a la forma de la tierra.
8
Centro de Investigacin en Computacin ESTADO DEL ARTE
1.2.3.1Detalle de la adquisicin
Como antecedente la antena a evaluar debe ser capaz de moverse con velocidad
constante, si no se mueve con velocidad constante la medicin del patrn se deforma y
por lo tanto no ser real.
Se realizan los siguientes pasos:
Medir cuanto tiempo tarda la antena a evaluar en recorrer los grados que se
mover para adquirir el patrn, (tpicamente de -5 a +5 grados de su posicin de
mximo apuntamiento).
En el analizador:
o Ajustar que realice un solo trazo.
o Ajustar la banda de frecuencia a 0 (Frequency Spawn 0). Para que
funcione como osciloscopio y solo mida la potencia recibida.
o Ajustar el tiempo de barrido al tiempo que tarda la antena en moverse los
grados a medir.
9
Centro de Investigacin en Computacin ESTADO DEL ARTE
1.2.3.2Detalle de la evaluacin.
Para evaluar el patrn de radiacin se le monta a este la siguiente curva de
evaluacin:
Gain-[29- 25LOG ()dB 1 7 -1 -7
Gain-[+8 ]dB 7 < 9.2 -7 < -9.2
Gain-[32- 25LOG ()] dB 9.2 < 48 -9.2 < -48
Gain-[-10 ]dB 48 < 180 -48 < -180
En la figura 3-9 se puede observar la envolvente para una antena cuya ganancia es
de 50 dB.
Para montar la curva:
o Se puede fotografiar el despliegue del analizador y dibujar a mano la
curva como en un principio se haca.
o Si el analizador cuenta con una salida para plotter o impresora se puede
imprimir el patrn y posteriormente dibujar a mano la cuerva.
o Si al analizador se le conecta una computadora, sta puede encargarse
de montarle la curva de evaluacin despus de haber adquirido el patrn
del analizador.
10
Centro de Investigacin en Computacin ESTADO DEL ARTE
2
Cortesa de Andrew Corporation.
11
Centro de Investigacin en Computacin ESTADO DEL ARTE
12
Centro de Investigacin en Computacin ESTADO DEL ARTE
Previsibilidad.
Tolerancia a fallos.
El cambio de contexto entre tareas debe de ser lo ms rpido posible, por lo que
el cdigo encargado de ello es normalmente muy pequeo.
13
Centro de Investigacin en Computacin ESTADO DEL ARTE
1.4.2.1RT-Linux
Las primeras versiones de RT-Linux ofrecan un API muy reducido sin tener en cuenta
ninguno de los estndares de tiempo real: POSIX Real-Time extensions, PThreads, etc.
A partir de la versin 2.0 Victor Yodaiken decide reconvertir el API original a otro que
fuera "compatible" con el API de POSIX Threads.
14
Centro de Investigacin en Computacin ESTADO DEL ARTE
Interconstruido en el kernel.
15
Centro de Investigacin en Computacin ESTADO DEL ARTE
16
Centro de Investigacin en Computacin ESTADO DEL ARTE
Debido a que los sistemas de tiempo real interactan con el mundo fsico, hay
un mayor uso de los actores en los diferentes tipos de diagramas, estos actores
representan sensores, actuadotes o algn otro dispositivo.
La compaa SATMEX cuenta con un software para la medicin del patrn de radiacin
que le fue comprado a la compaa Calian de Canad (actualmente desaparecida).
Este software utiliza un analizador de espectro HP8566B que actualmente est por ser
descontinuado y la compaa HP ya no dar servicios para este equipo. Adems la
mquina sobre la que corre este sistema es una HP9000 con sistema operativo HP-UX,
lo que hace que el costo de mantenimiento de esta mquina sea alto.
Por lo anterior SATMEX ha pedido a la compaa norteamericana SAT Corporation
que desarrolle un software a la medida para medir y evaluar el patrn de radiacin,
pero el desarrollo ha tardado mucho y el software no ha funcionado como SATMEX lo
requiere.
Al tener un desarrollo propio del software para medicin del patrn de radiacin la
compaa ganara flexibilidad al poder realizar las modificaciones que desee, podr
resistir la obsolescencia de sistemas atados al hardware y se ahorrar el costo de las
modificaciones.
18
Centro de Investigacin en Computacin ESTADO DEL ARTE
los usuarios interactuar con su propio instrumento hecho a la medida [Perales A., 2001] para
adquirir los datos del patrn de radiacin, almacenarlos, procesarlos, evaluarlos y emitir
un reporte todo esto dentro de una interfaz grfica.
En la figura 1-2 se muestra un diagrama del equipamiento usado y sus conexiones:
El instrumento virtual tendr dos piezas de software:
El programa servidor que se encargar de colectar los valores de la seal el cul estar
desarrollado en C y utilizar las facilidades de RT-Linux, este programa correr en una
PC compatible la cul tendr el sistema operativo RT-Linux y contar con una interfaz
GPIB para conectarse a un analizador de espectros.
El segundo programa ser el cliente que contar con la GUI, estar desarrollado en
Java y se conectar al servidor a travs de la red. Este programa a parte de ser la
interfaz grfica con el usuario se encargar de enviar las peticiones de medicin al
servidor y de procesar los resultados mostrndolos en forma grfica, as mismo
montar sobre la grfica las funciones que recomienda la UIT para evaluar el patrn y
emitir un reporte.
Se cuenta con una tarjeta GPIB PCIIA de National Instruments para la cual ya existen
controladores para Linux. Con esta tarjeta se pretende controlar analizadores de
espectro HP8566B, se utilizar este analizador por su disponibilidad.
Para medir el patrn de radiacin de la antena de un cliente se le pedir que apunte al
satlite y suba una portadora sin modular (CW), se le pedir que haga un barrido en
azimut y otro en elevacin. Utilizando las antenas disponibles en SATMEX se
encaminar la seal al sistema de medicin.
El diagrama de equipos y la solucin propuesta se muestra en la Figura 1-7.
19
Centro de Investigacin en Computacin ESTADO DEL ARTE
S atelite
R ed de S A T M E X
E stac n de trabajo
c on m quina virtual
S ervidor c on R T Linux de J ava
y tarjeta G P IB
Figura 1-7 Diagrama de equipamiento y conexiones.
20
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
2.1 Requerimientos
Los requerimientos de la empresa que debe satisfacer el sistema se enlistan a
continuacin:
Sistema econmico sin gastos de inversin.
Se debe de utilizar el equipamiento existente.
Se debe de poder medir el patrn de radiacin desde cualquier sitio de la
empresa a travs de la red.
El requerimiento que indica que el sistema debe de ser econmico y sin gastos de
inversin nos obliga a elegir herramientas de desarrollo de software libre.
Las herramientas de software que se eligieron para el servidor son las siguientes:
1. Sistema operativo Linux: es un sistema operativo libre que es estable y se ha
utilizado ampliamente para el control de equipos de medicin. Se utilizar la
distribucin RedHat Linux versin 7.0[RedHat, 2003] por contar con el disco de
instalacin.
2. Sistema operativo RT-Linux: El sistema operativo Linux puede ser
complementado con los mdulos de RT-Linux para convertirlo en un sistema
operativo de tiempo real duro. Tambin se pudo haber elegido QNX debido a
que en ambos sistemas se ha trabajado, pero la decisin se inclin por RT-
Linux, debido a que para este SOTR se encontr un manejador de dispositivo
para la tarjeta GPIB con la que se contaba y como no se cuenta con informacin
sobre la tarjeta GPIB sera difcil hacer uno para QNX[Vicua R. et al, 2001], adems el
tiempo de desarrollo de un manejador de dispositivos es largo.
3. Device driver de GPIB: Se encontr un paquete para Linux de manejadores de
tarjetas GPIB en sourceforge[Sourceforge, 2003] pero estos manejadores fueron
21
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
hechos para versiones del Kernel de Linux superiores a la 2.4 (la que se est
usando es la 2.2 porque para sta se tienen los parches de RT-Linux), se prob
bajar estos manejadores y tratar de compilarlos pero no se tuvo xito. Se sigui
buscando en la red un manejador y finalmente se encontr uno en la pgina del
Dr. Jens Thoms Trring[Trring J., 2003] el cul se pudo compilar correctamente.
4. Lenguaje C: Se utilizar el lenguaje C que viene en la distribucin de Linux
elegida en este caso es la versin 2.96 de gcc.
Las herramientas de software que se eligieron para el cliente son las siguientes:
1. Java: Se eligi a Java como el lenguaje de desarrollo de la interfaz grfica con el
usuario, no slo por la prctica que se tiene en el uso de este lenguaje, sino
adems por sus caractersticas de orientacin a objetos y la gran cantidad de
APIs existentes, con lo anterior se acelera la creacin de aplicaciones, adems
proporciona independencia de plataforma. Se utiliz el paquete j2sdk1.4.1_06.
2. NetBeans IDE: Este es un ambiente de integrado de desarrollo para Java el cul
proporciona entre otras cosas facilidades para el diseo grfico de la interfaz y la
autogeneracin de cdigo para sta. Se uso la versin 3.5.1.
3. Graph: Es un paquete libre para el desplegado y manipulacin de grficas
desarrollado por Leigh Brookshaw. Se utiliz la versin 2.4 obtenida de
Internet[Brookshaw L., 2003].
Para satisfacer el requerimiento que pide que se use el equipo existente, se utiliz el
que a continuacin se indica, todo este equipo es con el que la empresa SATMEX ya
contaba:
1. Computadora Servidora: PC Pentium III 600 KHz con disco duro de 6GB
Memoria RAM de 64 MB CD-ROM 52x y con Sistema Operativo RT-Linux.
22
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
23
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
4. Computadora Cliente: PC Pentium IV 1.4 MHz, memoria de 128 MB, disco duro
de 20 MB. Con mquina virtual de Java. Puede ser cualquiera que tenga una
mquina virtual Java.
Para satisfacer el requerimiento que indica que se debe de poder medir el patrn desde
cualquier sitio de la empresa se implement lo siguiente:
1. Sistema cliente-servidor: El cliente puede estar en cualquier sitio de la empresa.
2. El cliente corre en una mquina virtual Java: Cualquier estacin de trabajo con
mquina Java puede ser el cliente.
3. Protocolo de comunicacin: Se implement un protocolo de comunicacin
basado en el Standard Commands for Programming Instrumentation (SCPI).
24
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
25
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
26
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
Figura 2-6 Diagrama de secuencia de la adquisicin del patrn de radiacin con adquisicin por el
analizador de espectros.
27
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
Figura 2-7 Diagrama de secuencia de la adquisicin del patrn de radiacin con adquisicin por el
servidor.
28
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
29
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
30
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
En este captulo se describen los diagramas de clase de los componentes del sistema,
se presenta primero los diagramas de clase del cliente y posteriormente se muestran
los diagramas de clase del servidor. Se hace nfasis en el protocolo de comunicacin
SCPI que se dise para comunicar al cliente y el servidor. Tambin se expone con
ms detalle como se disearon las funciones manejadoras de dispositivo para el control
de la tarjeta GPIB y de la forma en que se comunica el STR y la graficacin en lnea.
Adems se comenta la decisin de porque usar un sistema de tiempo real crtico y de
por que se escogi RT-Linux.
El cdigo fuente completo del sistema se encuentra en un CD-ROM que acompaa
este trabajo.
AP_GUI AP_Plot
1 * Axis
*
Usuario
Formulario de entrada
de los datos de la antena
Mensajes
TCP/IP
Mensajes
SCPI
coClient
Formulario de entrada
de los datos de la prueba
AP_RTHandle
1
Servidor
32
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
Cliente
AP_GUI
Usuario
Servidor
AP_Server
Analizador de espectros
33
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
TCP/IP
AP_Server
Tiempo de muestreo
Memoria
Tuberia compartida
de TR
Muestras
Analizador de espectros
AP_Muestreo
Tarjeta GPIB
En la figura 4-3 se observan las clases del servidor las cuales se mapean a procesos
en el servidor, aunque estas clases no fueron escritas en un lenguaje orientado a
objetos se tratarn como objetos para fines de diseo.
La clase AP_Server se encarga de recibir las peticiones que AP_GUI realiza a travs
de la red y traducirlas a peticiones hacia el analizador. Por lo que la clase AP_Server
tambin se encarga que la comunicacin con el analizador de espectros, para lo cul
utiliza un device driver libre, el cual se indica en el diagrama de clases como un
componente, creado por Dr. Jens Thoms Trring[Trring J., 2003]. Este device driver es un
34
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
35
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
El uso del device driver bajado de Internet y las funciones para manejar la tarjeta
GPIB se detallan a continuacin:
Manejador Funciones
Manejador Caractersticas
3.3.1 Detalle del diseo de las funciones para manejar la tarjeta GPIB
Para utilizar un dispositivo aparte de las opciones comentadas en la seccin 1.5 existe
otra opcin que es la de acceso directo al dispositivo. Esta opcin da la ventaja de que
no se tiene que implementar todas las interfaces para el manejo de toda la
funcionalidad del dispositivo por lo que el tiempo de desarrollo es menor y puede ser la
opcin ms recomendada cuando no se piensa utilizar el mismo dispositivo para otras
aplicaciones.
Se decidi crear funciones para manejar la tarjeta GPIB y tener el control directamente
desde AP_Muestreo.
Debido a que no se contaba con informacin del manejo de la tarjeta a bajo nivel para
poder desarrollar las funciones manejadoras se procedi a analizar el cdigo fuente del
device driver que proporciona el Dr. Jens Thoms Trring [Trring J., 2003] , en el driver se
observ que la tarjeta se poda manejar de dos formas por DMA o por poleo, se decidi
implementar las funciones utilizando poleo dado que era el ms sencillo por que no
involucraba tcnicas ms complejas como el manejo de interrupciones y el control del
DMA.
37
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
38
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
000109: do
000110: {
000111: status=inb_p(0x2b9);
000112: if ((status&0x04)==0x04)
000113: {
000114: //rtl_printf("\n[GPIBwaitOUT] return: -2");
000115: return -2;
000116: }
000117: fin = gethrtime();
000118: dif=fin-inicio;
000119: if (dif>valido)
000120: {
000121: //rtl_printf("\n[GPIBwaitOUT] return: -1");
000122: return -1;
000123: }
000124: }while ((status & 0x02)!=0x02);
000125: return 0;
000126: }
39
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
40
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
41
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
Cliente Servidor
AP_GUI AP_Server
Usuario
AP_RTPHandle AP_Muestreo
Analizador
42
Centro de Investigacin en Computacin RESULTADOS
CAPITULO 4 RESULTADOS
43
Centro de Investigacin en Computacin RESULTADOS
Se tiene adems los botones: [Reset] que sirve para inicializar el analizador de
espectros, [Snap] para obtener una copia del despliegue del analizador de espectros,
[SetALL] para enviar todos los parmetros al analizador de espectros y [GetALL] para
obtener todos los parmetros del analizador de espectros.
Una vez que se envan todos los parmetros al analizador de espectros se procede a
obtener una copia de su despliegue con el botn [Snap], para comprobar que la
portadora sin modular est sintonizada. En seguida se muestra la ventana obtenida al
pulsar [Snap] despus de haber sintonizado el analizador de espectros a la portadora
sin modular, donde se ve la respuesta a la portadora, Figura 4-2:
Hay que recordar que el analizador de espectros no est fsicamente en el mismo sitio
en el que se encuentra el operador por lo que es importante tener el botn de [Snap]
para que se pueda verificar que el analizador est sintonizado.
44
Centro de Investigacin en Computacin RESULTADOS
45
Centro de Investigacin en Computacin RESULTADOS
debe de haber introducido la elevacin del sitio donde se encuentra la antena para la
cual se est llevando a cabo la medicin, en nuestro caso 63.3 grados, este dato se
introduce en el formulario que aparece al seleccionar la opcin [Antenna Information]
del men [Data] como se muestra a continuacin:
47
Centro de Investigacin en Computacin RESULTADOS
48
Centro de Investigacin en Computacin RESULTADOS
4.5 Reporte
Una vez que se tiene la evaluacin del patrn de radiacin se procede a imprimir un
reporte para lo cual se deben de haber llenado los datos informativos de la opcin
[Antenna Information] (Figura 4-6) y [Test Information] (Figura 4-9) del men [Data].
49
Centro de Investigacin en Computacin RESULTADOS
Para generar el reporte se utiliza la opcin [Print Report] del men [File]. En seguida se
muestra un reporte generado de la medicin del patrn de radiacin:
50
Figura 4-10 Reporte de la medicin del patrn de radiacin.
Centro de Investigacin en Computacin RESULTADOS
52
Centro de Investigacin en Computacin RESULTADOS
4.7 Conclusiones
Se cumplieron los objetivos planteados y que a continuacin se describen:
53
Centro de Investigacin en Computacin RESULTADOS
4.8 Recomendaciones
Utilizar la adquisicin del patrn de radiacin de tipo PC, para este sistema en
particular, se recomienda para una duracin de muestreo mayor a 1 minuto ya que se
obtienen ms muestras de las que puede dar un muestreo del analizador de espectros
8566B que son 1001 datos.
Se recomienda desarrollar un servidor por tipo de analizador de espectros. Este
servidor debe de ser pequeo y encapsular el manejo de la interfaz fsica y lgica con
el analizador de espectros. Es decir debe de manejar y encapsular la interfaz fsica ya
sea GPIB, RS232, ETHERNET, o cualquier otra; y la interfaz lgica, los comandos que
se transmitirn al analizador de espectros, sean estos propietarios o algn estndar
como el SCPI; y comunicarse con el cliente por medio del protocolo de comandos SCPI
desarrollados en este trabajo.
Para obtener mejores resultados en el muestreo en tiempo real se recomiendan las
siguientes acciones:
Crear funciones manejadoras de la tarjeta GPIB para RT-Linux que utilice DMA.
54
Centro de Investigacin en Computacin RESULTADOS
55
Centro de Investigacin en Computacin BIBLIOGRAFIA
BIBLIOGRAFIA
[ACM, 2004] ACM, (2004). "UML Fundamentals" Curso Virtual. Digital Think.
[Advanced, 2003] Advanced Horizons, Inc., (2003). http://www.ahinc.com/hhbus.htm
[Andrew, 1994] Andew Corporation, (1994). "Summary of FCC Rules for Testing Satellite
Earth Station Transmit Antennas", Andrew Corporation, pp. 1-4.
[Belotserkovski, 1983] Belotserkovski, (1983). "Fundamentos de Antenas". Marcombo, pp. 11-20.
[Booch. et al, 1998] Booch, Grady, (1998). "Unified Modeling Language User Guide", Addison-
Wesley.
[Brookshaw L., 2003] Brookshaw Leigh, (2003). "http://www.sci.usq.edu.au/staff/leighb/graph/".
Graph
[Bruce E., 2002] Bruce Eckel, (2002). "Thinking in Java 3rd edition". Prentice Hall.
[Butazzo G., 1997] Butazzo Guorgio, (1997). "Hard Real-Time Computing Systems
Predictable Scheduling Algorithms and Applications. Kluwer Academic
Publisers.
[Burns. et al, 1997] Burns Alan and Wellings Andy. (1997) Real-Time Systems and
Programing Languages. Adison Wesley Longman.
[Cambridge, 1992] Cambridge University, (1992). "Numerical Recipies in C: The Art of
Scientific Computing". Cambridge University Press, pp 133
[Dominguez A., 1995] Dominguez Garcia A., (1995). "Clculo de Antenas". Alfaomega, pp 36-40.
[Douglas B., 2003] Douglass, Bruce Powel, (2003). "Real-Time Design Patterns: Robust
Scalable Architecture for Real-Time Systems". Addison Wesley, pp 528
[Douglas B., 2004] Douglass, Bruce Powel, (2004). "Real Time UML: Advances in The UML
for Real-Time Systems, Third Edition", Addison Wesley, pp 752
[Guevara P., 2003] Guevara Lpez Pedro, (2003). "Notas del curso: Laboratorio de tiempo
real". CIC.
[Gutirrez A. 2002] Gutirrez Torns Agustin, (2002). "Notas del curso de ingeniera de
software". CIC
[Harbison S.et al, 1991] Harbison Samuel P. & Steele Guy L. Jr., (1991) "C a Reference Manual".
Prentice Hall.
[HewlettPackard, 1982] Hewlett Packard, (1982). "Tutorial Description of the Hewlett-Packard
Interface Bus", Hewlett Packard.
[HewlettPackard, 1984] Hewlett-Packard, (1984). "8566B SPECTRUM ANALYZER OPERATING
AND PROGRAMMING MANUAL". Hewlett-Packard, pp. 537.
[Holler M., 2000] Holler Mirko , (2000). "Real Time Linux 2.0 Instalation & Examples".
http://midas.psi.ch/rtlinux , pp 1-10.
[Kernighan B. et al, 1987] Kernighan Brian W. & Pike Rob, (1987). "El Entorno de Programacin
UNIX". Prentice Hall, pp 209-237.
[Kernighan B. et al, 1978] Kernighan Brian W. & Ritchie Dennis M., (1978). "El Lenguaje de
Programacin C". Prentice Hall.
[Kraus J., 1984] Kraus John D., (1984). "Electromagnetismo". McGraw Hill, pp.405-412.
[Kraus J., 1988] Kraus John D., (1988). "Antennas". McGraw Hill, pp 20-23, 762-767, 807-
809.
[Lemay L. et al, 1996] Lemay Laura & Perkins Charles L.., (1996). "Teach Yourself Java in 21
56
Centro de Investigacin en Computacin BIBLIOGRAFIA
days". SAMS.
[Manjares R. 2000] Manjares S. Jorge Robeto, 2000 "Notas del curso programacin orientada
a objetos". CIC
[Mrquez F., 2001] Mrquez Garca Francisco Manuel, (2001). "UNIX Programacin avanzada
(segunda edicin)". Alfaomega, pp 191-238, 333-439.
[Medel J. et al, 2002] Medel Jurez Jos de Jess, Guevara Lpez Pedro y Barrn Fernndez
Ricardo, (2002). Interaccin entre Sistemas de Tiempo Real y Sistemas
en Lnea CIC, pp 1-6.
[Mitchell M. et al, 2001] Mitchell Mark, Oldman Jeffrey and Samuel Alex, (2001). "Advanced Linux
Programing". Pearson Education.
[Morgan A. et al, 1988] Morgan Michael A. and Burt Dennis, (1988). "Field Testing An Earth
Station for Two Degree Compliance", Andrew Corporation, pp. 1-7.
[Perales A., 2001] Perales Briseo Alejandro, (2001). "Diseo y Desarrollo de un
Osciloscopio Virtual Sobre un Sistema Operativo En Tiempo Real" Tesis
de Maestria. CIC.
[RedHat, 2003] Read Hat Linux, (2003). "http://www.readhat.com/".
[Ripoll I., 1998] Ripoll Ismael, (1998). "Tutorial de Real Time Linux", pp 1-58.
[Rubini A. et al, 2001] Rubini Alessandro & Corbet Jonathan, (2001). "Linux Device Drivers, 2nd
Edition". O'Reilly.
[Salmern M., 1981] Salmern Mara Jos, (1981). "Radiacin, propagacin y antenas". Trillas,
pp 26.
[Sourceforge, 2003] Sourceforge, (2003) "http://linux-gpib.sourceforge.net/".
[Surez S., 2001] Surez Guerra, Sergio, (2001). "Notas del curso: Sistemas de tiempo
real". CIC.
[Trring J., 2003] Trring Dr. Jeans Thoms, (2003). http://www.physik.fu-
berlin.de/~toerring/.
[UIT465, 1993] UIT, (1993).RECOMENDACIN UIT-R S.465-5 "Diagrama de radiacin
de referencia de estacin terrena para utilizar en la coordinacin y
evaluacin de las interferencias, en la gama de frecuencias comprendidas
entre 2 y unos 30 GHz", pp. 1-2.
[UIT732, 1993] UIT, (1993).RECOMENDACIN 732 "Mtodo para el tratamiento
estadstico de las crestas de los lbutlos laterales de las antenas de
estacin terrena", pp. 1-2.
[UIT580, 1993] UIT, (1993).RECOMENDACIN UIT-R S.580-5 "Diagramas de radiacin
que han de utilizarse como objetivos de diseo para las antenas de las
estaciones terrenas que funcionan con satlites geoestacionarios", pp. 1-
3.
[Vicua R. et al, 2001] Vicua Heredia Juan Roberto y Guevara Lpez Pedro, (2001)
"Elaboracin de Administradores de Recursos en QNX para Aplicaciones
de Sistemas de Tiempo Real", CIC
[Vicua R., 2001] Vicua Heredia Juan Roberto, (2001). "Guia para el Desarrollo del
Administrador de Recursos para una Terjeta de Entrada-Salida De
Seales en QNX ty Su Implementacin en un Sistema de Control en
Tiempo Real". CIC
[Wilshire P., 2000] Wilshire Phil, (2000). "Instaling RT-Linux", RT-Linux Documentation
Group, pp 1-9.
57
Centro de Investigacin en Computacin BIBLIOGRAFIA
[Yodaiken V. et al, 1996] Yodaiken Victor and Barabanov Michael, (1996), "Real Time Linux". RT-
Linux Documentation Group, pp-1-9.
[Yodaiken V. et al, 1999] Yodaiken Victor and Barabanov Michael, (1999), "RTLinux Version Two",
VJY Associates LLC, pp-1-14.
[Zsolt P., 2003] Zsolt Dr. Ppay , (2003).
"http://www.hit.bme.hu/people/papay/edu/GPIB/tutor.htm".
58
Centro de Investigacin en Computacin INTRODUCCION A SCPI
Uno de los mejores principios en los que se basa SCPI es que si existe un comando
que pone un valor existe una peticin similar que lee el valor.
SCPI organiza los comandos en varios conjuntos que se mapean a subsistemas en el
instrumento. Los comandos en cada subsistema estn definidos en un orden jerrquico
similar a la estructura jerrquica del sistema de archivos encontrado en las
computadoras. En SCPI esta estructura de comandos es llamada rbol de comandos.
59
Centro de Investigacin en Computacin INTRODUCCION A SCPI
SENSe
|
+---------------+---------------+
| |
CURRent VOLTage
| |
+------+------+ +------+------+
| | | |
RANGe RESolution RANGe RESolution
| | | |
+---+---+ | +---+---+ |
| | | | | |
UPPer AUTO AUTO UPPer AUTO AUTO
El rbol de comandos se describe con nomenclatura similar a la que se usa para los
sistemas de archivos. El comando inicial del rbol es llamado comando raz, y el
comando del subsistema esta en tutas de ramas del rbol. Por ejemplo, una ruta se
define por la siguiente secuencia de comandos:
:SENSe:Voltaje:RANGe:AUTO
La secuencia anterior coloca el multmetro para que lea voltaje y use un rango
automtico. Ntese que los dos puntos (:) se usan como separadores en la ruta. Otra
ruta es:
:SENSe:CURRent:RANGe:UPPer
La ruta anterior coloca el multmetro para que lee corriente y usa el rango superior de
corriente. Ntese que no se necesita enviar la ruta completa de un comando cada vez.
Cuando se decodifica un comando de un subsistema el parser mantiene la ruta de
comandos actual, algo parecido a como al directorio actual en los sistemas de archivos
jerrquicos, esto especifica el bloque del subsistema del instrumento para el cual se
estn decodificando comandos.
El parser navega en el rbol de acuerdo a las siguientes reglas:
60
Centro de Investigacin en Computacin INTRODUCCION A SCPI
Es lo mismo que:
:SENSe:VOLTage:RANGe:AUTO
:SENSe:VOLTage:RESolution:AUTO
EL rbol de comandos es especificado concisamente por medio de una tabla e
comandos del subsistema que define el comando y sus parmetros. Por ejemplo el
rbol de comandos de SENSE se evala por medio de la siguiente tabla
_______________________________________
Command Parameters
_______________________________________
[:SENSe]
:CURRent
:RANGe
:AUTO Boolean or ONCE
[:UPPer] numeric
:RESolution numeric
:AUTO Boolean or ONCE
:VOLTage
:RANGe
61
Centro de Investigacin en Computacin INTRODUCCION A SCPI
La jerarqua del comando est dada por el nivel de sangra en la columna del comando.
La mayora de los comandos se muestran como cadenas con letras en mayscula
seguidas de letras en minscula. Esta mezcla no es parte de la definicin SCPI. SCPI
no es sensitiva a maysculas. Lo que las letras en minscula significan es que estos
caracteres son opcionales y se pueden descartar si se desea. Por ejemplo:
:SENSe:CURRent:RANGe:AUTO ON
Es lo mismo que:
:SENS:CURR:RANG:AUTO ON
Los comandos dentro de parntesis cuadrados son comandos implcitos, significa que
si un comando en ese nivel de la ruta no es especificado se asume. Por ejemplo:
:SENSe:VOLTage:RANGe:UPPer 6.5
Es lo mismo que:
:VOLTage:RANGe 6.5
Para la mayora de los comandos que ponen un valor existe su equivalente comando
de peticin que lee el valor. El comando de peticin es el mismo que el comando que
coloca el valor pero termina con el carcter ?. Por ejemplo:
:SENSe:VOLTage:RANGe
62
Centro de Investigacin en Computacin COMANDOS SCPI DISEADOS Y SUS
RESPUESTAS
COMANDO DESCRIPCION
63
Centro de Investigacin en Computacin COMANDOS SCPI DISEADOS Y SUS
RESPUESTAS
analizador de espectros.
COMANDO RESPUESTA
INIT OK
AP:GET:AN:valor -77.00<CR><LF>
-95.00<CR><LF>
.
.
.
-76.10<CR><LF>
-94.70<CR><LF>
END<CR><LF>
AP:GET:PC:valor -77.00<CR><LF>
-95.00<CR><LF>
.
.
.
-76.10<CR><LF>
-94.70<CR><LF>
END<CR><LF>
64
Centro de Investigacin en Computacin COMANDOS SCPI DISEADOS Y SUS
RESPUESTAS
AN:GET:RL 0:DM<CR><LF>
AN:GET:SP 20000000000:HZ<CR><LF>
AN:GET:ST .500000:SC<CR><LF>
AN:GET:CF 12000000000:HZ<CR><LF>
AN:GET:RB 3000000:HZ<CR><LF>
AN:GET:VB 3000000:HZ<CR><LF>
AN:GET:SNAP -77.00<CR><LF>
-95.00<CR><LF>
.
.
.
-76.10<CR><LF>
-94.70<CR><LF>
END<CR><LF>
Tabla A-2 Respuesta a los Comandos SCPI.
65
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
En la tabala B-1 son descritas las variables miembro de la clase y en la tabla B-2 se
describen las funcionesmiembreo.
Variable Descripcin
66
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
AP_GUI() Constructor
67
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
que se muestre.
getValor(String par, JTextField jTF, JComboBox jCB) Obtiene los valores de los parmetros del
analizador y los coloca en las campos de
texto de la GUI . Es decir procesa la
respuesta al comando AN:GET:XX y lo
conforma. Tambin muestra en la GUI el
resultado obtenido. El parmetro par es el
parmetro del que se quiere el valor (RL,
SP, ST, CF, RB o VB); jTF es el campo de
texto de la GUI en donde se mostrar y
jCB es la caja de elecciones donde se
muestran las unidades.
68
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
69
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando algn botn de la GUI es presionado o algn objeto es
seleccionado. La funcin initComponents() es llamada para iniciar los componentes
de la GUI. En la figura B-3 se muestra el diseo de la GUI:
70
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
71
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
72
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
73
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
74
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
75
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando algn men u objeto de la GUI es seleccionado. En la figura B-
6 se muestra el diseo de la GUI:
76
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
77
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
78
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
79
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
80
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
81
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
Funcin Descripcin
En la figura B-11 se muestran las variables y funciones de la clase AInf que conforman
la GUI estas fueron generadas automticamente por el programa NETBeans.
82
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando se presiona algn botn. Si se presiona el botn OK se hace
un CALLBACK a mipadre para informarle de los datos de la antena.
En la figura B-12 muestra el diseo de la GUI:
83
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
84
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
Funcin Descripcin
85
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
En la figura B-14 se muestran las variables y funciones de la clase TInf que conforman
la GUI estas fueron generadas automticamente por el programa NETBeans.
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando algn botn de la GUI es presionado. Si se presiona el botn
OK se hace un CALLBACK a mipadre para informarle de los datos de la antena.
En la figura B-15 se muestra el diseo de la GUI:
86
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
setLobes(int nlobes, int nlobesabove, float Funcin que coloca los valores del
plobes) nmero de lbulos, lbulos por arriba de
la curva de evaluacin y el porcentaje de
lbulos por arriba de la evaluacin en el
formulario de salida.
setAngles(double Tangle, double Funcin que coloca los valores del ngulo
AngleAbove, double pangle) de evaluacin, la suma de los ngulos de
los intervalos que el patrn de radiacin
esta por arriba de la curva de evaluacin y
el porcentaje que representa esta suma
en el formulario de salida.
87
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
88
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando algn botn de la GUI es presionado. En la figura B-18 se
muestra el diseo de la GUI:
89
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
Funcin Descripcin
90
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
91
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
AP_Server
+main(na:int,arg:* char []): int
+execCmd(comando:* char,socCli:int): int
+doInit(): int
+doANGetPara(socCli:int,datos:* char): int
+doANSetPara(socCli:int,datos:* char): int
+doANGetSNAP(socCli:int): int
+doAPGetAN(socCli:int,datos:* char): int
+doAPGetPC(socCli:int,datos:* char): int
+doMuestreo(datos:* char,muestreo: * volatile char ): void
+doSendMuestras(socCli:int,muestreo:* volatile char): void
92
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
93
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
AP_Muestreo
+muestreo: * volatile char
+init_module(): int
+cleanup_module(): void
+manejador(fifo:unsigned int): int
+toma_muestras(arg:* void): * void
+GPIBwrite(buf:* char,n:int): int
+GPIBread(buf:* char,sz:int): int
+GPIBopen(): int
+GPIBclose(): int
+GPIBwaitOUT(): int
+GPIBwaitIN(): int
+GPIBwaitCMD(): int
+GPIBATN(): int
94
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
Funcin Descripcin
95
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
96
Centro de Investigacin en Computacin INDICE
INDICE
INDICE......................................................................................................................................................................... I
ABSTRACT .............................................................................................................................................................. IV
GLOSARIO............................................................................................................................................................ VIII
INTRODUCCION .......................................................................................................................................................1
I
Centro de Investigacin en Computacin INDICE
3.2.1 Forma en que se evito el bloqueo entre el STR y el cliente para la graficacin en lnea (SL) ............33
3.3 DIAGRAMAS DE CLASES DEL SERVIDOR .....................................................................................................34
3.3.1 Detalle del diseo de las funciones para manejar la tarjeta GPIB .....................................................37
3.3.2 Determinacin del periodo del muestreo.............................................................................................40
3.4 DIAGRAMA DE DISTRIBUCIN ....................................................................................................................41
CAPITULO 4 RESULTADOS.........................................................................................................................43
4.1 INICIALIZACIN DEL ANALIZADOR DE ESPECTROS .....................................................................................43
4.2 ADQUISICIN DEL PATRN DE RADIACIN ................................................................................................45
4.3 MANIPULACIN DEL PATRN DE RADIACIN.............................................................................................45
4.4 EVALUACIN DEL PATRN DE RADIACIN.................................................................................................48
4.5 REPORTE ...................................................................................................................................................49
4.6 METODOLOGA PARA MEDIR EL PATRN DE RADIACIN............................................................................52
4.7 CONCLUSIONES .........................................................................................................................................53
4.8 RECOMENDACIONES ..................................................................................................................................54
4.9 SIGUIENTES PASOS ....................................................................................................................................54
BIBLIOGRAFIA .......................................................................................................................................................56
II
Centro de Investigacin en Computacin INDICE DE FIGURAS
INDICE DE FIGURAS
V
Centro de Investigacin en Computacin INDICE DE FIGURAS
VI
Centro de Investigacin en Computacin INDICE DE TABLAS
INDICE DE TABLAS
VII
Centro de Investigacin en Computacin RESUMEN
RESUMEN
Este trabajo se da una solucin al problema de la adquisicin y evaluacin del patrn
de radiacin de una antena de manera automtica por medio del desarrollo de un
instrumento virtual.
Se desarroll un sistema cliente servidor donde la comunicacin se hace con paquetes
TCP por lo que el cliente puede ubicarse en sitios remotos a travs de una WAN o
INTERNET.
Se desarroll un cliente que encapsula la GUI y proporciona las herramientas para
evaluar el patrn de radiacin y generar reportes. El cliente se desarroll con lenguaje
JAVA por lo que puede correr en cualquier estacin de trabajo que tenga una
mquina virtual de JAVA. Adems se incluy la capacidad de evaluar el porcentaje de
rea del patrn de radiacin que sobrepasa a la curva de evaluacin.
Se desarroll un servidor que encapsula el control del analizador de espectros y puede
adquirir el patrn desde un trazo del analizador (forma tradicional) o puede hacer un
muestreo del valor de potencia que tiene el analizador para generar el trazo del patrn.
El servidor se ejecuta en el sistema operativo RT-Linux y hace uso de las funciones de
tiempo real duro para garantizar que las muestras de potencia, tomadas para generar
la grfica del patrn de radiacin, estn igualmente espaciadas y el patrn adquirido no
se deforme.
Se gener un sencillo protocolo de comunicacin entre cliente y servidor basado en el
Standard Commands for Programming Instrumentation (SCPI). Por lo que si se desea
controlar otro analizador de espectros se puede generar otro programa servidor. Sin
modificar el cliente que es la parte ms grande del software.
Con este trabajo se da cumplimiento a una necesidad de la empresa SATMEX para
realizar la evaluacin de los patrones de radiacin de las antenas satelitales y
garantizar que los usuarios no se interfieran en sus comunicaciones.
III
Centro de Investigacin en Computacin ABSTRACT
ABSTRACT
This work gives a solution to the automatic antenna pattern acquisition and evaluation,
through developing a virtual instrument
A Client-Server system was development where the communications is made with TCP
packets, for this reason the client could be in remote site through a WAN or Internet.
A client that encapsulates GUI was development, and the client gives the tools to
evaluate the antenna pattern and produce print reports. The client was developed in
Java language, thats because it can be run in any work station with a Java virtual
machine. The capability to evaluate the percentage of area above the evaluation curve
was add.
A server was development. This server encapsulates the spectrum analyzer control and
could acquire the pattern from a spectrum analyzer trace (traditional way) o sampling
the power from the spectrum analyzer to generate the trace.
The server is running in an RT-Linux operating system and makes use of the hard real
time functions to ensure that the power samplings, taking to generate the antenna
pattern, where equally distant in time pattern where not deform.
A simple communications protocol was design between the client and server; it was
based in the Standard Commands for Programming Instrumentation (SCPI). Thats
make possible make another server program if you wish to control another spectrum
analyzer with out have to modify the client, witch is the bigger part of the software
system.
This work gives a satisfaction to a SATMEX necessity to evaluate antenna patterns to
guarantee that the users dont interference with each others in theirs communications.
IV
Centro de Investigacin en Computacin INTRODUCCION
INTRODUCCION
1
Centro de Investigacin en Computacin INTRODUCCION
1
Cortesa de la compaa Vertex Corporation.
2
Centro de Investigacin en Computacin INTRODUCCION
3
Centro de Investigacin en Computacin ESTADO DEL ARTE
4
Centro de Investigacin en Computacin ESTADO DEL ARTE
5
Centro de Investigacin en Computacin ESTADO DEL ARTE
6
Centro de Investigacin en Computacin ESTADO DEL ARTE
1 -15
-20
Amplitud (dB)0 -30
270 0 -3 -6 -10 dB 90
2
0
3
0 -180 -90 0 9 180
0 180
Angulo (grados)
Lbulo Principal
Primeros Nulos (FNBW)
Lbulo Posterior
Lbulos Menores
7
Centro de Investigacin en Computacin ESTADO DEL ARTE
Lbulo Mayor
Lbulos Menores
HPBW
Lbulo Lateral
FNBW Nulo
Lbulo Posteriro
En el artculo Field Testing An Earth Station for Two Degree Compliance[Morgan A. et al,
1988]
los autores, Michael A. Morgan y Dennis Burt, sientan las bases para la medicin
automatizada del sistema de patrn de radiacin utilizando un satlite intermedio entre
la antena transmisora y receptora. En ste artculo tambin se menciona la necesidad
de la correccin del patrn de radiacin de azimut debido a la forma de la tierra.
8
Centro de Investigacin en Computacin ESTADO DEL ARTE
1.2.3.1Detalle de la adquisicin
Como antecedente la antena a evaluar debe ser capaz de moverse con velocidad
constante, si no se mueve con velocidad constante la medicin del patrn se deforma y
por lo tanto no ser real.
Se realizan los siguientes pasos:
Medir cuanto tiempo tarda la antena a evaluar en recorrer los grados que se
mover para adquirir el patrn, (tpicamente de -5 a +5 grados de su posicin de
mximo apuntamiento).
En el analizador:
o Ajustar que realice un solo trazo.
o Ajustar la banda de frecuencia a 0 (Frequency Spawn 0). Para que
funcione como osciloscopio y solo mida la potencia recibida.
o Ajustar el tiempo de barrido al tiempo que tarda la antena en moverse los
grados a medir.
9
Centro de Investigacin en Computacin ESTADO DEL ARTE
1.2.3.2Detalle de la evaluacin.
Para evaluar el patrn de radiacin se le monta a este la siguiente curva de
evaluacin:
Gain-[29- 25LOG ()dB 1 7 -1 -7
Gain-[+8 ]dB 7 < 9.2 -7 < -9.2
Gain-[32- 25LOG ()] dB 9.2 < 48 -9.2 < -48
Gain-[-10 ]dB 48 < 180 -48 < -180
En la figura 3-9 se puede observar la envolvente para una antena cuya ganancia es
de 50 dB.
Para montar la curva:
o Se puede fotografiar el despliegue del analizador y dibujar a mano la
curva como en un principio se haca.
o Si el analizador cuenta con una salida para plotter o impresora se puede
imprimir el patrn y posteriormente dibujar a mano la cuerva.
o Si al analizador se le conecta una computadora, sta puede encargarse
de montarle la curva de evaluacin despus de haber adquirido el patrn
del analizador.
10
Centro de Investigacin en Computacin ESTADO DEL ARTE
2
Cortesa de Andrew Corporation.
11
Centro de Investigacin en Computacin ESTADO DEL ARTE
12
Centro de Investigacin en Computacin ESTADO DEL ARTE
Previsibilidad.
Tolerancia a fallos.
El cambio de contexto entre tareas debe de ser lo ms rpido posible, por lo que
el cdigo encargado de ello es normalmente muy pequeo.
13
Centro de Investigacin en Computacin ESTADO DEL ARTE
1.4.2.1RT-Linux
Las primeras versiones de RT-Linux ofrecan un API muy reducido sin tener en cuenta
ninguno de los estndares de tiempo real: POSIX Real-Time extensions, PThreads, etc.
A partir de la versin 2.0 Victor Yodaiken decide reconvertir el API original a otro que
fuera "compatible" con el API de POSIX Threads.
14
Centro de Investigacin en Computacin ESTADO DEL ARTE
Interconstruido en el kernel.
15
Centro de Investigacin en Computacin ESTADO DEL ARTE
16
Centro de Investigacin en Computacin ESTADO DEL ARTE
Debido a que los sistemas de tiempo real interactan con el mundo fsico, hay
un mayor uso de los actores en los diferentes tipos de diagramas, estos actores
representan sensores, actuadotes o algn otro dispositivo.
La compaa SATMEX cuenta con un software para la medicin del patrn de radiacin
que le fue comprado a la compaa Calian de Canad (actualmente desaparecida).
Este software utiliza un analizador de espectro HP8566B que actualmente est por ser
descontinuado y la compaa HP ya no dar servicios para este equipo. Adems la
mquina sobre la que corre este sistema es una HP9000 con sistema operativo HP-UX,
lo que hace que el costo de mantenimiento de esta mquina sea alto.
Por lo anterior SATMEX ha pedido a la compaa norteamericana SAT Corporation
que desarrolle un software a la medida para medir y evaluar el patrn de radiacin,
pero el desarrollo ha tardado mucho y el software no ha funcionado como SATMEX lo
requiere.
Al tener un desarrollo propio del software para medicin del patrn de radiacin la
compaa ganara flexibilidad al poder realizar las modificaciones que desee, podr
resistir la obsolescencia de sistemas atados al hardware y se ahorrar el costo de las
modificaciones.
18
Centro de Investigacin en Computacin ESTADO DEL ARTE
los usuarios interactuar con su propio instrumento hecho a la medida [Perales A., 2001] para
adquirir los datos del patrn de radiacin, almacenarlos, procesarlos, evaluarlos y emitir
un reporte todo esto dentro de una interfaz grfica.
En la figura 1-2 se muestra un diagrama del equipamiento usado y sus conexiones:
El instrumento virtual tendr dos piezas de software:
El programa servidor que se encargar de colectar los valores de la seal el cul estar
desarrollado en C y utilizar las facilidades de RT-Linux, este programa correr en una
PC compatible la cul tendr el sistema operativo RT-Linux y contar con una interfaz
GPIB para conectarse a un analizador de espectros.
El segundo programa ser el cliente que contar con la GUI, estar desarrollado en
Java y se conectar al servidor a travs de la red. Este programa a parte de ser la
interfaz grfica con el usuario se encargar de enviar las peticiones de medicin al
servidor y de procesar los resultados mostrndolos en forma grfica, as mismo
montar sobre la grfica las funciones que recomienda la UIT para evaluar el patrn y
emitir un reporte.
Se cuenta con una tarjeta GPIB PCIIA de National Instruments para la cual ya existen
controladores para Linux. Con esta tarjeta se pretende controlar analizadores de
espectro HP8566B, se utilizar este analizador por su disponibilidad.
Para medir el patrn de radiacin de la antena de un cliente se le pedir que apunte al
satlite y suba una portadora sin modular (CW), se le pedir que haga un barrido en
azimut y otro en elevacin. Utilizando las antenas disponibles en SATMEX se
encaminar la seal al sistema de medicin.
El diagrama de equipos y la solucin propuesta se muestra en la Figura 1-7.
19
Centro de Investigacin en Computacin ESTADO DEL ARTE
S atelite
R ed de S A T M E X
E stac n de trabajo
c on m quina virtual
S ervidor c on R T Linux de J ava
y tarjeta G P IB
Figura 1-7 Diagrama de equipamiento y conexiones.
20
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
2.1 Requerimientos
Los requerimientos de la empresa que debe satisfacer el sistema se enlistan a
continuacin:
Sistema econmico sin gastos de inversin.
Se debe de utilizar el equipamiento existente.
Se debe de poder medir el patrn de radiacin desde cualquier sitio de la
empresa a travs de la red.
El requerimiento que indica que el sistema debe de ser econmico y sin gastos de
inversin nos obliga a elegir herramientas de desarrollo de software libre.
Las herramientas de software que se eligieron para el servidor son las siguientes:
1. Sistema operativo Linux: es un sistema operativo libre que es estable y se ha
utilizado ampliamente para el control de equipos de medicin. Se utilizar la
distribucin RedHat Linux versin 7.0[RedHat, 2003] por contar con el disco de
instalacin.
2. Sistema operativo RT-Linux: El sistema operativo Linux puede ser
complementado con los mdulos de RT-Linux para convertirlo en un sistema
operativo de tiempo real duro. Tambin se pudo haber elegido QNX debido a
que en ambos sistemas se ha trabajado, pero la decisin se inclin por RT-
Linux, debido a que para este SOTR se encontr un manejador de dispositivo
para la tarjeta GPIB con la que se contaba y como no se cuenta con informacin
sobre la tarjeta GPIB sera difcil hacer uno para QNX[Vicua R. et al, 2001], adems el
tiempo de desarrollo de un manejador de dispositivos es largo.
3. Device driver de GPIB: Se encontr un paquete para Linux de manejadores de
tarjetas GPIB en sourceforge[Sourceforge, 2003] pero estos manejadores fueron
21
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
hechos para versiones del Kernel de Linux superiores a la 2.4 (la que se est
usando es la 2.2 porque para sta se tienen los parches de RT-Linux), se prob
bajar estos manejadores y tratar de compilarlos pero no se tuvo xito. Se sigui
buscando en la red un manejador y finalmente se encontr uno en la pgina del
Dr. Jens Thoms Trring[Trring J., 2003] el cul se pudo compilar correctamente.
4. Lenguaje C: Se utilizar el lenguaje C que viene en la distribucin de Linux
elegida en este caso es la versin 2.96 de gcc.
Las herramientas de software que se eligieron para el cliente son las siguientes:
1. Java: Se eligi a Java como el lenguaje de desarrollo de la interfaz grfica con el
usuario, no slo por la prctica que se tiene en el uso de este lenguaje, sino
adems por sus caractersticas de orientacin a objetos y la gran cantidad de
APIs existentes, con lo anterior se acelera la creacin de aplicaciones, adems
proporciona independencia de plataforma. Se utiliz el paquete j2sdk1.4.1_06.
2. NetBeans IDE: Este es un ambiente de integrado de desarrollo para Java el cul
proporciona entre otras cosas facilidades para el diseo grfico de la interfaz y la
autogeneracin de cdigo para sta. Se uso la versin 3.5.1.
3. Graph: Es un paquete libre para el desplegado y manipulacin de grficas
desarrollado por Leigh Brookshaw. Se utiliz la versin 2.4 obtenida de
Internet[Brookshaw L., 2003].
Para satisfacer el requerimiento que pide que se use el equipo existente, se utiliz el
que a continuacin se indica, todo este equipo es con el que la empresa SATMEX ya
contaba:
1. Computadora Servidora: PC Pentium III 600 KHz con disco duro de 6GB
Memoria RAM de 64 MB CD-ROM 52x y con Sistema Operativo RT-Linux.
22
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
23
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
4. Computadora Cliente: PC Pentium IV 1.4 MHz, memoria de 128 MB, disco duro
de 20 MB. Con mquina virtual de Java. Puede ser cualquiera que tenga una
mquina virtual Java.
Para satisfacer el requerimiento que indica que se debe de poder medir el patrn desde
cualquier sitio de la empresa se implement lo siguiente:
1. Sistema cliente-servidor: El cliente puede estar en cualquier sitio de la empresa.
2. El cliente corre en una mquina virtual Java: Cualquier estacin de trabajo con
mquina Java puede ser el cliente.
3. Protocolo de comunicacin: Se implement un protocolo de comunicacin
basado en el Standard Commands for Programming Instrumentation (SCPI).
24
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
25
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
26
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
Figura 2-6 Diagrama de secuencia de la adquisicin del patrn de radiacin con adquisicin por el
analizador de espectros.
27
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
Figura 2-7 Diagrama de secuencia de la adquisicin del patrn de radiacin con adquisicin por el
servidor.
28
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
29
Centro de Investigacin en Computacin ANALISIS DEL PROBLEMA
30
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
En este captulo se describen los diagramas de clase de los componentes del sistema,
se presenta primero los diagramas de clase del cliente y posteriormente se muestran
los diagramas de clase del servidor. Se hace nfasis en el protocolo de comunicacin
SCPI que se dise para comunicar al cliente y el servidor. Tambin se expone con
ms detalle como se disearon las funciones manejadoras de dispositivo para el control
de la tarjeta GPIB y de la forma en que se comunica el STR y la graficacin en lnea.
Adems se comenta la decisin de porque usar un sistema de tiempo real crtico y de
por que se escogi RT-Linux.
El cdigo fuente completo del sistema se encuentra en un CD-ROM que acompaa
este trabajo.
AP_GUI AP_Plot
1 * Axis
*
Usuario
Formulario de entrada
de los datos de la antena
Mensajes
TCP/IP
Mensajes
SCPI
coClient
Formulario de entrada
de los datos de la prueba
AP_RTHandle
1
Servidor
32
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
Cliente
AP_GUI
Usuario
Servidor
AP_Server
Analizador de espectros
33
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
TCP/IP
AP_Server
Tiempo de muestreo
Memoria
Tuberia compartida
de TR
Muestras
Analizador de espectros
AP_Muestreo
Tarjeta GPIB
En la figura 4-3 se observan las clases del servidor las cuales se mapean a procesos
en el servidor, aunque estas clases no fueron escritas en un lenguaje orientado a
objetos se tratarn como objetos para fines de diseo.
La clase AP_Server se encarga de recibir las peticiones que AP_GUI realiza a travs
de la red y traducirlas a peticiones hacia el analizador. Por lo que la clase AP_Server
tambin se encarga que la comunicacin con el analizador de espectros, para lo cul
utiliza un device driver libre, el cual se indica en el diagrama de clases como un
componente, creado por Dr. Jens Thoms Trring[Trring J., 2003]. Este device driver es un
34
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
35
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
El uso del device driver bajado de Internet y las funciones para manejar la tarjeta
GPIB se detallan a continuacin:
Manejador Funciones
Manejador Caractersticas
3.3.1 Detalle del diseo de las funciones para manejar la tarjeta GPIB
Para utilizar un dispositivo aparte de las opciones comentadas en la seccin 1.5 existe
otra opcin que es la de acceso directo al dispositivo. Esta opcin da la ventaja de que
no se tiene que implementar todas las interfaces para el manejo de toda la
funcionalidad del dispositivo por lo que el tiempo de desarrollo es menor y puede ser la
opcin ms recomendada cuando no se piensa utilizar el mismo dispositivo para otras
aplicaciones.
Se decidi crear funciones para manejar la tarjeta GPIB y tener el control directamente
desde AP_Muestreo.
Debido a que no se contaba con informacin del manejo de la tarjeta a bajo nivel para
poder desarrollar las funciones manejadoras se procedi a analizar el cdigo fuente del
device driver que proporciona el Dr. Jens Thoms Trring [Trring J., 2003] , en el driver se
observ que la tarjeta se poda manejar de dos formas por DMA o por poleo, se decidi
implementar las funciones utilizando poleo dado que era el ms sencillo por que no
involucraba tcnicas ms complejas como el manejo de interrupciones y el control del
DMA.
37
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
38
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
000109: do
000110: {
000111: status=inb_p(0x2b9);
000112: if ((status&0x04)==0x04)
000113: {
000114: //rtl_printf("\n[GPIBwaitOUT] return: -2");
000115: return -2;
000116: }
000117: fin = gethrtime();
000118: dif=fin-inicio;
000119: if (dif>valido)
000120: {
000121: //rtl_printf("\n[GPIBwaitOUT] return: -1");
000122: return -1;
000123: }
000124: }while ((status & 0x02)!=0x02);
000125: return 0;
000126: }
39
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
40
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
41
Eliminado: DISEO E
Centro de Investigacin en Computacin DISEO E IMPLEMENTACION IMPLEMENTACION
Cliente Servidor
AP_GUI AP_Server
Usuario
AP_RTPHandle AP_Muestreo
Analizador
42
Centro de Investigacin en Computacin RESULTADOS
CAPITULO 4 RESULTADOS
43
Centro de Investigacin en Computacin RESULTADOS
Se tiene adems los botones: [Reset] que sirve para inicializar el analizador de
espectros, [Snap] para obtener una copia del despliegue del analizador de espectros,
[SetALL] para enviar todos los parmetros al analizador de espectros y [GetALL] para
obtener todos los parmetros del analizador de espectros.
Una vez que se envan todos los parmetros al analizador de espectros se procede a
obtener una copia de su despliegue con el botn [Snap], para comprobar que la
portadora sin modular est sintonizada. En seguida se muestra la ventana obtenida al
pulsar [Snap] despus de haber sintonizado el analizador de espectros a la portadora
sin modular, donde se ve la respuesta a la portadora, Figura 4-2:
Hay que recordar que el analizador de espectros no est fsicamente en el mismo sitio
en el que se encuentra el operador por lo que es importante tener el botn de [Snap]
para que se pueda verificar que el analizador est sintonizado.
44
Centro de Investigacin en Computacin RESULTADOS
45
Centro de Investigacin en Computacin RESULTADOS
debe de haber introducido la elevacin del sitio donde se encuentra la antena para la
cual se est llevando a cabo la medicin, en nuestro caso 63.3 grados, este dato se
introduce en el formulario que aparece al seleccionar la opcin [Antenna Information]
del men [Data] como se muestra a continuacin:
47
Centro de Investigacin en Computacin RESULTADOS
48
Centro de Investigacin en Computacin RESULTADOS
4.5 Reporte
Una vez que se tiene la evaluacin del patrn de radiacin se procede a imprimir un
reporte para lo cual se deben de haber llenado los datos informativos de la opcin
[Antenna Information] (Figura 4-6) y [Test Information] (Figura 4-9) del men [Data].
49
Centro de Investigacin en Computacin RESULTADOS
Para generar el reporte se utiliza la opcin [Print Report] del men [File]. En seguida se
muestra un reporte generado de la medicin del patrn de radiacin:
50
Figura 4-10 Reporte de la medicin del patrn de radiacin.
Centro de Investigacin en Computacin RESULTADOS
52
Centro de Investigacin en Computacin RESULTADOS
4.7 Conclusiones
Se cumplieron los objetivos planteados y que a continuacin se describen:
53
Centro de Investigacin en Computacin RESULTADOS
4.8 Recomendaciones
Utilizar la adquisicin del patrn de radiacin de tipo PC, para este sistema en
particular, se recomienda para una duracin de muestreo mayor a 1 minuto ya que se
obtienen ms muestras de las que puede dar un muestreo del analizador de espectros
8566B que son 1001 datos.
Se recomienda desarrollar un servidor por tipo de analizador de espectros. Este
servidor debe de ser pequeo y encapsular el manejo de la interfaz fsica y lgica con
el analizador de espectros. Es decir debe de manejar y encapsular la interfaz fsica ya
sea GPIB, RS232, ETHERNET, o cualquier otra; y la interfaz lgica, los comandos que
se transmitirn al analizador de espectros, sean estos propietarios o algn estndar
como el SCPI; y comunicarse con el cliente por medio del protocolo de comandos SCPI
desarrollados en este trabajo.
Para obtener mejores resultados en el muestreo en tiempo real se recomiendan las
siguientes acciones:
Crear funciones manejadoras de la tarjeta GPIB para RT-Linux que utilice DMA.
54
Centro de Investigacin en Computacin RESULTADOS
55
Centro de Investigacin en Computacin INTRODUCCION A SCPI
Uno de los mejores principios en los que se basa SCPI es que si existe un comando
que pone un valor existe una peticin similar que lee el valor.
SCPI organiza los comandos en varios conjuntos que se mapean a subsistemas en el
instrumento. Los comandos en cada subsistema estn definidos en un orden jerrquico
similar a la estructura jerrquica del sistema de archivos encontrado en las
computadoras. En SCPI esta estructura de comandos es llamada rbol de comandos.
59
Centro de Investigacin en Computacin INTRODUCCION A SCPI
SENSe
|
+---------------+---------------+
| |
CURRent VOLTage
| |
+------+------+ +------+------+
| | | |
RANGe RESolution RANGe RESolution
| | | |
+---+---+ | +---+---+ |
| | | | | |
UPPer AUTO AUTO UPPer AUTO AUTO
El rbol de comandos se describe con nomenclatura similar a la que se usa para los
sistemas de archivos. El comando inicial del rbol es llamado comando raz, y el
comando del subsistema esta en tutas de ramas del rbol. Por ejemplo, una ruta se
define por la siguiente secuencia de comandos:
:SENSe:Voltaje:RANGe:AUTO
La secuencia anterior coloca el multmetro para que lea voltaje y use un rango
automtico. Ntese que los dos puntos (:) se usan como separadores en la ruta. Otra
ruta es:
:SENSe:CURRent:RANGe:UPPer
La ruta anterior coloca el multmetro para que lee corriente y usa el rango superior de
corriente. Ntese que no se necesita enviar la ruta completa de un comando cada vez.
Cuando se decodifica un comando de un subsistema el parser mantiene la ruta de
comandos actual, algo parecido a como al directorio actual en los sistemas de archivos
jerrquicos, esto especifica el bloque del subsistema del instrumento para el cual se
estn decodificando comandos.
El parser navega en el rbol de acuerdo a las siguientes reglas:
60
Centro de Investigacin en Computacin INTRODUCCION A SCPI
Es lo mismo que:
:SENSe:VOLTage:RANGe:AUTO
:SENSe:VOLTage:RESolution:AUTO
EL rbol de comandos es especificado concisamente por medio de una tabla e
comandos del subsistema que define el comando y sus parmetros. Por ejemplo el
rbol de comandos de SENSE se evala por medio de la siguiente tabla
_______________________________________
Command Parameters
_______________________________________
[:SENSe]
:CURRent
:RANGe
:AUTO Boolean or ONCE
[:UPPer] numeric
:RESolution numeric
:AUTO Boolean or ONCE
:VOLTage
:RANGe
61
Centro de Investigacin en Computacin INTRODUCCION A SCPI
La jerarqua del comando est dada por el nivel de sangra en la columna del comando.
La mayora de los comandos se muestran como cadenas con letras en mayscula
seguidas de letras en minscula. Esta mezcla no es parte de la definicin SCPI. SCPI
no es sensitiva a maysculas. Lo que las letras en minscula significan es que estos
caracteres son opcionales y se pueden descartar si se desea. Por ejemplo:
:SENSe:CURRent:RANGe:AUTO ON
Es lo mismo que:
:SENS:CURR:RANG:AUTO ON
Los comandos dentro de parntesis cuadrados son comandos implcitos, significa que
si un comando en ese nivel de la ruta no es especificado se asume. Por ejemplo:
:SENSe:VOLTage:RANGe:UPPer 6.5
Es lo mismo que:
:VOLTage:RANGe 6.5
Para la mayora de los comandos que ponen un valor existe su equivalente comando
de peticin que lee el valor. El comando de peticin es el mismo que el comando que
coloca el valor pero termina con el carcter ?. Por ejemplo:
:SENSe:VOLTage:RANGe
62
Centro de Investigacin en Computacin COMANDOS SCPI DISEADOS Y SUS
RESPUESTAS
COMANDO DESCRIPCION
63
Centro de Investigacin en Computacin COMANDOS SCPI DISEADOS Y SUS
RESPUESTAS
analizador de espectros.
COMANDO RESPUESTA
INIT OK
AP:GET:AN:valor -77.00<CR><LF>
-95.00<CR><LF>
.
.
.
-76.10<CR><LF>
-94.70<CR><LF>
END<CR><LF>
AP:GET:PC:valor -77.00<CR><LF>
-95.00<CR><LF>
.
.
.
-76.10<CR><LF>
-94.70<CR><LF>
END<CR><LF>
64
Centro de Investigacin en Computacin COMANDOS SCPI DISEADOS Y SUS
RESPUESTAS
AN:GET:RL 0:DM<CR><LF>
AN:GET:SP 20000000000:HZ<CR><LF>
AN:GET:ST .500000:SC<CR><LF>
AN:GET:CF 12000000000:HZ<CR><LF>
AN:GET:RB 3000000:HZ<CR><LF>
AN:GET:VB 3000000:HZ<CR><LF>
AN:GET:SNAP -77.00<CR><LF>
-95.00<CR><LF>
.
.
.
-76.10<CR><LF>
-94.70<CR><LF>
END<CR><LF>
Tabla A-2 Respuesta a los Comandos SCPI.
65
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
En la tabala B-1 son descritas las variables miembro de la clase y en la tabla B-2 se
describen las funcionesmiembreo.
Variable Descripcin
66
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
AP_GUI() Constructor
67
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
que se muestre.
getValor(String par, JTextField jTF, JComboBox jCB) Obtiene los valores de los parmetros del
analizador y los coloca en las campos de
texto de la GUI . Es decir procesa la
respuesta al comando AN:GET:XX y lo
conforma. Tambin muestra en la GUI el
resultado obtenido. El parmetro par es el
parmetro del que se quiere el valor (RL,
SP, ST, CF, RB o VB); jTF es el campo de
texto de la GUI en donde se mostrar y
jCB es la caja de elecciones donde se
muestran las unidades.
68
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
69
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando algn botn de la GUI es presionado o algn objeto es
seleccionado. La funcin initComponents() es llamada para iniciar los componentes
de la GUI. En la figura B-3 se muestra el diseo de la GUI:
70
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
71
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
72
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
73
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
74
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
75
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando algn men u objeto de la GUI es seleccionado. En la figura B-
6 se muestra el diseo de la GUI:
76
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
77
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
78
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
79
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
80
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
81
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
Funcin Descripcin
En la figura B-11 se muestran las variables y funciones de la clase AInf que conforman
la GUI estas fueron generadas automticamente por el programa NETBeans.
82
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando se presiona algn botn. Si se presiona el botn OK se hace
un CALLBACK a mipadre para informarle de los datos de la antena.
En la figura B-12 muestra el diseo de la GUI:
83
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
84
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
Funcin Descripcin
85
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
En la figura B-14 se muestran las variables y funciones de la clase TInf que conforman
la GUI estas fueron generadas automticamente por el programa NETBeans.
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando algn botn de la GUI es presionado. Si se presiona el botn
OK se hace un CALLBACK a mipadre para informarle de los datos de la antena.
En la figura B-15 se muestra el diseo de la GUI:
86
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
setLobes(int nlobes, int nlobesabove, float Funcin que coloca los valores del
plobes) nmero de lbulos, lbulos por arriba de
la curva de evaluacin y el porcentaje de
lbulos por arriba de la evaluacin en el
formulario de salida.
setAngles(double Tangle, double Funcin que coloca los valores del ngulo
AngleAbove, double pangle) de evaluacin, la suma de los ngulos de
los intervalos que el patrn de radiacin
esta por arriba de la curva de evaluacin y
el porcentaje que representa esta suma
en el formulario de salida.
87
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
88
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Las variables se refieren a los componentes de la GUI y las funciones son acciones
que se ejecutan cuando algn botn de la GUI es presionado. En la figura B-18 se
muestra el diseo de la GUI:
89
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
Funcin Descripcin
90
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
91
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
AP_Server
+main(na:int,arg:* char []): int
+execCmd(comando:* char,socCli:int): int
+doInit(): int
+doANGetPara(socCli:int,datos:* char): int
+doANSetPara(socCli:int,datos:* char): int
+doANGetSNAP(socCli:int): int
+doAPGetAN(socCli:int,datos:* char): int
+doAPGetPC(socCli:int,datos:* char): int
+doMuestreo(datos:* char,muestreo: * volatile char ): void
+doSendMuestras(socCli:int,muestreo:* volatile char): void
92
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Funcin Descripcin
93
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
AP_Muestreo
+muestreo: * volatile char
+init_module(): int
+cleanup_module(): void
+manejador(fifo:unsigned int): int
+toma_muestras(arg:* void): * void
+GPIBwrite(buf:* char,n:int): int
+GPIBread(buf:* char,sz:int): int
+GPIBopen(): int
+GPIBclose(): int
+GPIBwaitOUT(): int
+GPIBwaitIN(): int
+GPIBwaitCMD(): int
+GPIBATN(): int
94
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
Variable Descripcin
Funcin Descripcin
95
Centro de Investigacin en Computacin DETALLE DE LAS CLASES
96
Centro de Investigacin en Computacin BIBLIOGRAFIA
BIBLIOGRAFIA
[ACM, 2004] ACM, (2004). "UML Fundamentals" Curso Virtual. Digital Think.
[Advanced, 2003] Advanced Horizons, Inc., (2003). http://www.ahinc.com/hhbus.htm
[Andrew, 1994] Andew Corporation, (1994). "Summary of FCC Rules for Testing Satellite
Earth Station Transmit Antennas", Andrew Corporation, pp. 1-4.
[Belotserkovski, 1983] Belotserkovski, (1983). "Fundamentos de Antenas". Marcombo, pp. 11-20.
[Booch. et al, 1998] Booch, Grady, (1998). "Unified Modeling Language User Guide", Addison-
Wesley.
[Brookshaw L., 2003] Brookshaw Leigh, (2003). "http://www.sci.usq.edu.au/staff/leighb/graph/".
Graph
[Bruce E., 2002] Bruce Eckel, (2002). "Thinking in Java 3rd edition". Prentice Hall.
[Butazzo G., 1997] Butazzo Guorgio, (1997). "Hard Real-Time Computing Systems
Predictable Scheduling Algorithms and Applications. Kluwer Academic
Publisers.
[Burns. et al, 1997] Burns Alan and Wellings Andy. (1997) Real-Time Systems and
Programing Languages. Adison Wesley Longman.
[Cambridge, 1992] Cambridge University, (1992). "Numerical Recipies in C: The Art of
Scientific Computing". Cambridge University Press, pp 133
[Dominguez A., 1995] Dominguez Garcia A., (1995). "Clculo de Antenas". Alfaomega, pp 36-40.
[Douglas B., 2003] Douglass, Bruce Powel, (2003). "Real-Time Design Patterns: Robust
Scalable Architecture for Real-Time Systems". Addison Wesley, pp 528
[Douglas B., 2004] Douglass, Bruce Powel, (2004). "Real Time UML: Advances in The UML
for Real-Time Systems, Third Edition", Addison Wesley, pp 752
[Guevara P., 2003] Guevara Lpez Pedro, (2003). "Notas del curso: Laboratorio de tiempo
real". CIC.
[Gutirrez A. 2002] Gutirrez Torns Agustin, (2002). "Notas del curso de ingeniera de
software". CIC
[Harbison S.et al, 1991] Harbison Samuel P. & Steele Guy L. Jr., (1991) "C a Reference Manual".
Prentice Hall.
[HewlettPackard, 1982] Hewlett Packard, (1982). "Tutorial Description of the Hewlett-Packard
Interface Bus", Hewlett Packard.
[HewlettPackard, 1984] Hewlett-Packard, (1984). "8566B SPECTRUM ANALYZER OPERATING
AND PROGRAMMING MANUAL". Hewlett-Packard, pp. 537.
[Holler M., 2000] Holler Mirko , (2000). "Real Time Linux 2.0 Instalation & Examples".
http://midas.psi.ch/rtlinux , pp 1-10.
[Kernighan B. et al, 1987] Kernighan Brian W. & Pike Rob, (1987). "El Entorno de Programacin
UNIX". Prentice Hall, pp 209-237.
[Kernighan B. et al, 1978] Kernighan Brian W. & Ritchie Dennis M., (1978). "El Lenguaje de
Programacin C". Prentice Hall.
[Kraus J., 1984] Kraus John D., (1984). "Electromagnetismo". McGraw Hill, pp.405-412.
[Kraus J., 1988] Kraus John D., (1988). "Antennas". McGraw Hill, pp 20-23, 762-767, 807-
809.
[Lemay L. et al, 1996] Lemay Laura & Perkins Charles L.., (1996). "Teach Yourself Java in 21
56
Centro de Investigacin en Computacin BIBLIOGRAFIA
days". SAMS.
[Manjares R. 2000] Manjares S. Jorge Robeto, 2000 "Notas del curso programacin orientada
a objetos". CIC
[Mrquez F., 2001] Mrquez Garca Francisco Manuel, (2001). "UNIX Programacin avanzada
(segunda edicin)". Alfaomega, pp 191-238, 333-439.
[Medel J. et al, 2002] Medel Jurez Jos de Jess, Guevara Lpez Pedro y Barrn Fernndez
Ricardo, (2002). Interaccin entre Sistemas de Tiempo Real y Sistemas
en Lnea CIC, pp 1-6.
[Mitchell M. et al, 2001] Mitchell Mark, Oldman Jeffrey and Samuel Alex, (2001). "Advanced Linux
Programing". Pearson Education.
[Morgan A. et al, 1988] Morgan Michael A. and Burt Dennis, (1988). "Field Testing An Earth
Station for Two Degree Compliance", Andrew Corporation, pp. 1-7.
[Perales A., 2001] Perales Briseo Alejandro, (2001). "Diseo y Desarrollo de un
Osciloscopio Virtual Sobre un Sistema Operativo En Tiempo Real" Tesis
de Maestria. CIC.
[RedHat, 2003] Read Hat Linux, (2003). "http://www.readhat.com/".
[Ripoll I., 1998] Ripoll Ismael, (1998). "Tutorial de Real Time Linux", pp 1-58.
[Rubini A. et al, 2001] Rubini Alessandro & Corbet Jonathan, (2001). "Linux Device Drivers, 2nd
Edition". O'Reilly.
[Salmern M., 1981] Salmern Mara Jos, (1981). "Radiacin, propagacin y antenas". Trillas,
pp 26.
[Sourceforge, 2003] Sourceforge, (2003) "http://linux-gpib.sourceforge.net/".
[Surez S., 2001] Surez Guerra, Sergio, (2001). "Notas del curso: Sistemas de tiempo
real". CIC.
[Trring J., 2003] Trring Dr. Jeans Thoms, (2003). http://www.physik.fu-
berlin.de/~toerring/.
[UIT465, 1993] UIT, (1993).RECOMENDACIN UIT-R S.465-5 "Diagrama de radiacin
de referencia de estacin terrena para utilizar en la coordinacin y
evaluacin de las interferencias, en la gama de frecuencias comprendidas
entre 2 y unos 30 GHz", pp. 1-2.
[UIT732, 1993] UIT, (1993).RECOMENDACIN 732 "Mtodo para el tratamiento
estadstico de las crestas de los lbutlos laterales de las antenas de
estacin terrena", pp. 1-2.
[UIT580, 1993] UIT, (1993).RECOMENDACIN UIT-R S.580-5 "Diagramas de radiacin
que han de utilizarse como objetivos de diseo para las antenas de las
estaciones terrenas que funcionan con satlites geoestacionarios", pp. 1-
3.
[Vicua R. et al, 2001] Vicua Heredia Juan Roberto y Guevara Lpez Pedro, (2001)
"Elaboracin de Administradores de Recursos en QNX para Aplicaciones
de Sistemas de Tiempo Real", CIC
[Vicua R., 2001] Vicua Heredia Juan Roberto, (2001). "Guia para el Desarrollo del
Administrador de Recursos para una Terjeta de Entrada-Salida De
Seales en QNX ty Su Implementacin en un Sistema de Control en
Tiempo Real". CIC
[Wilshire P., 2000] Wilshire Phil, (2000). "Instaling RT-Linux", RT-Linux Documentation
Group, pp 1-9.
57
Centro de Investigacin en Computacin BIBLIOGRAFIA
[Yodaiken V. et al, 1996] Yodaiken Victor and Barabanov Michael, (1996), "Real Time Linux". RT-
Linux Documentation Group, pp-1-9.
[Yodaiken V. et al, 1999] Yodaiken Victor and Barabanov Michael, (1999), "RTLinux Version Two",
VJY Associates LLC, pp-1-14.
[Zsolt P., 2003] Zsolt Dr. Ppay , (2003).
"http://www.hit.bme.hu/people/papay/edu/GPIB/tutor.htm".
58
Centro de Investigacin en Computacin GLOSARIO
GLOSARIO
VIII
Centro de Investigacin en Computacin GLOSARIO
HP "Hewlett Packard".
IX
Centro de Investigacin en Computacin GLOSARIO
SL Sistema en lnea.
SO Sistema operativo.