Upload
trinhcong
View
212
Download
0
Embed Size (px)
Citation preview
ESCUELA POLITÉCNICA NACIONAL
FACULTAD DE INGENIERÍA ELÉCTRICA
SISTEMA PARA LA TRANSMISIÓN DEDATOS DE LAS PARADAS DE
TROLEBUSES
TESIS PREVIA A LA OBTENCIÓN DEL TITULO DEINGENIERO EN ELECTRÓNICA Y
TELECOMUNICACIONES
FRANCISCO BENIGNO CASTRO CARRASCORUBÉN DARÍO LOZANO REINOSO
Quito, Diciembre de 1999
Certifico que el presente trabajode tesis ha sido realizado en
forma total por los Srs. FranciscoBenigno Castro Carrasco y Rubén
Darío Lozano Reinoso.
Ing. Boln^rr/Ledesma.DIRECTOR DE TESIS
A mis padres, esposa e hijo,que de una u otra forma hancontribuido para la obtención
de mi Título Profesional
Rubén
A mi madre, esposa e hija,quienes con anfieío, decisión y
esperanza Impulsaron laobtención de.mi titulo
profesional,
Francisco
AGRADECIMIENTO
Nuestro más profundo agradecimiento alIng. Bolívar Ledesma Director de Tesis,
nuestras familias, excompañeros, y todasaquellas personas que han colaborado
en la realización del presente trabajo.
IV
INTRODUCCIÓN
El Municipio del Distrito Metropolitano de Quito en su afán por mejorar las
condiciones de transportación de todos los moradores de (a ciudad, creó un
sistema masivo de movilización con una visión diferente de la que en ese
entonces se conocía en este país. El sistema de transportación escogido fue el
de trolebuses que además tenía toda la infraestructura de paradas, carril
exclusivo y estaciones de transferencia propias.
Este nuevo sistema tiene muchas ventajas frente a los convencionales:
• Mayor cantidad de usuarios transportados en cada unidad
• Operación con motor eléctrico, por lo cual no produce gases contaminantes
• Sistema integrado, un usuario puede prácticamente atravesar toda la ciudad
pagando un solo pasaje.
• Mayor seguridad para los pasajeros, el vehículo tiene paradas fijas y no puede
detenerse en cualquier sitio.
• Mayor velocidad, posee ruta exclusiva lo cual le permite evitar congestiones en
horas pico de tráfico.
Por las características antes mencionadas y por la gran cantidad de usuarios se
fueron encontrando muchas falencias en la explotación y control del sistema, una
de ellas era el alto costo de operación y mantenimiento de las unidades, motivo
por el cual era necesario conocer la real demanda en las diferentes estaciones,
para evitar tener en la ruta demasiadas o pocas unidades en diferentes horas del
día.
En vista de esto se tuvo la idea de contar con un equipo que obtenga el número
de usuarios que ingresan y que salen de cada parada y también que tenga la
posibilidad de enviar estos datos a un controlador central para que en él las
personas que se encargan de la Operación de! sistema cuenten con la
información suficiente para organizar de mejor forma el despacho de cada unidad.
En el presente trabajo se realiza el diseño para este sistema de transmisión de
datos.
SISTEMA PARA LA TRANSMISIÓNDE DATOS DE LAS PARADAS DE
TROLEBUSES
ÍNDICE GENERAL
NUMERAL DESCRIPCIÓN Pag.
CAPITULO I: Planificación y programación Operacionaldel Sistema de Trolebuses 1
1.1 Centro de Control de Tráfico 11.2 Máquinas para el cobro de pasajes . 31.3 Sistema de Transmisión de datos de las Paradas
de Trolebuses 6
CAPITULO II: Equipo de Transmisión de Datos de las ParadasDe Trolebuses ETDPA 9
2.1 Descripción 92.2 Diseño del ETDPA. Hardware 102.3 Diseño de! ETDPA. Software 20
2.3.1 Algoritmo del ETDPA 21
CAPITULO III: Comunicaciones - Enlace de Datos 39
3.1 Conceptos sobre transmisión de datos 393.1.1 Sistema de transmisión de datos 393.1.2 Comunicaciones en banda base 433.1.3 Tipos de transmisión 47
3.2 Protocolo de Control de enlace 493.2.1 Tipos de protocolos de enlace 50
3.2.1.1 Protocolos de enlace orientadosal Carácter 50
3.2.1.2 Protocolos de enlace orientadosal bit 52
VI
3.2.2 Funciones dei enlace de datos 533.2.2.1 Sincronización de trama y transparencia 533.2.2.2 Coordinación de la comunicación y
acceso al medio 563.2.2.3 Control de errores de transmisión 603.2.2.4 Recuperación 65
3.3 Interfaz de comunicaciones 663.3.1 Interfaz RS232 683.3.2 RS422 703.3.3 RS423 713.3.4 RS485 723.3.5 RS449 73
3.4 Medio de transmisión 743.4.1 Características del cable de cuadretes y red
existente en el sistema trolebús. 743.4.2 Medidas eléctricas que se deben efectuar para
verificación de la linea de telecomunicación 763.4.2.1 Medida de resistencia de aislamiento 773.4.2.2 Medida de la resistencia en corriente
continua 783.4.2.3 Medida de la característica atenuación-
frecuencia 803.4.2.4 Medida de la característica impedancia-
frecuencia 833.4.2.5 Medidas de diafonla 863.4.2.6 Telediafonia 883.4.2.7 Medidas efectuadas en el cable de
comunicaciones 883.5 implementación en el Equipo de transmisión de datos
y en el controlador 89
CAPITULO IV: Controlador del sistema 934.1 Software de Implementación del protocolo para el
control del enlace 934.2 Trama de término de transmisión 964.3 Interfaz de usuario 96
CAPITULO V. Conclusiones y Recomendaciones 105
BIBLIOGRAFÍA 110
Vil
ANEXOS
Anexo A. Programa Fuente ETDPA (Ensamblador)Anexo B. Programa Fuente controladory manual de usuario (Visual
Basic)Anexo C. Códigos ASCIIAnexo D. Protocolo XmodemAnexo E. Catálogos del fabricante.Anexo F. Fotografías
VIH
CAPITULO I
PLANIFICACIÓN Y PROGRAMACIÓNOPERACiONAL DEL
SISTEMA DE TROLEBUSES
1.1 Centro de Control de Tráfico
Para la puesta en marcha y explotación del sistema de transporte mediante
trolebuses de la ciudad de Quito, ei Municipio del Distrito Metropolitano creó la
Unidad Operadora del Sistema Trolebús. En su estructura, dicha Unidad cuenta
con el Centro de Control de Tráfico, CCT, el cual se encarga de la programación
y ejecución de la operación de los vehículos trolebuses con miras a satisfacer las
necesidades y expectativas generadas por el usuario en la medida de la
disponibilidad y capacidad del sistema, para lo cual se busca el equilibrio entre la
oferta y la demanda con ios mejores índices de confiabilidad, seguridad,
regularidad y fluidez del tráfico de trolebuses.
Actualmente, el sistema cuenta con 54 vehículos trolebuses, cuya única
trayectoria recorre la ciudad desde la estación de trolebuses de El Recreo, en el
sur de la ciudad, hasta ia estación de La Y, en ei norte de la ciudad, con una
longitud aproximada de 11.5 Km. A lo largo de dicha ruta existen 39 paradas
destinadas para el embarque y desembarque de pasajeros, 19 en el sentido de
circulación de sur a norte (S-N) de ia ciudad y 20 paradas en el sentido opuesto
(N-S). En cada parada existe una serie de equipos que facilitan la operación del
sistema y dan comodidad al usuario, como son máquinas de recaudación,
teléfono dedicado al sistema, equipos de megafonía, TV7 etc. Además, el sistema
de trolebuses cuenta con dos estaciones terminales, una en Recreo, en el sur de
la ciudad y otra en La Y, en ei norte de la ciudad.
Fig.1.1.1 Ruta de trolebuses
Como punto de partida para !a planificación operacional se ha tomado
parámetros generales de flujos de demanda clasificados en día típico, sábados,
domingos, días feriados y festivos. Las Actividades del C.C.T. (Centro de Control
de Trafico) dan inicio con la evaluación y control de los recursos humanos y
materiales, de tal forma de asegurar y controlar la ejecución de la operación de
acuerdo a io programado. El Centro de Control de Tráfico recepta y procesa
permanentemente toda la información útil que describe ei entorno urbano que
afecta a la operación de trolebuses. De la valoración de !a información ya
procesada se toman tas medidas más adecuadas para dar solución a problemas
en ruta (tiempo real),
La programación operacionai pretende:
• Disminuir los costos operacionales y de mantenimiento al
• Reducir al mínimo posible e] número de kilómetros rodados por día de
cada trolebús
• Incrementar la cantidad de pasajeros transportados por kilómetro
rodado
• Reducir el consumo energético explotando al máximo la capacidad de
cada trolebús
• Mantener buenos niveles de servicio, asegurando ia regularidad del mismo
• Racionalizar la oferta en base a determinar y caracterizar la demanda por
sectores, con lo cual se tendrá el mejor equilibrio oferta/demanda, para lo
cual se establece, por ejemplo, circuitos o recorridos de trolebuses
• Prolongar la vida útil de cada trolebús
Conociendo el número de pasajeros que ingresan y salen de todas y cada una de
las paradas de trolebuses y estaciones de transferencia, se podrá calcular:
• la demanda instantánea en el tiempo
• las horas del día de mayor demanda
• Jos días de mayor demanda
• el flujo de pasajeros origen - destino por parada, por sectores de la ciudad y
total del sistema
Una vez conocida la demanda se podrá programar con precisión:
» el número de troiebuses en ruta según la demanda
• obviamente, número y horario de conductores según demanda
• número y horario de conductores de reserva (mano de obra ociosa la mayor
parte del tiempo)
• período con ej cual se despachan Jos troJebuses desde Jas estaciones, según
la demanda
• tiempo que e! trolebús deberá esperar en una parada mientras los pasajeros
embarcan y desembarcan
Con ello se podrá disponer de todos los recursos tanto humanos como logísticos
necesarios para su ejecución. De lo anterior se desprende la importancia de
contar con un sistema de adquisición y procesamiento automático de la
información.
Cabe Indicar que hoy en día no se conoce con precisión la demanda, en ninguna
de sus formas ni se cuenta con una base de datos informática.
En resumen, el conjunto de actividades orientadas a satisfacer las necesidades
de la demanda en condiciones de operación normales o adversas están llevadas
adelante mediante la planificación diaria de la operación
1.2Máqumas para el cobro de pasajes
Para el embarque y desembarque de pasajeros existe a lo largo de la ruta de
troiebuses 39 paradas, 19 en el sentido de circulación de sur a norte y 20 en eí
sentido contrario, además de las dos estaciones terminales de El Recreo y La Y.
Para el cobro de pasajes a tos usuarios, en cada parada y estación de troiebuses
(Ver. Fig. 1.2.1) se cuenta con máquinas especializadas en leer
DISP
BARRASOLIDARIA
RANURA PARADEPOSITAR MONEDAS
ÍB.ANURAPARA"'"•^ iMERTAR TARJETAS
Fig.1.2.1 Máquina para el cobro de pasajes
tarjetas magnéticas, monedas o fichas específicas, por otra parte, para la salida
de pasajeros tanto de las estaciones como de las paradas, se cuenta con tornos
adecuados para el efecto.
MAQUINA DERECAUDACIÓNMR)
INGRESO DE PASAJEROS
MAQUINA DERECAUDACIÓNMFM
JTT
CABJMA DERECAUDACIÓN
Rg.1.2.2 Equipos existentes en las paradas para control de pasajeros
En cada parada existen dos máquinas de recaudaciónT(Ver figura 1,2.2) MR1 y
MR2, para controlar eí ingreso de pasajeros a! interior de la parada. Cada
máquina de recaudación posee una barra que normalmente está fija (enclavada)
en la posición tal que impide el paso de personas al Interior de la zona de
pasajeros. Cuando la máquina detecta que eí usuario deposita su pasaje
(monedas, fichas o tarjeta magnética), en ella, libera la barra, tal que puede girar
en el sentido que permite el acceso del usuario a la zona de pasajeros y no
permite que gire en sentido contrario.
La máquina de recaudación da un cierto tiempo prudente para que eí usuario
ingrese a la zona de pasajeros, luego del cual, si la barra no ha sido liberada
para que retorne a su posición de reposo, se activa una señal acústica que alerta
a! personal de supervisión y control que para el efecto íabora en ías paradas.
También existe, incorporado en ia máquina de recaudación, un sensor de rayos
infrarrojos cuya función es detectar fa evasión del pago de pasaje al intentar
ingresar a la parada esquivando la barra, pasando por debajo de la barra por
5
ejemplo. Cuando esto sucede, la persona es detectada por el infrarrojo y activa
una señal sonora.
Es de interés para nosotros utilizar las señales provenientes de la barra, la cual
nos indicarán que una persona ingresa a la parada pagando su pasaje .
Además, en cada parada existe un par de tornos, TS1 y TS2, que giran
únicamente en el sentido tal que permiten la salida de usuarios desde la parada
al exterior de la misma. En la zona de estos tornos se colocarán sensores que
nos permitirán contabilizar eí número de personas que salen de Ja parada, Cabe
indicar que no tomaremos ninguna señal mecánica directamente de los tornos
puesto que luego de analizar su funcionamiento real, no nos proporcionarían
información fidedigna.
Como se puede apreciar, para contar automáticamente el número de pasajeros
que ingresan y salen de las paradas de trolebuses se puede utilizar los
dispositivos existentes con las debidas adecuaciones. El equipo electrónico de
conteo podrá almacenar la información y transmitirla a un centro de
procesamiento, que como ya mencionamos sería información primaria para
establecer parámetros de referencia de la contabilidad de la recaudación.
1.3 Sistema de Transmisión de Datos de las Paradas de Trolebuses
Para la programación de la operación y elaborar la contabilidad de recaudación
deJ sistema de troíebuses, se requiere de una serie de información proveniente
de las paradas de embarque y desembarque de pasajeros, tal como número de
pasajeros que Ingresan y salen a todas y cada una de ellas, con el fin de
optimizar la explotación de los vehículos. Dicha información se recopila
ocasionalmente montando un operativo con personal contratado temporalmente
para e! efecto, es decir que no se cuenta con información cuantitativa y a tiempo.
El objetivo deí presente proyecto es la adquisición, transmisión y procesamiento
automático de la información útil para mejorar la programación y facilitar el
mantenimiento de los diversos sistemas implementados en tas paradas,
consecuentemente, mejorar el servicio al usuario del sistema de transporte
mediante trolebuses.
El sistema de transmisión de datos de las paradas de trolebuses consiste en ia
recopilación electrónica de la información de cada una de las paradas,
transmitirla al centro de proceso y obtener reportes cuantitativos y cualitativos en
ei formato requerido, información tal como;
• Número de pasajeros que ingresan a la parada
• Número de pasajeros que salen de la parada
• Registro del estado de funcionamiento de las puertas laterales de la parada
que dan acceso al trolebús
El sistema para la adquisición y transmisión de datos de las paradas de
írolebuses, estaría formado por equipos terminales de datos, ETDPA, en cada
una de ellas y en las estaciones terminales de trolebuses y un centro de
procesamiento basado en una computadora personal convencional (PC), tal
como se muestra en la fíg. 1.3.1.
CABLE DE COMUNICACIONES
CENTRO DEPROCESAMIENTO
EQUIPOS PARA TRANSMISIÓN DE DATOS
REPETIDORDE SEÑAL
Fig.1.3.1. Esquema deí sistema de transmisión de datos de tas paradas de trotebuses7
Localmente, en cada parada, el ETDPA adquiriría y almacenaría los datos
necesarios temporalmente hasta que el PC solicite su transmisión. En este
proyecto se diseñará y construirá los equipos ETDPA para 2 paradas, a modo de
prototipo.
El centro de proceso es el controlador del sistema, este solicitará a todos y cada
uno de los ETDPA la información de cada parada almacenada en ellos. Esta
información será adecuadamente procesada de tai manera de obtener los
resultados de interés tanto histórica (para estadísticas) como actual, la misma
que será mostrada al usuario mediante cuadros y/o gráficas, para lo cual se
desarrollará la interfaz de usuario en ambiente Windows,
Un hecho importante es que los ETDPA podrían actuar de manera autómata, en
caso de que el puesto central por alguna razón no este en operación. Es decir
seguirán adquiriendo y almacenando la información todo el tiempo necesario
durante un día de operación hasta que personal autorizado tome lectura de cada
ETDPA.
El medio de transmisión a emplearse sería el cable de cobre que ya existe
instalado a lo largo de la ruta de troíebuses, esto es, desde la estación de El
Recreo en el sur de la ciudad, pasando por todas y cada una de las paradas y
subestaciones de tracción hasta la estación de troíebuses de La Y, en el norte de
la ciudad.
CAPITULO IIEquipo de Transmisión de
Datos de las Paradas deTrolebuses ETDPA
2.1. Descripción
Los Equipos de Transmisión de Datos de las Paradas de trolebuses, ETDPA, son
los encargados de, localmente en cada parada, adquirir, procesar en niveles
básicos y almacenar los datos necesarios temporalmente hasta que el computador
del centro de procesamiento, controlador, solicite su transmisión.
La información a adquirir por el ETDPA es:
• Número de pasajeros que ingresan a la parada
• Número de pasajeros que salen de la parada
• Así mismo, este equipo recibirá órdenes de Telemando provenientes del
controlador para accionar un relé cuyo uso será activar el picaporte
seguridad de las puertas de ingreso/salida de las paradas.
El ETDPA adquirirá la información mencionada a través de sensores adecuados
conectados a él. Para visualizar la actividad del ETDPA, se dispondrá de 1 LED
para indicar que el equipo está encendido, el ETDPA también contará con un
switch para encendido/apagado del equipo.
Para tomar lecturas locales en la parada, el ETDPA dispone de un display, la
selección de la información a mostrar en el display se lo hace presionando un
pulsador PO. Esto es útil en caso de que se tenga problemas con las
comunicaciones con el controlador. (La información útil para determinar la
demanda, la regulación de la marcha y para la contabilidad de recaudación y que
será mostrada en el display es el número de pasajeros que han ingresado o salido
de la parada y el número de trolebuses que han arribado a la parada desde el
encendido o último encerado del ETDPA hasta el momento de la lectura).
Finalmente, para que ei ETDPA pueda ser accesado por el controlador (PC),
requiere ser direccionado, para lo cual se dispone de un juego de DIP switch,
Vale la pena mencionar que en lo que respecta a las comunicaciones entre los
ETDPA y el controlador merece un tratamiento especial, por lo que este tema es
tratado en un capítulo aparte.
SEÑALES DESENSORES
PULSADOREí PQU-
DIPS PARADIRECCIONAM1ENTO
5VDC
FUENTE DE
ETDPAALREL
AL MEDIO DETRANSMISIÓN
LED DE INDICACIÓN
Fig.N°2.1. Esquema del ETDPA
2.2. Diseño del ETDPA. HardwarePara cumplir con la funcionalidad anotada, el ETDPA es un equipo
microprocesado, ei módulo básico del ETDPA está constituido por el
microcontrolador, el latch y la memoria del programa, circuitos integrados ¡8031,
74373 y 27512 respectivamente. Se ha utilizado el Cl ¡8031 porque su memoria
RAM interna es de capacidad suficiente para los fines que se persigue y porque
trabaja con memoria de programa externa (CI 27512), criterio más conveniente
para el diseño de prototipos como es nuestro caso.
10
TO
N 1< ,
ve
< <
2 ' S
?S
H_
;c > R
?>
R
2
30eF
_
JL
Ti
J
1 31
'
R7
T^
£¿ /
> R
12
_
19
> ^
2 1
1 Y
JLC
JJ
1
18
U?O
2 V
il
¿1
1
1 ^^^-n
3D
PF
9
;»U
-Y
'li
12,-
L
13>
HJG
HB
UT
TO
N
1p- C
fiP
ñC
XT
OR
P
OL
1S
21 2 3 4 S 7 8
R?
R2
i>C
/C/
-
per
' 4>C
VC
xv2.
L ?
' isC
's^',^
rj-,
l_
*v_
"_
2
RB
,F
;f
_
RE
SIÍ ^ n
Ul
-t —
PJ..
4
PS
EH
Pl-
5
ñU
EX
P
8O
SJL
1 lOM
r*r
LED
i
2 7 39
38
37
36
35
34
33
32
2JL
22
23
21
25
26
27
2S
17
16
¿9
11
1G
U4
3
2
**
ni
oí
^
13 „-
?-
±2
14
D
>1
Qíí
1^
1_-
«.
11
°
C
74U
S373
JP
'?
^ .
U?
C °
1O
^f^.
*M
-*
11
"
A
n^
°^
IR
21
^.~
y-i
ftX
O
27
MU
-¿-?
iü-..
27256
///
ES
CU
ELA
P
OU
TT
EC
NX
Cñ
NA
CIO
NA
L
FO
CU
LT
fiD
D
E IN
CE
NIE
RIO
E
LÉ
CT
RIC
OT
i±le
E
T
D
P
fi
Siz
e D
ocum
eirt
Num
ber-
R
EV
A
2-2
-1
1
Da
te:
CN
ícem
faer-
1-4
, i9
93(S
heet
of
El conjunto de sensores serán tratados como localidad de memoria RAM externa,
cuya dirección será 11111110B. Para indicar al microcontrolador que vaya a
leerlos, todos ellos estarán conectados de tal manera que cualesquiera de los
sensores que se activen, provocarán la interrupción externa O, !NTO, del
microcontrolador.
Los sensores a emplear proveen señales de 2 estados lógicos a través de
contactos metálicos libres de potencial, esto implica que dichas señales deben ser
acondicionadas. El diagrama circuitai para ia conexión de los sensores al módulo
base del ETDPA y el acondicionamiento de señales es que se muestra en la fig.
2.2.2.
Por su parte, ei dispiay LCD que permitirá tomar lecturas localmente, el display a
emplearse es el módulo LCD alfanumérico estándar de 1 línea de 16 caracteres
(1X16) (anexo catálogo). Las características de este módulo son:
• Tiene incorporado el driver/controlador, circuito integrado HD44780, de tal
manera que es conectado directamente al microcontrolador
• Cuenta con interfaz para CPU de 4 bits (en nuestro caso) o 6 bits
• Tiene RAM de datos para el display, DDRAM, para un máximo de 80
caracteres, es decir que permite grabar en la memoria del módulo LCD
mensajes de hasta 80 caracteres) aunque se muestre en el LCD solamente un
máximo de 16 caracteres a la vez, el resto de caracteres pueden ser
visualizados a manera de registro de desplazamiento, o como el programador
lo desee.
12
DE
L
OS
S
EN
SO
RE
S
PO
-OP
O,
PO
.2P
O-3
PO
.-!
PO
.SP
O.S
PO
-V
Pl.
OP
JL
.ÍP
JL
.2P
J..
3P
JL
-1P
JL
.SP
X.6
PX
.7
80S
J.
ESCUELA POLITÉCNICO NOCIONOL
FOCULTOD DE INGENIERIO ELÉCTRICO
E T D P fl
Document Nümber-
REV
210AH210BH210CH210DH210EH210FH2110H2111 H2112H2113H2114H2115H2116H2117H2118H2119H
20HSAL.20HNUM.TROL,20H
2.3.1. Algoritmos del ETDPA
Diagrama de flujo principal
E! diagrama de flujo principal se detalla en ía fig. DF2.3.1,
Como es lógico, se inicia estableciendo las condiciones iniciales de todas las
variables y registros, en donde;
PS: Número de pasajeros que salen de la parada
Pl: Número de pasajeros que ingresan a la parada
TTP: Tiempo que el trolebús permanece en la parada
NTP: Número de trolebuses que han arribado a la parada
VS: Variable auxiliar para almacenar ia palabra código correspondiente a!
estado de los sensores en el momento de la lectura, es decir que cada bit
de VS se corresponde con el estado de cada sensor.
21
EQUIPO DE TRANSMISIÓN DE DATOSDIAGRAMA GENERAL DE FLUJO
CONDICIONES INICIALESPS= OOHPI=OOH
CH =OFFH, i =1-7
VS = OFFH
NO
LECTURA Y TOMADE DATOS DE
SENSORES
SELECCIÓN DEDATOS A MOSTRAR
EN DISPLAY
P.SERIE
COMUNICACIONESCON EL PC
JJL
» LECTURA DE SENSORES: VS=XXXXXXXX* DETECTAR Y VALIDAR EL CAMBIO DE ESTADO
LOGICODE LOS SENSORES:
(0) CEO(1) CE1 =(2)CE2 =(3) CE3 ••(4) CE4 =(5) CE5 ••(6) CE6 -.(7JCE7 =
=VSOR=VSOR= VSOR= VSOR= VSOR= VSOR= VSOR= VSOR
1111111011111101111110111111011111101111110111111011111101111111
MOSTRAR EN LCD Pl o PS
FIG. DF 2.3.1
22
CEO: Variable auxiliar para registrar el retorno al estado de reposo del
sensor SE1
CE1: Variable auxiliar para registrar el retorno al estado de reposo del
sensor SE2
CE2; Variable auxiliar para registrar el retorno al estado de reposo del
sensor SS1
CE3: Variable auxiliar para registrar el retomo al estado de reposo del
sensor SS2
CE4; Variable auxiliar para registrar e! retorno al estado de reposo del
sensor LIBRE
CE5: Variable auxiliar para registrar ei retorno a! estado de reposo del
sensor LIBRE
CE6: Variable auxiliar para registrar el retorno al estado de reposo del
sensor LIBRE
MD: Variable útil para alternar la información a mostrar en el LCD
Una vez establecidas las condiciones iniciales, el ETDPA muestra, por defecto, en
el display el número de pasajeros que ingresan a la parada. Luego pasa a esperar
por alguna interrupción de las tres posibles, INTO, 1NT1 y la ocasionada por el
puerto de comunicación serie del microcontrolador, mientras actualiza los valores
de las variables auxiliares, CEi, que servirán para verificar si tal sensor ha
retornado a su estado de reposo y validar o no una nueva activación.
Como ya se mencionó, el conjunto de sensores, SE1, SE2, SS1, SS2, e IRPT
serán tratados como localidad de memoria RAM externa y además cualesquiera
de ellos activará la interrupción externa cero, INTO, del microcontrolador, esto lleva
a que, mediante el programa para el microconírolador evitar lecturas erróneas de
cualesquiera de los sensores controlando mediante registros auxiliares CEi, su
cambio de estado, es decir que si un sensor se ha activado una primera vez y ha
sido validada su activación, para validar una segunda activación se observará
primeramente si el sensor previamente ha retornado a su estado de reposo, de no
ser así no se validará la activación. Esto es necesario debido a que como los
23
sensores son independientes unos de otros, es posible que más de un sensor se
active a la vez, o también, un segundo sensor puede activarse luego de que se ha
activado un primer sensor y antes de que éste retorne a su estado de reposo.
Luego de atender las interrupciones activadas y de actualizar el LCD,
nuevamente pasa al estado de espera por una nueva interrupción.
RUTINAS:
Pasamos a detallar cada una de las rutinas implementadas, excepto las
correspondientes a comunicaciones, las que serán tratadas en el capítulo
correspondiente.
1. Rutina LSEN -Atención a interrupción externa cero
La interrupción externa INTO provoca que se ejecute la rutina "LSEN"
correspondiente a la adquisición de datos de la parada tomando lecturas de los
sensores, en las figs.DF2.3.2.(LSEN)(A y B) se muestra el diagrama de flujo
correspondiente
Empieza tomando lectura de los sensores, cuya dirección es Add = OEFH. Una
vez que se lee el byte correspondiente a los sensores, se lo almacena en la
variable VS. Luego se carga el valor del estado del sensor en su variable
correspondiente, según se detalla en la tabla N° 2,3,1, valor calculado mediante la
operación lógica OR entre el valor de VS y la palabra código correspondiente al
sensor activo.-
Tabla N° 2.3.1. Variables asignadas a los sensores en el programa fuente
Variable
SE1SE2SS1SS2
Sensor
DetecciónDetecciónDetecciónDetección
dededede
personaspersonaspersonaspersonas
quequequeque
ingresaráningresaránsalen de lasalen de la
a la paradaa la paradaparada porparada por
pasando porpasando porel torno TS1el torno TS2
MR1MR2
24
* LECTURA DE ESTADO DE SENSORESADD=in01111B
vs=xxxxxxxx
* IDENTIFICAR EL SENSOR QUE PRODUJOLA1NTERRUPCION
(1)SE1= VS OR 11111110(2)SE2 = VSOR11111101(3) SS1 = VS OR 11111011(6)SS2= VS OR 11110111
(7) UBRE=VSOR 11101111
SE1=11111110ORSE2-11111101?
SENSOR AUN NO HARETORNADO A REPOSO
INCREMENTA Pl
DF 2.3.2.(A) ADQUISICIÓN DE DATOS DE LA PARADA SEGÚN ELSENSOR ACTIVADO. INTO
25
351=11101111 OR332=11011111
DF 2.3.2.(B) ADQUISICIÓN DE DATOS DE LA PARADA SEGÚN ELSENSOR ACTIVADO. INTO
26
Ahora se pasa a identificar el sensor qué produjo la interrupción, para lo cual se
compara el valor cargado en ¡a variable correspondiente a cada sensor con el
código de sensor activo (tabla N°2.3,2); si en esta comparación, el valor de la
variable correspondiente al sensor es igual a la palabra código del sensor activo,
significa que efectivamente el sensor está en su estado activo.
Tabla N° 2.3.2, Códigos de sensor activo
Sensor
SE1SE2SS1SS2
Código de sensor activo
11111110111111011111101111110111
En vista de que todos los sensores son independientes entre sí unos de oíros, es
decir que podrían activarse más de uno o todos ellos al mismo tiempo y puesto
que además están conectados de tal manera que cualquiera de ellos puede
activar INTO, se tendrían 128 posibles estados (palabras código), así, sí ningún
sensor está activo, la palabra código sería 11111111, por el contrario, si todos los
sensores están activos al mismo tiempo, la palabra código sería 00000000. La
palabra código será leída del puerto PO del microcontrolador cada vez que se
active uno o más sensores. Por lo anotado, es necesario controlar si una nueva
interrupción fue provocada por un mismo sensor o por otro distinto. Para ello se
emplean las variables CEi, las cuales dan información si un sensor una vez activo
retornó al estado de reposo o no. Obviamente, si el sensor no ha retornado a su
estado de reposo, significa que la nueva interrupción fue activada por otro sensor.
Con esto se valida cada nueva activación de un sensor útil para pasar a ejecutar o
no ia rutina correspondiente.
Una vez identificado el o los sensores activos y verificado que o cuales sensores
activaron la interrupción INTO, se pasa a ejecutar las rutinas correspondientes.
27
2. Rutina Contador BCD
En vista que entre las tareas del ETDPA está la de contar ya sea número de
pasajeros que ingresan o salen de la parada, trolebuses que arriban a la parada, y
además de que para desplegar los valores de los contadores en el display de LCD
se lo debe hacer utilizando códigos ASCII y finalmente, para la transmisión de la
información desde el ETDPA hacia ei controlador, se utilizará códigos ASCII, el
contador será en BCD, que prácticamente es equivalente a los 4 bits menos
significativos del código ASCII de los dígitos decimales O, 1, 2...9.
Esta rutina es utilizada por todos ios contadores; del número de pasajeros que
ingresan, del número de pasajeros que salen de la parada y por el número de
trolebuses que arriban a la parada. Es decir esta rutina es llamada cuando los
sensores activos y que provocan la interrupción INTO son los sensores SE1, SE2,
SS1 y SS2 cuyas funciones se anotaron en la tabla N° 2.3.1.
NOTA: La razón de tener un contador BCD se debe a que, por un lado, para
mostrar en el display de LCD los valores numéricos deben ser convertidos a
código ASCII y, por otro lado, para las comunicaciones con el controiador se
establecerá el protocolo de enlace orientado a carácter utilizando el código ASCCI
y en vista de que la conversión de código ASCII a BCD o de BCD a ASCII de los
dígitos del O al 9 es sencilla se opta por contar los pasajeros que ingresan,
pasajeros que salen de la parada en el código BCD.
El hecho que el contador BCD utiliza mayor número de registros que el contador
en binario natural se compensa por el hecho de que para convertir de código
binario a ASCII recurriríamos a una tabla de equivalencia cada vez que se
requiera, considerando que si el número es de 2 o más dígitos decimales, para la
conversión binario a ASCII se requeriría de operaciones de división, lo que por si
solo complica la elaboración del programa y exige más memoria del programa.
Para el dimensionamiento del módulo del contador debemos tomar en cuenta que
28
• Número medio de pasajeros transportados en un día = 180000
Número de paradas de trolebuses = 39
Número de estaciones de trolebuses = 2
Es decir que:
Número medio de pasajeros que fluyen en una parada o estación:
180000/41 = 4390.24, aproximando 4390 pasajeros
Por lo cua! se requieren 4 dígitos.
Es decir que el contador BCD será de máximo 4 dígitos, el diagrama de flujo se
muestra en ta figura DF2.3.3.
3. Rutinas ASCBCD y BCDASC- convierten códigos ASCII a BCD y BCD a
ASCII respectivamente, de los dígitos decimales
La diferencia en la representación en códigos ASCII o BCD, con 8 bits, de los
dígitos decimales O, 1 ,2, ...9 está en ios 4 bits más significativos, así en el código
ASCII, los 4 bits tienen el valor 0011, mientras que en BCD tienen el valor 0000.
Es decir que para la conversión desde e! código ASCII al BCD es suficiente
realizar la operación lógica AND entre la palabra código ASCII y la palabra
00001111. Para la conversión desde el código BCD al código ASCII es suficiente
realizar la operación lógica OR entre la palabra código BCD y la palabra
00110000.
Cálculo del número de ciclos de TO para alcanzar 1 segundo de tiempo
NCTO^ 1seg/TTO, estoes
NCTO = 1 seg X freloj 7(256 x 12)
NCTO= 1 seg X7.3728X10exp(6) Hz/ (65536X 12 )
NCTO = 9.375
30
Es decir que para alcanzar el tiempo de 1 segundo, deberán ejecutarse 9 ciclos de
TO más 0.375 de cicio. Calculemos el valor inicial que debe tener TO para
completar ese 0.375 de ciclo.
El tiempo que lleva en ejecutarse 9 ciclos de TO es
9TTO = 9X65536X12/7372800 = 960 ms
es decir faltan 40 milisegundos para llegar a 1 segundo. Calculemos ahora el
número de ciclos de máquina (CM) necesarios para alcanzar esos 40 ms
tiempo de un cicio de máquina: 12/7,3728 us = 1.62778
40 msXlCM/1.62778 US = 24576 CM
Como TO puede alcanzar el valor máximo de QFFFFH, es decir 65636 decimal, se
debe descontar de este valor la cantidad 24576 para iniciar TO y conseguir los 40
ms, así
65636 - 24576 - 40960, cuyo equivalente hexadecimal es OAOOOH
En resumen, para conseguir e! tiempo de 1 segundo, el timer TO debe iniciarse
desde el valor OAOOOH, alcanzar el valor de OFFFFH y luego ejecutar 9 ciclos de
máquina completos, es decir desde el valor OOOOH hasta el valor OFFFFH.
Rutinas para el manejo del módulo LCD
Solamente dos registros del circuito integrado HD44780 (componente del módulo
LCD), el registro de instrucciones (IR) y el registro de datos (DR) pueden ser
directamente controlados por el microcontrolador. La operación interna del
HD44780 es determinada por las señales provenientes dei microcontrolador, estas
señales incluyen la señal de selección de registro (RS) la señal de escritura/lectura
(R/W) y el bus de datos (Dbo - Db7) que no son otra cosa que las instrucciones
para el manejo del dispiay.
31
En general, las instrucciones son:
• Para designar las funciones del HD44780, tales como formato del display,
longitud de los datos, etc.
• Dar las direcciones de la RAM interna
• Transferencia de datos con la RAM interna
Cuando el HD44780 ejecuta una instrucción interna, ninguna instrucción
proveniente del microcontrolador podrá ser ejecutada, para lo cual existe la
bandera de ocupado, Busy Flag (BF). Si BF = 1 significa que ei HD44780 está
ejecutando una instrucción interna, caso contrario, el microcontrolador puede dar
instrucciones externas al HD44780.
Cuando se ejecuta alguna instrucción de lectura o escritura de la CG/DD RAM dei
módulo LCD, el contador de direcciones es incrementado automáticamente en 1 (
o decrementado en 1 si así es seteado)
En el anexo se tiene el detalle de las instrucciones tomadas del catálogo del
fabricante.
5. INILCD - Inicialización del display de LCD
En realidad la inicialización del LCD es automática con valores por defecto,
inmediatamente e! módulo LCD es energizado. En el manual del fabricante se
detalla las instrucciones que se ejecutan para inicializar el LCD. Obviamente si los
parámetro de trabajo del LCD no son los mismos que se tienen por defecto,
entonces hay que ponerlas mediante el uso de las correspondientes instrucciones.
En el diagrama de flujo DF2.3.4 se puede ver el proceso de inicialización a seguir.
Las siguientes instrucciones son ejecutadas automáticamente en la inicialización
dei display :
32
Manejo del LCDPOWER ON
ESPERAR HASTA 15 ms
RS RW DB7 DB6 DBS DB4 DBS DB2 DB1DBO
O O O O 1 1 * *
ESPERAR HASTA 4.3 ms
RS RW DB7 DB6 DBS DB4 DBS DB2 DB1DBO
O O O O 1 1 * *
ESPERAR HASTA 100 Us
RS RW DB7 DB6 DBS DB4 DBS DB2 DB1DBO
O O O O 1 1 *
RS RW DB7 DB6 DBS DB4 DBS DB2 DB1DBO
O O O O 1 1 N F* '
0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 O O1
0 0 0 0 0 0 0 1 I/Ds
ESCRITURA EN LA DDRAM
FIG. DF.2.3.4
FUNCTION SET
DISPLAY ON/OFF CONTROL
CLEAR DISPLAY
ENTRY MODE SET
FIG 2.12
33
1. Limpiar el display
2. Function set
DL= 1 : 8 bit de datos
N = O display de 1 línea
F = O matriz de caracteres de 5 x 7 (columnas X filas)
3. Display ON/OFF
Control D = 1 Display ON
C = 1 Cursor ON
B = 1 Blink ON
4. Entrada del set del modo
I/D = 1 + 1 incrementa
S = O No hay desplazamiento
5. Escribe en la DDRAM
En este caso, es necesario implementar el siguiente algoritmo de iniciaiización del
módulo LCD en el microcontrolador, en esencia constan las instrucciones tomadas
del manual del fabricante.
Para inicializar el módulo LCD se requiere de retardos de 100 microsegundos, 4.3
milisegundos y 15 milisegundos.
Tomando en cuenta que la frecuencia del reloj del ETDPA es de 7.372MHz, y que
un ciclo de máquina (CM) equivale a 12 períodos del reioj, calculamos el tiempo de
un ciclo de máquina, esto es
tCM = 12/7.372 us
tCM= 1,62778 us
Si el tiempo de 1 CM es 1.62778 us, entonces para conseguir el retardo de
• 100 us, se requiere de
34
RCMS = 100 us/(1.62778/1CM) = 61.4, aproximando, 61 ciclos de máquina
Que se lo consigue con un contador módulo 61 utilizando la instrucción INC Ri, o
módulo 30 utilizando la instrucción DJNZ Ri,#dato. Escogiendo esta última
instrucción, el valor inicial a cargar en el contador es de
30D equivale a 01EH
OFFH - 01EH = OE1H (valora cargaren el contador)
• 4.3 ms, se requiere de
RCMS = 4300 us /(1.62778us/1CM) = 2641.6, aproximando, 2641 ciclos de
máquina
Que se lo consigue con un contador módulo 1320 utilizando la instrucción DJNZ
Ri,#dato. Como cada registro del microcontrolador puede operar como un
contador módulo 256, significa que se requiere de 5 contadores módulo 256
(1320/256 =5.1563) y un contador cuyo módulo calculamos enseguida
Número CM = 5 X 256 X 2 CM = 2560 CM
Retardo producido por los 5 contadores = 2560 X 1.62778 = 4167.1 us
Tiempo faltante = 4300 us - 4167 us =133 us
Que requiere de 133 us/(1.62778 us/CM) = 81.7 , aproximando, 82 ciclos de
máquina, es decir el módulo del sexto contador es 41 (utilizando la instrucción
DJNZ). El valor inicial que se debe cargar en este contador es
Pero como otras instrucciones que son necesarias para llamar a la rutina de
retardo consumen algunas unidades de CM, entonces es suficiente con un
contador módulo 40.
35
40D equivale a 28H
OFFH - 029H = OC7H (valor a cargar en el sexto contador)
• 15 ms, se requiere de
RCMS = 1500 us /(1.62778/1CM) = 9215 ciclos de máquina
Que se lo consigue con un contador módulo 4607 utilizando la instrucción DJNZ
Ri,#dato. Como cada registro del microcontrolador puede operar como un
contador módulo 256, significa que se requiere de 18 contadores módulo 256
(4607/256=17.99).
Calculemos el tiempo de retardo que producen 18 contadores módulo 256, con la
instrucción DJNZ Ri,#dato.
Número CM = 18 X 256 X 2 CM = 9216 CM
Retardo producido por los 5 contadores = 9216 X 1,62778 = 15001.6 us que
prácticamente es 15 ms.
ren el LCD.
6. Rutina MLCD - Manejo del display de LCD
Esta rutina discrimina y seieciona el tipo de información a mostrar en el display
según sea el valor de la variable MD, a saber:
Si MD - O, mostrará el número de pasajeros que han salido de ia parada hasta el
momento de la lectura;
Si MD = 1, mostrará el número de pasajeros que han ingresado a la parada hasta
el momento de la lectura; y
Si MD = 2, mostrará el número de trolebuses que han arribado a la parada hasta
el momento de la lectura.
36
El valor de MD es cambiado con cada interrupción externa INT1 del
microcontrolador.
7. Rutina MENSAJE - Escritura de mensajes en display de LCD
Esta rutina despliega en ei display de LCD tos diferentes mensajes tomados de la
tabla almacenada en ia memoria ROM externa del microcontrolador,. En otras
palabras, se lee el mensaje almacenado en la memoria ROM externa y luego se
escribe en ei módulo LCD. según sea el valor de la variable MD los mensajes a
desplegar en el display son:
Si MD = O, "PASAJ.SAL: u;Si MD = VPASAJ.ING:"; ySi MD = 2, "NUM.TROL:"
8. Rutina LCDNP
Esta rutina despliega en el display de LCD los diferentes valores tomados de la
memoria de datos interna del microcontrolador, es decir lee datos de RAM interna
y luego los escribe en el módulo LCD. según sea el valor de la variable MD los
valores a desplegar en el display son;
Si MD = O, número de pasajeros que han saiido de la parada;
Si MD = 1, número de pasajeros que han ingresado y
Si MD - 2, número de trolebuses que han arribado a la parada
La escritura del mensaje se lo hará alineado a la izquierda del display y su
correspondiente valor se lo hará alineado a la derecha del display.
9. Rutina RETARDO
El retardo lo vamos a hacer por software, ejecutando instrucciones a modo de
contador, utilizando uno de los registros disponibles en el microcontrolador.
37
Calculemos el retardo que produce un contador módulo 256 con la instrucción
DJNZ Ri,#dato
Número de ciclos de máquina que requiere la instrucción DJNZ Ri,#dato = 2
Retardo = 256 X 2 CM X 1.62778 us/1 CM ^833.42336 us
Es decir que tendremos este retardo como base, a partir de él, siempre que se
quiera otro retardo, se lo hará en múltiplos de éste.
10. Atención a interrupción externa uno, INT1 - Rutina MOST
Con cada activación de INT1, se incrementa el valor de la variable MD entre O, 1 y
2. Dependiendo del valor de MD = O iíama a las rutinas que muestran el valor del
número de pasajeros que han ingresado o salido de la parada.
En el equipo se ha utilizado para el manejo del display ias rutinas diseñadas por el
Ing. Bolívar Ledesma, la forma como lo hace es conectando en el puerto del micro
ias líneas de control y ios datos los maneja con cuatro bits.
En la figura 2.2.3 se puede observar la forma en que están conectadas cada una
de las líneas.
En el anexo se puede ver el listado del programa fuente implernentado.
38
CAPITULO III
COMUNICACIONES -
ENLACE DE DATOS
3.1. Conceptos sobre transmisión de datos
3.1.1. Sistema de transmisión de datos
En las siguientes figuras se representa el esquema y una aplicación de un sistema
de transmisión de datos.
ETD EÍCD
ENLACE DE DATOS
ETCD
INTH
RFA
Z
fvEDIO CE TRANSMSION
CIRCUITO DE DATOS
1
(a) Esquema
PC MODEM
LINEA TELEFÓNICA
MODEM pe
(b) Ejemplo de aplicación
Fig.N0 3.1.1.1. Esquema general de un sistema de transmisión de datos
Siendo:
ETD; Equipo Terminal de Datos, constituyen tanto la fuente como el destino de
datos, por ejemplo pueden ser computadores personales. El ETD generalmente
Incorporan el interfaz. Los controladores de comunicaciones pueden o no estar
incorporados en el mismo equipo ETD.
ETCD: Equipo Terminal del Circuito de Datos. Consistituyen los dispositivos que
adaptan la señal de datos al medio de transmisión, por ejemplo modem para línea
telefónica.
La conexión entre dos ETCD forma el circuito de datos, mientras que la conexión
entre los ETD, por medio de sus respectivos ETCD, forma el enlace de datos. El
circuito de datos puede ser punto a punto o multipunto.
Los controladores de comunicaciones se encargan del enlace de datos, esto es
iniciar, mantener y liberar la conexión, funciones que lo realizan a través de
códigos de control añadidos a la información de interés.
Datos.- Toda información que ha sido digitalizada sin importar cual sea la fuente
de la cual provenga, voz, video, etc
Velocidad de Modulación.- Está dada por la rapidez con que se envía señales a
la línea de transmisión en una unidad de tiempo. La unidad de medida es el
baudio, definido como '"""una señal que se envía:, al medio de transmisión en un
segundo. Por ejemplo pueden enviarse las señales que se indican en la Fig.N0
3.1,1.2 a una rapidez de 1200 señales por segundo, en otras palabras, a una
velocidad de modulación de 1200 baudios
40
Fig.3.1.1.2.
Velocidad de Transmisión.- Esta dada por la cantidad de dígitos binarios que se
envían a la línea de transmisión en una unidad de tiempo. La unidad de medida es
el bit/segundo (bps).
Toda señal puede ser codificada con dígitos binarios, de aquí que la relación entre
bit y baudio está dada por el número de dígitos binarios necesarios para codificar
las señales. Por ejemplo, para codificar las señales de la figura 3.2. es necesario
un dígito binario; puede ser O para la sinusoide y 1 para el espacio. En este caso,
numéricamente 1 bps equivale a un baudio.
Capacidad del canal de comunicaciones
Para una línea de transmisión ideal cuyo ancho de banda es w, su capacidad de
transferencia de datos o velocidad máxima C, está dada por la relación
C= 2w Iog2 n bps
41
Siendo n el número de estados posibles de señalización en línea. Por ejemplo,
para efectos de transmisión, una señal digital binaria puede ser codificada en otra
señal digital de 4 estados, en este caso, la velocidad máxima sería 4 veces el
ancho de banda bps.
01
00
10
11
Fig. 3.1.1.3. Señal con 4 estados, cada estado puede ser codificado con 2 dígitos binarios
También una señal digital binaria puede ser modulada, por ejemplo en frecuencia
con 2 estados posibles (la señal cuya frecuencia es f1 corresponde al un estado y
la de frecuencia f2 corresponde al otro estado)
Fig.3.1.1.4. Señal de 2 estados. Cada estado puede ser codificado con un dígito binario
42
En este caso la velocidad máxima de transmisión es 2 veces el ancho de banda
bps.
La velocidad máxima para una línea real está dada por
Owlog2
Donde S/N es la relación señal a ruido. Por ejemplo para una canal de calidad
telefónica, el ancho de banda es de 4 KHz y la relación señal a ruido es de 30 dB
(1000), la capacidad ideal del canal telefónico es
C = 40QOxlog2 (1+1000)
C = 40 Kbps
Calidad del circuito de datos
La calidad del circuito de datos está dada por la tasa de bits errados, BER. La
BER depende de las aplicaciones, por ejemplo para circuitos de calidad telefónica
se tolera un BER del orden de 10 exp(-5).
3.1.2. Comunicaciones en banda base
Es la técnica por la cual se transmite información digital sin modular, codificando
adecuadamente la señal para que se adapte al medio de transmisión, es decir la
información es transmitida en la banda de frecuencias en la cual se genera. Si las
señales se modulan para ser transmitidas en otra banda de frecuencias con la
presencia de una portadora sinusoidal, ya no es transmisión en banda base sino
modulada.
43
Códigos de línea
Para la transmisión de información en banda base es necesario ia transformación
de la señal digital binaria en otra señal digital de varios estados de tal manera que
se adapte a la línea de transmisión atendiendo a criterios propios de transmisión
como son componente de DC, distribución espectral de potencia, interferencia
intersímbolo, intervalos de transiciones, etc.
Códigos de transmisión en línea prácticos;
Código bipolar AMI (Altérnate Mark Inversión)
El valor 1 lógico se va alternando entre valores positivos y negativos, tal como se
muestra en la figura 3.1.2.1:
CLK
SDB
AMI NRZ
AMIRZ
1 0 D C) C) C) 1 1 0
CLK es la señal de relojSDB es la señal digital binaria a codificar
Fig.N°3.1.2.1
Cuando los pulsos duran un intervalo completo de tiempo, se tiene pulsos sin
retorno a cero, NRZ (NO Return to Zero), caso contrario se tiene pulso con retorno
acero, RZ. (ver fig.N0 3.1,2.1)
Códigos polares de alta densidad (HDBn)
44
Similar al AMI, pero el número de ceros consecutivos se limita a n. Si la señal
digital binaria tiene n+1 ceros consecutivos, se reemplaza el n+1 cero con un bit
de "violación" (marca) con igual polaridad que el bit precedente. En el siguiente
ejemplo podemos visualizar esta regla con el código HDB3.
CLK
SDB
HDB3
1 O O O O 1 O O
bit de violación
Fig.N0 3.1.2.2. Código HDB3
El problema surge cuando varias violaciones de polaridad idéntica dan una
componente de DC. Para solventar este problema se utiliza el bit de relleno, de
acuerdo a la siguiente regla:
Polaridad del pulso anterior
--
í
+
Número de Ilógicos desde la última sustitución
Impar
000-
000+
Par
+00+
-00-
En el siguiente ejemplo se muestra su empleo con el código HDB3
45
CLK _
SDB I 1 0 0 0 0 O O O
HDB3
bit de violación
bit de relleno
Fig. 3.1.2.3. Código HDB3 con bits de violación y de relleno
Código Bifase o de Manchester
En este código se fija la polaridad para el Ilógico y la polaridad opuesta para el O y
las transiciones se dan a mitad del intervalo del bit (fig).
r.LK
SDB
Manchester
1 0 C) (D C) 1 C) C)
Fig.3.1.2.4
El Código Manchester es utilizado en redes de área local LAN
Código de Miller
El 1L produce una transición a mitad del intervalo, el OL no produce transición a
menos que vaya seguido por otro OL (transición entre ceros)
Existen muchos códigos más, pero aquí solamente hemos pretendido
introducirnos en algunos de ellos solamente.
46
CLK
SDB 0 0 1 0 o o
Miller
Fig.3.1.2.5. Código de Miller
3.1.3. Tipos de transmisión
Sincrónica.- Los datos fluyen del transmisor al receptor con una cadencia fija y
constante, marcada por una base de tiempos común para todos los elementos que
intervienen en la transmisión. La señal de sincronismo (reloj) generada en el
transmisor también es común al receptor. En el extremo receptor, el ETCD
restituye la señal de reloj a partir de la señal de datos y entrega al ETD ios datos y
el reloj ya sincronizados.
Estado Lógico
Estado Lógico
bO b1
R E L O J
tiempo
b3 b4tiempo
Donde el reloj es ¡a base de tiempo común tanto al transmisor como al receptor. Los bits bO, b1,b2, son bit válidos de datos
Fig.3.1.3.1. Transmisión sincrónica
Asincrónica.- No tiene una base de tiempos fija entre transmisor y receptor.de
aquí que el transmisor puede enviar información en cualquier instante. En este tipo
de transmisión, para que el receptor sepa que el transmisor está transmitiendo
47
información, existe el bit de arranque, o el carácter de inicio, cuyo objetivo es
activar en el equipo receptor la lectura de los datos enviados.
Estado Lógico
reposoreposo rj.
ba bO bl b2 b3 b4 b5 b6 b7 ba bOtiempo
Fig, 3.1.3.2. Transmisión asincrona
Donde:ba es el bit de arranquebO,b1...b7 son bits válidos de! carácter transmitido
El estado lógico 1, anterior al bit de arranque, es el estado de reposo, es decir no
existe transmisón de datos
Sincronismo.- Es la base común de tiempos entre transmisor y receptor, capaz
de dar el mismo valor aM o al O lógicos.
Sincronismo de bit- Determina e! instante en que teóricamente debe empezarse
a contar un bit. El sincronismo de bit se consigue identificando el bit de arranque.
Obviamente, el reloj del receptor debe tener la misma frecuencia que e! reloj del
transmisor y empieza cuando recibe eí bit de arranque. Cada carácter tiene un bit
de arranque y un bit de parada, es decir que el transmisor bien puede enviar un
solo carácter así como varios en cualquier instante de tiempo, no necesariamente
consecutivos.
Sincronismo de carácter.- Es el mecanismo mediante el cual el receptor es
capaz de identificar los bits que compone un carácter y cuando empieza el
carácter (bit de arranque). El sincronismo de carácter se consigue fácilmente,
puesto que el receptor sabe que el primer bit significativo es el que sigue ai bit de
arranque.
En las transmisiones asincronas, cada palabra enviada o recibida está formada
por:
• bit de arranque
• bits de información
• bit de paridad
• 1 o 2 bits de parada
Modos de transmisión o de explotación del canal de comunicaciones
Slmplex.- La transmisión es en un solo sentido, sin posibilidad de hacerlo en e!
sentido opuesto
Semiduplex.- La transmisión es en los dos sentidos pero no simultáneamente
Dúplex.- La transmisión es en los dos sentidos simultáneamente, ya sea enviando
datos en ambos sentidos o enviando datos en el un sentido y señales de control
en el otro.
3.2. PROTOCOLOS DE CONTROL DE ENLACE
Protocolo es el conjunto de reglas que regulan el intercambio de información. Los
protocolos de nivel de enlace permiten fundamentalmente iniciar, mantener y
terminar el diálogo entre elementos del sistema y controlar la correcta
transferencia de información y recuperar errores. Una vez establecido el circuito
de datos entre los ETCD, el intercambio de información entre ETD se gestiona a
nivel de enlace, tanto físico (conexión con el circuito de datos), como lógico
(gestión de la transmisión de la información).
En el establecimiento de la comunicación se determina la disponibilidad de los
ETD y se efectúan las eventuales selecciones y negociaciones de los parámetros
del protocolo, en la transferencia de información se establecen procedimientos que
aseguren la correcta entrega de los datos y en la terminación de la comunicación
se libera el enlace de tal manera que pueda ser utilizado por otros ETD's.
Entre las funciones de un protocolo de enlace están
49
• Estructuración de los datos
• Sincronización y transparencia
• Control de errores
• Recuperación ante fallos
• Coordinación de la comunicación
Tipos de Enlace
Por su configuración se pueden establecer distintos tipos de enlace;
Punto-Punto.- Existe la conexión directa entre dos ETD,
Multipunto.- Consiste en conectar varios ETD haciendo uso del mismo medio de
transmisión. Este tipo de redes pueden ser centralizadas o descentralizadas. En
las redes centralizadas los mensajes solamente se transmiten entre Controlador y
terminales, este es el caso de nuestro proyecto. En las redes descentralizadas, los
mensajes pueden transmitirse entre terminales previo el control del ETD central.
3.2.1. Tipos de protocolos de enlace
Según sea la forma de organizar los datos; en caracteres o paquetes de bits, los
protocolos pueden ser orientados al carácter u orientados al bit
3.2.1.1. Protocolos de enlace orientados al Carácter
En este tipo de protocolos la información se envía como caracteres, el control de!
enlace se realiza con caracteres especiales. Se aplica tanto en sistemas síncronos
como asincronos y en enlaces punto a punto o multipunto centralizado.
Uno de los protocolos más utilizados es el Binary Synchronous Communications,
conocido como BSC o Bisync. Este es un protocolo orientado al carácter,
50
intrínsecamente semiduplex. Puede ser utilizado en circuitos punto a punto como
rnultipunto, con enlaces permanentes o a través de la red telefónica conmutada. El
formato de un mensaje BSC es
SYN| SYN| SOH| CONTROL! sxx| PATOS |ETxlBcc |
Al comenzar la transmisión se puede añadir uno o varios caracteres de
sincronismo SYN (Synchronization Character),
La cabecera, SOH, puede utilizarse para numerar bloques, indicar su contenido,
etc. Puede tener cualquier longitud o incluso no estar presente.
El campo de datos va precedido de un carácter de inicio de transmisión, STX, y
termina con un carácter de fin de texto, ETX, o fin de bloque, ETB, o fin de
transmisión, EOT. La longitud del campo de datos no es fija y está más bien
limitada por razones de seguridad, es decir máxima cantidad de bits que se espera
lleguen sin error. Los datos se envían empezando por el bit de menor peso; los
caracteres de control se suelen empezar enviando el bit de mayor peso.
Finalmente la trama termina con el campo de control de errores, BCC.
Los códigos más usados en este tipo de protocolos son el ASCII y EBCDIC.
Código ASCII
Códigos ASCII (American Standard Code for Information Interchange), conocido
tamben como CCITT No.5. Normalmente, los 7 bits del código van acompañados
de un octavo bit utilizado para controlar la paridad. El conjunto de 8 bits constituye
un carácter
A continuación se anotan los caracteres utilizados para el establecer, mantener y
liberar el anlace (en el anexo 1 se detalla todos los caracteres del código ASCII).
ACK (Acknowledge).-Acuse de recepción. Carácter de transmisión que es emitido
por el dispositivo receptor para indicar al emisor que los datos han sido bien
recibidos
SYN (Synchronous Idle) Carácter de sincronización, utilizado para que el receptor
se ponga a la escucha y sincronice su reloj
STX (Start of Text).- Principio del texto, precede a una secuencia de caracteres
correspondientes a los datos
ETX (End of Text).- Fin de texto, finaliza un texto que va precedido por STX
ENQ (Enquiry).-Petición de respuesta a la identificación de una estación.
EOT (End of Transmisión).- Indica el fin de la transmisión.
DLE (Data Link Scape).
ETB (End Transmisión Block).- indica fin de transmisión de bloque
SOH (Star of Header).- Indica inicio de encabezado
3.2.1.2.Protocolos de enlace orientados al bit
Tanto la información como el control son secuencias binarias, de aquí que son
transparentes al código utilizado. Un ejemplo de este tipo de protocolos es el
HDLC (High-level Data Link Control). La trama HDLC es
ELAG DIRECCIÓN CONTROL INFORMACIÓN CHEQUEO FLAG
01111110 Sbits Sbits xbits 16 bits 01111110
Fig.3.2.1.2.1. Formato de una trama HDLC
Las dos banderas (FLAG) que delimitan la trama, actúan como puntos de
referencia para situar el campo de dirección y de chequeo de transmisión. En el
caso de dos tramas consecutivas, el último "flag" de la primera trama constituye el
primero de la siguiente.
El campo de dirección designa la estación a la que se dirige el mensaje. Si la
dirección se compone de más de 8 bits, el bit 8 es O e indica que los siguientes 8
52
bits forman parte de la dirección. Este principio es recurrente, es decir, si el bit 8
del segundo byte es O, significa que e! tercer byte es de direciones.
El campo de información contiene los bits útiles de la información, su longitud es
fija.
El campo de control puede tener tres formatos: de información, de supervisión y
no numerado. El formato de información se utiliza para la transmisión de datos, es
el único de los tres tipos que utiliza tramas de secuencia numeradas. El formato de
supervisión, usado conjuntamente con el de información, inicia y controla la
información. El formato no numerado se usa para fijar ¡os modos de operación,
inicialización de las estaciones, etc.
El campo de chequeo, FCS (Frame Check Sequence) o CRC es usado
generalmente para el control de errores.
Una trama es no válida cuando su longitud es menor a 32 bits entre flags o que no
esté entre flags o tenga más de 6 bits 1 seguidos.
Los bits de información se transmiten empezando por el de menor peso y los de
control, empezando por el bit de mayor peso. Para los bits de información, la
norma no es fija.
3.2.2. Funciones del enlace de datos
Estructuración de los datos. Los datos pueden ser organizados en caracteres o
bloques de bits
3.2.2.1. Sincronización de trama y transparencia
La sincronización se consigue estableciendo la delimitación de los mensajes para
poder recuperarlos a partir de las secuencias de bits o caracteres recibidos por el
circuito físico. En los protocolos orientados al carácter puede realizarse mediante
uno o varios caracteres de sincronismo (SYN) enviados al principio de la
transmisión y posterior cuenta de bits. Es decir, los bits recibidos se introducen en
un registro de desplazamiento, de longitud igual al de un carácter, hasta que el
contenido del registro coincide con el carácter de sincronización. A partir de ese
53
momento, los caracteres se forman por simple cuenta de bits. En los protocolos
orientados al bit, la sincronización se consigue mediante secuencias especiales de
bits (flags).
El enlace debe ser transparente, es decir que no debe confundir los delimitadores
con la información. Entre los mecanismos de transparencia se tiene: (1) principio y
fin diferentes, (2) Principio y cuenta y (3) Guión (principio y fin únicos)
(1) Principio y Fin.- Esta asociado a los protocolos orientados al carácter. Se
identifica el principio de trama con un carácter de principio de trama, PDT,
utilizando para ello los siguientes caracteres; STX (Start of Text) es el carácter
de inicio de texto o SOH (Start of Header) en el caso de que la trama incluya
una cabecera con información adicional, cerrándose con uno de fin de trama
FDT, para el que se utiliza los caracteres ETX (End Of Tex) o ETB (End of
Block) para distinguir entre trama final de un mensaje y tramas intermedias. La
trama puede contener caracteres de control CC, por ejemplo origen y/o destino
de la trama, que preceden a los datos y se termina con la redundancia en la
secuencia de verificación de trama SVT. Tal y como está descrito, no existe
transparencia) por ejemplo, si un dato a transmitir fuese igual al carácter ETX,
en el receptor se interpretaría como fin de trama. Para conseguir que la
transmisión sea transparente, los símbolos de control duplican su longitud,
componiéndose del carácter del modo no transparente precedido de un
carácter común de <escape> (DLE Data Link Escape) del protocolo. De esta
forma los datos cuyo código coincide con el carácter DLE de escape, se
duplican en transmisión, mientras que en recepción al llegar un DLE, precedido
de otro DLE, el primero se elimina y el segundo se reconoce como dato, si es
un carácter de control, se interpreta como tal y se ejecuta la acción pertinente.
Ejemplo:
dato a transmitir:
a 9 STX ACK 2 6 DLE ETX 3 t Y
trama transmitida:
54
DLE STX a 9 STX ACK 2 6 DLE DLE ETX 3 t Y DLE ÍTX
Como vemos en e! ejemplo, los caracteres STX para control van precedidos del
carácter DLE. Los caracteres STX, ACK, ETX que son parte de la información útil,
no van precedidos del carácter DEL (van tal cual aparecen en el bloque de datos
de información), finalmente, el carácter DLE que es parte de ia información, para
diferenciarlo de! carácter DLE que precede a los caracteres de control, va
duplicado.
(2) Principio y cuenta.- El campo o carácter de principio de trama va seguido de un
campo de cabecera de longitud fija y otro de datos de longitud variable, en el
campo de cabecera se establece un subcampo que contiene información sobre
la longitud en bytes del campo de información.
(3) Guión.- Está asociado a los protocolos orientados al bit. Se utiliza tramas con
un único tipo de delimitador denominado "guión" o "bandera" para indicar
principio o fin de trama y un sencillo mecanismo de transparencia.
La bandera utilizada en estos protocolos es una secuencia de seis unos
flanqueados por dos ceros : 01111110. La transparencia se consigue de la
siguiente manera. En el transmisor se explora la secuencia de bits a transmitir
(excluyendo las banderas) y cada vez que se cuenta cinco unos sucesivos, se
inserta un cero adicional. En recepción, después de detectar la bandera de inicio
de trama, se explora la secuencia de bits recibidos y cada vez que se cuenta cinco
unos consecutivos, se analiza el siguiente bit. Si es un cero, se elimina, si es un
uno, se detecta el fin de trama.
Ejemplo:
secuencia de bits a transmitir:
000111101111111100011111000110
55
tras insertar las banderas y ceros pertinentes, se transmite como
011111100001111011111011100011111000011001111110
bandera ceros insertados bandera
Por lo tanto la eficiencia, en el peor de los casos, (secuencia larga de unos) es de
5/6.
La inserción de ceros presenta una ventaja adicional, facilita la recuperación del
sincronismo de bit, es decir, facilita la extracción dei reloj.
3.2.2.2. Coordinación de la comunicación y acceso al medio
Cuando dos o más equipos comparten el medio de transmisión, es necesario
establecer reglas para las comunicaciones de tai manera que entre ellos se
entiendan, así mismo es necesario el multiplexado mediante la inclusión de
direcciones en los mensajes, para identificar ei remitente y/o eí destinatario.
En el nivel de enlace existen 2 métodos básicos de coordinación de la
comunicación: centralizado y contienda. En el centralizado existe un controlador
que da el turno de transmisión a cada uno de los ETD, no existe comunicación
directa entre terminales. En la contienda, en cambio, los equipos transmiten
información cuando así lo desean, pudiéndose provocar problemas de colisiones
al competir por el medio de transmisión.
Acceso Controlado Polling/Selecting
Polling (Sondeo)
En este método, el controlador en forma secuencíal va preguntando a cada
terminal si tiene información que transmitir. Si el terminal tiene algo que transmitir,
56
así lo hace, sino, pasa a interrogar al siguiente terminal. En el siguiente esquema
se representa este tipo de sondeo mediante un protocolo orientado a carácter
Sentido de transmisión ->
C-> A
B->C
A ENQ
EOT
EOT B ENQ
STX Datos ETX SVT
ACK
EOT
EOT
El mensaje de sondeo está formado por la dirección del terminal (A o B en el
ejemplo) seguida del carácter de petición ENQ. El carácter EOT se utiliza para
indicar que e! terminal no tiene información que transmitir. El controlador C
pregunta al termina! A si tiene información para transmitir (envío de dirección de A
y carácter ENQ), el mismo que responde que no (envío de carácter EOT), luego el
terminal B al ser sondeado por el controiador envía la trama de información. El
controlador envía el acuse de recibo afirmativo, ACK (acknowledge), de la
información enviada por B. Finalmente terminan la comunicación con un EOT (End
Of Transmisión).
Una variante a la técnica de sondeo se tiene cuando la actividad de los terminales
es baja y su número es alto, el controlador ocuparía mucho tiempo en sondear a
todos los terminales. Una alternativa es sondear los terminales agrupándolos, de
modo que cada terminal reconoce 2 direcciones, la de! grupo al que pertenece y la
suya propia dentro del grupo. El controlador al sondear un grupo, envía su
dirección global, si algún terminal, al reconocer su dirección de grupo, tiene algo
que enviar, se activará la línea y enseguida el controlador sondea individualmente
dentro del grupo; caso contrario, la línea permanece inactiva y el controlador pasa
a sondear otro grupo.
57
Existe otra variante de la técnica de sondeo, es el llamado Sondeo Circular. Este
tipo de sondeo consiste en empezar el ciclo de sondeo enviando el respectivo
mensaje a un terminal, por ejemplo al más alejado, éste envía un mensaje de
sondeo a otro terminal, por ejemplo al más próximo, y se repite e! proceso hasta
que el último terminal, por ejemplo el más próximo al controlador, envía un
mensaje al controlador.
Con protocolos orientados al bit, el mensaje de sondeo utilizado es la secuencia
01111111. De forma que cuando un termina! recibe esta secuencia, si no tiene
nada que transmitir, lo retransmite (con un retraso de un bit), pero si tiene
información que transmitir, invierte el último bit del mensaje de sondeo,
convirtiéndole en la bandera de inicio de trama 01111110, a continuación envía la
información, los demás terminales retransmiten el mensaje hacia el controlador
(este método es análogo al conocido como paso de testigo en las redes de área
local, LAN).
Selecting (Selección)
Cuando el controlador desea enviar información a un terminal, le selecciona
mediante un mensaje de control. El terminal responde si está listo o no para
recibirla. En el siguiente esquema se ilustra el procedimiento mediante un
protocolo orientado a carácter.
Sentido de la transmisión -^
C->A,BA-»CB ^ C
AENQACK
STX DATOS ETXSVTACK
EOT B ENQ
NACK
C: ControladorA, y B : Terminales
58
El mensaje de selección se compone de la dirección del terminal( A, B en el
ejemplo) y el carácter de petición ENQ (Enquire). El terminal A acepta la selección
con un acuse de recibo afirmativo, ACK (acknowledge), es decir, está preparado
para recibir información, el controlador envía la información, el terminal A envía un
ACK. Luego el controlador selecciona al terminal B, el que responde con un acuse
de recibo negativo, NACK (No Acknowledge), indicando que no está preparado
para recibir información.
En este ejemplo se ve claramente las funciones básicas del protocolo de enlace: la
primera fase de la comunicación es el establecimiento del enlace mediante el
mensaje de selección y la respuesta correspondiente. Si la respuesta es positiva,
e! enlace está establecido y entra en la fase de transferencia de información, el
controlador envía tramas de información y el receptor confirma la correcta
recepción con un ACK. Finalmente, luego de transmitir la información, viene la
fase de terminación del enlace con la transmisión del mensaje correspondiente, en
el ejemplo EOT (End Of Transmition).
Contienda
Si no existe un moderador, que seda el turno de transmisión, los terminales
pueden acceder en cualquier momento al medio de transmisión. Si 2 o más de
ellos tratan de transmistir al mismo instante, se presentan conflictos al competir en
una "contienda11 por posesionarse del canal de comunicaciones.
La característica básica de estos conflictos es que un transmisor envía un
mensaje y se queda esperando una respuesta que nunca llegará.
La colisión se resuelve sin efectuar retransmisión hasta después de un plazo
diferente para cada terminal, de forma que el que tenga el plazo menor será el
primero en retransmitir. Una forma sencilla de evitar colisiones es primero
escuchar el canal de comunicaciones antes de transmitir (en redes LAN se utiliza
una variedad de contienda conocida con CSMA/CD, carrier sense múltiple
access).
59
3.2.2.3. Control de errores de transmisión
Debido a las características del medio de transmisión existe la probabilidad de que
se produzcan errores en la transmisión de la información. Los errores se
cuantifican mediante la tasa de bits erróneos, BER, (Bit Error Rate) calculada de la
relación de los bits errados y los bits totales transmitidos. Puede existir bit errados
ya sea porque las señales emitidas son afectadas por el ruido, ecos, diafonías,
etc., ya sea por desplazamiento de fase, ía cual provoca que el nivel 1 lógico sea
recibido en el receptor como un O y viceversa. Las distorsiones físicas de la señal
las trata el ETCD y los problemas a nivel de bits (lógicos) los trata el ETD, en otras
palabras, el control de errores puede hacerse por hard o software. El control de
errores es aplicable a todo tipo de medio de transmisión y de almacenamiento de
información.
Los errores se producen de manera aleatoria en las secuencias de bits. Existen
los llamados errores tipo ráfaga, es decir aquellos que afectan también a
secuencias consecutivas de bits.
Básicamente existen dos estrategias de corregir errores de transmisión: la una es
la de corrección de errores hacia delante, FEC (Front error check), y la otra es
conocida como corrección de errores hacia atrás. La primera no requiere que el
receptor envíe la señal de acuse de recibo, si existe errores, se los detecta y/o
corrige en el receptor. La segunda estrategia requiere de acuse de recibo por
parte del receptor, si existen errores, se retransmite el bloque errado.
La técnica a emplearse para el control de errores depende mucho del tipo de
sistema de comunicación, así por ejemplo, en sistemas en los cuales la
transmisión de datos se da en una sola dirección, es conveniente implementar
sistemas de detección y corrección automática de errores debido a la imposibilidad
de pedir acuse de recibo o retransmisión del mensaje. En sistemas en los cuales
ia transmisión de datos se da en los dos sentidos, la utilización de códigos
detectores y detectores de errores dependerá de la rapidez con que se quiera
tener ia Información libre de error, si ella no es muy exigente, es suficiente con
60
pedir retransmisión del mensaje que es un método sencillo de corrección de
errores.
Indistintamente del tipo de códigos utilizados, es necesario la adición de bits extra
en el mensaje transmitido para que en el receptor se pueda hacer el proceso de
encontrar
A continuación se menciona de manera muy resumida los métodos de mayor
difusión en la detección y/o corrección de errores.
Paridad
A nivel de carácter se utiliza la detección de paridad, por lo que se precisa un
único bit que se transmite junto con los bits de información útil. Una manera es
haciendo que el número de 1 lógicos que aparecen en el carácter sea par o impar.
Puede también fijarse el bit de paridad al valor 1 (marca) o al valor O (espacio), es
decir que •". los tipos de paridad son par, impar, marca y espacio.
A nivel de bloque de caracteres, Se determina la paridad de filas y columnas, es
decir, se complementa la detección a nivel de cada carácter, denominada
detección horizontal, con una detección a nivel de bloque denominada detección
vertical que consiste en generar un nuevo elemento de comprobación, que se
obtiene bien sumando en módulo 2 los bits que ocupan posiciones análogas en
los caracteres que forman el bloque, bien sumando en módulo n dichos
caracteres, siendo n la longitud en bits de un carácter y se transmite junto con la
información. Con la fig.N0 3.2.2.3.1 se ¡lustra mejor la idea.
En el ejemplo, a cada carácter se lo añade el bit de paridad par correspondiente,
de igual manera se procede con las columnas, incluida la de paridad horizontal,
PH, generando un carácter de paridad vertical, con paridad par. De esta manera
se transmiten tanto los datos como los bits de paridad.
La paridad horizontal actuando sola, únicamente detecta errores, actuando
conjuntamente con la paridad vertical, son capaces de detectar y corregir errores.
61
BLOQUE DE DATOS
i
PV
1 0 1 1 0 0 1
1 1 1 0 0 1 1
0 0 1 1 1 0 1
1 1 1 1 0 0 1
0 0 1 0 1 0 1
1 0 1 1 0 1 1
PH
0
1
0
1
1
1
Fig.3.2.2.3.1 Detección de errores mediante paridad horizontal y vertical
Códigos lineales
El conjunto de todos ios bloques de datos posibles y sus respectivos bits de
control, forman las palabras del código corrector. Cada palabra de n bits se
compone de k bits de datos y n-k bits de control. Cada palabra de un código linea!
se determina multiplicando el vector de datos por una matriz generatriz. El
decodificador, en recepción, determina si la palabra recibida pertenece o no al
código. Estos códigos detectan y corrigen errores
Códigos cíclicos
Son códigos lineales en los que en cualquier permutación del vector pertenece al
código. Los elementos del vector se consideran como elementos del polinomio. La
62
codificación/decodificación se realiza mediante registros de desplazamiento.
Ejemplo de este tipo de códigos es el código cíclico CRC 16, cuyo polinomio
generador es X"16+X"15+X~2+1.
Los códigos cíclicos presentan mejores propiedades detectoras y están basados
en la división módulo 2 de polinomios.
Cada código tiene su polinomio característico G(x) de orden r y coeficientes O y 1.
La trama a transmitir se interpreta como los coeficientes de un polinomio y se
divide por G(x). El residuo de la división se añade a la trama y está constituido por
r bits (típicamente r=16. En recepción se divide de nuevo la trama por G(x) y el
residuo obtenido se compara con la redundancia añadida; si no coinciden,
entonces significa que !a trama es errónea. Los circuitos divisores son simples
registros de desplazamiento con realimentaciones adecuadas
Polinómicos
Es un código linea! en el que cada palabra del código es múltiplo del polinomio
generador. Los bits de control se obtienen del resto de dividir los bits de
información por el polinomio generador.
Repetición automática
En la corrección de errores por retransmisión solo es necesario utilizar códigos
que permitan detectar la presencia de errores en la transmisión para de esta
manera proceder a pedir la retransmisión.
Existen tres variantes de retransmisión
Retransmisión con pare y espera
En la siguiente figura se ilustra, con un protocolo orientado a carácter, el
mecanismos de corrección de errores mediante parada y espera. Tras el envío de
cada bloque de datos, se espera un acuse de recibo positivo (ACK) o negatico
63
(NAK). Si es negativo, se retransmite el bloque; si es positivo se transmite el
siguiente y si pasa de un tiempo límite sin respuesta, se retransmite el bloque
Sentido de transmisión
C
STX Datos ETX SVT
NACK
STX Datos ETX STV
ACK
Fig.3.2.2.3.2 Control de errores mediante para y espera
Este método es sencillo, necesita un canal semiduplex, no hay necesidad de
numerar ios bloques emitidos y no existe la necesidad de almacenar más de un
bloque, su rendimiento es bajo debido al retardo que provoca la retransmisión de
todo e! bloque de datos errado.
Retransmisión continua
El transmisor envía continuamente bloques de datos hasta que se reciba un acuse
de recibo negativo por parte del receptor, es decir cuando el receptor ha detectado
un error, entonces se detiene el envío. Luego el transmisor emite el bloque
detectado con errores y los siguientes. Los bloques de información se numeran
para facilitar su asentimiento.
Retransmisión con repetición selectiva
Consiste en optimizar el método anterior. El transmisor al recibir el acuse de recibo
negativo, retransmite exclusivamente el bloque errado. Obviamente, los bloques
que componen la información pueden llegar desordenados, siendo preciso su
ordenamiento para recuperar el mensaje original.
Estos métodos obviamente producen retardo, de ahí que su tratamiento, en rigor,
no es en tiempo rea!.
64
Sistemas Híbridos
Un sistema híbrido consiste en un subsistema FEC contenido en un sistema con
retransmisión, ARQ,. La función del FEC es reducir la frecuencia de retransmisión
para reducir los errores que ocurren con mayor frecuencia. Cuando errores menos
frecuentes son detectados, se pide retransmisión.
3.2.2.4. Recuperación
Consiste en la recuperación tanto de los datos como de la comunicación cuando
exista corte de conexión, o cualquier otra situación de defecto. En la práctica
existen diversas situaciones en las que se está a ia espera de un mensaje de
respuesta, por ejemplo la confirmación o ei rechazo de una trama, si esa
respuesta no llega, se bloquea la comunicación. Un protocolo debe preveer la
forma de reaccionar ante ellas. Otro fallo típico es la perdida del carácter de fin de
trama, CFT.
Para detectar la pérdida de! CFT (ETX, ETB, ...) se utiliza un plazo de recepción
que arranca al empezar a recibir una trama; el vencimiento de ese plazo sin haber
llegado el CFT implica descartar la fracción de trama recibida y ordenar al subnivel
de sincronización de trama restableciendo el sincronismo de carácter.
Los mecanismos básicos para recuperación de fallos son
> Establecer plazos de espera
> Solicitud de una nueva respuesta si vence el plazo
> Limitación del número de reintentos
65
3.3. INTERFAZ DE COMUNICACIONES
Para la operación de driver / receiver de línea existen dos modos básicos de
operación: balanceado y desbalanceado.
Modo Desbalanceado
Para todos los circuitos utiliza un único conductor común o señal de tierra,
completando el circuito con un conductor para cada uno de ellos, cuyo voltaje,
para denotar los estados lógicos, es referido al conductor común, como se
muestra en la siguiente figura.
Donde las letras D indica el Driver y R es el receiver, o transmisor y receptor respectivamente.
Fig.3.3,1 Modo de operación desbalanceado para driver/receiver de línea3 canales, 4 conductores
La ventaja de este modo de operación es que cuando se requiere de múltiples
canales, se utiliza la señal común de tierra para todos ellos. Esto minimiza la
cantidad de cable y conectores necesarios y consecuentemente minimiza los
66
costos. La desventaja de la transmisión desbalanceada es su reducida inmunidad
al ruido.
Modo Balanceado
Este modo requiere dos conductores de señal por cada canal de comunicaciones.
Los estados lógicos son referidos por la diferencia de potencial entre los dos
conductores y no con respecto a tierra. Su principal ventaja radica en que
minimiza los efectos del ruido.
Fig.3.3.2 Transmisión balanceada de datos3 canales, 7 líneas, tierra opcional
El modo balanceado es utilizado para altas velocidades de transmisión, en
contraste con el modo desbalanceado que es utilizado para bajas velocidades.
Los diversos interfaces de comunicaciones estandarizados son acondicionados
para operar en modo balanceado o desbalanceado. Por ser de interés para el
proyecto, estudiaremos los ¡nterfaces estándares para comunicación serial más
difundidos y de mayor aplicación desarrollados por la EIA (Electronic Industry
Association) y TÍA (Telecomunication Industry Association),
67
3.3.1. lnterfazRS232
Define las especificaciones mecánicas, eléctricas y funcionales entre el DTE y el
DCE (en la práctica son utilizadas en múltiples aplicaciones y no solamente en la
interconexión entre DTE y DCE). Es una interfaz para transmisión desbalanceada,
unidireccional y punto a punto. La rapidez de transición del driver (el siew rate), de
un estado lógico a otro, es mucho mayor que e! retardo del cable debido a su
capacitancia, es decir que para el driver, el cable viene a ser una carga capacitiva.
La capacidad máxima de carga especificada en este estándar es de 2500 pF,
permite una velocidad de transmisión máxima de 19.2 Kbps. Si consideramos que
de manera general, los cables para comunicaciones son fabricados con una
capacitancia nominal de 160 pF/m, entonces la longitud máxima del cable
permitida por este estándar es 15.6 m.
Fig.3.3.1.1. Aplicación típica del interfaz RS232
Las especificaciones eléctricas de esta interfaz se detallan en la siguiente tabla
Parámetro Límites
Voltaje de salida del driver cargadoVoltaje de circuito abierto del driverCorriente de cortocircuito del driverSiew "Rate máxima del driverResistencia de salida del driverResistencia de entrada del receptorVoltaje de entrada máximo en el receptor
>- |5.0V|<=]25V|<=¡100mAl<=30 V/us>= 300 Ohms3 Kohm a 7 Kohm+-25V
El estándar RS232 es equivalente a las recomendaciones V24 y V28 de la
68
U1T-T. La recomendación V24 define las características mecánicas, mientras que
la V28 define las características eléctricas y funcionales.
La recomendación V28 de la UIT-T limita el voltaje entre +3 y +25 voltios para el
valor lógico O y entre -3 y -25 voltios para el valor 1 lógico. La región comprendida
entre los valores -3 Voltios y +3 voltios es la zona umbral, en la cual no se
reconoce ningún valor lógico. La ínternsidad de corriente está limitada de tal
manera que aún en el caso de cortocircuito entre pines no se cause daño alguno
entre componentes. La recomendación V28 se aplica a todos los circuitos binarios
en enlaces con velocidades inferiores a los 20 kbps
Este interfaz define un conector tipo cannon de 25 pines, macho asociado al DTE
y hembra asociado al DCE. El interfaz RS 232 contempla 2 canales
independientes, principal y secundario, generalmente se utiliza únicamente el
canal principal, de ahí que solamente se requiera de un conector de 9 pines. Los
circuitos más importantes del canal principal son:
CircuitoLínea comúnTD
RD
CircuitoSeñal de referencia, GNDTransmisión, TD, vista por elETDRecepción, RD, vista por elETDETD origen activado oprendido, DTRETD destino activado oprendido, DSRETD origen listo paratransmitir, RTSETD destino listo paracomunicación, CTSSeñal de timbre, RlDetección de portadora, DCD
No. De Pin en conector DB-953
2
4
6
7
8
91
El enlace se realiza con las señales DSR, RTS y DTR y CTS entre ETCD,
obviamente también las señales de datos; pines 2 y 3 y el común. Los circuitos Ri
y DCD no se utilizan en enlaces por línea dedicada. Por su parte, los circuitos
DTR y DSR no son necesarios en enlaces permanentes que es el caso del
presente proyecto.
69
3.3.2. RS422
Es un estándar eléctrico, especifica driver y receptores balanceados. Este
estándar especifica un interfaz unidireccional, driver único, múltiples receptores y
carga terminal. En las siguientes figuras se puede observar las aplicaciones
típicas punto a punto y punto a muítipunto
La resistencia terminal está colocada en el extremo del cable, con objeto de
minimizar las reflexiones.
a) Enlace punto a punto
b) Enlace muítipunto
Fig.3.3.2.1 Aplicaciones del interfaz RS422
Las características principales son:
• Interface balanceada
• Muítipunto (operación con múltiples receptores)
• Velocidad de transmisión máxima: 10 Mbps a 40 pies de longitud
• Longitud máxima del cable: 4000 pies a 100 Kbps
En la siguiente tabla se indican las características eléctricas sobresalientes.
ParámetroVoltaje de circuito abierto del driverVoltaje de salida del driver con cargaBalanceo de voltaje de salida con carga
Límite<=]10V|> = 1 2 . 0 V |<= 400 mV
70
Voltaje offset de salida del driverBalanceo del voltaje offsetCorriente de cortocircuito de! driverImpedancia de salida del driverResistencia de entrada del receptorCorriente máxima de entrada al receptorRango de modo común en el receptorRango de operación diferencial del receptorVoltaje diferencial máximo de entrada
<= 3.0 V<= 400 mV<=150mA<=100Ohms>= 4 Kohms3.25 mA+-7V+-200 mV a +- 6 V+-12V
3.3.3. RS423
Este estándar especifica un driver desbalanceado y un receptor balanceado.
Soporta altas velocidades de transmisión. Es un estándar de características
eléctricas solamente. Las características del receptor son similares a las
especificadas en el estándar RS422. RS423 es un estándar unidireccional y
multipunto (hasta 10 receptores). Sus ventajas sobre el RS232 incluyen operación
con múltiples receptores, mayor velocidad de transmisión y fuente de poder
común.
AvQ—
Fig.3.3.3.1 Interfaz RS423. Aplicación típica
Las principales características de este interfaz son
• Driver desbalanceado y receptor balanceado
• Multipunto (múltiples receptores)
• Máxima velocidad de transmisión: 100 Kbps a 40 pies de longitud del cable
• Longitud máxima del cable: 400 pies a 1 Kbps
Las especificaciones eléctricas se indican en la siguiente tabla
71
Parámetro LímiteVoltaje de salida del driver (con carga de 400 ohm) >= ] 3.6 V |Voltaje de circuito abierto del driver >~ \0 V | & <= ] 6.0 V ]Comente de cortocircuito del driver <~ 150 rnAEspecificaciones del receptor ídem R.S422
3.3.4. RS485
Es un estándar eléctrico que especifica driver y receptor balanceado. La ventaja
sobre el estándar RS232 es que soporta tanto driver como receptores múltiples.
Es un interfaz bidireccional (haif dúplex) muitipunto. La siguiente figura representa
una aplicación típica.
Fig.3.3.4.1 Aplicación típica del interfaz RS485
Entre las principales características están:
• Interfaz balanceada
• Operación muitipunto
• Operación con una sola fuente de poder de +5 V
• Rango del bus en modo común: -7 V a +12 V
• Soporta hasta 32 transceptores (driver/receiver)
• Velocidad máxima: 10 Mbps a 40 pies de longitud del cable
• Longitud máxima del cable: 4000 pies a 100 Kbps
En la siguiente tabla se resume las principales características eléctricas.
72
Parámetro LímiteVoltaje de circuito abierto del driver <= 6.0 VVoltaje de salida del driver con carga >= | 1.5 V |Balanceo del voltaje de salida del driver con carga <= j 200 mV |Voltaje máximo offset del driver 3.0 VCorriente de cortocircuito del driver (-7 v a +12 V) <= | 250 mA |Máxima corriente de entrada circulando por el bus <= 1.0 mA/<= 0.8 mA-M2V/-7V
3.3.5. RS449
Es un interfaz serial DTE/DCE de propósito general. Hace referencia a los
estándares RS422 y RS423 para los driver y receiver de línea. Soporta
velocidades hasta de 2 Mbps. Especifica un conector cannon tipo D de 37 pines
Las características eléctricas se especifican en las normas RS422 para circuitos
balanceados y RS423 para circuitos no balanceados. Estas normas son
equivalentes a las recomendaciones V11 y V10 de la UIT-T y RS449 es
equivalente a la V24 . Los niveles de voltaje están comprendidos entre +0.2 V y 6
V para el O lógico y entre -0.2 V y -6 V para el 1 lógico. En la región entre -0.2 V y
+0.2 V los valores lógicos son indefinidos
En términos generales, para la selección del interfaz adecuado deben tomarse en
cuenta parámetros como:
Velocidad de transmisión
Formato de los datos
Longitud del cable
Modo de transmisión
Rango del modo bus común
Tipo de conector
Configuración del sistema y estandarización de la interfaz
73
3.4 Medio de transmisión
3.4.1 Características del cable de cuadretes y red existente en el sistema
trolebús.
El cable que se encuentra instalado a lo largo de toda la ruta del trolebús es un
cable interurbano tipo EAPSP (Estanca Aluminio Polietileno Acero Polietileno) de 7
cuadretes, un cuádrete lo constituyen dos pares, en total tenemos 14 pares
instalados.
Este tipo de cable se utiliza en instalaciones canalizadas para transmisión de
señales eléctricas en ambientes electromagnéticos ruidosos.
Este cable tiene las siguientes características, tomados del catálogo del
fabricante:
FabricanteTipo
Construcción:ConductorAislamientoFormaciónCableadoEnvolvente núcleoPantalla
CubiertaArmado2a Cubierta
Características eléctricas:Resistencia de conductoresResistencia de aislamientoRigidez dieléctricaCapacidad mutua (1000Hz)
Atenuación nominalalKHzalOKHza 30 Khz
Características mecánicasEspesor de cubiertaDiámetro exteriorPesoLongitud cable por bobina
AlcatelEAPSP 7X4X0.9(Síete cuadretes de cuatro hilos de 0,9mm de diámetro)
Cobre blandoPolieíileno sólidoCuadretes estrellaCuadretes estrella en capasCinta dieléctricaAl. con film de copolímero de polietileno
Polietileno negroAcero corrugadoPoüetileno negro
29n/Km. (máx)35000 Mn/Km. (mín)3500 Vcc38 nF/ Km.
0,7dB/ Km.1,6dB/Km.2,1 dB/Km.
1,2 mm22,5 Km.510Kg./Km.920m
74
Con cada cuatro conductores se forma un cuádrete estrella, dos pares
constituidos cada uno por los conductores diametralmente opuestos. Los
conductores integrantes de cada cuádrete están torcidos conforme a una gama de
pasos (inferior a 150 mm) que diferencian claramente a cada cuádrete. Los
cuadretes formados se cablean en capas concéntricas de sentido alternado y
dispuestos de tal manera que los tipos de igual paso de torcido sean adyacentes.
La identificación de cada par y cuádrete se rige por el siguiente esquema:
Cuádrete
Par Conductor
1
1
ESQUEMA DE IDENTIFICACIÓN
Colores Situación del cuádrete en la capaNaranja Primero y último
Amarillo Intermedios
2 Verde En todos los cuadretes
Rojo Primero.S.SJ (impares)3
Azul Ultimo.2,4, 6 ( pares)2
Blanco Capas: central4
Negro Capas: impares
De esta forma cada cuádrete quedaría conformado asi:
Cuádrete
1
Conductores
NaranjaVerdeRojoBlanco
NaranjaVerdeRojoNegro
AmarilloVerdeAzulNegro
AmarilloVerdeRojoNegro
AmarilloVerde
Primer Par Segundo Par
NaranjaVerde
NaranjaVerde
AmarilloVerde
AmarilloVerde
AmarilloVerde
75
RojoBlanco
RojoNegro
AzulNegro
RojoNegro
AzulNegro
AzulNegro
Amarillo Amarillo RojoVerde Verde NegroRojoNegro
Naranja Naranja AzulVerde Verde NegroAzulNegro
3.4.2. Medidas eléctricas que se deben efectuar para verificación de la línea
de telecomunicación
Un sistema de telecomunicación se puede dividir básicamente en tres partes, que
son: el transmisor, e! receptor y el medio de transmisión.
De las tres, la más importante es el medio de transmisión, ya que es fácil adivinar
que una comunicación entre dos lugares distantes difícilmente se podrá establecer
si la línea de transmisión falla, o sea no reúne las condiciones adecuadas.
Las líneas de transmisión se pueden dividir en:
1. Líneas aéreas de hilo desnudo
2. Cables:
• Coaxiales
• Simétricos
• Pares
• Cuadretes
• Fibra óptica
3. Transmisión por radio.
En las páginas sucesivas trataremos solo de cables simétricos de pares y
cuadretes en estrella.
Una línea de transmisión en buen estado reúne una serie de características de
tipo eléctrico. Para cerciorarnos de que una línea de transmisión se encuentre
bien, periódicamente en ella se deben efectuar una serie de medidas eléctricas de
76
transmisión y de este modo sabremos en todo momento cómo se encuentra dicha
línea en todo cuanto se refiere a transmisión.
A continuación, se detalla una serie de medidas eléctricas básicas que hay que
efectuar; cómo se efectúan y los valores que se deben obtener para que un
determinado circuito se halle en condiciones.
3.4.2.1. Medida de resistencia de aislamiento
Los dos hilos de un circuito deben estar aislados y teóricamente ese aislamiento
debe ser infinito; en la práctica no se logra conseguir tal grado de aislamiento,
pero cuanto más nos aproximemos, más cerca estaremos de la perfección. En un
circuito aéreo el aislamiento es el aire y por tanto, tiene mucha influencia en él, el
tiempo seco, la humedad, lluvia, escarcha, etc. En un circuito en cable el
aislamiento suele ser de plástico, papel, etc. aquí las variaciones atmosféricas
tienen menos influencia y se consiguen aislamientos muchísimo mayores.
La tensión de prueba debe ser siempre de 500 Voltios y el tiempo de carga de un
minuto.
Una vez hecha la medida y debido a que el circuito se ha cargado y por tanto, ha
almacenado una energía, hay que descargarlo, para ello se unen los puntos del
circuito en el sitio que medimos por medio de 5.000Q como mínimo, es peligroso
unir los dos puntos entre sí, porque se puede dañar el circuito, sobre todo si es un
cable cargado, ya que se pueden dañar las bobinas pupin, además nos evitamos
sacudidas desagradables.
CIRCUITO EN CABLE
Se hace un tipo de medidas entre cada conductor y todos los demás unidos a la
pantalla y tierra.
Previamente, hay que comprobar que la pantalla tiene continuidad, por cualquier
método, por ejemplo con un óhmetro. Si la pantalla tiene continuidad es una tierra
eléctrica y se puede usar como tal.
77
Se mide desde un extremo y en el otro extremo se dejan todos los conductores y
la pantalla aislados.
Cada hilo que se mide, se saca del grupo y si su aislamiento es correcto nos
olvidamos de él, es decir lo dejamos aparte; si en ese hilo es aislamiento es
incorrecto, lo volvemos a meter en ei grupo. De esta forma siempre medimos un
hilo contra todos y tierra.
En un cable con aislamiento de plástico se puede considerar como correcto, si
cada hilo (conductor) tiene un aislamiento kilométrico mayor de 10.000 MQX Km.
El mismo proceso que se ha hecho con un conductor, se. hace con todos los
conductores del cable.
3.4.2.2. Medida de la resistencia en corriente continua
Cada conductor por el hecho de ser de cobre, tiene una resistencia óhmica, la cual
es directamente proporcional a su longitud, es decir, a mayor longitud mayor
resistencia, y además es inversamente proporcional a su sección, es decir, a
mayor diámetro del conductor menor resistencia es la que tiene.
Al hacer una medición, sabemos el valor teórico que nos debe salir, cuando
hacemos la medida ya tenemos una orientación sobre el orden de los valores que
vamos a manejar. Si estos valores difieren en demasía del valor teórico,
inmediatamente hay que pensar en alguna anormalidad, por ejemplo si estamos
tomando un circuito en la cual existe un empalme que está oxidado, este nos dará
un valor de resistencia mucho mayor.
En cada circuito haremos la medida de resistencia en corriente continua en anillo o
bucle, es decir uniendo los dos conductores del circuito en el otro extremo, con el
fin de cerrar el circuito eléctrico. Además nos interesa conocer el desequilibrio de
resistencia que exista entre los dos conductores, este desequilibrio de resistencia
siempre debe ser menor de +3 ohmios, cualquiera que sea la longitud del circuito,
tipo de conductor y diámetro y cualquiera que sea la temperatura a la cual
hacemos la medida.
Por lo tanto, en todo circuito medimos la resistencia en bucle (A+B) y el
desequilibrio de resistencia (A-B).
78
Para hacer la medida en bucle colocamos el aparato de medida y en el otro
extremo cerramos el circuito uniendo los dos hilos, como podemos ver en la figura
siguiente:
A
Aparato de medida
B
Fig. Ns 3.4.2.2.1
Así medimos ¡a resistencia total de los hilos A y B, es decir, (A+B).
Para saber el desequilibrio de resistencia entre los dos conductores (A-B) se
necesita otro conductor de igual longitud, con el cual auxiliarnos si este conductor
auxiliar tiene un resistencia X hacemos esta medidas:
(A+X) y (B+X)
A
Aparato de medida
X
B
Aparato de medida
Fig. Ns 3.4.2.2.2
79
Una vez que sabemos (A+X) y (B+X), averiguamos el desequilibrio de resistencia
así:
(A-B) = (A+X) - (B+X)
Resistencia por Kilómetro de los conductores usados normalmente
TIPO DE CONDUCTOR RESISTENCIA EN O/kmy c|> en mm a T= 20°C
Cu 4mm 1,35Cu 3mm 2,47Cu 2mm 5,4Cu 1,3mm 12,8*Cu 0,9 mm 27Cu 0,64mm 57Br 2mm 5,95Br 3mm 2,95Br4mm 1,65Fe 4mm 9
*Este es el cable usado como medio de transmisión en este proyecto.
3.4.2.3. Medida de la característica atenuación - frecuencia
Al transmitir una señal eléctrica por una línea de transmisión sufre una atenuación,
debido a que no existen líneas ideales, es decir, todas las líneas de transmisión
actuales tienen pérdidas . Si esta atenuación se eleva demasiado puede llegar el
momento en que una comunicación deje de ser inteligible y por tanto, no se logre
poder establecer una comunicación.
La atenuación en una línea de transmisión es debido a varios factores, por
ejemplo: a la propia resistencia óhmica que tiene el conductor por el hecho de ser
metálico. La atenuación es siempre inversamente proporcional al diámetro de los
conductores, a menor diámetro mayor atenuación, también varía con la frecuencia,
para conductores con el mismo diámetro, a mayor frecuencia mayor atenuación.
Debido a que las gráficas de valores teóricos que se deben obtener, vienen dadas
en dB/km. es decir la atenuación por kilómetro; al hacer la medida interesa darla
como atenuación kilométrica, la cual se obtiene dividiendo ia atenuación a lo largo
so
del circuito en medición ( es la que leemos en el aparato de medida) por su
longitud en kilómetros.
Para calcular la atenuación existente en el circuito, hay que tener en cuenta que:
Atenuación - (Nivel de emisión) - ( Nivel de recepción)
o sea, que el nivel emitido por el Generador hay que restarle el nivel recibido en el
Receptor,
Hay que tener mucho cuidado con los signos, para no cometer ningún error. Ver la
tabla siguiente;
Nivel de emisión Nivel de recepción Atenuación
+10dB +2dB 8dB+5 dB -3 dB 8 dB-2 dB -7dB 5dBO dB -4dB 4dBO dB 5 dB -5 dB (*)
(*):este caso es imposible, nunca obtendremos una atenuación negativa, ya que
equivale a una ganancia y esto no es posible en líneas de transmisión con
pérdidas. Si esto ocurre alguna vez, significa que estamos haciendo malas
medidas.
Es la práctica, para hacer la medida atenuación en un circuito, hay dos formas de
hacerlo, que son: en terminación y en derivación.
Medidas en terminación
El circuito a medir se corta en los dos extremos, es decir, se aisla. En un extremo
se coloca un generador G de baja o alta frecuencia según el caso, este generador
nos dará una señal eléctrica de una frecuencia y un nivel de salida determinado.
En el otro extremo se coloca un medidor de nivel R, es decir, un Receptor y con
ayuda del medidor de nivel veremos qué nivel de señal llega a ese extremo.
81
El montaje en esquema es el siguiente:
Generador Receptor
Zc
Ri=Zc Ri-Zc
Fig.3.4.2.3.1
De esta forma variando la frecuencia con el generador, iremos obteniendo la
atenuación del circuito a las distintas frecuencias y por tanto, la respuesta del
circuito.
Tanto el generador como el receptor, tienen una resistencia interna Ri, esta
resistencia interna debe coincidir siempre con la impedancia característica del
circuito Zc, con el objeto de que ni el generador G ni el Receptor R carguen a la
línea; ya que de lo contrario estaríamos falseando las medidas, por lo tanto:
Medidas en derivación
En este caso, el circuito a medir solo se necesita cortar en un extremo. En el
extremo que se corta se coloca e! Generador G, previamente hay que tener la
precaución de que su resistencia interna Ri coincida con la impedancia
característica del circuito, este generador nos dará una señal eléctrica y un nivel
de salida determinado.
En el otro extremo, el cual no se ha cortado, se coloca el Receptor T en
derivación, en este caso hay que tener la precaución de colocar en el receptor su
82
resistencia interna Ri de un valor mucho mayor que la impedancia característica
Zc de la línea, así el receptor no cargará a la línea, el valor de la resistencia
interna no será nunca inferior a 5.000 ohmios, cuanto más alto sea mejor.
Por lo tanto, para medidas de derivación:
En el generador; - Ri = Zc
En el receptor: - Ri > Zc
El montaje esquemático es:
Ri>»Zc
Receptor
Fíg.3.4.2.3.2
De esta forma, variando la frecuencia en el Generador, vamos obteniendo la
atenuación del circuito a las distintas frecuencias y por lo tanto la respuesta del
circuito.
3.4.2,4. Medida de la característica impedancia - frecuencia
La impedancia característica de una línea de transmisión es una de las
características secundarias de toda línea. Se llama secundaria porque solo
depende de las características primarias (R, L, C, G) y de la frecuencia
83
Zc = / R + fwL" G+jwC
en donde:
Zc = impedancía característica
w = pulsación = 27tf
C = Capacidad
i = -1f = frecuencia
L = inductancia
G = conductancia
Por lo tanto la impedancia característica será un número complejo y tendrá un
módulo y una fase. En la práctica normalmente solo se medirá el módulo; la fase
es prácticamente constante en baja frecuencia.
Se puede definir, la impedancia característica de una línea como la relación entre
la tensión y la intensidad; esta relación es un valor constante en todo punto a io
largo de la línea a una determinada frecuencia, si la línea es infinita de longitud.
La impedancia característica es constante en una línea sin distorsión y para que
esto se cumpla, se debe a su vez cumplir la condición de Heaviside, que es LxG
- RxC (relación entre las características primarias de una línea de transmisión).
Como orientación, a continuación damos los valores que aproximadamente deben
tener a 800Hz, algunos tipos de líneas:
- Línea aérea de hilo desnudo de Cu (§ = 3mm)
Zc = 600 Q
- Cable sin cargar, para baja frecuencia (§ - 0,9mm)
Zc = 450 Q
- Cable cargado, para baja frecuencia (§ = 0,9mm)
2cs1.150n
- Cable sin cargar, para alta frecuencia (tj) - 0,9mm)
Zc~150Q, a5khz
Zc=120n, a 150khz
84
Haremos la medida de la impedancía frecuencia de la siguiente forma: en un
extremo del circuito colocamos eí aparato de medida y en el otro extremo
cerramos e! circuito con una resistencia de valor igual a la impedancia
característica del circuito a medir.
Si la línea a medir tiene una longitud considerable, se dice que es una línea infinita
y no es necesario cerrarla con su impedancia característica; en este la forma de
terminación del circuito no afecta a las medidas, ya que no hay reflexiones.
Como orientación se dan algunos valores de las distancias a partir de las cuales
se puede considerar la línea como infinita para líneas aéreas y cables.
Línea aérea, a partir de los 120 Km, aproximadamente.
Cable, a partir de 45 km aproximadamente.
El esquema práctico es el siguiente;
Aparato de medida
Zc
Fig.3.4.2.4.1
Variando la frecuencia en el aparato de medida, iremos obteniendo los distintos
valores de la impedancia característica, con los cuales podemos dibujar punto a
punto la curva impedancia - frecuencia.
El sistema indicado es el mismo tanto para baja frecuencia como para alta
frecuencia.
Si el circuito que vamos a medir tiene una longitud tal que no podamos considerar
ese circuito como una línea infinita y no disponemos de una resistencia de valor
igual a la impedancia característica del circuito con el cual cerrarlo; se puede hallar
la impedancia característica también por un método indirecto, pero que es
rigurosamente exacto, es el siguiente:
Hacemos las medidas, la primera colocando en un extremo el aparato de medida y
en el otro extremo lo dejamos abierto, es decir, perfectamente aislado, así
obtenemos un valor que la impedancia en circuito abierto Zea.
85
La segunda medida es, colocando el aparato de medida en el mismo extremo que
anteriormente y el otro extremo lo dejamos en cortocircuito y así obtenemos otro
valor que es la impedancia en cortocircuito Zcc.
Una vez obtenidos estos valores, sabemos que la impedancia característica de
ese circuito es igual a la raíz cuadrada de ese producto, es decir:
Zc = [/ Zcc x Zea
3.4.2.5. Medidas de diafonía
Se llama diafonía a ias perturbaciones originadas entre circuitos telefónicos
próximos, es decir, hay una inducción de corriente de un circuito en otro y por io
tanto, si la atenuación de diafonía no se mantiene por encima de unos valores,
que se han establecido, oiríamos la conversación de un circuito por otro, lo cual es
inadmisible.
Hay dos clases de diafonía: la diafonía en el extremo próximo recibe el nombre de
"Paradiafonía" y la diafonía en el extremo lejano recibe el nombre de
"Teiediafonía".
Ambos se deben medir, la paradiafonía hay que medirla desde los dos extremos y
la telediafonía solo hay que medirla desde un extremo.
En los cables la diafonía puede llegar a ser apreciable, debido a que los
conductores están situados muy próximos. En las líneas aéreas la diafonía suele
ser despreciable, en ambos tipos de circuitos habrá que hacer estas medidas
cuando se estime oportuno.
Para que no haya diafonía entre dos circuitos, la atenuación de diafonía entre ellos
tiene un valor igual o mayor de 61 dB, tanto para telediafonía como para diafonía.
Colocamos un Generador de señal en un extremo de un circuito, que
consideramos como circuito perturbador y en el otro extremo de ese mismo
circuito cerramos con una resistencia de valor igual a la impedancia característica
de ese circuito, R - Zc. En el circuito que consideramos como el perturbado
colocamos un receptor o sea un medidor de nivel en el mismo extremo donde está
ei generador y en el otro extremo cerramos con una resistencia de valor igual a la
impedancia característica de este circuito. R = Z'c
Así montado, la atenuación de diafonía medida en el extremo próximo es la
paradiafonía.
Si en el circuito perturbado ponemos en el extremo lejano el Receptor y en el
extremo próximo cerramos con una resistencia de valor igual a la impedancia
característica del circuito, R = Z'c podemos medir la atenuación de diafonía en ei
extremo lejano, que es la telediafonía.
Hay que tener presente que, tanto en el generador como en el receptor, su
resistencia interna debe ser de igual valor a la impedancia característica del
circuito al cual vayan a ser conectados, con el objeto de que no carguen a la línea.
Las medidas de diafonía, se pueden hacer como hemos indicado anteriormente
con un generador de señal y un medidor de nivel adecuados, además también se
pueden hacer con unos aparatos preparados para ello, llamados medidores de
paradiafonía.
La diafonía se suele medir a las frecuencias de prueba (en baja frecuencia suele
ser 800 Hz y 4.000 Hz).
Usualmente en líneas aéreas !a mediremos solo entre circuitos adyacentes, o sea
próximos y en cables de cuadretes entre los dos pares del mismo cuádrete y en
cables de pares entre los pares adyacentes dentro de una misma capa.
El esquema práctico para hacer estas medidas es el siguiente:
ParadiafonfaCircuito Perturbador
R=Zc
Zc
Circuito Perturbado
R=Zc
Zc
Fig. 3.4.4.5.187
3.4.2.6 Telediafonía
El esquema práctico es el siguiente:
Circuito Perturbador
Generador
Zc
Circuito Perturbado
Zc
Receptor
Fig.3.4.2.6.1
3.4.2.7. MEDIDAS EFECTUADAS EN EL CABLE DE COMUNICACIONES
Cuádrete
I
"
M I
IV
V
VI
Vil
Par
12121212121212
R. debucle
827826826826825827827826827826825829828826
Atenuación(dB)
1000Hz12.2512.2512.2512.2512.2512.2512.1512.1512.1512.1512.1512.1512.2512.25
1600Hz12.412.412.412.412.412.412.412.3512.3512.3512.3512.3512.412.4
Telediafonía(dB)
1000Hz79.4817981.279.377.58186.17882.982.975.984.376.9
1600Hz78.48078.280.178.578.582.287.378.685.583.675.265.377.9
Paradíafonía(dB)
1000Hz7277.27177.779.376.780.787.37384.376.873.583.883.8
1600Hz77.872.17278.17877.281.187.176.184.479.477.483.684.4
Volt,inducido(Voltios)00000000000000
Lugar de Realización: Estación Sur El Recreo - Estación Norte La Y
3.5 Implementacion en el Equipo de transmisión de datos y en el controlador
Luego de haber revisado los conceptos de transmisión y conocer el medio de
transmisión a utilizarse se ha decidido realizar ia transmisión de !os datos con las
siguientes características:
• Topología tipo bus, debido a la cantidad de estaciones generadoras de
información, además no tenemos cableado suficiente para utilizar otro tipo de
topología,
• Medio de transmisión 1 cuádrete del cable de 7 cuadretes ya instalado a lo
largo de la ruta de trolebuses, de este cable tenemos disponibles 3 cuadretes
debido a que los restantes se utilizan en otras aplicaciones ya implementadas.
• Interfaz RS 485, por la topología a implementarse y por la distancia a la que se
encuentra cada una de las estaciones generadoras de información, se prevee
la instalación de regeneradores de señal cada 1,2 Km.
• Protocolo de enlace orientado al carácter mediante el código CCITT No.5
(ASCII), por ser el protocolo estandarizado por la UIT.
• Control del enlace Polling, por la topología utilizada y para evitar que haya
colisiones, además por la pequeña cantidad de información almacenada y
transmitida, los equipos ETDPA pueden esperar hasta que el controlador le
solicite (sondeo) enviar la información.
• Control de errores mediante paridad, si se detecta error se solicta
retransmisión hasta tres intentos,
• Recuperación ante fallos, se espera un tiempo de 5 segundos, si en este
tiempo el controlador no recibe respuesta del ETDPA hará un nuevo intento.
Así lo hará por tres ocasiones, si es que no recibe respuesta asumirá que el
canal de comunicaciones está defectuoso y pasará a sondear el siguiente
equipo.
CABLE DE COMUNICACIONES
CENTRO DEPROCESAMIENTO
EQUIPOS PARA TRANSMISIÓN DE DATOS
REPETIDORDE SEÑAL
Fig. N° 3.5.1 Red de transmisión de datos
Donde:• Centro de Procesamiento, es el computador en donde se va a almacenar la información
generada desde las paradas por el ETDPA.• Interfaz, es un módulo que permite cambiar de RS232 a RS 485, para e! proyecto se utiliza el
módulo ADAM 4520, hoja de características técnicas se pueden chequear en el anexo.• Cable de comunicaciones, es el medio de transmisión a utilizarse, en este proyecto se utiliza
el cable analizado en el literal anterior.• Equipos para transmisión de datos, ETDPA son los prototipos construidos en este trabajo, los
cuales se instalarán en todas y cada una de las paradas y estaciones de transferencia delRecreo y La Y.
Para la implementación en el prototipo se usó el módulo ADAM 4520 para la
conversión de interfaz RS232 a RS485, debido a que en el controlador central se
usa un computador y en el cual se tiene interfaz RS232.
El interfaz RS485 fue especialmente desarrollado para aplicaciones industriales.
Cada ADAM 4510 permite añadir hasta 32 módulos de este tipo en una con lo cual
se puede conectar hasta 256 equipos en una misma red RS485.
Con esta información se puede deducir que esta red cubriría una distancia de
hasta 38 Km. con lo cual cubriríamos la ampliación Sur prevista para el Trolebús
(distancia de 5.5Km) y la futura ampliación Norte de 7,5Km. Con las ampliaciones
futuras tendríamos una distancia total de 24,5 Km, incluyendo la ruta actual, por lo
que no tendríamos ningún problema en la ampliación de la red de datos.
90
Para la ruta actual se ha calculado instalar los siguientes módulos
DISTANCIA
(m)
0
1712
3082
4581
5794
6722
7865
9094
10202
1150
DISTANCIA ENTRE
REPETIDORES
(m)
0
1712
1370
1499
1213
928
1143
1229
1108
948
DESCRIPCIÓN
Convertidor de
interfaz
Repetidor
Repetidor
Repetidor
Repetidor
Repetidor
Repetidor
Repetidor
Repetidor
Repetidor
UBICACIÓN
Estación Sur El Recreo
Chimbacalle
Cumandá S/N
Hermano Miguel
Ejido S/N
Santa Clara S/N
Cuero y Caicedo N/S
Carolina N/S
La Y
Teminal Norte
Por facilidad de instalación los módulos repetidores ADAM 4510 serán instalados
dentro de las paradas, en total se preveen instalar un convertidor ADAM4520 y
nueve repetidores ADAM4510.
La velocidad de transmisión de estos equipos son variables y pueden ser seteados
entre los siguientes valores: 1200, 2400,4800,9600,19200,38400 bps.
Debido a la poca información que se va a transmitir y la distancia se escoge la
velocidad de 1200 bps.
En el equipo terminal de datos ETDPA se usó el circuito integrado DS3695 para
convertir niveles TTL a RS485.
El circuito integrado DS3695 es un driver receiver de línea de tres estados
diseñado especialmente para cumplir con el estándar RS485.
El manejo de este circuito integrado es el siguiente:
91
Rx
Tx
P2.7
Rx
TxDE
REDS3695
18031
Como este circuito posee tres estados, el estado de alta ¡mpedancia, es decir el
circuito ni recibe ni transmite, cuando se pone un cero lógico en RE se habilita
para la recepción y cuando se pone uno lógico en la línea DE se habilita para la
transmsión, estas líneas se manejan directamente con el microprocesador, P2.7,
Rxy Tx.
El software de implementacion del protocolo de enlace tanto para el ETDPA como
para el PC (controlador) se detalla en el siguiente capítulo.
92
CAPITULO IV
CONTROLADOR DEL SISTEMA
4.1. Software de Implementación del protocolo para el control del enlace
Como sabemos, el sistema para la transmisión de datos de las paradas de
trolebuses consta de un computador personal como controiador del sistema y de
41 equipos para la adquisición de información para cada uno de los 2 terminales
de trolebuses y las 39 paradas.
Analizando el diagrama de flujo No.4.1.1. vemos que:
Dado que son 41 equipos ETDPA, el controiador debe hacer un sondeo
secuencia! de uno en uno, esto se realiza fácilmente mediante un contador
módulo 41, es decir a cada parada se le asigna una identificación, ID, asociada a
un número, mediante eí cual será direccionada.
Tabla4.1. Nombre de las paradas y terminales de trolebuses con su
correspondiente número de identificación
: Idparada123
45
6
78
9
10111213
141516
1718
Descripción •Estación SurVillaRora s-nVillaFlora n-sChimbacalleCardenal de [a Torre
La ColinaMachangaraRecoleta s-nRecoleta n-sCumanda s-nCumanda n-sSto. Domingo s-nSto. Domingo n-sPlaza GrandeMarínPlaza del TeatroHno. MiguelBanco Central
93
19
20
212223
2425
26
2728
29
30
31
32
33
3435
36
373839
40
41
Alameda s-nAlameda n-sEl Ejido s-nEl Ejido n-sMariscal s-nMariscal n-sSta. Clara s-nSta. Ciara n-sLa Colon s-nLa Colon n-sCuero y Caícedo s-n
Cuero y Caicedo n-s
Mariana de Jesús s-n
Mariana de Jesús n-s
El Florón s-nEl Florón n-sLa Carolina s-nLa Carolina n-sEstadio s-nEstadio n-sLa Y s-nLa Y n-sEstación Norte
La comunicación entre el controlador y un ETDPA la inicia el primero, para lo cual
envía la trama con el carácter ASCII de petición de información ENQ. Si recibe
respuesta por parte del ETDPA, en un tiempo máximo de 5 segundos, entonces
se establece la comunicación, caso contrario, el controlador hace un nuevo
intento. Si luego del tercer intento, el controlador no recibe respuesta del ETDPA,
pasa a sondear el siguiente ETDPA. Esto significa que el sistema está diseñado
para su recuperación ante fallos.
En la comunicación, el ETDPA "descarga" la información almacenada
temporalmente en su memoria RAM transmitiéndola al controlador. Si la
información es recibida por el controlador sin errores, éste envía una trama con el
carácter de acuse de recibo ACK y el ETDPA termina el diálogo transmitiendo una
trama con el carácter de fin de transmisión EOT. Si la información transmitida por
el ETDPA llega al controlador con errores, este solicita retransmisión mediante ia
94
trama con el carácter NAK. Si luego de tres peticiones de retransmisión, la
información continua llegando con errores, el controlador pasa a sondear el
siguiente ETDPA. La detección de errores se lo hace mediante paridad en cada
carácter y la corrección mediante retransmisiones.
La tramas utilizadas en la ¡mplementación del protocolo para el control del enlace
orientado a carácter utilizando el código ASCII tienen los siguientes componentes;
SYN SYN ID I/O ENQTrama de petición de información
Donde:
SYN es el carácter de sincronismo
ID es la identificación de la parada, desde 1 hasta 41. Si ID es cero,
significa que el controlador envía una orden a todos los ETDPA.
I/O Si es la letra I significa trama de petición de información.
Si es la letra A/D significa que el controlador envía una orden para
activar/desactivare! relé incorporado en ei ETDPA.
ENQ es el carácter de petición de transmisión.
SYN SYN ID I/O STX UMPl CPI DPI UPI UMPS CPS DPS UPS ETXTrama con contenido de información
STX es el carácter de inicio de información
UMPl, CPI, DPi, UP!, UMPS, CPS, DPS, UPS son los códigos ASCI! de
las unidades de mil, centenas, decenas y unidades del número de
pasajeros que ingresan y salen de la parada respectivamente.
ETX es el carácter de fin de texto
SYN SYN ID I/O ACKTrama con acuse de recibo positivo
SYN SYN ID NAKTrama con acuse de recibo negativo
95
SYN I SYN I ID I I/O | EOT '
4.2 Trama de término de transmisión
A continuación se explica esquemáticamente ía comunicación controlador y
ETDPA mediante el protocolo de enlace orientado a carácter utilizando el código
ASCII, fig.DF4.2.1.
En el anexo, se listan los programas fuente en lenguaje ensamblador para el
ETDPA y en Visual Basic para el PC controlador.
4.3. Interfaz de Usuario
En escencia, la información adquirida por el controlador de los ETDPA's, es
almacenada en campos que contienen eí nombre de la parada, la fecha, la hora
(en intervalos de una hora), el número de pasajeros que ingresan y el número de
pasajeros que salen de las paradas y terminales de trolebuses.
El programa computacional desarrollado para el conírolador contiene 2 partes, la
primera trata sobre la comunicación, tratada en el numeral anterior, esta parte es
transparente para el usuario y la otra, es la parte útil para ser explotada por el
usuario. Al programa en mención lo llamamos STDPA.
La pantalla primaria del programa STDPA, contiene un menú en que se observa
lo referente al puerto de comunicaciones "Puerto", las opciones para realizar el
sondeo, "Sondeo", las opciones para obtener reportes y para abandonar el
programa.
Manejo del puerto serie
Desplegando el menú "Puerto", se muestra los parámetros de comunicaciones
seriales, cuyos valores, si se los desea cambiar, pueden ser ingresados desde el
teclado.96
Los archivos que permiten manipulare! puerto serie del Computador PC, fueron
tomados de las librerías incorporadas en el paquete de desarrollo Visual Basic, y
adaptadas al tratamiento de la trama de datos según el protocolo para el control
del enlace orientado al carácter utilizando el código ASCII. Este cambio consiste;
a En transmisión, la trama a enviar se la trata como una variable tipo String
conservando, obviamente, la estructura de la trama.
a En recepción, la trama recibida en el buffer del puerto serie es leída como una
variable tipo String, para luego separar los caracteres de esta variable de tal
manera que nos permita:
a Verificar la estructura de la trama. De esta manera, los datos que no
mantienen la estructura de la trama son considerados ruido y desechados,
a Identificar el equipo con e! que se establece la comunicación. Recordemos
que el tercer carácter de la trama es el ID de la parada
a Separar los datos que constituyen información, caracteres desde la
posición 5 hasta la posición 13 de la trama
a Discriminar el número de pasajeros que ingresan a la parada del número
de pasajeros que salen y almacenarlos en los registros correspondientes.
Fig.4.3.1 Interfaz gráfica
.a •PropectoV^Miciosofl Visual Basic I diseño} -(FnnMenu fKarra)}'
£§* fircfiívo Edtdófi _Íeí _Eroyecto gomiato CepUfacfon Ejecutar üerr-amfentajF Complementas Ventana
!rrt £3$ Praycctol (Proyectt- *S3f Formdarlos¡ ( • • • Q. FrmConsuJca (ft
•Q. Frmfecha (FrmfjQ FrmGraflco (Por
O FrmParada (FrirfrmPropetües (F
íTí-Ii MódJos
v£&&?0$$9J?x, . ^.
!íT<Pro]Íéclal ^Micíosdt Visual BQíicitrfJscñoi-ilRioviectdl-- P imParadá fFoim]K *••-. -' - ¿' • './U - "-r;,' .-. --' .. ," •'•'. /; . -^ -'-:' .'-', :.~ •••• V,V •".. HE1S3J
té? ¿rchfvo £dídi5n ¿er7T i ! "jf.fi? - "b " *s tí£V^w^^"*ÍiJ
fpnff i ]— enera 1
A 1*1"*T
ZJ
17 f5"
i5j P§¿j¿jjj ^
ií í f— g]
•~t p^. ,-j 1=]
!cS) ^{ KJ* ^~
^H HÍEÜ
ü Fl"Uu*
© aA ^J
abj ítH
13 ^
«r __j
j
jüpyecto ñwfiíatc D^pu^adón EJeciia^ Üen'.arnfeptar ¿¡3mp(emer :os )fetícana AVyda .. [-Si Xn- T r 1 ( f (**" i* *^* i ""*" ** ~* J*í 1 >* 1
H«. "^ Si4ftj * - j >- jí.^^^tBI^^O Q o í í0W3ffx*4í)o ^ f
u , .J US?!"*', ."Si_!^^T ^^..jxf•••«; Paradas : - •-. - - - - - ;-^.: -^•'-.v.'. ----- -•1v..-,;.^-.~,-..^V ^:?-/ -v. -v^
j
P
J
Vt*•:*•-'""•'-
^
" '"*; Í '"'V^, - r * ' **" ^ ' -» '
' t i*" i ti t •* í* qota i
„ 1 ~~ ' yjfc. »i-
DBüííl | ^ i
J »'•-"'""•'•-"' ,,
(
tí , '1>•* i
NI ^ iwr iHi < ^ini <"* '! ' ' ' /
joraar 1 Cance&í | " ""^ -i
'
r
3
_™ — j . ,, ,i .C Salr I' 1
f
J-icxa Nip Pasapios,:
t * 4tT-*-.
tj *
i -~í *ji?i»'>tt
I . •* _í j, , , ¿ a, J r íi-J. I J i
t T-«- — -t —4- * íf V
D in T -, -*- jca a j'í.
di •
H-¿? Proyecto 1 (ProyecU$ Sí Formularlos
& FrmConsufca (Ft• O- Frmfecha (FrmfiQ. FrmGraflco (For1O- FrmMenu (FririfQ FrmParada (FrrrO. fnrfroperdes (f
eB- CÍ3 Móddos
M 1 -Ll^BStail||^p|0yecto1 - MiciorafL
Gráfica 4.3.2. Interfazde usuario. Parámetros de comunicaciones
Los archivos utilizados para control de las comunicaciones son:
a VbasicTerminaL- Contiene todo los procesos para manipular el puerto serie,
abrir puerto, cerrar puerto, menú desplegable del puerto serie, transmisión de
la trama de datos como variable tipo String, lectura del buffer de recepción del
puerto serie y registro en una variable tipo String, separación de los caracteres
de dicha variable. Almacena ios caracteres de información en los registros
correspondientes según sea número de pasajeros que ingresan o número de
pasajeros que salen de las paradas. Para la lectura del buffer de recepción del
puerto serie espera ia orden del manejador OnCOmEvent. Finalmente, en este
mismo archivo hemos incorporado el contador que permite realizar el sondeo
de los 41 equipos.
98
a OnComEvent.- Constituye el manejador del puerto serie, detecta cualquier
evento que se produzca en sus líneas y en base a ello cambia los valores de
ias variables relacionadas con dicho puerto para que en la subrutina Terminal
se efectúe acciones correspondientes, en general lectura del buffer del puerto.
Los eventos detectados por OnComEvent están relacionados con las Ifneas
del puerto serie con interfaz RS232, así por ejemplo: Request To Send, RTS,
Clear To Send, etc.
En ía gráfica 4.3.1. el símbolo del teléfono significa utilizar el archivo OnComEvent
incorporado el paquete Visual Basic, esto demuestra lo fácil que resulta utilizar las
librería utilitarias del propio paquete computacional.
El listado del programa se adjunta en el anexo.
Selección del tipo de sondeo
Para realizar el sondeo de los equipos ETDPA, se lo puede hacer de dos
maneras: de todos los equipos o de un solo equipo en particular, esta opción
aparece cuando se despliega el menú "Sondeo".
En el archivo VBasicTerminal, cuando se seleciona la opción "colectivo", se
ingresa al contador módulo 41, mientras que cuando se selecciona la opción
"individual", simplemente no se ingresa al contador y el resto del programa es el
mismo.
Reportes
En el controlador se almacenarán en forma de registros el nombre de la parada, la
fecha, la hora, e! número de pasajeros que ingresan y el número de pasajeros que
salen, con el siguiente formato:
ParadaVilla Flora SN
FechaXxxxx
xxxxxx
HoraXxxXxxxXxxxXxxXxx
N.P. IngresanXxxXxxXxxXXX
Xxx
N.P. SalenXxxXxxXxxXxxXxx
99
Chimbacalie
Machángara
Xxxxx
Xxxxxx
Xxxxx
XxxxXxxxXxxXxxXxxXxxxXxxxXxxXxxXxxXxxxXxxxXxxXxxXxx
XxxXxxXXX
XXX
XxxXxxXxxXXX
XXX
XxxXxxXxxXXX
XXX
XXX
XxxXxxXxxXxxXxxXxxXxxXxxXxxXxxXxxXxxXxxXxxXxx
Con la información almacenada de esta manera, obtendremos fácilmente los
siguientes reportes a voluntad del usuario:
Total por día
En este tipo reporte se detallará el nombre de la parada, el número de
pasajeros que han ingresado y e! número de pasajeros que han salido de las
paradas y terminales de trolebuses en un día seleccionado por el usuario.
Durante el día
En este tipo reporte se detallará el nombre de la parada de la que se desea
obtener el detalle del número de pasajeros que han ingresado y el número de
pasajeros que han salido de esa paradas en el transcurso del día en intervalos
de una hora.
Acumulado
En este tipo reporte se detallará el nombre de la parada, el número total de
pasajeros que han Ingresado y el número total de pasajeros que han salido de
las paradas y terminales de trolebuses en un lapso de tiempo, en días,
seleccionado por el usuario.
100
.- Páraülés\i *-" pecha*™*"—'•f í** ]
'• \9 ] 4 r Hora Nro Pasajeros j
Gráfica 4.3.6. Ejemplo de reporte en el transcurso del día
Con la información presentada, pero que está fuera del tema de este trabajo, se
puede hacer cálculos de demanda por parada, por sectores de ía ciudad, etc,
Gráfica 4.3.7. Ejemplo de reporte por totales acumulados
Consullas
Por Día Transcurso Día Acumulado,-
Parada NPIVillaFlora s-nVillaFlora n-sChimbacalle
13701 3069O OO O
NPÍ NtínJéro pasajero?NPS Num etio pasajeras salen Sattr
101
NO
SINCRO=1CNC-O
TRANSMITEINFORMACIÓN
LIMPÍALARAM DE DATOS
INC CNC
TRANSMITESYNSYN1DPJ7OEOT
LIMPÍALARAM DE DATOS
RETRANSMITEINFORMACIÓN
FIG DF 4.1.1 PROTOCOLO DE CONTROL DEL ENLACE IMPLEMENTADO EN EL ETDPA
103
i = 1,41
SYNSYNH/OENQ
ESTfCIO TEMPORIZABOR
LEERBUFFERRx
EXISTE RESPUESTA?
CARÁCTER INICIO DETXESSTX
ALMACENA TEMPORALMENTETRAMA
ACUSE DE RECIBOSYNSYNIDPiyOACK
SISEPARAR CARACTERES DE
INFORMACIÓN
INICIO TEMPORIZADOR
EXISTE RESPUESTA?
ALMACENAR INFORMACIÓN
PERIODO DESONDEO
FIG DF 4.2.1 PROTOCOLO DE CONTROL DEL ENLACE IMPLEMENTADO EN. EL CONTROLADOR (PC)
104
CAPITULO V
CONCLUSIONES YRECOMENDACIONES
1. La topología del Sistema para la transmisión de datos de las paradas de
írolebuses proyectado tiene una topología física tipo bus, es decir, un único canal
de comunicaciones con un medio de transmisión constituido por un par trenzado,
al cual se conectaría todos los equipos terminales de datos utilizando el interfaz
RS485.
2. El protocolo para el control del enlace empleado es orientado a carácter utilizando
el código ASCII con las siguientes particularidades: la coordinación de la
comunicación y acceso al medio se lo hace mediante un controlador del sistema,
computador, que sondee a los equipos terminales de datos. La sincronización se
consigue insertando como bandera de trama dos caracteres SYN, dado que la
información a transmitir consisiíe única y exclusivamente de números, no es
necesario insertar caracteres DLE para conseguir transparencia. El control de
errores lo realiza el controlador mediante paridad de carácter y retransmisión, la
rcuperación ante fallos se consigue estableciendo plazos de espera de 5
segundos, luego de este tiempo se solicita nueva respuesta, limitando el número
de intentos a S.feumiendo, la estructura de la trama de datos utilizada es:
SYN SYN ID I/O STX INFORMACIÓN ETX
3. En el proyecto, se utiliza el interfaz RS485 pues trabaja en modo semi-duplex para
lo cual es suficiente un par de hilos de cobre, además posee gran desempeño ante
desniveles de voltaje de línea con respecto a las toma de tierra de los equipos
remotos (las referencias de tierra son diferentes para cada equipo termina! de
datos) y finalmente porque este interfaz fue concebido para aplicaciones
industriales: adquisición de datos y su transmisión a un controlador.105
4. Los equipos de interfaz RS485 utilizados en el proyecto, tanto el convertidor de
RS232 a RS485 como el repetidor son marca ADAM, modelos 4520 y 4510
respectivamente. Según datos tomados del catálogo del fabricante, permiten
extender la línea de transmisión hasta una longitud de 1200 metros y una tasa de
transmisión máxima de 38400 -'¿Tp s. En el presente proyecto se ha conseguido
tener una longitud de línea de 1,71 Km a una velocidad de 1200 bps, distancia
entre ia terminal de troíebuses de El Recreo y la parada Chlmbacalle.
5. La velocidad de transmisión fijada en e! proyecto es de 1200 bps por lo
mencionado en el párrafo precedente y porque la cantidad de información a
trasnmitir por cada ETDPAes pequeña (trama de 15 byíes máximo).
6. Un diálogo controlador-ETDPA ubre de problemas, consta de 4 tramas:
Controlador (6 bytes)
SYN SYN ID ID I/O ENQ
ETDPA (15 bytes)
SYN SYN ID ID I/O STX 8 INFORMACIÓN ETX
Controlador (6 bytes)
SYN SYN ID ID I/O ACK
ETDPA (6 bytes)
SYN SYN ID ID I/O EOT
En total e! diálogo consta de 33 bytes.
7. De lo anterior, la cantidad de información a ser transmitida por los 41 ETDPA's
será: 33 bytes * 41 = 1353 bytes, es decir 10824 bits, utilizando la velocidad de
1200 bps, y para el mejor de los casos, comunicación libre de problemas,
obtenemos el tiempo mínimo necesario (sin considerar retardos por la longitud de
106
la línea ni en el procesamiento) para completar un ciclo de sondeo de 9.02
segundos. En el peor de los casos, es decir si no se establece la comunicación
controlador-ETDPA, el tiempo requerido para el sondeo individua! será de 15
segundos (3 intentos cada 5 segundos), sin no se establece comunicación con
ningún ETDPA, el tiempo de sondeo sería de 15 segundos*41 =615 segundos.
Es decir, en el peor de los casos el tiempo de! ciclos de sondeo sería de 10
minutos.
8. Para la impíementación de! ETDPA se ha utilizado e! microprocesador 8031
porque su capacidad de memoria RAM es suficiente para la aplicación de este
proyecto y porque los 2 equipos ETDPA construidos son prototipos se trabajó con
memoria UVEPROM externa.
9. El programa para el controiador de! sistema esta desarrollado en VISUAL BASIC
5,0, este paquete facilita la elaboración de aplicaciones pues provee de librerías
existentes utilizadas directamente en este proyecto para el manejo del puerto
serie, para establecer el menú, para el temporizados La incrustación de las
librerías mencionadas se lo hace a manera de Iconos, por lo que es fácil su
manipulación.
10. Pruebas realizadas, el objetivo principal fue determinar la distancia máxima en la
cual exista comunicación sin problemas entre el controiador y un ETDPA sin
repetidor a la velocidad de 1200 bps:
• Se instaló un equipo en la Parada Villa Flora N/S y el controlador en la terminal
de trolebuses de Eí Recreo, se obtuvo comunicación con el equipo sin ningún
problema.
• Luego se cambió el equipo ETDPA a la parada Chimbacalle, obteniendo igual
que antes resultado positivo.
107
* Se procedió a instalar el ETDPA en Ja siguiente parada (La Colina), en esta no
se obtuvo comunicación. Como el medio de transmisión es subterráneo y solo
se tiene acceso a él desde las regletas de conexiones instaladas en la paradas
concluimos en que la distancia máxima aproximada en la que existe
comunicación controlador-ETDPA es de 1720 metros (longitud de la distancia
entre el terminal El Recreo y la parada Chimbacalle),
» Luego se instaló e! módulo repetidor en ia Parada Chimbacaíle y e! equipo
ETDPA se ío fue ubicando en las próximas paradas, se obtuvo comunicación
hasta la Parada Santo Domingo S/N.
11. De acuerdo a esta prueba se concluyó que podíamos aumentar la distancia entre
repetidores a 1682 metros (longitud de la distancia entre las paradas Chimbacaíle
y Sto. Domingo S/N.
12. La información a obtenerse con el sistema proyectado es muy valiosa para la
programación de la operación de trolebuses permitiendo establecer oferta de
trolebuses dependiendo de la demanda y por supuesto, tiempo separación entre
trolebuses en ruta y establecer el periodo óptimo que deberían cumplir los
trolebuses en su recorrido de terminal a terminal. Por oiro lado, la información
obtenida permitiría establecer comparación en la contabilidad de la cantidad
recaudada y eí número de pasajeros que ingresan/salen de ia (las) parada(s) del
sistema.
13. El ETDPA posee un display para poder realizar lecturas de datos [ocalmente,
esto es por si se tuviera problemas con el medio de trans'misión y no se pudiera
estableceré! enlace con eí controlados
14. En este proyecto se ha explotado todas las bondades del microcontrolador 8031,
Manejo de interrupciones, temporizadores, comunicaciones vía puerto serie,
direccionamiento de periféricos como localidades de meoria RAM externa.
108
15. Para ia realización del proyecto hemos encontrado la limitación de que en el
mercado local es muy difícil conseguir ios elementos necesarios, inclusive del
microcontrolador, lo cual retrasa ei avance y encarece los costos.
16. El diseño de la red está prevista para las ampliaciones que podría tener el sistema
trolebús, puesto que se podría ampliarlo solamente incrementando el número de
repetidores y haciendo los respectivos cambios en el software del controiador del
sistema.
RECOMENDACIÓN
En el proyecto realizado no se da variedad en el tipo de reportes, por lo que se
recomienda su ampliación en otro trabajo, dedicado más específicamente al software
para el controiador. En el .mismo se podría incrementar los reportes a obtenerse
como: tablas, gráficas, comparaciones entre sectores (centro sur, centro norte) cuya
demanda de usuarios de trolebuses es muy variable, etc.
109
BIBLIOGRAFÍA
1. Gonzaíes Vázques José Adolfo, "Introducción a los microcontroladores",Ed. McGraw-HHI, España 1992
2. Alabau Muñoz Antonio, "Teieinformática y redes de computadores", serieMundo Electrónico, Ed. Marcombo, España 1987
3. "Tanembaum Andrew S.; "Redes de Ordenadores", Ed. Prentice Hall, 2da.Edición, México 1 991
4. De la Garza Manuel Gonzáles, "Modems", Ed. Paraninfo, España 1 994
5. De la Garza Manue! Gonzá!es; "Comunicaciones", Ed. Paraninfo, España1994
6. National Semiconductor, "Computer Iníerfaee"
7. Hidalgo Pablo, "Apuntes sobre Comunicación Digital", EPN
8. Vásquez Marco, "SeminariofTecnoíógla de Redes de Computadores",.Escuela Politécnica Nacional, 1994
PROGRAMA FUENTE ETDPA(ENSAMBLADOR)
¡991213-10HOO; CPU "8051 TBL"; HOF "IntS"; INCL "SFR"
•EQUIPO TERMINAL DE DATOS DE LAS PARADAS DETROLEBUSES;!NCLUYE RUTINAS PARA MANEJO DEL LCD EN P1 Y RUTINAS PARA COMUNICACIONES
¡VARIABLES
;SE1: SENSOR DE ENTRADA 1•SE2: SENSOR DE ENTRADA 2;SS1: SENSOR DE SALIDA 1;SS2: SENSOR DE SALIDA 2;IRPT: SENSOR DE PRESENCIA DE TROLEBÚS EN LA PARADA¡NTU: UNIDADES DEL NUMERO DE TROLEBUSES QUE HAN ARRIBADO A LA PARADA EN UN; LAPSO DE TIEMPO PREDETERMINADO (ENTRE DESCARGAS DE DATOS AL CPPC;NTD: DECENAS ÍDEM;NTC: CENTENAS ÍDEM;MD: SI MD=1, MUESTRA EN DISPLAY EL NUMERO DE PASAJEROS QUE INGRESAN; SI MD=0, MUESTRA EN DISPLAY EL NUMERO DE PASAJEROS QUE SALEN
SI MD=2, MUESTRA EN LCD EL NUMERO DE TROLEBUSES¡PSU; UNIDADES DEL NUMERO DE PASAJEROS QUE SALEN (NPS) DE LA PARADA;PSD: DECENAS ÍDEM;PSC;PSUM;PIU: UNIDADES DEL NUMERO DE PASAJEROS QUE INGRESAN (NPI) A LA PARADA•PID;PIC•PIUM¡REGISTROS AUXILIARES PARA CONTADOR BCD;UN: UNIDADES DEL NUMERO BCD;DE: DECENAS DEL NUMERO BCD¡CE: CENTENAS DEL NUMERO BCD;UM: UNIDADES DE MIL DEL NUMERO BCD
¡VARIABLES AUXILIAR PARA VERIFICAR QUE EXISTA CABIO DE¡ESTADO DE LOS SENSORES¡CEO: DEL SENSOR SE1;CE1; DEL SENSOR SE2;CE2: DEL SENSOR SS1;CE3; DEL SENSOR SS2;CE4: DEL SENSOR JRPT
;VS: VARIABLE AUXILIAR PARA LECTURA DE SENSORES;CT1S: AUXILIAR PARA CONTAR EL NUMERO DE CICLOS DEL TiMER TO
;VARIABLES PARA COMUNICACIONES;SÍNCRO: PARA INDICAR QUE SE RECIBIERON CARACTERES DE SINCRONISMO;CNC: CONTADOR DEL NUMERO DE CARACTERES DE LA TRAMA RECIBIDA¡CAREC: CARÁCTER RECIBIDO;IDP: DIRECCIÓN DE LA PARADA;CTROL: CTROL=I LA TRAMA ES DE PETICIÓN DE INFORMACIÓN; CTROL-O LA TRAMA ES DE ORDEN (ACTIVAR RELÉS)
; RUTINAS
;1. "LSEN" -ATENCIÓN A INTO. LECTURA DE SENSORES;2. JICONT" - CONTADOR BCD;3. "ASCIIBCD" - CONVERSIÓN DE CÓDIGOS ASCII A BCD; DÍGITOS DEL O AL 9;4. "BCDASCII" - CONVERSIÓN DE CÓDIGOS BCD A ASCII: DÍGITOS DEL O AL 9;5. "RTTP" TRAFICO DE PASAJEROS (TIEMPO/NUMPAS);6. "RETARDO" - PRODUCE 833.4 us DE RETARDO
;RUTÍNAS PARA EL MANEJO DEL LCD
;7. "MLCD": MANEJO DEL LCD;8. "MENSAJE" - LECTURA DE TABLA EN ROM Y ESCRITURA EN LCD;9. "LCDNP" - LECTURA DE DATOS DE RAM Y ESCRITURA EN LCD;10."MOST" -ATENCIÓN A INT1, MUESTRA EN EL DISPLAY EL NUMERO DE
;PASAJEROS QUE HAN INGRESADO O SALIDO DE LA PARADA ALTERNATIVAMENTE CON;CADA INTERRUPCIÓN EXTERNA 1,1 NT1, HASTA EL MOMENTO DE LA LECTURA
¡11.CUR1BLINK1:;12. CUR1BLINKO:;13. CUROBLINK1:;14. CUROBLINKO:;15. PRINTCHAR:;16. RESETDISP:;17, CLEARLCD:;18. RETARDOTEP:;19. RETARDÓTE:;20. RETARDO;20. MOVCURSOR:
¡RUTINAS PARA COMUNICACIONES;21. COM :RECEPCION DE PSERIE;22. TX TRANSMISIÓN POR PSERÍE;23. TRAMA;24. CONTX :CONTROL DE LA TRANSMISIÓN•25. TXEOT :TRAMA DE FIN DE COMUNICACIÓN
¡ETIQUETAS
SE1 EQU 40HSE2 EQU 41H551 EQU 42H552 EQU 43HMD EQU 44H
VS EQU 45HPSU EQU 46HPSD EQU 47HPSC EQU 48KPSUM EQU 49HPiU EQU 4AHP1D EQU 4BHPIC EQU 4CHPIUM EQU 4DHUN EQU 4EHDE EQU 4FHCE EQU 50HUM EQU 51HCT1S EQU 52HCEO EQU 53HCE1 EQU 54HCE2 EQU 55HCE3 EQU 56HCE4 EQU 57H
;ETIQUETAS PARA MANEJO DE LCD
AUXCURSOR EQU 5DHDDRAM EQU 5EHCARÁCTER EQU 5FHDÍGITO EQU 60H
¡ETIQUETAS PARA COMUNICACIONES
SOH EQU 61HSTX EQU 62HETX EQU 63HEOT EQU 64HENQ EQU 65HACK EQU 66HNAK EQU 67HSYN EQU 68HIDP EQU 69HCTROL EQU 6AHSiNCRO EQU 6BHCAREC EQU 6CHCNC EQU 6DH
¡INTERRUPCIONES
ORG OOHLJMP !Ni ¡SALTO A INICIO DE PROGRAMA PRINCIPAL
ORG 03H ¡INTOLCALL LSEN ;RUTINA PARA LA LECTURA DE SENSORESRETÍ
ORG
RETÍ
OBH INTERRUPCIÓN DEL TiMER TO; EN LA PARADA
ORG 13H ¡ÍNT1LCALL MOST ;RUTINA PARA SELECIONAR EL NUMERO DE PASAJEROSRETÍ ¡A MOSTRAR EN LCD: QUE SALEN O QUE INGRESAN
ORG 23HLCALL COMRETÍ
;PUERTO SERIE
¡PROGRAMA PRINCIPAL
ORG 30H ¡DIRECCIÓN EN LA CUAL SE INICIA LA GRABACIÓN EN ROM
¡CONDICIONES INICIALES
INI: MOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOV
PSU,#31 HPSD,#30HPSC.OOHPSUM3#30HP!U,#30HPID;#31HPIC,#30HPIUM,#3QHCEO,#OFFHCE1 ,#QFFHCE2,#OFFHCE3,#OFFHCE4,#OFFHVS,#OFFHMD,#OOHCT1S,#OOH
¡VERIFICA EL CAMBIO DE ESTADO DE SE1
¡CONDICIONES INICIALES DE LOS PARÁMETROS DE COMUNICACIONESMOVMOVMOVMOVMOVMOVMOVMOVMOVMOV
MOVMOVMOV
SOH,#G1HSTX,#02HETX,#03HEOT,#04HENQ,#05HACK,#06HSYN,#16HSINCRO;#01HCTROL,*1!'CNC,#OOH
¡CARÁCTER ASCM DE ENCABEZADO
MOV NAK,#15H¡CARÁCTER ASCII DE SINCRONISMO
1DP,#31HA,P1IDP.A
¡SETEA LA DIRECCIÓN DE LA PARADA¡EN CÓDIGO ASCCI
¡PARÁMETROS DE OPERACIÓN DEL MiCROCONTROLADOR
MOV TCON,#44H ;INT1 POR FLANCO NEGATIVO;INTO POR ESTADO BAJO;TIMER TO HABILITADO;TÍMERT1 HABILITADO
MOV TMODJ21H ;TO COMO TÍMER DE 16 BITS;T1 EN MODO AUTORRECARGA
MOV IE,#97H ¡HABILITA INTO, ÍNT1, TO Y PSERIEMOV SCON.tfOtOIOOOOB -HABILITA PSERiE PARA TRANSMISIÓN EN MODO 1MOV PCOK#OOH -SMOD = OMOV TH1;#OR)H ¡VELOCIDAD DE TRANSMISIÓN 1200 bpsMOV TL1.TH1
ACALL RESETDISP -.RUTINA DE POWER ON RESET DEL DISPLAYACALL CUROBLiNKO ¡APAGADO DEL CURSOR Y BLINK
LCALL MLCD ^MUESTRA EN DISPLAY "PASAJ.ING: O" POR DEFECTO
SEL: MOV A,VSCJNE A,*OFFH,VCELSLJMP SEL ¡ESPERA POR INTERRUPCIÓN
VCELS: MOV RO,#QEFH ^DIRECCIÓN DE LOS SENSORESMOVX A,@ROMOV VS,A
¡CONTROL DE SIMULTANEIDAD DE SENSORES ACTIVOS. CUANDO UN SENSOR AUN NO HA¡RETORNADO A SU ESTADO DE REPOSO Y SE HA PRODUCIDO LA ACTIVACIÓN DE OTRO¡SENSOR
ORL A,#-Í1111110BMOV CEO,AMOV A.VSORL A,#11111101BMOV CE1.AMOV A.VSORL ^#111110116MOV CE2.AMOV A,VSORL A,#11110111BMOV CE3,ALJMP SEL
¡FIN DEL PROGRAMA PRINCIPAL¡RUTINAS
¡1. RUTiNA LSEN: LECTURA DE SENSORES, SE ACTIVA CON INTO
LSEN: CLR EXO ¡DESHABILITA INTO PARA ELIMINAR REBOTES
MOV RO,#11101111B ¡DIRECCIÓN DE SENSORES
MOVX A,@ROMOV VS,A
;LEE SENSORES
¡CARGA VALORES DE SENSORES EN REGISTROS CORRESPONDIENTES;PARA LUEGO VERIFICAR CUALES ESTÁN ACTIVOS
ORLMOVMOVORLMOVMOVORLMOVMOVORLMOV
A,#11111110BSE1.AA,VS#111111016SE2,AA,VSA,#11111011BSS1.AA,VS
SS2.A
¡IDENTIFICA LOS SENSORES ACTIVOS Y EJECUTA LAS RUTINAS CORRESPONDIENTES:EL SENSOR ESTA ACTIVO EN OL
MOVCJNECJNELJMP
CON.PI1:MOVMOVMOVMOVLCALL
MOVMOVMOVMOV
A,SE1A^nmA,CE03CCLSE2
UM.PfUMCE.PICDE,P!DUN.PIUCONT
PIUM.UMPIC.CEPID,DEPIU.UN
11 ;VERIFICA SI EL SENSOR HA RETORNADO;AL ESTADO DE REPOSO
;CARGA VALORES DE NUMERO DE PASAJEROS;QUE INGRESAN, EN LAS VARIABLES
;DEL CONTADOR BCD
¡LLAMA A RUTINA CONTADOR BCD¡ACTUALIZA EL NUMERO DE PASAJEROS QUE
¡QUE INGRESAN
LSE2: MOV A.SE2CJNE A,#11111101B,LSS1CJNE A)CE1,CONPÍ2LJMP LSS1
CONPI2:MOVMOVMOVMOVLCALL
MOVMOVMOVMOV
UM,PIUMCE.PICDE.PIDUN.PIUCONT
PIUM^MPIQCEPID.DEPIU.UN
;CARGA VALORES DE NUMERO DE PASAJEROS¡QUE INGRESAN, EN LAS VARIABLES
¡DEL CONTADOR
¡LLAMA A RUTINA DE CONTADOR¡ACTUALIZA EL NUMERO DE PASAJEROS QUE
¡QUE INGRESAN
LSS1: MOV A.SS1CJNE A,#1'I111011B,LSS2CJNE A.CE2.CONPS1
;CARGA VALORES DE NUMERO DE PASAJEROS;QUE SALEN, EN LAS VARIABLES
;DEL CONTADOR BCD
;LLAMA A RUTINA DE CONTADOR;ACTUALIZA VALOR DE NUMERO DE PASAJEROS
;QUE SALEN DE LA PARADA
LSS2: MOV A.SS2CJNE A,#11110111 B.FLSCJNE AJCE3JCONPS2LJMP FLSCONPS2:
LJMPCONPS1:
MOVMOVMOVMOVLCALL
MOVMOVMOVMOV
LSS2
UM.PSUMCE.PSCDE, PSDUN.PSUCONT
PSUM.UMPSC.CEPSD.DEPSU.UN
MOVMOVMOVMOVLCALL
MOVMOVMOVMOV
UM.PSUMCE.PSCDE, PSDUN,PSUCONT
;CARGA VALORES DE NUMERO DE PASAJEROS;QUE SALEN, EN LAS VARIABLES
DEL CONTADOR
PSUM.UMPSC,CEPSD.DEPSU.UN
;LLAMA A RUTINA DE CONTADOR^ACTUALIZA VALOR DE NUMERO DE PASAJEROS
SALEN DE LA PARADA
FLS: LCALL MLCDSETB EXORET
ACTUALIZA PRESENTACIÓN EN LCD;HABILlTAINTO
:2. RUTINA CONTADOR BCD
¡CONVERSIÓN DE CÓDIGOS ASCI! A BCDCONT: LCALL ASCBCDMOV R4.UNCJNE R4,#09H,INCU ;SI EL DÍGITO DE LAS UNIDADES ES 9MOV UN,#OOH ¡ENTONCES LO PONE EN CERO
MOV R4.DE ;SI EL DÍGITO DE LAS DECENAS ES 9CJNE R4,#09HJINCD ¡ENTONCES LO PONE EN CEROMOV DE,#OOH
MOV R4,UMCJNE R4,#09H,INCMMOV UM,#OOH
LCALL BCDASC
RET
iNCU: INC UNLCALL SCDASCRET
INCD: INC DELCALL BCDASCRET
ÍNCC: INC CELCALL BCDASCRET
INCM: INC UMLCALL BCDASCRET
¡CONVERSIÓN DE CÓDIGOS BCD A ASCII
;INCREMENTA UNIDADES
¡INCREMENTA DECENAS
;3. "BCDASC11 - CONVERSIÓN DE CÓDIGOS BCD A ASCII - DÍGITOS DEL O AL 9
BCDASC:MOVORLMOVMOVORLMOVMOVORLMOVMOVORLMOVRET
A, UNA*00110000BUN,AA, DEA,#00110000BDE.AA, CEA,#OG110000BCE.AA.UMA,#0011GOOOBUM.A
;4. "ASCBCD" - CONVERSIÓN DE CÓDIGOS ASCII A BCD - DÍGITOS DEL O AL 9
ASCBCD:MOVANLMOVMOVANLMOVMOVANLMOVMOVANLMOVRET
A, UNA,#00001111BUN.AA.DE
A,#00001111BDE,AA,CE
A,#00001111BCE,AA.UM^#00001111BUM,A
¡6. RUTINA "MLCD" - MANEJO DEL LCD
MLCD:MOV R6,MD ¡EN LCDCJNE RS.tfOOHJNG ¡SALTA A ESCRIBIR EN LCD "PASAJ, ¡NG: "
DESCRIBE EN LCD "PASAJ. SAL: XXXXX", ES DECIR EL NUMERO DE PASAJEROS QUE SALEN
MOV DPTR,#210CH ¡PUNTERO EN TABLA ROM DEL MENSAJE "PASAJ. SAL: "MOV R7;#OBH ;NUMERO DE CARACTERES DEL MENSAJE "PASAJ. SAL:"LCALL MENSAJE ;RUTINAQUE LEE DE ROM Y ESCRIBE JIPASAJ. S: "MOV R1 ,#49H ¡PUNTERO REM DE PASAJEROS SALMOV R2,#04H ¡NUMERO DE DÍGITOSLCALL LCDNP ¡RUTINA QUE LEE DESDE RAM Y ESCRIBE EN LCDRET
¡ESCRIBE EN LCDJIING: YYYYY", ES DECIR EL NUMERO DE PASAJEROS QUE INGRESAN
ING: MOV DPTR,#2100H ¡PUNTERO EN TABLA ROM DEL MENSAJE "ÍNG: "MOV R7,#OBH ¡NUMERO DE CARACTERES DEL MENSAJE "ING: "LCALL MENSAJE ¡RUTINA QUE LEE DE ROM Y ESCRIBE "ING: " EN LCDMOV Rt#4DH ¡PUNTERO REM DE PASAJEROS SALMOV R2J#04H ¡NUMERO DE DÍGITOSLCALL LCDNP ¡RUTINA QUE LEE DESDE RAM Y ESCRIBE EN LCDRET
¡10. RUTINA "MENSAJE"-LECTURA DE TABLA EN ROM Y ESCRITURA EN LCD
MENSAJE:MOV R6,#OOH ¡PUNTERO DE POSICIÓN DE CURSOR
ESC: MOV A,#OOHMOVC A,@A+DPTR ¡PUNTERO DE TABLA EN ROMMOV CARACTER.A
MOV CURSOR.R6 ¡ESCRITURA EN LCDACALL MOVCURSORACALL PRINTCHAR
INC R6 ¡CONTADOR DEL NUMERO DE CARACTERES DEL MENSAJEINC DPTRDJNZ R7.ESC ¡CONTADOR DE CARACTERES DEL MENSAJERET
;11. RUTINA "LCDNP" - LECTURA DE DATOS DE RAM Y ESCRITURA EN LCD
LCDNP:
LRAM:
MOV A,@R1 ¡CARGA EL VALOR DESDE RAMCJNE A,#30H,VAL ¡SI EL VALOR ES O, ESCRIBIR ESPACIO BLANCO
¡EN LCD, ES DECIR 20H (CÓDIGO ASCII)
MOV A,*1 'H ^OBJETIVO: SI EL DÍGITO MAS SIGNIFICATIVO;ES O, ENTONCES DEJAR ESPACIO EN BLANCO
MOV CARACTER.A
MOV CURSOR.R6 ¡ESCRITURA EN LCDACALL MOVCURSORACALL PRiNTCHAR
DECDJNZ
VAL: MOVLCALLMOVMOVXDECDJNZMOVLCALLMOVMOVXRET
R1R2,LRAM
A,@R1BFRO.tfOBFH@RO,A
R1R2,VALA,@R1BFRO;#QBFH©RO.A
;R2 CONTADOR DEL NUMERO DE DÍGITOS;EL NUMERO TIENE MÁXIMO 4 DÍGITOS
;R1 INICiALMENTE APUNTA AL DÍGITO MAS;MAS SIGNIFICATIVO, RECORRIENDO HASTA;EL DÍGITO MENOS SIGNIFICATIVO.
^DIRECCIÓN DE LCD Y LINEA RS = 1
;12. ATENCIÓN A INT1. RUTINA "MOST": MUESTRA EN EL DISPLAYEL NUMERO DE;PASAJEROS QUE HAN INGRESADO O SALIDO DE LA PARADA ALTERNATIVAMENTE CON;CADA INTERRUPCIÓN EXTERNA 1JNT1,
MOST: MOV A.MDCJNE A,#OOH,MPEMOV MD,#01HLCALL MLCDRET
MPE: MOV MD,#OOHLCALL MLCDRET
;MUESTRA NUMERO DE PASAJEROS QUE ENTRAN
¡MUESTRA NUMERO DE PASAJEROS QUE SALEN
CURSOR^;RUTINAS DESARROLLADAS POR EL ING. BOLÍVAR LEDESMA, PROFESOR DE LA E.P.N.
CUR1BLINK1:MOV A,#0MOV P1.ASETB P1.4ACALL RETARDOCLR P1.4MOV A,#OFHMOV P1,ASETB P1.4ACALL RETARDOCLR P1.4ACALL RETARDORET
CURSOR^
CUR1BLINKO:MOV A,#QMOV P1,ASETB P1.4ACALL RETARDOCLR P1.4MOV A,#OEHMOV P1,ASETB P1.4ACALL RETARDOCLR P1.4ACALL RETARDORET;******^^CUROBLINK1:MOV A,#0MOV P1,ASETB P1.4ACALL RETARDOCLR P1.4MOV A,#ODHMOV P13ASETB P1.4ACALL RETARDOCLR P1.4ACALL RETARDORET.**^*^^*^^**^gUBftyj|^
CUROBLINKO:MOV A,#0MOV P1,ASETB P1.4ACALL RETARDOCLR P1.4MOV A,#OCHMOV P1.ASETB P1.4ACALL RETARDOCLR P1.4ACALL RETARDORET
;**********SUBRUT!NA PARA ESCRIBIR UN CARÁCTER EN LA POSICIÓN
;EL CARÁCTER A ESCRIBIR ESTA ALMACENADO EN LA LOC.RAM(CARACTER)
PRINTCHAR:MOV A.CARACTER; -- ACOMODO PARA BOTAR AL DÍSPLAY LCD PRIMEROS 4SWAP AANL A,#OFHORL A,#01000000BMOV P1.ASETB P1.4
ACALL RETARDOCLR P1.4; ACOMODO PARA BOTAR AL DISPLAY LCD SEGUNDOS 4 BITS-MOV A.CARACTERANL A,#OFKORL A,#01000000BMOV P1,ASETB P1.4ACALL RETARDOCLR P1.4RET
;***** SUBRUTINA DE INICIALIZACION DEL DISPLAY LCD ******j
POWER ON RESET
ÍÍNÍCIALIZA EL DISPLAY DE DOS FILAS PARA QUE SE PUEDADESCRIBIR DE IZQUIERDA A DERECHA, Y LIMPIA LA PANTALLA
******************
RESETDISP:
MOV R3;#OFFHESP:LCALL RETARDOLCALL RETARDOLCALL RETARDOLCALL RETARDODJNZ R3.ESP
MOV A,#3MOV P1,ASETB P1.4LCALL RETARDOCLR P1.4
SETB P1.4LCALL RETARDOCLR P1.4
SETB P1.4LCALL RETARDOCLR P1.4
¡FUNCTION SETMOV A,#2MOV P1.ASETB P1.4LCALL RETARDOCLR P1.4
;FUNCTÍONSETMOV A,#2MOV P1.ASETB P1.4LCALL RETARDOCLR P1.4
MOV A,#8MOV P1.ASETB P1.4LCALL RETARDOCLR P1.4
;DISPLAYON/OFFMOV A,#0MOV P1,ASETB P1.4LCALL RETARDOCLR P1.4
MOV A,#12MOV P1,ASETB P1.4LCALL RETARDOCLR P1.4
;ENTRYMODESETMOV A,#0MOV P1.ASETB P1.4LCALL RETARDOCLR P1.4MOV A,#6MOV P1,ASETB P1.4LCALL RETARDOCLR P1.4
;CLR DISPLAYMOV A,#0MOV P1.ASETB P1.4LCALL RETARDOCLR P1.4MOV A,#1MOV P1.ASETB P1.4LCALL RETARDOCLR P1.4LCALL RETARDOLCALL RETARDOLCALL RETARDO
LCALL RETARDORET;F1N INICIALIZACION DEL DISPLAY
DE BORRADO DEL DISPLAY |_CD*********LÍNEA DE COMANDO = OOH.01 H
: BORRA LA PANTALLA DEL DISPLAY Y POSICIONA EL CURSOR; EN U\D 00, ****** ** **!**»*** ** **> «:**»>•* **•* * **** * * * jt**** *** ****
CLEARLCD:MOV A.tfOMOV P1,ASETB P1.4ACALL RETARDOCLR P1.4MOV A#1MOV P1.ASETB P1.4ACALL RETARDOCLR P1.4ACALL RETARDORET
RETARDOTEP:PUSH R2MOV R2,#OFHRETAP:ACALL RETARDÓTEDJNZ R2, RETARPOP R2RET
RETARDÓTE:PUSH R2PUSH R3MOV R2,#03HESPMEN1:MOV R3,#OFHESP01:LCALL RETARDOLCALL RETARDODJNZ R3,ESP01DJNZ R2.ESPMEN1POP R3POP R2
RET
; RUTINA RETARDORETARDO:PUSH R5
MOV R5,#07FHDJNZ R5,$POP R5RET
; SUBRUTiNA DE POSiCIONAMiENTO DEL CURSOR LCD; LÍNEA DE COMANDO = 1DDD.DDDD; LA RAM (CURSOR) TOMA VALORES DE O A 15; HAY QUETRADUCIR A DIRECCIONES LCD. ******************* fc* ****** **************** *** ******I
MOVCURSOR:PUSH ACCMOV ACURSORANL A,#0001 OOOOB ;DETECTO VALORES >= 16; SESENTAYCUATRO 64D = 40H = 01 00 OOOOB
CINCUENTAYSEIS 56D = 38H = 0011 1000B
CJNE A^OOIOOOOB.NOSUMO
MOV A.CURSORADD A,#30HLJMP SUMADO
NOSUMO:NOPNOPNOPMOV A.CURSORSUMADO:ORL A,#1000000GBMOV AUXCURSOR.A
ANL A)#1111 OOOOBSWAP A
MOV P1.ASETB P1.4LCALL RETARDOCLR P1.4
MOV A.AUXCURSORANL A,#OOOQ1111B
MOV P1,ASETB P1.4LCALL RETARDOCLR P1.4LCALL RETARDOPOP ACCRET
;RUTINAS PARA COMUNICACIONES
;1.Tx
TX:MOV A,SYN ¡TRANSMITE EL CARÁCTER DE SINCRONISMOLCALL CONTX ¡CONTROL DE LA TX PARA ASEGURAR QUE SE
¡TRANSMiSTA TODOS LOS BITS DEL CARÁCTERMOV A.SYN ¡TRANSMITE EL SEGUNDO CARÁCTER DE SINCRONISMOLCALL CONTX
MOV A,IDP ¡TRANSMITE LA DIRECCIÓN DE LA PARADLCALL CONTX
MOV A^l' ¡IDENTIFICA LA TRAMA DE INFORMACIÓNLCALL CONTX
MOV A,STX ¡TRANSMITE EL CARÁCTER DE INICIO DE CARACTERESLCALL CONTX ;DE INFORMACIÓN
MOV RO^DH ¡DIRECCIÓN RAM DE DATOS DE INFORMACIÓNCAR: MOV A,@RO ^TRANSMITE LOS CARACTERES DE INFORMACIÓN
LCALL CONTXINC ROCJNE RO^ShiCAR ¡SE TRANSMITE TODOS LOS CARACTERES
MOV A,ETX ¡TRANSMITE EL CARÁCTER DE FIN DE TEXTOLCALL CONTXRET
¡2. COM: RUTINA QUE ATIENDE INTERRUPCIÓN DEL PUERTO SERIE
COM: JB R1,REC ¡CONTROLA QUE LA INTERRUPCIÓN DE P.SERIERET ESPORRXOTX.
REC: MOV A.SBUF ;LEE EL BUFFER DE RXMOV CAREC.A ¡ALMACENA EL CARÁCTER RECIBIDOLCALL TRAMA ¡COMPROBACIÓN DE LA ESTRUCTURA DE LA TRAMA RXCLR RlRET
;3. TRAMA
TRAMA:MOV A,CAREC ;CARAGA EL CARÁCTER RECIBIDO EN EL ACUMULADORCJNE A.SY^SMMOV SÍNCRO,#OOH ¡RECONOCE EL CARÁCTER DE SINCRONISMORET
SU: MOV R7.SÍNCROCJNE R7,#QW,$\2RET ¡EL PRIMER CARÁCTER RECIBIDO NO ES SYN
SI2: MOV R7.CNC
;CUENTA CARACTERES LUEGO DE RECIBIR SYN-SYNINC R7MOV CNC.R7CJNE R7,#01,SI3MOV A,CAREC DEFECTIVAMENTE ES EL PRIMER CARÁCTER DE LA
¡TRAMA, LUEGO DE LOS CARACTERES SYN-SYNCJNE AJDPjSALGA ¡VERIFICA LA IDENTIFICACIÓN DE LA PARADAMOV R7.CIMC ¡IDENTIFICACIÓN DE LA PARADA RECONOCIDAINC R7MOV CNC.R7 ;PASA A ESPERAR POR EL CARÁCTER DE CONTROLRET
SALGA: MOVRET
SINCRO,#01H ;LA IDP NO ES LA CORRECTA;NO SE LEERÁ MAS CARACTERES
SI 3: CJNE R7J#02JSI4 ;MOV A.CAREC ;EL SEGUNDO CARÁCTER DE LA TRAMAES I/OCJNE A.CTROUORDEN ;VER!FICA EL TIPO DE TRAMA
-LA TRAMA ES DE PETICIÓN DE INFORMACIÓNMOV R7.CNC IDENTIFICACIÓN DE LA PARADA RECONOCIDAINC R7MOV CNC3R7 ;PASA A ESPERAR POR EL CARÁCTER DE ENQ
;ACKoNAKRET
ORDEN: MOV RO.OFEHMOV A,#OOHMOVXRET
©RO.A
;CARGA DIRECCIÓN DE RELÉS
;ACCIONA RELÉS
S14: MOV A.CARECCJNE A.ENQ.ACURE ;MOV CNC,#OOH ;EL CARÁCTER RECIBIDO ES ENQMOV SiNCRO,#Q1H ;REINIC!A VERIFICADOR DE SINCRONISMOLCALL TX ;TRANSMri"E TRAMA DE INFORMACIÓN
RET
ACURE: CJNE A.ACK.NORECLCALL TXEOT ;TRANSMiSTE TRAMA DE FIN DE TEXTOMOV CNC.tfOOH ;REINIC!A CONTADOR DE CARACTERES DE TRAMAMOV SiNCRO,#01H ;REÍN!CIA VERIFICADOR DE SINCRONISMORET
NOREC: LCALL TXMOV CNC,#OOHMOV SINCRO,#01HRET
¡RETRANSMITE TRAMA DE INFORMACIÓN¡REINICIA CONTADOR DE CARACTERES DE TRAMA
¡REINICIA VERIFICADOR DE SINCRONISMO
¡4. CONTX: RUTINA CONTROL DE LA TRANSMISIÓN
CONTX: CLR TIMOV SBUF.A
CB: JB TI,TXCARSJMP CB
¡TRANSMITE LA DIRECCIÓN DE LA PARADA¡SE ASEGURA QUE SE TRANSMITAN TODOS LOS
¡BITS DEL CARÁCTER
TXCAR: RET
;5.TXEOT: TRAMA DE FIN DE TEXTOTXEOT: MOV A.SYN ;TRANSMITE EL CARÁCTER DE SINCRONISMO
LCALL CONTX ;CONTROL DE LA TX PARA ASEGURAR QUE SE;TRANSMISTATODOS LOS BITS DEL CARÁCTER
MOV A.SYN ^TRANSMITE EL SEGUNDO CARÁCTER DE SINCRONISMOLCALL CONTX
MOV A.1DP ;TRANSMITE LA DIRECCIÓN DE LA PARADLCALL CONTX
MOV A,*1!' ¡IDENTIFICA LA TRAMA DE INFORMACIÓNLCALL CONTX
MOV A.EOT ;IDENTIFICA LA TRAMA DE INFORMACIÓNLCALL CONTXRET
. *************************** ****-*•************** ****************
\A PARA COPIAR CONTENIDO DE EPROM AL DISPLAY LCD'f SE COPIA DESDE LOCALIDAD BASELCD(ROMLCD),, *************************** ********** *************************
PROMLCD:
MOV A.ROMLCD ;F!LA DE LA PAGINA A COPIARMOV B,#16MUL ABADD A.DPL ;ARMO EL DPTR EN LA FILA A COPIARMOV DPL.A ;LiSTO EL DPTR.MOV A,BADDC A.DPHMOV DPH.A
MOV CONTLCD,#GFFH
COPYLCD:INC CONTLCD
MOV R3,#OFHRETTEST:LCALL RETARDODJNZ R3.RETTEST
HALF:
MOV A.CONTLCDCJNE A,#10H,OKCOPYLCDFiNROMLCD:RET
OKCOPYLCD:MOV A,CONTLCDMOVC A,@A+DPTR ¡LEO LA ROM A COPIAR EN LCDMOV AUXLCD.A ;ALMACENO EN (AUXLCD);• -ACOMODO PARA BOTAR AL DiSPLAY LCD PRIMEROS 4 BITS-SWAP AANL A,#OFHORL A,#01000000BMOV P1,ASETB P1.4LCALL RETARDOCLR P1.4
ACOMODO PARA BOTAR AL DISPLAY LCD SEGUNDOS 4 BITS-MOV A,AUXLCDANL A,#OFHORL A IOOOOOOBMOV P1,ASETB P1.4LCALL RETARDOCLR P1.4
LJMP COPYLCD
: FIN SUBRUTINA DE COPIADO DE ROM AL DISPLAY-
;TABLAS DE DATOS EN MEMORIA ROM
ORG 2100HDB 'PASAJ. ING:'DB 'PASAJ. SAL:'
END
ANEXO B
Public Echo, abierto As Boolean ' indicador de echo Encendido/Apagado.Public trama, frase, snd As StringGlobal sentido As StringPublic opfecha As Integer
Dim Ret, conta As IntegerDim StartTime As Date
Prívate Sub FormJJn!oad{Cancei As Integer)Dim Counter As Long
If MSComml .PoríOpen Then1 Espera 10 segundos para transmitir los datos.Counter = Tímer +10Do While MSComml .OutBufferCount
Ret=DoEvents()If Tímer > Counter Then
Select Case MsgBox("lmposible enviar los datos", 34)' Cancelar.Cases
Cancel = TrueExit Sub
1 Reintentar.Case 4
Counter = Timer +101 Ignorar.Case 5
Exit DoEnd Select
EndlfLoop
MSComml .PortOpen = OEndlf
1 Si el archivo de registro está abierto, vuelca y lo cierra,'íf hLogFileThen mnuCloseLog_Click:'End
End Sub
Prívate Sub Form_J_oad()Dim CommPort 4s String, Handshaking As String, Setíings As String
abierto = FalseOn Error Resume Nextsnd = 01 Establece el color predeterminado del MenútxtTerm.SelLength = Len(txtTerm)txtTerm.SelText = ""txtTerm.ForeColor = vbBiue
1 Establece el títuloApp.Title = "Menú de Visual Basic"
1 Establece !a luz indicadora de estadoimgNotConnected.ZOrder
1 Centra el formularioFrmMenu.Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 2
1 Carga la configuración del registro
Settings = GetSetting(App.Titíe, "Properties", "Settings","")' frmMenu.MSComm1.Settings]\f Settings <>"" Then
MSComml.Settings = SettingsIf Err Then
MsgBox Error$, 48Exit Sub
EndlfEndlf
CommPort = GetSetting(App.Title, "Properties", "CommPort","")'frmMenú.MSComml .CommPort
If CommPort <> "" Then MSComml,CommPort = CommPort
Handshaking = GetSetting(App.Title, "Properties", "Handshaking","")TrmMenu.MSComml.Handshaking
If Handshaking <> "" ThenMSComml.Handshaking = HandshakingIf Err Then
MsgBox Error$, 48Exit Sub
End IfEndlf
Echo = GetSetting(App.Title, "Properties11, "Echo","")' EchoOn Error GoTo O
End Sub
Prívate Sub Frame2_DragDrop(Source As Control, X As Single, Y As Single)
End Sub
Prívate Sub imgConnected_Click()1 Llama a la rutina mnuOpen_Click para alternar entre conectar y desconectar.Cali mnuOpen_Click
End Sub
Prívate Sub imgNotConnected_Click()1 Llama a la rutina mnuOpen_CI¡ck para alternar entre conectar y desconectar.Cali mnuOpen_Click
End Sub
Public Sub mnuOpen_Click()On Error Resume Next
Dím OpenFlagDim aux As StringDim i As Integeri = 1Dim contador, veces, sw2 As IntegerMSComm1.PortOpen= Not MSComml,PortOpenIf ErrThen MsgBox Error$, 48
OpenFlag - MSComml .PortOpenmnuopen.Checked = OpenFlagIf MSComml .PortOpen Then
abierto = TrueimgConnected.ZOrdersbrStatus.Panels("Settings").Text = "Valores:" & MSComml .SettingsStartTimingDo While (i <= 1 And snd = 0)
aux = CStr(i)MSComml .Output = Chr$(22) + Chr$(22) + aux + "I" + Chr$(5)i = ¡ + 1txtTerm =""Textdesiffado =""
LoopElse
' Habilita el botón de marcar y el elemento de menú asociado'mnuDial.Enabled = True'tbrToo!Bar.Buttons("DialPhoneNumber").Enabled = True
1 deshabilita el botón de colgar y el elemento de menú asociado'mnuHangUp.Enabled = False'tbrTooIBar.Buttons("HangUpPhone").Enabled = Fatse
imgNotConnected.ZOrdersbrStatus,Panels("Settings").Text = "Valores:"StopTiming
Endlf
End Sub
Prívate Static Sub MSComm1_OnComm()Dim res As IntegerDim EVMsg$
Dim ERMsg$
1 Bifurca según la propiedad CommEvent.Select Case MSComml .CommEvent
1 Mensajes de evento.Case comEvReceive
Dim Buffer As VarianíBuffer = MSComml .InputDebug.Print "Recibir -" & StrConv(Buffer, vbUnicode)ShowDatatxtTerm, (StrConv(BufferJ vbUnicode))
CasecomEvSendCase comEvCTS
EVMsg$ = "Detectado cambio en CTS"CasecomEvOSR
EVMsg$ = "Detectado cambio en DSR"Case comEvCD
EVMsg$ = "Detectado cambio en CD"CasecomEvRing
EVMsg$ = "El teléfono está sonando"Case comEvEOF
EVMsg$ = "Detectado el final del archivo"
1 Mensajes de error.Case comBreak
ERMsg$ = "Parada recibida"Case comCDTO
ERMsg$ = "Sobrepasado el tiempo de espera de detección de portadora"Case comCTSTO
ERMsg$ = "Soprepasado el tiempo de espera de CTS"Case comDCB
ERMsg$ = "Error recibiendo DCB"Case comDSRTO
ERMsg$ = "Sobrepasado el tiempo de espera de DSR"Case comFrame
ERMsg$ = "Error de marco"Case comOverrun
ERMsg$ = "Error de sobrecarga"Case comRxOver
ERMsg$ = "Desbordamiento en el büferde recepción"Case comRxParity
ERMsg$ = "Error de paridad"Case comTxFul!
ERMsg$ = "Búfer de transmisión lleno"Case Else
ERMsg$ = "Error o evento desconocido"End Select
lfi_en(EVMsg$)Then' Muestra los mensajes de evento en la barra de estado.sbrStatus.Pane¡s("Status").Text= "Estado:" & EVMsg$
1 Activa el cronómetro para que el mensaje de la barra1 de estado se borre después de dos segundos.TimerZ.Enabied = True
Eiself Len(ERMsg$) Then1 Muestra los mensajes de evento en ia barra de estado.sbrStatusPanels("Status").Text = "Estado:" & ERMsg$
1 Muestra tos mensajes <te error en un cuadro de alerta,BeepRet = MsgBox(ERMsg$, 1, "Haga clic en Cancelar para salir, clic en Aceptar para ignorar,")
1 SÍ el usuaruio hace clic en Cancelar (2),.,If Ret =2 Then
MSComml .PortOpen = False ' Cierra el puerto y sale,End If
1 Activa el cronómetro para que el mensaje de la barra1 de estado se borre después de dos segundos.TÍmer2.Enabled = True
End IfEnd SubPrívate Static Sub ShowData(Term As Control, Data As String)
'On Error GoTo HandíerConst MAXTERMSIZE = 16000Dim TermSize As Long, i, zDim I, dato, tam As íntegerDim trama As Stríng1 Se asegura que e! texto existente no se haga demasiado largo,
TermSize = len(Term.Text)
If TermSize > MAXTERMSIZE ThenTerm.Text^ Mid$(Term.Text, 4097)TermSize = Len(Term.Text)
Endlf
1 Apunta al final de los datos de Term.Term.SeiStart = TermSize
1 Filtra y procesa tos caracteres RETROCESO.Do
¡=lnStr(Data, Chr$(8))IfíThen
lfi=1ThenTerm.SeiStart = TermSize - 1Term.SelLengíh = 1Data=Míd$(DataJ¡+1)
ElseData = Left$(Data, i - 2) & Mid$(DataJ i +1)
EndlfEndlf
Loop While i
1 Elimina los avances de línea.Do
i = lnStr(Data, Chr$(1Q))
IfíThenData = Left$(Data, ¡ - 1) & Mid$(Data, i + 1)
EndlfLoop Whife i
1 Se asegura de que todos los retomos de carro tengan un1 avance de línea.i=1Do
i=lnStr(i, Data, Chr$(13))IfiThen
Data= Left$(Data, i) & Chr$(10) & Míd$(Data, i + 1)i = ¡ + 1
EndlfLoop While i
1 Agrega los datos filtrados a la propiedad SelText.Terra SelText = DataTerraSelStart = Len(Term.Text)Desífrar (Data)Almacena
Exit Sub
Handler:MsgBox Error$Resume Next
End Sub
Prívate Sub opconsultas_Cfick()FrmConsulta.Show
End Sub
Prívate Sub opparadas_Ciick:()Frm Parada. ShowEnd Sub
Prívate Sub opproperties_Click()frmPropertíes.ShowEnd Sub
Prívate Sub opsa!ir_Click()EndEnd Sub
Prívate Sub Texí7_Change()
End Sub
Prívate Sub Timer1_Timer()1 Muestra la hora de conexiónsbrStatus.Paneis("ConnectTime"),Text= Format(Now- StaríTime, "hh:nn:ss") & ""
End Sub
Prívate Sub Timer2__TÍmer()sbrStatus.Panels("Status").Text = "Estado:"T¡mer2.Enabled = FalseEnd Sub1 Llama a esta función para iniciar el cronómetro ConnectTimePrívate Sub StartT¡ming()
StartTime = NowTímerl.Enabted = True
End Sub1 Llama a esta función para detener el cronometrajePrívate Sub StopTíming()
Tímerl.Enabled = FalsesbrStatus.Panels("ConnectTime").Text =""
End Sub
Public Function Desifrar(tramasír As String)Dim I As Irrteger1 = 0Do
1 = 1+1dato = Asc(Mid(tramastr, I, 1))TextdesHtado = Textdesifrado + Str(dato)
Loop Unti! (I = Len(tramastr))End Function
Public Sub Almacena()Dim datos As Stringdatos - txtTermif Len{datos) = 14 Then
Datanumpsj.Recordset.AddNewDatanumpsj.Recordset.Fields("idparada") = Mid(daíos, 3, 1)Datanumpsj.Recordset.Fíelds("fecha") - DateDatanumpsj.Recordset.Fieíds("hora") = TimeDatanumpsj.Recordset.FÍelds("nps") = Val(Mid(datos, 6, 4))Daíanumpsj.Recordset.Fields("rtpi") = VaJ(Mid(datosJ 10, 4))Datanumpsj.Recordset.Update
EndlfEnd Sub
Prívate ÍFlow As ínteger, ¡TempEcho As Boolean
Sub LoadPropertySettingsODim í As Integer, SettingsAs String, Offset As Integer
' Carga las configuraciones de puertoFor i = 1 To 2
cboPort Addttem "Corrí" & Trim$(Str$(i))Nexti
1 Carga las configuraciones de velocidadcboSpeed.Add!tem "1200"cboSpeedAdcHtem "2400"cboSpeed.Addltem "4800"cboSpeed.Addltem "9600"cboSpeed.Addltem "14400"cboSpeed.Addltem "19200"' Carga las configuraciones de bits de datoscboDataBits.Addltem "7"cboDataBits.Addltem "8"
' Carga las configuraciones de paridadcboParity.Addltem "Even"cboParity.Addltem "Odd"cboParity.Addltem "None"cboParity.Additem "Mark"cboParity.Addltem "Space"
1 Carga fas configuraciones de bits de paradacboStopBits.Addltem "1"cboStopBits.Addltem"2"
1 Establece la configuración predeterminada
Settings = FrmMenu.MSComml .Settings
1 En todos los casos, el componente más a la derecha de Settings1 será un solo carácter, excepto cuando haya 1,5 bits de parada.If lnStr(Settings,".") > O Then
Offset =2E!se
Offset = OEndlf
cboSpeed.Texí = Left$(Settings, í_en(Settings) - 6 - Offset)Select Case Míd$(Settíngs, Len(Settings) - 4- Offset, 1)Case "e"
cboParity.Listfndex - OCase "m"
cboParrty.l_ist!ndex = 1Case "n"
cboParity.üstindex= 2Case "o"
cboParity.Listlndex = 3Case "s"
cboParity.üstlndex = 4End Seíect
cboDataBits.Text = MidSÍSettings, Len(Settings) - 2 - Offset, 1)cboStopBitsText = Right$(Settings, 1 + Offset)
cboPort.Listlndex= FrmMenu.MSComml.CommPort- 1
optFÍow(FrmMenu.MSComm1.Handshak¡ng).Value = TrueIf Echo Then
optEcho(1).Value = TrueElse
optEcho(0).Value = TrueEnd If
End Sub
Prívate Sub cmdCancel_Cííck()Unload MeEnd Sub
Prívate Sub cmdOK_Clíck()Dím OldPort As Integer, ReOpen As Boolean
On Error Resume Next
Echo = ¡TempEchoOldPort = FrmMenu.MSComml.CommPortNewPort = cboPortLístlndex + 1
If NewPort <> OldPort Then ' Sí cambia el número de puerto, cierra e! antiguo.If FrmMenu.MSComml .PortOpen Then
FrmMenu.MSComml.PortOpen = FaiseReOpen = True
End If
FrmMenu.MSComml.CommPort = NewPort ' Establece el nuevo número de puerto.
IfErr=OThenIf ReOpen Then
FrrnMenu.MSComml .PortOpen = TrueFrmMenu.mnuopen.Checked = FrmMenu.MSComml .PortOpen'FrmMenu.mnuSendText.Enabled = FrmMenu.MSComml.PortOpen
1 frmMenu.tbrToolBar.Buttons("TransmitTextFile").Enabled =frmMenu.MSComml .PortOpen
EndlfEndlf
IfErrThenMsgBox Error?, 48FrmMenu.MSComml. CommPort= OldPortExit Sub
EndlfEndlf
FrmMenu.MSComml.Settings = Trim$(cboSpeed.Text) & "," & Left$(cboParity.Text, 1) _&"," & Trim$(cboDataBits.Text) &"," & Trím$(cboStopBits.Text)
If Err Then
MsgBox Error$, 48Exit Sub
Endlf
FrmMenu.MSComml.Handshaking = iFlowIf Err Then
MsgBox Error$, 48Exit Sub
Endlf
SaveSettíng App.Title, "Propertíes", "Settings", FrmMenu.MSComml.SettingsSaveSetting App.Title, "Properties", "CommPort", FrmMenu.MSComml.CommPortSaveSetting App.Title, "Propertíes", "Handshaking", FrmMenu.MSComml.HandshakingSaveSetting App.Title, "Properties", "Echo", Echo
Un load Me
End Sub
Prívate Sub Form__Load()
1 Establece el tamaño del formularioMe.Left = (Screen.Width - Me.Wídth) / 2Me.Top = (Screen.Height - Me.Heíght) / 2
' Ajusta el tamaño del marco al control tabstripfraSettings.Move tabSettings.ClíentLeft, tabSettíngs.ClientTop
' Se asegura de que el marco sea e! control situado encimafraSettíngs.ZOrder
1 Carga la configuración actúa! de las propiedadesLoadProperty Settings
End Sub
Prívate Sub optEcho_Clíck{ índex As Integer)If índex = 1 Then
¡TempEcho = TrueElse
¡TempEcho = FalseEndlfEnd Sub
Prívate Sub optFlow_Click(lndex As Integer)iFlow= IndexEnd Sub
Public sentido As StringPublic parada As String
Prívate Sub btnaceptar_C!ick()
End Sub
Prívate Sub btncancelar_Click()DBListl.Enabled = Truebtniniciar.Enabled = FalseDo While {Not Dataxnumpsj.Recordset.EOF)
Dataxnumpsj. Recordset. DeleteLoop
End Sub
Prívate Sub btníniciar_Click()btncancelar.Enabled = TrueDBListl.Enabled = PateeDím numparada As StringFrmMenu.mnuopen.Checked = FrmMenu.MSComml.PortOpenaux = CStr{Textparada)Textld = auxIf Textparada <> "" Then
If FrmMenu.MSComml .PortOpen Then'DoWhi!e{snd = 1)
FrmMenu,MSComm1 .Output = Chr$(22) + Chr$(22) + aux + "I" + Chr$(5)
'LoopElse
MsgBox ("Puerto no habilitado")Endlf
ElseMsgBox ("Parada no seleccionada")
EndlfEnd Sub
Prívate Sub btnsalir_Click()Unload MeEnd Sub
Prívate Sub MuitiPage1_Change()
End Sub
Prívate Sub DBL¡st1JDblCI¡ck()Textparada.Enabled = TrueTextparada = DBListl.BoundTextDataparadas.Recordset.MoveFirstDo While Not (Dataparadas.RecordsetEOF)If Dataparadas.Recordset.Fields("¡dparada") = Va!(Textparada) ThenTextparada = Dataparadas.Recordset,Fields("descripcion")
EndlfDataparadas.Recordset.MoveNext
Loopbtniniciar.Enabied = TrueEnd Sub
Prívate Sub Form_Load()snd = 1
Textfecfia.Text = Date
1 Establece ei tamaño de! formuiarioMe.Left = (Screen.Width - Me.Width) / 2Me.Top = (Screen.Height - Me.Height) / 2
End Sub
Prívate Sub NorteSur_Click{)sentido = "n/s"SurNorte.Enabled = False
End Sub
Prívate Sub SurNorte_Click()sentido = "s/n"NorteSur.enable = FalseEnd Sub
Prívate Sub Textparada_Change{)
'Listparadas.Enabled = False
End Sub
Prívate Sub Timer1_TÍmer()Texthora = TimeEnd Sub
Public reporte As StringPublic numparada As IntegerPublíc fechaíni, fechafin As String
Prívate Sub aceptar_Click()Frame2.Vísible = FalseListconsulta.Enabled = TrueLístconsulta.Visible - TrueLístconsulta,ClearhorasEnd Sub
Prívate Sub btngraficar_Click()FrmGrafíco.ShowEnd Sub
Prívate Sub btnimprimir_Click()Prínter ("d:\progfra\informe.rpt")'dbaxnumpsj.Recordseí.MoveFirstDo Whíle Not (dbaxnumpsj.Recordset.EOF)Delete
LoopEnd Sub
Prívate Sub btnpordía_C!ick()txfechaini.Visibíe = Falsetxfechafin.Visible = Falseopfecha = 1Ustconsulta.CiearLabelS.Caption = "Parada"txfechaini.Vísíble = Truebtnimprimir. Visible = Truebtngraficar. Visible = TrueEnd Sub
Prívate Sub btntransdia_C)ick()txfechaini.Vísíble = Falsetxfechafin.Visible = FalseUstconsulta.CiearListconsulta.Visible = FalseListconsulta.Enabled = FalseLabelS.Caption = "Hora"opfecha = 2txfechaíni.Visibie = True'btnimprimir. Visible = Truebtngraficar. Visible = TrueEnd SubPrívate Sub btnacum_CHck()bcfechainí.Visible = Falsetxfechafin.Visibíe = FalseListconsulta.ClearListconsulta.Visible = FaíseListconsulta.Enabled = Falseopfecha =• 3Labei3,Caption - "Paradas"txfechaini.Visíble = Truetxfechafin.Vís(ble= True'btnímprimir. Visible = Truebtngraficar. Visible = TrueEnd Sub
Prívate Sub DBList1_DblClick()Textparada.Enabled = TrueTextparada = DBListl .BoundTextnumparada = Val(DBList1.BoundText)Dataparadas.Recordset.MoveFirst
Do Whüe Not (Dataparadas.Recordset.EOF)If Dataparadas.Recordset.Fieids("idaparas") = Val(Textparada) ThenTextparada = Dataparadas.Recordset.Fields("descripcion")
EndifLoop
End Sub
Prívate Sub Form_Load()txfechaini = Datetxfechafin = Date' Establece el tamaño del formularioMe.Left = (Screen.Width - Me.Wídth) / 2Me.Top = (Screen.Height - Me.Height) / 2
End Sub
Prívate Sub saiirconsuíta_Click()Unload MeEnd Sub
Prívate Sub íxfechafm_DblC!ick()if (CDate(txfechafin) < CDate(txfechain¡)) Or (Year(CDate(íxfechainí)) < 1995) Or(CDate(txfechafín) > Date) Then
MsgBox ("Fecha no valida")ElseListconsulta.Visible = TrueListconsulta.Enabled = TrueListconsulta.CIearparadasacum
EndlfEnd Sub
Prívate Sub txfechaini_DblClick()If opfecha = 1 Or opfecha = 2 Then
If (CDate{txfechain¡) > Date Or (Year(CDate(íxfecha¡ni)) < 1995)) ThenMsgBox ("Fecha no valida")
ElseIf opfecha = 1 ThenL¡stconsulta.Vísible= TrueListconsulta.Enabled = TrueListconsulta.CIearparadasElseFrame2. Visible = TrueEndíf
EndlfEndlfEnd SubPublic Sub paradasQDim acumi, acums As IntegerDim registro As String
registro = " "'dbaxnumpsj.Recordset.AddNewdbparadas.Recordset.MoveFirstDo Whiie Not (dbparadas.Recordset.EOF)
registro = registro + dbparadas.Recordset.Fiefds("descripcion")FrmMenu.Datanumpsj.Recordset.MoveFirstDo WhÜe Not (FrrnMenu.Datanumpsj.Recordset.EOF)
If (dbparadas.Recordset.FieldsC'idparada") =FrmMenu.Datanumpsj.Recordset.FÍelds("ídparada") AndFrmMenu.Datanumpsj.Recordset.Fields("fecha") = CDate(txfechaini)) Then
acumi = acumi + FrmMenu,Daíanumpsj.Recordset.Relds("npi")acums = acums-*- FrmMenu.Datanumpsj,Recordset.Relds("nps")Endlf
FrmMenu.Datanumpsj.Recordset.MoveNextLoop'dbaxnumpsj.Recordset.F¡elds("ídparada") = dbparadas.Recordset.Fie!ds{"¡dparada")'dbaxnumpsj.Recordset.F¡e!ds( fecha") = txfechainifdbaxnumpsj.Recordset.Fields("hora") = Tímer'dbaxnumpsj.Recordset.Fieldsf'nps") = acums'dbaxnumpsj.Recordset.Fieldsfnpi") = acumi'dbaxnumpsj.Recofdset.Updateregistro = registro + Space(20) + Str(acumi) + Space(10) + Str(acums)
dbparadas. Recordset. MoveNextListconsuíta.Addltem registroregistro = " "acumi = Oacums = O
LoopEnd SubPublic Sub horas()Dím reloj, horareloj, acumi, acums As IntegerDim registro As Stringacumi = Oacums = Oregistro =""reloj = 6Do While reloj <= 24
FrmMenu.Datanumpsj.Recordset.MoveFirstDo While Not (FrmMenu.Datanumpsj.Recordset.EOF)
horareloj = Hour(FrmMenu.Datanumpsj.Recordset.Fieíds("hora"))If (horareloj - reloj And FrmMenu.Datanumpsj.Recordset.ReldsC'fecha") =
CDate(txfechaini)) Thenacumi = acumi + FrmMenu.Datanumpsj.Recordset.FÍelds("npi")acums = acums + FrmMenu.Datanumpsj.Recordset.Fields("npsn)
EndlfFrmMenu.Datanumpsj.Recordset.MoveNext
Loopregistro = Str(reíoj) + Space(50) -*- Str(acumi) + Space(10) + Str(acums)Listconsuíta.Addltem registroregistro = ""acumi = Oacums = Oreloj = reloj + 1
Loop
End Sub
Public Sub paradasacumQDim acumí, acums As IntegerD¡m registro As Síring
dbparadas.Recordset.MoveFírstDo While Not (dbparadas.Recordset.EOF)
registro = registro + dbparadas.Recordset.Fields("descrípcion")FrmMenu.Datanumpsj.Recordset.MoveFírstDo While Not (FrmMenu.Datanumpsj.Recordset.EOF)
If (dbparadas.Recordset.Fíeldsfidparada") =FrmMenu.Datanumpsj,Recordseí.Fíelds("idparada")) And(FrmMenu.Daíanumpsj,Recordset.Fields("fecha") >= CDate(txfechaini) AndFrmMenu.Daíanumpsj.Recordseí.Fieíds("fecha") <= CDate(txfechafin)) Then
acumi = acumi-*- FrmlV!enu.Datanumpsj.Recordset.Fietds("npi")acums = acums + FnmMenu,Datanumpsj.Recordset.Fields("nps")Endlf
FrmMenu.Datanumpsj.Recordseí.MoveNextLoopregistro = registro + Space(20) + Str(acumi) + Space(10) + Str(acums)
dbparadas.Recordset.MoveNextListconsuita.Addltem registroregistro = " "acumi = Oacums = O
LoopEnd Sub
Programa computacional para el controlador del sistema
Manual de Usuario
Introducción
El presente manual describe los procedimientos que se deben seguir para
ejecutar cada una de las bondades del programa computacional desarrollado
para el controlador del Sistema para la transmisión de datos de las paradas de
trolebuses, SMETDPA. Dado que el programa está desarrollado en ambiente
Windows utilizando el paquete Visual Basic 5.0, su utilización se facilita con la
utilización iconos o menús cuyas etiquetas de por sí sugieren e! evento o
algoritmo que se ejecutará si se hace un clíck con el ratón del computador.
Ingreso al programa SMETDPA
Para ejecutar el programa seleccione el icono SMETDPA y sobre él haga un
clíck con el ratón del computador. Se desplegará la siguiente próxima figura en
la pantalla, en la que se observa en su parte superior el Menú Principal, tres
pequeñas ventanillas rectangulares que servirán para indicar: la de la izquierda,
la trama de datos que recibe el controlador (PC) desde los equipos terminales de
datos de las paradas, ETDPA, en código ASCII, en la de la derecha se
presentará la misma trama pero en Hexadecimal, en la ventanilla central se
mostrará el número de identificación de la parada, en decimal. Estas ventanillas
están incluidas, por ser este un prototipo, con fines de poder observar la
estructura de la trama de datos con todos sus componentes. Finalmente, en esta
pantalla se observa e! pequeño círculo de color rojo que es un botón para abrir el
puerto serie del PC haciendo un click sobre él. Cuando el puerto está abierto, el
color del círculo es verde.
Sondeo Cónsul íJalir *f
El Menú Principal
Contiene las siguientes opciones;
Puerto
Contiene a su vez un único submenú llamado Propiedades, al realizar un click
sobre este submenü se desplegará ia siguiente pantalla, en la que se detalla los
parámetros de comunicaciones del puerto serie del PC, dando ia facilidad para
cambiar sus valores. Los parámetros del puerto, velocidad de transmisión, bits
de datos, paridad y bits de parada se encuentran a modo de botones
depleglables los mismos que se activan dando un click en el guión derecho del
botón y mostrarán todos los valores permitidos, es decir el usuario solamente
podrá seleccionar uno de los valores desplegados.
Puerto* Com2* ! (
¡- Velocidad /naflma * *\ fc "r^Vi */" !co ~~~ t"¡ >" "~ i ", x 7"t ^ > " / _!* ' * I • * ' ; \r
í Í2400 ^1 ! J ' ^ Desactivado j1 $ " ' )j C-Activado / ¡
Gancefer
r Pr eiencias-de (a coneiíión'
, ' j 'S) i Brts de dalos
'" | Bits de parada <fiJ 7 I
s [8 jEl'i ! '^ Ninguno", j ,j ^^ * - V% ^
¡None ¿J 1 |L r-VpYV'' ^ ^ , í "" "" "V ^ ^ ^
Sondeo
Tiene dos opciones, sondeo colectivo e individua!. Si se selecciona la primera
opción, automáticamente se abrirá e! puerto serie del PC y se hará e! sondeo de
todos los ETDPA, e! pequeño círculo inicialmente de color rojo, se pintará de
verde en señal de que el puerto serie está abierto y en las dos ventanillas
aparecerán las tramas de datos recibidos en los formatos indicados antes.
Al seleccionar la opción Individual, significa que se deseará sondear
únicamente un ETDPA particular, para facilitar la selección del ETDPA a
sondear se desplegará la pantalla siguiente. La fecha y la hora desplegados
serán ios valores reales.
, ^ , í J14/Ü913!^ v
t t _, ¡ Hora j ¿\
IVillaFlorasn .? "1 1011941 ¡ f'" i V / " l ' í
í i t-í j C t "*~*" i. "(, r1 \n Sur
VffiaFIora n-s —ChímbacaileCárdena! de la TorreLa ColinaM achangaraRecoleta s nRecoletans
2 ti
l^V
^ f 3' J/ J J 1
y, * * t t
diciar
5 f-
J * f
Salir • i
En la ventanilla inferior izquierda aparece la lista de las paradas, la selección de
la parada se lo hará dando un doble click con el ratón del PC ubicándose en el
nombre de la parada a seleccionar. El nombre de la parada seleccionada se
presentará en el rectángulo superior (en el ejemplo de la gráfica, Villa Flora s-n).
En el pequeño rectángulo, a la derecha, aparece el número de identificación de
la parada seleccionada, este número permitirá al controiador accesar ai ETDPA
correspondiente (en el ejemplo, Villa Flora s-n se identifica con el número 2),
En el recuadro derecho se irá mostrando los valores de la cantidad de pasajeros
que han ingresado o salido de la parada sondeada en tiempo real.
Para cancelar esta opción y luego abandonar, se tienen los botones
correspondiente.
Consulta
Se tiene 3 tipos de reportes:
ANEXO C
ASCII (tabla de caracteres de control y alfanumericos).
a) Caracteres de Control
NUMERO DECIMAL
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
ABREVIATURA
NUL
SOH
STX
ETX
EOT
ENQ
ACK
BEL
BS
HT
LF
VT
FF
CR
SO
SI
DLE
DC1
DC2
DC3
DC4
NAK
SYN
ETB
CAN
EM
SUB
ESC
FS
SIGNIFICADO
Carácter nulo, es ignorado
Comienzo de cabecera
Comienzo de texto
Fin de texto
Fin de transmisión
Pregunta o consulta
Acuse de recibo, respuesta afirmativa
Timbre
Retroceso
Tabulador horizontal
Avance de línea
Tabulador vertical
Salto de página
Retorno de carro
Los caracteres siguientes se interpretan como no
pertenecientes a la tabla ASCII
Retorna a la tabla ASCII después de un SO
Escape de transmisión
Selección de un dispositivo remoto; Xon
Selección de un dispositivo remoto
Selección de un dispositivo remoto; Xoff
Selección de un dispositivo remoto
Acuse de recibo, respuesta negativa
sincronización
Fin de transmisión de bloque
Cancelación
Fin de soporte
Sustitución
Escape, asigna al carácter que le sigue un
significado especial
Separador de fichero (archivo)
29
30
31
127
GS
RS
US
DEL
Separador de grupo
Separador de registro
Separador de unidad
Supresión del carácter
b) Caracteres alfanuméricos
Del 32 al 126 incluyen números, mayúsculas, minúsculas y símbolos especiales
c) Caracteres extendidos
Del 129 al 255 incluyen símbolos no estandarizados.
ANEXO D
Protocolo XMODEM
Eí transmisor envía la información en bloques de 120 caracteres, incluidos
caracteres de control. El comienzo de cada bloque lleva un SOH (encabezado)
seguido por el número de orden del bloque en ASCII, y este mismo número
invertido, a continuación la información. Termina con un carácter de control de
bloque (BCC) calculado a partir de los 128 caracteres que lo conforman, esto
es:
SYN SYN SOH CONTROL STX Datos ETX BCC
Formato de un mensaje usando el protocolo XMODEM
El receptor realiza las siguientes comprobaciones:
• Fue SOH es primer carácter
• Coincide el número de bloque
• Han sido exactamente 128 caracteres
• Coincide el BCC calculado con el enviado
Si todas estas comprobaciones son correctas, envía al emisor un ACK, con lo
que éste inicia la transmisión del siguiente bloque.
Si en alguno de los pasos mencionados se detecta alguna diferencia, se envía
un NAK (Negative Acknowledgemnet) con lo que el emisor vuelve a transmitir el
último bloque.
Campo de Control.- Tiene como objeto identificar tanto al emisor como al
receptor, así como determinare! tipo de enlace, prioridades, número de orden y
otros factores. La longitud de este campo no es fija y es definida por el usuario
3LE CON CUBIERTA ANTIINDUCTIVA CONSTRUCCIÓN EN CUADRETES FACTOR REDUCTOR• .•-. . ' -"' '- . •, . ' • l ! ': '. Ivl1 ; • • - ' ' • • " ' : • • ' ':': . ¡' V-. . • ; • - • : .. ,' ' ' ' ti' .»'' '" ''•'' '"'' ' ''
Tipo ErCubíertá OExt. ¡ ¡ Peso !SK; - TipodeCódigo immJT (mm) ! (kg/ltm) • ^^^ > : Bobina
. ' . • - : : - \ - - - \ V ^ / >'• 'V.\:^'.,,.^:j— ' - • : ' : ; • ' . . . . • ; : . 'h- ' •J - - ' . • ' • - • • - v.;v;^!-VTO-^ •^;^^-v'v-^^. .,
=0,90 mm5EXVT0001 A5EXVT0003 A5EXVT0005 A5EXVT0019 A
1,41,81,82,2
20,523,626,637,8
1.2181.4351,6922.998
920460460460
CBBD
CURVAS FACTOR DE REDUCCIÓN
ODIGO DE COLOR:
Según requerimiento del cliente
:ODIGO:
000 = Número de cuadretes
0,8
0.6
0.4
°'2 DISEÑOrk = 0,1
zcza10 100
volt/Km
—"— Medido
^BLE CON CUBIERTA ANTIINDUCTIVA CONSTRUCCIÓN CONDUCTORES FACTOR REDUCTOF
Tipo Er Cubierta 0 Ext.Código (mm) (mm) i
. ' • ' ' • , • !
0=1,40mm15ECVTÓ009 A15ECVT0012 A15ECVT0019 A15ECVT0027 A15ECVT0037 A15ECVT0048 A
1,81,81,81,82,22,2
23,3.24,727,530,134,136,7
¿eso Longitul!'(kf km) Suministro
(m) ,
1.0421.1611.4341.7062.1222.451
1.0001.0001,000
750650500
' • "A!>''''.-':Tipio deBobina
DEEDED
CURVAS FACTOR DE REDUCCIÓN
fk
CÓDIGO DE COLOR:
Según requerimiento del cliente.
CÓDIGO:
0000 = Número de conductores
0,8
0.6
0,4
REVENO A-INGENIEROS, S. A.ESTUDIOS Y PROYECTOS - SUMINISTROS
100volt/Km
_— Medido
OFICINAS:C/. Salcedo, 5 - 28O34 M/Tinos, 358 08 52 - 358 09 60Fax. 729 1 O 29 Telex. 45521
Co
mm
un
ica
tio
n w
irín
gS
ER
IA
L C
OM
MU
N I
CA
MO
N
IN
TE
RF
AC
E
FO
R
IN
DU
ST
RI
AL
A U
I O
M A
I 1
O N
We
reco
mm
end th
al s
hiel
ded-
lwis
ted-
pair
cabl
es th
atco
mpl
y w
ith Ih
e E
lA R
S-4
85 s
tand
ard
be u
sed
wrth
the
AD
AM
net
wor
k to
red
uce
inte
rfer
ence
. Onl
y on
ese
t oí t
wis
ted-
pair
cabl
es i
s re
quire
d to
tran
smit
both
Dat
a an
d R
TS s
igná
is, W
e a
dvic
e th
at ¡h
e fo
llow
ing
stan
dard
col
ors
(as
indi
cate
d on
the
mod
ules
) be
used
for
the
Com
mun
icat
ion
Une
s:
DA
TA
* (Y
) •>
Y
ello
wD
AT
A-
(G)
->
Cre
en
Basic
c
on
fig
ura
tjo
n h
oo
k-u
p
Bef
ore
plac
ing
a m
odul
e in
an
exis
tíng
netw
ork,
the
mod
ule
shou
ld b
e pr
oper
iy c
onfig
ured
! The
two
follo
win
g di
agra
ms
show
typi
cal l
ayo
uts
jor
both
mod
ules
.
AQAM
-452
0 C
onve
rter
Con
necl
ion
Día
gram
ADAM
-451
0 R
epea
ter C
onne
ctlo
n D
iagr
am
E—
xa
—
SíD
C
VIEV
V
-•
—
32.00
=—
PA
NE
L W
OU
NT
ÍNG
Alt.
M
OU
MT1
NC
AD
AP
TE
R
Dim
en
sío
nsa
resh
ow
nín
mm
AD
AM
-451
0R
S-4
22/4
85
Rep
eate
r
Intr
aduc
tion
Mos
t ind
ustri
al c
ompu
ter
syst
ems
com
e as
sta
ndar
dw
ith R
S-2
32 s
eria
l por
ts. T
houg
h w
idel
y ac
cept
sd.
RS
-232
has
[im
ited
trans
mis
sion
spe
ed, r
ange
and
netw
orki
ng c
apab
ilrtie
s. T
he R
S-4
22 a
nd R
S-4
85st
anda
rds
over
eóm
e th
ese
limita
tlons
by
usin
gdi
ffere
ntia
l vor
íage
line
s fo
r dat
a an
d co
ntro
l sig
náis
.T
he A
DA
M-4
520
isol
ated
con
verte
r let
s yo
u ía
kead
vant
age
of R
S-4
22 a
nd R
S-4
85 o
n sy
stem
sor
igin
ally
equ
ippe
d w
ith R
S-2
32. II
tran
spar
ently
conv
erts
RS
-232
sig
náis
into
isol
ated
RS
-422
br
RS
-48
5 si
gnái
s. Y
ou d
on'l n
eed
lo c
hang
e yo
ur P
C's
hard
war
e or
you
r so
ftwar
e. T
he A
DA
M-4
520
lels
you
easi
ly b
uild
an
indu
stria
l gra
de, l
ong
dist
ance
Com
mun
icat
ion
syst
em w
ith s
tand
ard
PC
har
dwar
e.
The
AD
AM
-451
0 re
peat
er s
impl
y am
plifie
s, o
r boo
sts,
exis
ting
RS
-485
sig
náis
to
enab
le th
em to
cov
erlo
nger
dis
tanc
es. I
t ex
tend
s th
e C
omm
unic
atio
ndi
stan
ce b
y 40
00 ft
(12
00 m
) or
ext
ends
Ihe
num
ber
of c
onne
cted
nod
es b
y 32
.
Inte
üig
en
t R
S-4
SS
co
ntr
ol
The
RS
-485
sta
ndar
d su
ppor
ts h
alf-d
uple
xC
omm
unic
atio
n. T
his
mea
ns Ih
at ¡u
st lw
o w
ires
are
need
ed t
o bo
th tr
ansm
it an
d re
ceiv
e da
ta. H
ands
hak-
ing
sign
áis
(suc
h as
RTS
, Req
uesi
To
Sen
d) a
reno
rmal
ly u
sed
to c
ontro
l Ih
e di
rect
ion
of Ih
e da
ta fl
aw.
A s
peci
al I/
O c
írcui
t in
Ihe
AD
AM
-451
0 an
d A
DA
M-'
4520
aut
omat
ical
ly s
ense
s the
dire
ctio
n of
the
data
flow
and
sw
iíche
s th
e tra
nsm
issi
on d
irect
ion.
No
hand
shaf
cing
sig
náis
are
nec
essa
ry—
you
can
build
an
RS
-485
net
wor
k w
ith ¡u
st tw
o w
ires.
Thi
s R
S-4
85co
ntro
l is
com
plel
ely
tran
spar
ent t
o th
e us
er. S
oftw
are
writ
ten
for h
alf-d
uple
x R
S-2
32 w
orks
wilh
out
mod
ifica
tion,
Iso
latio
n {
AD
AM
-45
20 o
nly
)
The
AD
ÁM
-452
0's
Opl
o-ís
olal
ors
prov
ide
500 V
K o
fis
olat
ion
to p
role
ct th
e ho
st c
ompu
íer
from
gro
und
loop
s an
d de
stru
ctiv
o vo
ltage
spi
kes
on Ih
e R
S-4
85da
ta li
nes.
Su
rge p
rote
cti
on
{R
S-4
85 o
nly
)
AD
AM
-451
0 an
d A
DA
M-4
520
offe
r int
emal
sur
ge-
prot
ectio
n on
tnei
r da
ta li
nes.
Inle
mal
hig
h sp
eed
trans
ient
sup
pres
sors
on
each
dat
a fin
e pr
otec
t th
em
odul
es f
rom
dan
gero
us v
olia
ges
levé
is o
r sp
ikes
.
AD
AM
-452
0is
ola
ted
RS
-232
to
RS
-422
/485
Con
verí
er
Tough Industria
l desíg
n
You
can
pow
er th
e A
DA
M-4
510
and
AD
AM
-4S
20 w
ithan
y un
regu
late
d po
wer
sou
rce
betw
een
+10
and
+30
VB
-.
Thei
r in
dust
rial-g
rade
plá
stic
she
lls c
an b
e m
ount
edon
a D
IN-r
ail,
pane
l or
in a
pig
gyba
cked
sta
ck. Y
oum
ake
sign
al c
onne
ctio
ns th
roug
h pl
ug-in
scr
ewte
rmin
al b
lock
s, g
uara
ntee
ing
easy
ins
talla
tion,
mai
nten
ance
and
mod
ifíca
tion
Fe
atu
res
• A
utom
atic
inte
mal
RS
-485
bus
sup
ervi
sión
• N
o ex
tern
a! fl
ow c
ontr
ol s
igná
is r
equi
red
for
RS
-48
5
• M
ínim
um 5
00 V
OC
isol
atio
n pr
otec
tion
(AD
AM
-45
20 o
niy)
• Tr
ansi
ent s
uppr
essi
on o
n R
S-4
35 d
ata
unes
• B
audr
ate
up to
38.
4 K
bps
• N
etw
orki
ng u
p to
400
0 íe
et
• R
eser
ved
spac
e fo
r te
rmin
atio
n re
sist
ors
• P
ower
and
dat
a flo
w in
dica
tor
for
troub
lesh
ootin
g
• P
ower
requ
irem
enl:
+10
lo +
30 V
^
• M
ount
s ea
sily
on
DIN
-rai
! or
pane
l
Sp
ecif
ica
tio
ns
Com
mon
• P
ower
requ
irem
ent:
Unr
egul
ated
+10
lo +
30 V
. w
ith p
rote
ctio
n fr
ompo
wer
rev
ersá
is
• C
ase:
AB
S w
ith c
aptiv
e m
ount
ing
har
dwar
e
• A
cces
sorl
es (
Sup
pHed
):N
YLO
N D
IN-r
ail M
ount
ing
Ada
pter
SE
CC
Pan
el M
ounl
ing
Bra
cket
• P
lug-
in s
crew
ter
min
al w
iring:
Acc
epts
AW
G 1
-S12
to #
22 (0
.5 lo
2.5
mm
) w
ires
AD
AM
-45
1 O
sp
eciflc
atlo
ns
• B
audr
ate
(bps
): 1
200,
240
0, 4
800,
960
0, 1
9.2
K.
38.4
K (s
witc
habl
e)
PC
M-1
310A
520
Usa
r-s M
anua
lA
OA
M a
nd !h
e A
DA
M lo
go a
re lr
n(Je
mar
ks o
í Adv
anle
cK.
Pan
oo. 2
0000
0008
0
isi
Edf
lion
Prin
led
i
• H
S-4
22/R
S-4
8S ín
terf
ace
connect
or:
plu
g-in
scre
w t
erm
inal
. •
.
• P
ow
er co
nsu
mp
tion
: 1
W
AD
AM
-45
20
sp
ec
iffc
atl
on
s
• B
au
dra
te (b
ps)
: 12
00,
24Q
O, 4
SOQ
, 9600.1
9.2
K.
38.4
K.
RT
S c
ontr
ol (
swrt
chab
le)
• Is
ola
tion
vo
ltag
e:
500 V
^
-
• R
S-2
32 ín
terf
ace
connect
or:
Fem
ale
DB
-9 .
• R
S-4
22/R
S-4
S5
inle
ríace
connect
or:
pug
-in-s
crew
ter
min
al
• P
ow
er
con
sum
ptio
n:
1.2'
W
Op
era
tín
g e
nv
lrb
nm
en
t.
• _
0p
era
tin
g t
em
pe
ratu
re:
• ••
32
to1
S8
°F(O
to7
0°C
)
• S
tora
ge t
em
pera
ture
:''
13
lo1
S5
°F(-
25
to8
5aC
).
- .
. "
• H
um
idíty:
5 !
o9
5%
;no
n-c
on
de
nsi
ng
Fu
nctio
n d
iag
ram
s
AD
AM
-451
0 R
epea
ter
Func
tion
Oia
gram
Snst
alla
tion
Inítia
l ín
sp
éctí
on
De
lau
lt se
ttin
gs
[or
bo
tti m
od
ule
s
AÜAM
-452
Q C
onve
rter
Fun
cllo
n D
iagr
am
We
cate
íully
insp
ecte
d (h
e A
DA
M-4
51
0 an
d 45
20M
odul
es b
oth m
echa
riíca
lly a
nd e
learica
lly b
efor
e w
esh
ipped Ih
em. T
hey
should
be
fre
e of
mar
ks a
ndst
ratc
ties
and in
per
íect
ord
er o
n r
ecei
pt.
• A
s y,
oü u
npac
k th
e m
odul
es,
chec
k th
em fo
r si
gns
ofsh
ippi
ng d
amag
e (
dam
aged
"box
. sc
ratc
he
s, tí
ents
,•e
tc.)
. If
it is
dam
aged
or
fails
to m
eet
our
spec
ifica
-tio
ns,
nolif
y ou
r se
n/ic
e d
eparim
ent
or y
ou
r lo
cal s
ales
• re
pre
sen
tare
imm
edia
tely
. A
lso
. ca
li th
e ca
rrie
rim
med
iate
ly a
nd r
eta
in th
e s
hip
pin
g c
artó
n a
ndpa
ckin
g m
ater
ial
for i
nsp
ect
ion
by
[he c
arr
ier.
We
wíll
Ihen
mak
e ar
rang
emen
ts t
o r
epai
r or
rep
lace
the u
nit.
Sw
ítc
h a
nd
ju
rnp
er s
ett
ing
s
Sw
itc
h s
ett
ing
s
DIP
sw
itche
s in
the
AÜ
AM
conve
rter
and
re
pe
ate
rm
odul
es s
et ih
e d
ata f
orm
at {
num
ber
of b
its)
and
. ba
udra
te fo
r tha
AD
AM
netw
ork
. You
can
con
figur
e th
eot
her m
odul
es in
the
net
wor
k vi
a s
oft
wa
re c
omm
ands
.Y
our
prog
ram
and
the
PC
's s
eria
l porl
sho
uld m
atc
h Ih
e" s
ettin
gs o
f the
con
vert
er a
nd r
epea
ter
mod
ules
.
SV
VJ
Sw
itch 1
cont
rols
the
dat
a fo
rmat. p
ata
can
be
9.1
0,1
1or
12 b
ils.T
he
fact
ory
defa
utt i
s 10
bits
: one
sta
rt b
it,eig
ht d
ata b
its, n
o p
arií
y b
it and o
ne
sto
p b
it.
' Whe
n u
sing
the
co
nve
rte
r in
corn
bin
atio
n w
ith o
ther
AD
AM
mod
ules
, do
not c
hang
e [
he d
efau
tt se
tting
as
AD
AM
mod
ules
hav
e a
fixe
d data
form
at o
í ten
dat
abits
. The
opt
ion
of c
hang
ing
to 9
,11
or
12 b
its is
for u
sew
ith o
ther
mod
ules
{ot
her t
han A
DA
M m
odul
es)
that
have
difí
eren
t dat
a fo
rmáis
. Sho
uld
you
cha
nge
the
data
for
mat
. be
aw
are
that
you
\vi
ll ha
ve t
o ch
ange
the
data
íorm
at s
eltin
gs o
n a
ll th
e o
ther m
odul
es i
n th
ene
twor
k.
SW
2
Sw
itch
2 s
ets
the b
audr
ate.
The
optio
ns
rang
e (
rom
1200
bps
lo 3
8.4
Kbp
s. T
he f
act
ory
deía
ult
is 9
600
bps.
Be
aw
are
that
when
you
cha
nge
the
bau
drat
e.yo
u ha
ve [o
cha
nge
the
baud
rate
for
all
the
conn
ecte
dm
odul
es a
ccor
ding
ly.
De
fau
lt s
ett
ing
s
Bot
h M
odul
es a
re n
ot a
ddre
ssable
by
the
hos
tco
mpu
ter,
the
baud
rate
and
da
ta f
orm
at m
ust
be s
etus
ing
SVV
1 an
d S
W2 lo
cate
d in
side
Ihe m
odule
. The
defa
ull
setti
ngs
are:
Fun
ctio
nS
ellln
g
Bau
d ra
te96
00bp
s
Dat
a fo
rmat
10 b
its
AD
AM
-45
10
RS
-42
2/R
S-4
85
R
ep
ea
ter
Mo
du
le
The
fol
low
ing
tabl
es ¡i
lúst
rale
the
sw
itch s
ettin
gs ío
rth
e H
epea
ter M
odul
e.
AD
AM
-45
10
Da
la í
orm
at
sett
ing
s (S
W1)
Dat
a Fo
rmat
1
2
9 bi
ts
•10
bits
11 b
its
12 b
its
O=
0p
en
»=C
lose
d '
= De
faul
t
AD
AM
-45
10
Baud r
ale
se
ttin
gs
(SW
2)
Bau
d R
ate
12
34
5
1200
bps
O
O
O
O
O
2400
bo
s O
O
O
O
O
4BOO
bps
Q
OO
O
O
9600
bps
O
O
O
•
O
O
19.2
Xbp
s O
O
O
O
«
Q
38.4
Kbp
s O
O
O
O
O
•
O =
Ope
n *
= C
lose
d *
= De
faul
l
AD
AM
-45
20
RS
-23
2/R
S-4
85
C
on
ve
rte
rM
od
ule
The
fol
low
ing ta
bles
¡Ilú
stra
te th
e sw
iich
setti
ngs
for
the
Con
vert
er M
odul
e.
AD
AM
-45
20
Da
ta f
orm
at settin
gs
(S
W1)
Dal
a Fo
rmat
19
bits
10 b
its
11 b
its
12 b
its
O =
Ope
n »=
Clo
ssd
* =
Defa
ult
AD
AM
-45
20
Ba
ud
rate
Baud
Ral
e
RTS
con
trol
1200
bps
2400
bps
4800
bps
•96
00
bps
19.2
Xbp
s
38.4
Kbp
s
O =
Ope
n
1 • O O o o o o •
z Ü • o o o o o
i se
ttin
gs
(SW
2)
3 O o • o o o o
4 o o o • o o o=
Clo
sed
' =
5 o o o o • o oD
efau
lt
6 O o o o o • o
7 o o o o o o •
Pow
er s
uppl
v
For
the
eas
e o
f use
in in
dust
rial e
nviro
nmen
ls th
eA
DA
M m
odul
es a
re d
esig
ned
to a
ccep
t in
dust
ryst
anda
rd +
24 V
TC u
nreg
ulat
ed p
ower
. Ope
ratio
n is
guar
ante
ed w
hen u
sing
any
po
we
r sup
ply
be
twe
en
•fio
and +
30 V
^.
Pow
er r
ipple
s m
ust b
e li
mite
d to
5 V
peak
to p
eak
whi
le th
e v
olta
ge
in a
ll ca
ses
mus
t be
mai
nlaí
ned
bet
wee
n -f
10 a
nd +
30 V
.. A
ll po
wer
supp
ly s
peci
ficat
ions
are
re
fere
nce
d a
t mod
ule
conn
ecto
r.
The
pow
er c
able
s sh
ould
be s
elec
ted a
ccor
ding
to th
enu
mbe
r oí
mod
ules
con
nect
ed a
nd th
e le
ngth
of t
hepo
wer
line
s. W
hen u
sing
a n
etw
ork
wiih
iong
cable
s,w
e ad
vise
the
use
of th
icka
r w
ire
to lí
mit
the
lina
volta
ge d
rop.
In a
dditi
on to
ser
ious
vo
ltag
e d
rops,
Iong
voüa
ge li
nes
can
also
cau
se i
nter
íere
nce
vvrth
com
munic
atb
n w
ires.
We
advi
se th
att
he
foüo
win
g st
an
da
rd c
olor
s (a
sin
dica
ted
on th
e m
odul
es)
be u
sed
for
pow
er li
nea:
GN
D(R
) R
ed(B
) B
lack
PC
M-4
S10
/J52
0 U
sei's
Man
ual
PC
M-J
510/
4520
U
ser-s
Man
ual
-.510 nS-4-l¿/-.;c ..:-.,..r =•.-:-. '-¿520 /sofefed SS-23? fs /?~¿?2 '455
Input:RS-485 (2-wire) or RS-422 (4-wire)
Output:RS-485 (2-wire) or RS-422 (4-wire)Speed (bps): 1200, 2400, 4800, 9600,19.2 K and 38.4 K (switchable)
RS-422/485 ¡nteriace connector:Plug-in screw terminal
Power consumption: 1 W
l5d>»ied RS-232 ioRS-422/485 Convertir• Input
RS-232 (4-wire)
• RS-232 Inleríace connector:FemaJe DB-9
• Oulput:RS-485 (2-wire) or RS-422 (4-wire)Speed (bps); 1200. 2400, 4800.-9600.19.2 K, 38.4 K and RTS control(swilchable)
• RS-42Z/4B5 ¡nterlace conneclor;Plug-¡n screw terminal
• Isotalíon voítage: 500 VK
• Power consumption: 1.2 W
ADAM 4000 SeriesCommon Spedficcfions
Communfcalion
• RS-485 (2-wire) to host
• Speeds: 1200, 2400, 4800. 9600, 19200 bps
• Max. communication distance: 4000 íeet (1.2 Km)
• Power and communication LED indicator
• ASCII command/response protocol
• Communication error checking wrth checksum
• Asynchronous data formal: 1 start bit, 8 data bits,1 stop bíl, no parfty
• Up to 256 multidrop modules per serial port
• On-line module inserlion and removal
• Tra^sienl suppression on RS-485 communicationlines
Power Requírements
• Unregulated+1010+30 V^
• Protected against power reversa)
'Mechsnical
• Case; ABS wíth captive mounling hardware
• Plug-ín screw lerminal block:Accepts 0.5 mm5 to 2.5 mm7,1 - / 1 2 o r 2 - / 1 4 t o / 2 2 A W G
Environmení
• Operating Umperalure: 14 to 158°F (-101o70°C)
• EMI: Meets FCC Class A
• Storaga lemperalurc: -13 to 185°F (-25 to 85°C)
• Humidity; 5 to 95%, non-condensing
„ ÍDJJá 4CCO
Reinóte data acquisrtíon
Process monitoring
Industrial process control
Energy management
Supervísory control
Security systems
Laboratory automatíon
Building automaíion
Producí tesíing
Direct digital control
Relay control
unitsdesigned speciíically íor reliableoperation ¡n harsh environrnents.fffieífSí(buíltrinírnicropro'cessorse encased inrugged indusiríal grade plásticpackages, leí íhem independentlyprovide intellígent signal conditioning,analog I/O, digital 1/0, data display andRS-485 communicalion.
ftemolely Programmable Inpuífianges
What makes ADAM modules reailyspecial is their abiliíy lo accommodatemúltiple types and ranges oí anaioginput. ^nis^gdstyp^Qd range^ceJTlfiLeJKby_Ísj;jujnQjgKQiriands írom;Iheshost compuíeírYou can use justone lype oí unlt íor many difieren!tasks, greatly simpüíing design andmaintenance. You can standardize on asingle module type to handle themeasurement needs oí a wnole plañí.
Flexible NetworkingADAM modules need just two wires tocommunícate with their controlling hostcompuíer overa multidrop RS-485network. Their ASCII-based command/response protocol lets them talkwitíivirfually any computer system.
No physical adjustments need be made,since all modules are 100% remotelyconfigured by íhe host compuíer.
Modular industrial DesignYou can easily mount modules on a DIN:raíl, panel or piggyback. You makfsignal connections through plug-inscrew-terminal blocks, ensuring simpleinstallalion, modification and *•"•maintenance. - ^.\ íor the Industrial
Envíronment
ADAM modules accept any unregutated"pbwer source between +10 and +30 V^They1áre"prbtected against accidentai - ,powersupply reversáis and can besafety connected or disconnectedwithout causing disturbance to arunning network:
...over RS-232/fiS-485 Networks
r-485 Multi-Dropztworkíng^M modules use the EIA RS-485Fimunicatíon protocol, índustry'sstwidély used bí-dírectional.mced transmíssíon line standard.•485 was spécifically devéloped forjstrial applications. It lets ADAMJules transmit and receive data ati raíes overlong distances. AIIJules use óptica! ísolators to preventund-loop problems and limít thence of damage due to pov/er surges.
i-wire CommunicationIM modules use jusí a single hvistedto transmit and receive data,
cial circuiíry suppresses nolseed up by the communícation lines,jring clean and reliabíe communica-. ADAM's two-wire RS-485 technol-keeps the number of cables, con-ors and communication condition-|such as repeaters and fílíers) to amum, simplifying insíallation andicing overall netv/ork costs.
72 Protección,M modules oífer interna! surge-ecííon on their data lines. Interna!speed íransfent suppressors on
i data Une protect the modules from¡erous voltages or spikes.
Network ExpansiónEacti ADAM-4510 repeater lets you add'32 ADAM modules to the nerwork orexíend the network by another 4000 feet(1.2 Km). You can connect up to 256ADAM modules to a single RS-485networtc
HS-232/BS-485 Conversión\o RS-485 ínterface is avaüable onthe host computer, you can use theADAM-4520 RS-232/RS-485 converterto change standard RS-232 port signáisínto fully isolated RS-485 signáis. TheADAM converter and repeater modulesautomatically control the RS-485 busdírectíon wíthout external handshakingsignáis from the host. .Host software^written for half-duplex RS-232 maybeused without modification. RS-485 buscontrol is completely transparent to theuser. The ADAM converter also providesprotection for the host compuíer frompotentially destructive voltages whichmay appear on the RS-485 data lines.
Universal ProtocolAll ADAM commands are issued ¡nprintable ASCII-based form. This allowsyou to write ADAM applications in anyhígh-Ievel language that supports ASCIIsíring functions, such as C, Pascal orBASIC. RS-232 and ASCII supportrneans that you can use virtually anycomputer to manage your ADAMnetv/ork.
Heíay OtgitaiOI.IDUI i/O
OO-
/"Jü/f/D/5 //tct/f Tyaes* i / icr/íí RangasThe ADAM-4011 Analog Input Module,íor example, can be remotely configuredíor 14 differení combinations oí input .types and ranges (T/C, mA, V, mV). Thebiggesí benefit is íhaí you can save onspare parís sínce you only have to stockone model
Analog input modules usemicroprocessor-controlled high-resolutíon 16-blí sigma-deííaA/D converíers to acquíre sensorsignáis such as voltage, currení,thermocoupie or RTD. They thentransíate digital data into one oí íhe tol-lowing íormats: engineering uníts, % ofFSR, two's complement or Ohms. AHertne modules receive a request írom íhehost, they send the data in the desiredíormat overthe RS-485 network.
ADAM analog input modules proíectyour equipment from ground loops byproviding 500 V^ ísolation.
All analog input modules, except íor theÁDAM-4013. feature digital ¡nputs andoutputs which may also be used íoralarm and event counting.
[>i:?i?cl Input/QvtputThe analog input module's two digitaloutput channels are open-collectortransistor switches that you can control(rom the host computen By switchíngsolid state relays the ouíput channelscan control heaters, pumps and otherpower equipment. The module can useits one digital inpul channel to sensethe state oí a remote digilal signa!.
Programmable Alarm Ouíput
Analog input modules include high andlow alarm signalling wííh remoíelyconíigurabie limit valúes.
After every A/t) conversión the digitalvalué ¡s compared with íhe high and lowlimit. •
The module can change the state oí adigital output depending on the result oíthis comparison. This lets it períonnOn/Off control oí a device independentoí íhe host PC.
Event Counfer
The on-board event couníer can counluplo'65,535 transilions occurring on;
^e igirarmpifírTHe couritér'cáñ'be" ~Tead and cleareá1 b'y the host computer.The countercan be used in productionUne applications ío keep a record oírepetiíive operations.
Eighf-t'nctnneí&nalog Input ModulesThe ADAM-4017 is a 16-bit, 8-channeianalog inpul module that provides.programmable input ranges oriaífchannels. This module is an exíremelycost-efíectlve solution íor industrialmeasurement and moniíoringapplications. 500 V^ optícal isolationbeíween the analog input and themodule protects the module andperipherals írom damage due to highinput-iine voltages.
Analog (Transmítter)¡nput Modules withLED Display
Fronl Panel LED ¡ndícator
The 41/^ dígit LED display on íhe back ofthe ADAM-4014D lets you monitorprocess readings righta¿theirsource.The module displays readings in a widevariety oí data íormats as well as high-lovv alarm messages. TheADAM-40140ofíers flexibiliíy, ease oí instaíiation anddirect availability oí process data. Forcritical process moniíoring this moduleisthe ideal choice.
Isolated Loop Power íor 2-wireTransmifter
The ADAM-4014DÍncludesan isolatedloop power source. This lets you drive2- or 3-wire transmitters wfthout anexterna! power source. Ttie moduleprovides individual power loops íoreach channel, simplifymgvwiring whilemaintaining isolalion betweenconnected transmitters.
Block Disgram of the ADAM-4Ü11 Analog Input Module
Total Solution for Analog and Digital 1/0
Efe-Bpírt Conversión and Displayí&0¿ '
hfiADAM-40140 can convert linearípüí to engineering uníts and showteníon its built in LEO dísplay (directtsp'íay). .?&>•/Jien the ¡nput ís nonlinear. data is firsttnt to the host computer foraversión to engineering untts.-Tneasi computer sends the data back to¡ÍTÁDAM-4014D to show on theíocíule's LED display (remote display).
\na¡og Output ModulesíieADAM-4021 Analog Outputfodules supply single-channel analogJtput in a range of voltages andirrents. They use optícal ¡solators to'event ground loop^ftects and limite chance of damage from powerirges. You can specify slew rales andartup currents.
nalog Readback
le analog output module's ADCinalog to Digital Converter) Ísdependent of the DAC, so ¡t providesje readback of the analog outputpnal ío the microprocessor. Whüe the)C is not intended to provide híghlycúrate measurement of the outputita, it ¡ndicates that analog output is¡ing produced as intended. It also lets'U easily detect output fault conditionsle to improper wiring or unexpectedJds.
,e ADAM-4050 featuresseven digital3ut channels and eíght digital outputannels. The óútpüFs are open-llecíor transistor switches that youn control from the host computer.u can also use the switches to controllid-state relays, whích in turn canntrol heaters, pumpsorother poweruípment. The host computer can useí module's digital inputs to determine: state of limit or safety switches ornote dígita! signáis.
e ADAM-4052 provides eight digitallut channels: six fully índependent
isolated channels and two isolatedchannels with a common ground. All
• nave 5000 V^ isolation to preventground loop effects and limit the chanceof damage (rom power surges on theínput Unes.
Counter/FrequentyInpvt Modulewith LED Dísplay
Front Panel Display
The ADAM-4Q80D Isolated Counter/Frequency Input Module wilh LEDDisplay has two 32-bit counter channelsand a built-in programmable timer forfrequency measurement.
The module's 5-digit LED display withremote display funcíion can display thedata beíng sent over the RS-485 une tothe host computer. The module can beprogrammed to show eitnerchannel O orchannel 1. The ADAM-4080D lets youconveniently monitor counter, frequencyor RPM data as you are taking it.
Programmable Alarm Ouipul
The ADAM-4080D modules includedigital high and low alarm functions.You can dov/nload high and low alarmvalues"(32-bit) into the module fromyour host computer.
Programmable Dígita! Fílterand Threshold
The ADAM-4080D module includes aunique programmable digital filter toreject noise on the ¡nput sígnal. You canspecify sepárate time constants íoprovide stable outpuí readings.
"J-í .- : , ^ - ;7 f* i . í ,r^nrínÍP<;é . 21 _ ' \¡f . J • ' 1 i i},\Jli~i U l&~>
As with other ADAM modules the ADAM-4060 Relay Module ¡s controlledremotely and stores its confígurationdata in EEPROM. It provides four relaychannels, two of Form A and two ofForm C. This module is excellent forOn/Off control or low-power switchingapplications.
OIN-Rall MountlngStreamline your system with índustry standard
DIN-mils
Panel/Wall MounüngUse [his special bracket to mount modules on
sny fíat surísce
PiggybackingSave space by stacking (he mcdulss, one on
top of (he other
Plug-in Terminal BlockSave time by leaving wiring inísct whileconnecting or dísconnecling modules
Sec
tlon
3 C
onte
nts
" D
S36
95/D
S36
95T
/DS
3696
/DS
3696
T/D
S36
97/D
S36
98 M
uftip
olní
RS
-485
/RS
-422
[ v/,
Tra
nsce
rver
s/R
epea
ters
.........................
, ..... '.....
— .
......
í D
S36
95A
/DS
3695
AT
/DS
3696
A M
uliip
oln
t R
S-4
85/R
S-4
22 T
rans
cefv
ers
........ .
.>; D
S1
6F95
/DS
36F
95 E
IA-4
85/E
IA-4
22A
Diff
eren
tial B
us T
rans
cefv
ers
......
.
^ D
S36
276 F
ails
afe M
ultipoin
t Tra
nsce
íver
.......
. .........
...
........ .
.í D
S36
277
Dom
inan
! Mod
e M
ultíp
oiní
Tra
nsce
íver
.....
..'..'...
.......
.;$
DS
3695
0 O
uad D
iffer
entia
l Bus T
rans
cefv
er .
........ .
..............
. ...... .
íj D
S36
954 O
uad D
iffer
entia
l Bus
Tra
nsce
íver
.......
. .....
. .
.
I-'-'.
Rec
eíve
rs
DS
961
76 R
S-4
85/R
S-4
22 D
iffer
entia
l Bus
Tra
nsce
rver
,;-D
S96
177
R&
485/R
S-4
22 D
iffer
entia
l Bus
Rep
eate
r ..
|4
fei'á
i?;
SSfr- m-'.
Bff
-- -
\f
($ D
S36
BC
956
Low
Pow
er B
íCM
OS
rHex
^Dífí
eren
tíal B
us T
rans
ceív
er.
3? j
DS
7517
6B/D
S75
176B
T M
uítip
oínt
RS
i85/R
S-4
22
Tra
nsce
rver
s 3-
•/D
S96
172/
DS
9617
4 R
S^5
/RS
'22püaá
Diff
eren
tial U
ne D
river
s 3-4
\M
EIA
-4S
5/E
IA-4
22A
Qua
d D
rffer
entia
l,.'
¿ -
Drr
vers
—'•£
DS
9617
3/D
S96
175
RS
-485
/RS
-422
Qua
d D
iffer
entía
J U
ne R
eceí
vers
yDS
96F
173C
/DS
96F
!73M
/DS
96F
175C
/DS
96F
175M
EIA
-495
/EIA
-422
Qua
fJ D
fffer
enia
J
JS36
95/D
S36
95T
/DS
3696
/DS
3696
T/D
S36
97/D
S36
98;^
'¡(
ultip
óiht
RS
485/
RS
422 T
ran
sce
iye
rs/R
ep
ea
tefs
•>-
.• :
j&:
-/ :>
Í-¿
v
"• •'<
•". M
*í7
0W
l?fíÜ
v5. v
:-.
* v^'i'
-í V
-'í-
í >-j.
- -
.W
- '
í-"'':"
\1'---
-.í
• M
tW
3 £$3695,
DS
3696,
*jj;e
o8al
TB
Í-STA
TE'
goed
tó m
eet
the j
uire
rnen
nóed
cor
rimón
_ m
oc'
t dat
a tra
nsm
íssi
on.
t eat
essí
ve-p
ower
diss
ipat
kxi w
tthin
tfíe
'dev
ice tr
igge
r¡ílhe
onal
shu
tdow
n cir
cuH
, wtit
eh fo
rces
the
drív
er o
utpu
ts*§
**»
hig
h im
peda
nce
áta
te.£
h».»
pS3e
96_«
nd D
S
Jan ;|p
p«a M
ijwto
, fJO
^ ain
vInt
aftM
ü;
kn
;puA
Hjp
Síst
óf1^
Thto
Utíy
tffH
htf
wni
TsO
frWitp
Uts
of '
ííívw
'ltfT
JWkí
W'B
jnvi
re Ó
fi-ed-r
; —
»•-
»-•
—
••-
6
^/V
i- '
• •
'*
i- "
o
. '
v i
)íh A
C a
nd D
C s
peci
ficat
íons
are
gua
rant
eed
over
the
CTC
)'.70
*C. t
empe
ratu
ra a
nd 4
.757
,10
5.25
V*u
ppty
' vot
tag*
¿¿«-
i •*
• ••
'—
»'•*
• -.c.r:.
t\t
"17-•
•
jJG
onhe
ctio
n an
d Lo
gic
Dia
gran
ís
l--¡f
ivlT
K)
f-h
fnññ^
"toid
¿^con^
WR
^kg^
!''
P T
ñS
tf-í
rii^
•
• 'H
(?f;?
>n T
.^^Í
s-'O
i_.
•V
l5 n
s dr
tver
pro
paga
bon
deía
ys w
itíi ¿
ns
skew
(ty
pfca
l)'X
fsín
gle
' +5V
supp
fy •
^K
:°V ""
O w
,-^Ji
' •
—TV
lo -
M2V
bus
cor
nmon
mod
o ra
nge
perm
íts iT
V„
*" gr
ound
drff
0ren
ce.b
etw
eea.
de'
OV-
*- •
*< ^
- '"^
f r-,
;j*(
.~ t
r;^»
r>ti
'••C •
'The
rrna
lI .s
rtuuK
iwn
prpí
ectto
rij.
• H
ígh im
pedance
to
bus,.
rtti,
dríver
In TR
I-S
TA
TB
^or
-'5
rw*^
1*P
°w
er'o^ro
ver the"e
f»tír
e' c
om
mon
mode r
ango
"aJ-
.' -
-x' l
ów
s* the
"unuse
d devJ
cesr
ón°
the bils
" to
' lie' p
ow
ere
d
dow
n^-1
-'-.
-. —
.-. .r^^^.^}^^
MJ~
r-—
' SM
iíP
f1!
im
pedance
oí
a-d
wefjO
Utp
ut.and^eceív
ef
in-
-rS
puí ¿le
ss
than
one
RS
485
unH
load,
aiíw
íngíu
p'ÍL
o'3
2llR
*.H
_ -
-'
^ ^_
L*
• '
. . i
.<.
wtfP
ísv*"
'-^
5"
-*^w
yo«*»
»ri
:ofj tt»
buir
- •
. . .;
*..
: -
.1 .
^70
JfriV
typt
eaJ
rece
ívef
hys
tere
sís
}A ;-y
¿ j-
*..rV
• ¡
c - v
v
.¡,)
.-r.
-.*i
.j' -
.-i--
itífíjii
j.Jirtiú
|
f
!
> /
i co
p*=.
MP:
jyja
A'
Ord
«r N
uml
;
DS
3695
TN,
.P
iícic
'Num
b^J
aÚfo
rNO
SE
Efe,
IP
Í: --
-- í..
LJ.ÍÍ
uíl'líE
íl
co Q fe O)
C0
CO CO O o I v> s: o co,
<o o
ture
(SoW
erin
g, 4
sec.
) -¡
f-j
'\r.
r»
% » tc
UC
'dU
'.¿
Hc
Sc
j
itfj
,
T^
nX
^V
ta^
Drfv
er O
utpu
t Voí
tage
s "
"
' +
15V
/-10V
'
C
On
dlt
lOD
S
Rec
efve
r In
put
Voíta
gOT
„..
p^
ivfc
fTj.
«.
'.-.
ñnitn'T
- >
f*^ Í
— láju
t-i')L
:-"
(DS
3695
, DS
3696
) '
, -
• " ,
'
~* +
15W
-10V
•'>
••"
''Suo
pty
Vof
tage
,;V¿c
'•
M-
-4
.7
5 *
a '5
^5- fj
-zírn
er-í^
. -
• •
r'C
-;.
.",;
u"r
' O
'f-^h
K /
*ia u
.^vv
a-
, (it'
v-r
'./
"u p
'••
-IV
í't-a
'íVS
SQ
Hi.'
?f*V
' cí
r", :.«tí
jr.
Rec
eívw
Com
mon
Mod
e V
bhagfld
,(0f,,
,, ,
r, ;;:;I)
nc.
• iT
Bus
Voí
tage
^'
. ^
.,, ,v
í*7..
+
12"
•
; R
ece
WO
utp
ut V
otta
ge
. '^
j. v
-j-í
1 h!'n
lí.5
V
T.'Í .fW
c°S
u^
áa^ í
'tfíí-i o
icírí
nbnvn
& c
ební/
0-J
iW
'ha
raC
té H
stf
CS^
OrC
* ¿ ff
V2
-h
70*C
Í.ll4?
75lí K
< V
rc <
5 JsV
-unle
ittw
wís
eip
Sed
((¿íe
s 2
J'i'i
>•
T«
;t.'"<
r'tM
-jfiri
TjT
- t/^
._ .
iQ'N
.io t)ifi^:T
.^^-.
n"^
-r.
n< t
i» .'o.
-. J
.rJV
' T
...
.-»
. .'(
.]
i-•H
eow
wr
Sbo
rfcO
rcuí
t Out
pót C
uW
it
V0-
+ 1
2V
(No
te5
) f-
r S
.
.ta
biM
o( '
BK
trkar
f OW
BW
^é-^
pv
U*
ooni
tttom
lor a
ctud
dtc
* op
wito
n.pi
r» a
ra p
oaal
i»; a
fl cu
rwtt
out
'of t
¿vte
» pi
ra a
r* n
egat
iva A
l vo
ítaña
Vir»
' rata
ranc
M .k
£d«U
3r'V
DÍ>
Kf u
rriM
*.
.-
- .»
-
. !u
¿ -tn
'T
«t 1
1.1 m
WC
to 57
D m
W «
t Ttra ,'
'
Jtch
fng C
hara
cteríst
lcs
Sym
&oJ
í v
^VIH
.VIL IÍL
Vot
tage
(Unl
oade
d)
: DÍff
ei-e
nSal
Driv
er O
utp
ut3' ^
-'lrnf
v
-'
- lV
'ir'Ib
1£c"
Cha
nge ín
Mag
nitu
de o
í Driv
er1 ;*
V^
Diff
eren
tial O
utpu
t V
oíta
ge lo
r ,
•C
ompf
emen
ta/y
Out
put
Sta
tes. ,
Driv
er C
omm
on M
ode
Out
put V
oíta
ge
Cha
ngo
in M
agnl
tuda
o)
Drfv
erC
omm
on M
ode
Out
put
Voí
tage
for C
ompí
emen
ta^
Out
put
Sta
tes
Inpu
t Hig
h V
ofta
ge-
Inpu
tLow
Voí
tage
?'
I npú
t,Cla
mp\
vplta
gé"
inpu
t Lo
w C
ÍWen
t .
Inpu
t rtg
h C
ürre
nt-
T-
oí V
21 ••
• i:
Vm
0\
1)
DI.
DE.
f..Jf..
.HE.
E. H
E/DE
íi—
--V
'
.50nf(R
S^422)
(Note
5)
W 2
7Í1
; (R
S^S
S)
nia
I'.
DV
3 í>
a=J'
í| IS
jQ P
ltí
E-X
f' 3
' 'L
íio¡;i
'ȣ_
? oí
^¿"
í.1-
1-i
R =
27íl
•1W
OÍJ
ÍK"
t.1,5
-.
no:
H4
:,
¡1.
O&
QC
^ y. ^
- fíi
v;v
3.0
0.8
-200 20
". O
thw
pw
wiw
twf r
amak
i ITw
«vn
* (o
r tfih w
Wnd
*d I
*
, '''
r»p
edfle
d (
Not
es 3
,í)
W/
: T
• ":
;elv
er S
wltc
hln
g C
hára
cterls
tlcs
art
«
J
i \l . ^. „ . .-
. -c
ondffl
ooa -
PZM
S1«id
S2
15pF
, S
2Ope
n
Cf-
15
pF,
StO
pen
w:r
- 1
5pF
,Sl
Op«
n
Mln 15
TVP>
Í25.
12 15
37, -
16 20
/ér
Svi
rftc
hing
Chará
cterls
tics
[ S
ymbo
l•r
lff1^—
¿C
Kxft
tto
o»
) M
in—
--f-
A
t» m
Ur
[EH
DE
D C
HA
RA
CTE
RIS
TTC
S (F
tgur
mm
S,
Sm
ndT
)
eon
«rif
i*.V
IT~
15"2
2..
;
VOH
¡O2R
Inpu
t Cur
rent
TRl-S
TATE
Cur
ren
t_D
S36
97 &
DS
3698
"D
O. D
O
mer
enlW
lnpu
t.Thr
esho
ld
LL.
Rec
erve
r'Ou^
ütH
lghV
otla
ge
Out
puttó
w V
oria
ge
'RC
T'
OFF
-Sta
te (H
ígh
Impe
dano
e)
Q .1
(78?
*O
utpu
t C
urre
Rec
eívw
Inpu
t R
wlitan
o»it'
OM
K
Supp
ly C
UTB
Ot
'ti»
.r>.ri: i to
e
Vrx
;" O
Vor
5.25
V_™
t.
lu>
--\-
.R
E/D
Eo
rDE
- OV
V,N -
12
V+
1.0
30
V,N -
^7
WíííV
tic
-0.8
i5pp
.siO
pen i
*fíí\;
VC
G-
OV
or5
.25
V.E
- OV
~7
V< V
0<
+12V
±100
35 '
x
-TV
S V
CM ¿
-f
12V
. ...
.I.g
P.p
ff. S
í.Q
pen-,
MN
'.^^^on ... I ,^Q
35
jn,,^.|
?50
VCM
-OV
70C
u-
100p
F'- -4
00
,iA
o'*
10
18
0.5
8mA
qo
0.45
±20
12
(Not
e 5)
Drtv
erO
utpu
ts E
nabl
ed-
Drfv
er O
utpu
ts D
lsab
ted
2740
Cfc
Sw
ncN
ng C
hanct
artebc*
«pp
ty t
or 0
83065, O
SM
OS
T, D
S36
¿«,
DS
WQ
ffT,
OS
3W
7 o
níy
. 'V
r fv
'"
""
"' í
-.
.--
íí
ri'U
'tr .
'/.*'-w
.iv
ití'
ÍJC
nr W
cr n
*nt.-
;n
co Q 10 en os co CO Q <£> en <£> co CO Q in en CO O en to co CO O
F.N
AB
LCD FIG
UR
E 1
. Drt
vtr
VQD
and
Voc
un J
Ku
riar
ua)
7UF
/104
06-j
FIG
UR
E 2
. Rec
elve
r P
ropa
gatlo
n D
«íay
T«t
Circ
uit
. 3
i» •
».¡í
•OV
OV 7I
- IM
tel,
S l
(k>
Ho
tt: W
JBre
otia
nnpu
l vol
tage
m«y
be
fa*k
z«d
by g
touo
ding
Rl a
nd p
ubw
ig H
l bet
we«
n +
Z5
V B
d —
2.5
V.
FIG
UR
E 3
. Rec
elve
r In
put-to
-Out
put
Pro
pagatio
n D
elay
Tlm
lng
FIG
UR
E 4
. Rec
elve
r E
nabl
e/D
isab
le P
ropa
gatio
n D
elay
Tlm
lng
"ÍND
Efl
TEST
7UF/1
040B
-0
c U
nto
» o
th«o
»i»«
Bpe
dfod
th«
»vr
itch«
are
dow
d,
FIG
UR
E 5
. Drlv
er P
rop»g*t
lon
Dal
ay a
nd T
rmn*
Won
Tim
e T
««t
Circ
uit»
R Ofl i
- -
\ — *~
«0«i
rru
í«M
N-U
.tr IN
•cw
rnii
/ ,
u
\_
l-1H
H£|.
£IO
n
\*
:^
ílo
»
>-»A
\-
/tíl \n
/
\ i
-4 —
1 1
/
0—
-
/^
í
/_i
*
«V
X^
_
f•
•R/F
/104
09-S
01 -
-"-
7\ ..:
1 •
¡4 •»— * \
i= |
MH
x:£
<1
0n
i - - ~
-^
4
1PLH
:
"
*
1
\- / •
t X• •
-1*
1P
HL
- i
kl/
2V
0
)h—
-'S'K
FW
•
. *"
* m
«uur*
d to
th*
ra*p
*ctfv
« S
Otí
poin
ta. I
FIG
UR
ES
, Drlv
«r In
put-to
-Outp
ut
Pro
paga
tíon D
*iay T
hnln
g (S
Jng*
«-E
nd»d
)'
. '-.
i...
- -
...
.
1 '
K«
[
«
:
oa 55
. m
mit
MM
HU
TLH
oc.»
•WTW
T•O
MU
LU «
M
• IM
Hj;
i, í
IBM
•vJ^dl
t r
JR
E 7
.1FI
GU
RE 7
. D
rlv»r
Eru
Mc/
Diiu
blc
Pro
pagatk
xi C
tala
y Tlm
tng
' "
.
— . -.
. .
. .
t.~ '
—
A
'.
••
- -
'
TU
F/1
0*08
-10
FIG
UR
E 8
. Drtvw
Dtff
< r»
ntU
I Tra
ntit
lon
Tlm
lng
Ans
chlu
lSbe
legu
ng
Pin
Nr.
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Sym
bol
Vss
VDD
VEE
RS R/W E DO G1 02 03 04 05 D6 07
Wer
t - - • H/L
H/L
E.E
>L
H/L
H/L
H/L
H/L
H/L
H/L
H/L
H/L
Funk
tion
OV
•
5 V
Span
nung
sver
sorg
ung
-
H:
Date
nein
gabe
». L:
Befe
hlse
inga
be
H:
Date
n le
sen
L:
Date
n sc
hrei
ben
Enab
le
Sign
al
Date
nbus
*
Be¡ 4
-Bit
Anst
euer
ung
werd
en d
ie 8
-B¡t
(ASC
II) B
efeh
le /
Dat
en g
etei
lt.
D.h.
zue
rst
werd
en d
ie h
oher
werti
gen
4 Bi
t un
d da
nn d
ie n
iede
rwer
íigen
4 B
it üb
er d
en 4
-Bit
Bus
D4-D
7 ei
ngeg
eben
. Di
e 8-
Bit
Anst
euer
ung
erfo
lgt
über
den
ges
amm
ten
Bus
DO-D
7.An
schl
uR
LEO-
Vers
ion:
GOh
m an
Ano
de (
+ 5
V),
Kath
ode
(OV)
0
10 L
•i-v
'2.5
2.5
OO
.OÍ0
.52.
5-U
13•M
-íM
.O
Hr2
.5
í?5
9.G
2
65.0
1:0.
271
.2*0
.375
.0*0
.3
in
lü.O
Max
.oí
1.6
00.
55
3.07
0.00
0.70
A BL
OC
K
irr
nzr
Test
prog
ram
mAn
schl
uBpl
an:
Span
nung
sver
sorg
ung
Span
nung
sver
sorg
ung
oinW
arte
nbis
VC
C -
4,5
V m
in.
RS =
0,
R/W
- 0
Befe
hl 3
8H( 3
mal
ca.
4,1
ms
)
RS -
0,
R/W
-
RS -
0,
R/W
-
RS -
0,
R/W
-
0 Be
fehl
OEH
0 Be
fehl
. 02H
0 Be
fehl
01
H
RS -
1,
R/W
- 0
Date
nfol
gesie
he F
ontta
bclle
o o
0
Voo
0
VEE
Vss
1
1 «G
NU
(— ¿
VR
V°o
T
VR
:]O
K-2
0K
n
i nuw i
UP
PE
R 4
BIT
HE
XA
DE
CIM
AL
\n
Cln
r rJ
ItpU
y
Rei
urn
hon
i«
Enlry
mod
ele
t
Ditp
lay
ON
/O
FF
contr
ol
Cur»
r ao
ddt
tpla
y ih
lft
Fun
ctto
n le
t
Se
tCG
flA
M
Srt
DO
RA
Maddte
ii
flead
buiy
(tag
& «
ddte
ti
CG
or
DD
RA
M
CG
or
DD
RA
M
Cod
t
RS 0 0 0 0 0 0 0 0 0 1 1
RA
V
• 0 0 0 0 0 0 0 0 1 0 1
DB
7
0 0 0 0 0 0 0 1 BF
DB
6
0 0 0 0 0 0 1
DB
5
0 0 0 0 0 1
08
4
0 0 0 0 1 DL
DB
3
0 0 0 1 s/c N
DB
2
0 0 1 D R/L F
OB
I
0 1 I/D C . •
DB
O 1 . S B . .
Aco
AO
D
AC
Wrlt*
Dau
Rw
d D
at»
I/D
- i :
In
crem
tnt
I/D
- 0
; Dec
f «m
aní
S -1
: A
ccom
panle
idlip
lay
ihlft
.S
/C-U
D
iwla
yih
lft
S/C
-0:
Cu
rwrm
ove
R/L
-1:
Shlft
io
th«
rlg
hi.
R/L
-0:
Shl
tt lo
th*
ItM.
DL
- U
B
bln
O
L-0
: 4 b
lti
N
- 1:
2lln
«
N
-0:
1 lln
eF
-1:
6x
10 d
on
F -0
: 5
x7
do
tiB
F-1
: In
tern
ally
operit
lng
BF
• 0:
C«n
acc
ept In
itruct
km
Dw
crlp
tlon
Cl«
n »
tl dlip
liy in
d r
etu
rní th
*cu
rior
<o t
h« h
ome
polit
lón
lAddrm
01.
R«urn
i lh
« c
urw
f to
tht
hom
e poiI-
tlon
(A
dd
reti
0],
Alv
o m
urn
í th
tdÍto
l*y,
bel
ng ih
ífle
d lo
the
orlg
|o«I
polit
lón. D
D R
AM
con
lent
t r«
iu|n
S«i t
ha c
urto
r m
ow«
dlrcd
ion
and
ip*c
l(l*i o
r no
t to
ihlfl th
t dlip
Uy.
Th«
ie o
pe
rttlo
nl »
f • p
effíM
med
dur
ing
dita
wf l
ie a
nd r«d.
Srt
lON
/OF
Fo
falld
iio
lay
|0),
curio
r O
N/O
FF
(C
), a
nd b
llnk
otcu
tior
po
iltfo
nch
ara
ctff (
Bi.
Mov
eí t
he
curiof
and ih
ll» th
a dltp
by
with
out
chan
glns
DD
RA
M
Set
i Int
eftB
Ce
data
len
gth
IDL)
nom
-be
r o( d
ltpla
y lin
o (
Ll and
ch
ari
cto
fom
1F)
.
Set
i th
e C
C R
AM
addre
ii. C
G R
AM
ietti
r>g.
Sei
i Ih
e D
D R
AM
ad
dre
u, O
D R
AM
dita
U ta
nt a
nd
rrc
elve
d iltt
f th
li
ñm
di
Bui
y (la
g (S
F)
Indiu
llog
int
ef-
ful o
D«r
alio
n ii
bal
ng p
erta
rmed
ind
rf*d
i add
re» c
ount
ef c
onte
nti.
Wílt
e» d
an I
nto
DD
RA
M o
r CG
Rra
di d
an
tto
m D
O R
AM
or C
G
DO
RA
M:
Dlip
Uy
dal
a R
AM
CG
RA
S":
C
har#
ctff
oene
f«lo
r R
AM
AC
G:
CG
RA
M a
ddre
nA
DD:
DO
RA
M «
*dr«
iC
orr»
»pon
di t
o eu
rior
•ddre
n.
AC
: A
dd
ren
cou
nliw
uie
d (
orboth
DD
and
CG
RA
M•d
drt
tf.
(wh«
n (o
'.c ¡i
260
KH
O
B2
^i~
l,B
4 m
i
40
iJi~
t.6
mi
«Jl.
40,
40(ii
40(ii
40 til
40,,
40 y
,
40 m
40(1
1
chan
fle! w
hen
Irva
iKncy
chin
gei.
(Exa
mpl
e)W
h*n
lote Ii
27
0 K
Ht: 250
40
^x —
-37,,
Q
2 3
4 5
6 7
AC
D
E
í
F
oes EL©background suppression proxímity sensor
R O D U C T
- Rugged plástic housing
Adjusíable background suppression
Signa! strength índicator
Adjustable sensrng range
H i G H L I G H T
*• Crosstalk Immunity
*• Outputs short circult protected
*• Power supply reverse polarity protected
*• Cable or M12 quick dlsconnect versions
Output índícator
1 m (39.37 in)
background suppressionSenslng Distance (In)
15.8 23.6 31¿ 38.*
200 400 600 800 1000
Ssnslng Distance (rom)Dimensions In mm (
connection diágram
colore fofcable models
rfld 1 browngrey 4 hlflckomnqnlg] whítebilis 3 blufi
PNH ModelsDC 10...30V
g - QütDUt rg^-j
Q - QMtPDi j-^g-jov
wira colora refer to standard cable, not iocluded whh qutck dísconnect models
M12 Connector
S I C K O p t I c - E c t r o n I c 128 P h o t o « l e c l f l c S « n
ber
tange, Adjustable
3¡vergence
LSize
Jght Immunity
Immunity
j Time / Frequency
>ltage
;onsumpt¡on (no load)
ithin Vs tolerance)
'pe
jltage High
sltage Low
urrent Max.
i Mode
on Type
rig Cable
i Rating
lection Class
rotection
/ibration
jtput
Iptíons
Operating Temperature
Temperature
Bracket
1 012921 1 012919
50...1000 mm (2.0...39.37 in)
approx. 3"
approx. 15 mm @ 300 mm (0.6 in @ 11.8 ¡n)
LED Infrared, average service life 100.000 hours © 25°C (77"F)
Modulated light source with digital signal evaluaíion vía SICK custom ASIC
Automatic modulation frequency shift vía SICK custom ASIC
£ 700 us / 700 Hz
10...30 V DC (limit valúes)
525 mA
£ 5 V peak-to-peak
PNP
Vs - (* 2.9 V)
approx. O V
100 mA
Light or dark sw'rtching vía complementary outputs
Cable
PVC, 2 m, 5 X 24 AWG
M124-pin plug
see accessories
Glass fiber reinforced plástic
IP 67 / NEMA 6
II Double Insulated
IEC 801, parts 2,3,4
Outputs short circuit protected, Vs reverse polarity protected
IEC 68
O V : senderoff
•40...60°C (-40...140°F)
-40...75'C(-40...167°F)
2 009 317
approx. 100 g (3.5 oz) approx. 30 g (1.1 oz)
o p i i 129
c c e s s o r i e sR e f l e c t o r s
PL 22-1
9
«—22-
y? Mountlng Hole
«13
-20.7-H
028
5.7
PL 22-3
9
—22-
y- Mountlng Hole
87 -*
•M 8.7H
-• 028
, 5.7
1.5-2
PL 22-2PL 26
Selí-adheslve
-23-
\-
7.5
OP 61OP 60
Reflective Tape
(Diamond Grade)
PL 53ASW 50
K O p t t c - E l e c t r o n l c 391 P h o t o e l a c l r l c S e n s o r *
A c c e s s o r i e sR e f I e c t o r s
PL 50 H PL 72
P 250 PL 30A
ÍTT
6
-18.5
20» »
-50.9-
r
PL 31A PL 51A
Self-adheslve Selí-adhesivo
I C K O p t l c - E l e c t r o n l c 392 P h o i o e l e c t r l c S e n s o r a
e s s o r i e sRef I e cto rs
PL 50A
68 78(2.67) (3.07)
(.31)
PL 180 E01
40
P 975
n
(3.27)
_ _ 4.8(.18)
(.35)
t— w —ir o n
180( )
PL 80A
K O p l l c - E l e c t t o n l c 393 P h o t o e l e c t r l c S o n s o r s
~ " " v ^ -y*"* *%.e ,. y-*~V* 71>¿
JiU
. £<
"•"{"J
n/ í á- t \h „} /— >C"J 1, í
' - f I
Vista exterior del equipo ETDPA
^
w ¿ ,V»5
i rs ,£. ii •) tt L
í-,^—"°~~^x-¡-~"t~~4Tí s* Y J-f (
r-p^f* 1 f** í r
' ^
. ¿i-, r » _™íK. ''a-, j—^~j»_-í!»
Vista interior del equipo ETDPA