Diagrama de Estados. y Programador

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 15

DIAGRAMA DE ESTADOS Y CONTADORES

PROGRAMABLES 7492
CIRCUITOS DIGITALES II

INTEGRANTES:

ANCHIVILCA VALENCIA Cristian Omar

CAMBILLO DAVILA Robinson

CORDOVA BERTO Johan Scott

CONDOR MARTINEZ Jhim Kevin

RODRIGUEZ RODRIGUEZ Roel

SAAVEDRA GALINDO Yomar

YAURY CASAS Jhordy

UNIVERSIDAD NACIONAL FEDERICO VILLAREAL


LIMA-PERU
DIAGRAMA DE ESTADOS

Es una manera de caracterizar un cambio en un sistema, es decir que los


objetos que lo componen modificaron su estado como respuesta a los sucesos
y al tiempo.

Elementos de un diagrama de estado:


 Estado.
 Evento.
 Punto final.
 Transición.
Funciones de los diagramas de estado:
En el diagrama de estados se indican qué eventos hacen que se pase de un
estado a otro y cuáles son las respuestas y acciones que genera. También
ilustra qué eventos pueden cambiar el estado de los objetos de la clase.
Partes de un diagrama de estado:
 Estado: Identifica un periodo de tiempo del objeto (no instantáneo) en el
cual el objeto está esperando alguna operación, tiene cierto estado
característico o puede recibir cierto tipo de estímulos.
 Eventos: Es una ocurrencia que puede causar la transición de un estado
a otro de un objeto.
 Envío de mensajes: Además de mostrar la transición de estados por
medio de eventos, puede representarse el momento en el cual se envían
mensajes a otros objetos.
 Transición simple: Una transición simple es una relación entre dos
estados que indica que un objeto en el primer estado puede entrar al
segundo estado y ejecutar ciertas operaciones, cuando un evento ocurre
y si ciertas condiciones son satisfechas.
 Transición interna: Es una transición que permanece en el mismo
estado, en vez de
 involucrar dos estados distintos. Representa un evento que no causa
cambio de estado. Se denota como una cadena adicional en el
compartimiento de acciones del estado.
 Transacción compleja: Una transacción compleja relaciona tres o más
estados en una transición de múltiples fuentes y/o múltiples destinos.
 Subestados: Un estado puede descomponerse en subestados, con
transiciones entre ellos y conexiones a nivel superior. Las conexiones se
ven al nivel inferior como estados de inicio o fin, los cuales se suponen
conectados a las entradas y salidas del nivel inmediatamente superior.
 Acciones: Podemos especificar la solicitud de un servicio a otro como
consecuencia de la transición. Se puede especificar el ejecutar una
acción como consecuencia de entrar, salir, estar en un estado, o por la
ocurrencia de un evento.

EVENTO:
Es una ocurrencia que puede causar la transición de un estado a otro de un
objeto.
- Condición que toma el de verdadero o falso.
- Recepción de una señal de otro objeto en el modelo.
- Recepción de un mensaje.
- Paso de cierto periodo de tiempo, después de entrar al estado o de
cierta hora y fecha particular.

ACCIÓN:
Representa un estado con acción interna, con lo menos una transición que
indica la culminación de la acción (por medio de un evento implícito).
Permite modular un paso dentro del algoritmo. Se representan por un
rectángulo con bordes redondeados.
ACTIVIDADES:
Mientras un objeto está en un estado dicho objeto realiza un trabajo que
continuara hasta que sea interrumpido. Se puede especificar la solicitud de un
servicio a otro objeto como consecuencia de la transición. Se puede especificar
el ejecutar una acción como consecuencia de entrar, salir, estar en un estado,
o por la ocurrencia de un evento.
Conclusión: dicho objeto realiza una operación hasta que sea interrumpido a
eso llamamos actividad

ESTADOS:
UN ESTADO IDENTIFICA UNA CONDICION O UNA SITUACION DE UN
OBJETO DURANTE LA CUAL SATISFACE ALGUNA CONDICION, EJECUTA
ALGUNA ACTIVIDAD O ESPERA QUE SUCEDA ALGUN EVENTO Un estado
se representa como una caja redondeada con el nombre del estado en su
interior. Una transición se representa como una flecha desde el estado origen
al estado destino. La caja de un estado puede tener 1 o 2 compartimentos. En
el primer compartimento aparece el nombre del estado. El segundo
compartimento es opcional, y en él pueden aparecer acciones de entrada, de
salida y acciones internas.

COMPARTIMIENTO DEL NOMBRE:


Cada estado debeb tener un nombre

COMPARTIMIENTO DE LA LISTA DE VARIABLES:


El segundo compartimiento es el compratimiento de las variables de estado,
donde estas pueden ser listados o asignados, los atributos son aquellos de la
clase visualizados por el diagrama de estados

COMPARTIMIENTO DE LISTA DE ACCIONES:


El tercer compartimiento es el compartimiento de las trancisiones internas
donde se listan las acciones o actividades internas ejecutadas en respuesta a
los eventos recibidos mientras el objeto esta en un estado
Diagrama de
Tipo Descripción
estado

Círculo con el nombre del estado


Estado
etiquetado dentro

q0: Flecha corta sin origen que apunta al


Estado inicial
estado
Estado final : Estado sombreado.

Estado final : Estado con doble círcunferencia.

Estado inicial : Flecha sin origen que apunta al


y final estado sombreado.

Estado inicial ANCHIVILCA VALENCIA Cristian Omar


y final

Transición simple
Transiciones son las condiciones que deben darse para pasar de un estado a
otro. Se formulan como funciones lógicas de las entradas. Una transición se
activa cuando la función lógica asociada tiene un valor cierto.
Una transición simple es un vínculo entre dos estados que señala que un
objeto en el primer estado puede entrar al segundo estado y ejecutar ciertas
operaciones, cuando un evento ocurre y si ciertas condiciones son satisfechas.
Se protagoniza como una línea sólida entre dos estados, que puede estar
acompañada de un texto con el siguiente formato:

 event-signature, "[" guard-condition] ", " action-expression ",


"send-clause".

 Event-signature es la explicación del evento que da lugar a la


transición.

 Guard-condition son las condiciones adicionales al evento,


necesarias para que la transición ocurra.

 Action-expression es un mensaje al objeto o a otro objeto que


se ejecuta como resultado de la transición y el cambio de estado.

 Send-clause son operaciones adicionales que se realizan con el


cambio de estado, por ejemplo, el envío de eventos a otros
paquetes o clases.
Estados avanzados
Las características de los estados y de las transiciones, vistas en los
apartados anteriores, resuelven un gran número de problemas a la hora de
modelar un diagrama de estado. Sin embargo, hay otra característica de las
máquinas de estado de UML, los subestados, que nos ayudan a simplificar el
modelado de aquellos comportamientos complejos.
Un estado simple es aquel que no tiene estructura. Un estado que tiene
subestados, es decir, estados anidados, se denomina estado compuesto. Un
estado compuesto puede contener bien subestados secuenciales (disjuntos) o
bien subestados concurrentes (ortogonales).

Subestados secuenciales
Consideremos el problema de modelar el comportamiento de un Cajero
Automático (CA). Hay tres estados básicos en los que podría estar este
sistema: Parado (esperando la interacción del usuario), Activo (gestionando
una transacción del cliente) y Mantenimiento (teniendo que actualizar el
efectivo almacenado). Mientras está en Activo, el comportamiento de CA sigue
un camino sencillo: validar al cliente, seleccionar una transacción, procesarla e
imprimir un recibo. Después de la impresión, el CA vuelve al estado Parado
(Idle). Podríamos representar estos estados de comportamiento como los
estados Validando, Seleccionando, Procesando e Imprimiendo. Incluso sería
deseable permitir al cliente seleccionar y procesar múltiples transacciones
después de Validando la cuenta bancaria y antes de Imprimiendo un recibo
final.
Subestados concurrentes
Los subestados secuenciales son el tipo más común de máquina de estado
anidada. Sin embargo, en ciertas situaciones de modelado tenemos que
especificar subestados concurrentes. Estos subestados nos permiten
especificar dos o más máquinas de estado que se ejecutan en paralelo.
El estado de Mantenimiento está descompuesto en dos subestados
concurrentes, Verificando y Ordenando, que se encuentran anidados en dicho
estado, pero separados por una línea discontinua. Cada uno de estos
subestados concurrentes a su vez está descompuesto en subestados
secuenciales. Cuando el control pasa del estado Parado al estado
Mantenimiento, el control se bifurca en dos flujos concurrentes y el objeto
implicado estará en el estado Verificando y también en el estado Ordenando.
Mientras se encuentre en el estado Ordenando, el objeto estará bien
Esperando o bien en el estado Orden.
CONCLUSIONES:

La transición simple es como la misma definición lo dice, une a los estados


para que transite normalmente los dígitos; si se está seguro de que trabajara
normalmente, se señala el paso mediante una flecha donde se coloca la
entrada “x” y la salida correspondiente que en el curso seria bien 0 o 1.
También se puede decir que la transición puede suceder de viceversa, ya que,
dependiendo del problema, del estado siguiente se puede retornar a la inicial.

Los estados y las transiciones tienen cosas en común pero los estados cuentan
con los subestados que tienen transiciones entre ellos y así hacen más fácil su
manejo.

Hay dos tipos de estados que son las simples y compuestas, la primera no
posee estructura y el otro si, esta tiene subestados y por la cual es llamado
también “estado anidado”; los estados compuestos se dividen en subestado
secuencial y concurrente:

El subestado secuencial sucede uno detrás del otro, osea que depende del
estado anterior para poder funcionar en el problema que se tiene.

El subestado concurrente a diferencia del secuencial no espera al anterior, sino


que funciona cuando todos lo hacen al mismo tiempo

Un Diagrama de Estados sirve para mostrar la vida de un objeto. El diagrama


indica los eventos que causan que un estado cambia a otro y cuáles son las
respuestas y acciones que genera esta.

El Diagrama de Estado se utiliza normalmente para describir objetos del


dominio del usuario y se documenta por general en la etapa de análisis.

Llamamos estado al momento activo o inactivo del objeto listo para satisfacer
una u otra acción
CONTADORES PROGRAMABLES 7492

Contadores digitales Un contador digital es constituido exactamente en igual


forma que un divisor de frecuencia. En efecto, el circuito divisor-por-diez es en
el fondo un contador, porque cuenta hasta diez pulsos y da una salida; se
repone y queda listo para repetir el procedimiento de nuevo. Si se colocan
varios flip-flops tipo JK en cascada, que inicien en el binario CERO, un BURST
de pulsos en serie, colocados en la entrada, dejará los flip-flops en estados
tales que ellos indiquen en forma binaria la cantidad de pulsos que arribaron al
terminal de entrada.

CONTADORES PROGRAMABLES 7492


INTRODUCCION
En esta ocasión vamos a describir como es y funciona el dispositivo 74LS192 o
su equivalente 74HCTLS192. El 74LS192 es un contador de décadas UP/Dw
en BCD (8421) y es el SN74LS193 es un contador binario de 4 bits Up/Dw.
Utiliza entradas separadas de reloj, contador adelante y contador atrás, en el
modo de conteo, los circuitos funcionan de forma síncrona. Cambio sincrónico
del estado de las salidas con transición BAJO a ALTO en las entradas del reloj.
El funcionamiento síncrono es proporcionado, por tener todos los registros flip-
flops simultáneos, de modo que las salidas, cambian juntas según la lógica de
control. Este modo de funcionamiento, elimina los picos de conteo de salida
que, normalmente se asocian con los contadores asíncronos (ondulación de
reloj). Las entradas y salidas son totalmente compatibles con dispositivos TTL,
NMOS y CMOS, con un ancho de operatividad de 4,5V a 5,5V.
El 74HCTLS192/LS193 así como sus homólogos 74LS192/LS193. Ambos, son
contadores Binario/Decimal reversibles, síncronos de 4 bits, Up/Dw, (formados
por 4 flip-flops principal - secundario, junto a su lógica), todos están concebidos
para minimizar la lógica adicional entre etapas, cuando estos trabajan en
cascada. De la misma familia se puede encontrar dispositivos similares el
74LS190/LS191. 
El CI 74LS192, dispone de unas entradas para cargar las salidas a un
determinado estado, aplicando los datos a estas entradas (Da, Db, Dc y Dd) si
se aplica el nivel bajo L a la patilla 11 de carga ('load'), esta operación de carga
es independiente del nivel de reloj y del estado del contador, a partir de haber
aplicado el nivel bajo, en la salida del contador se tendrán los datos de carga
en las salidas (Qa, Qb, Qc y Qd). Y a partir de este momento según el nivel
aplicado en la entrada de reloj Up/Dw, así hará avanzar o retroceder el
contador, lo hará cambiar el estado previo de las salidas.
En la imagen siguiente de la derecha, se aprecian la posición y nombre de los
pines del CI. Este dispositivo contador tiene dos entradas de reloj; la de conteo
ascendente (subida, patilla 5) y la conteo descendente (bajada, patilla 4). La
cuenta se produce DURANTE la transición del nivel L a nivel H en cualquiera
de estas dos entradas que cambiará el estado de la cuenta, según el nivel
aplicado en estas entradas Eu (5) y Ed (4).

La entrada de PAC (puesta a cero, patilla 14, Clear) permite situar las salidas
del contador, en el estado 0, cuando se le aplica el nivel H. Esta entrada es
igualmente independiente del nivel aplicado en las entradas de carga o de las
de conteo, bien ascendente o descendente.
La salida acreedora (descuento o 'Borrow', patilla 13) producirá un impulso de
longitud similar al de conteo, cuando el contador alcance el estado 0 y pase a
9. En cambio la salida acarreo ('Carry', patilla 12) producirá un impulso de
longitud similar al de conteo, cuando el contador alcance el estado máximo 9 y
salte a 0, en el caso del CI 74LS193, por ser binario, lo hará cuando la salida
pase de 1111 (F) a 0.

DESCRIPCIÓN.
Las entradas de carga de datos (Da-Dd), nos sirven para preestablecer un
número de partida en las salidas, llamado preselección, tanto para el conteo
ascendente como el conteo descendente ('Up/Dw'), a partir del cual se
producirá la cuenta con cada pulso de entrada. Para cargar el número
preseleccionado, la patilla 11 de carga ('Load') se debe llevar al nivel L por un
instante y volver al nivel H permanentemente. Por lo que se entiende que
cada vez que se aplique un nivel L a esta patilla 11, se vuelve a cargar el
número preseleccionado, con este comportamiento, se puede constituir un
divisor de frecuencias, con solo establecer un número en la carga de
preselección, aunque demostrar esto no es nuestro cometido ahora. 
Para evitar en gran medida que se produzcan problemas parasitarios en este
tipo de dispositivos, es recomendable cargar todas las patillas del circuito
integrado a un nivel predeterminado, según lo previsto para su funcionamiento
y la aplicación que el proyecto requiera. Que quiere decir esto, que debemos
conectar una resistencia de 10k entre la patilla que no usemos y el +Vcc si su
nivel ha de ser H (Alto) o si ha de ser L (Bajo) se conectará a masa. En cuanto
a las entradas de preselección, es conveniente utilizar un preselector rotativo
codificado a BCD por cada dígito, como el mostrado más abajo.

FUNCIONAMIENTO.
El punto de mayor importancia de este dispositivo en esta aplicación práctica,
se ha resaltado dentro de un rectángulo, en el que se aprecian 3
puertas NAND correspondientes a un 74LS00, una de ellas conectada a su vez
como inversor, además de 1 pulsador de puesta a cero PAC, 1 conmutador
arriba-abajo 'Up/Down' y una resistencias de 1k5 de 1/4 W.
De modo que cuando se aplica una serie de impulsos en la entrada, en esta
disposición, los pulsos pasaran por la patilla 2 a la salida 3 de esta puerta para
ingresar en la entrada Eu ascendente del circuito integrado 74HCTLS192,
independientemente del estado previo de conteo. Si lo que deseamos es
descontar una serie de impulsos, debemos cambiar la posición del conmutador
C, de modo que la patilla 6 del 74LS11 permanezca a nivel L (0) por lo que los
impulsos ahora pasaran por la patilla 5 hacia la patilla Ed de descuento. Los
impulsos no pueden pasar a la patilla 3, como antes ya que en la patilla 2 hay
un nivel H que impide cualquier salida, según su tabla de la verdad.

Por lo tanto para esta práctica, necesitaremos los siguientes componentes: 


 1 - 74LS11    -  4 puertas NAND de dos entradas.
 1 - 74LS192  - contador decimal Up-Dw.  
 1 - 74LS47 o CD4511 - Decodificador BCD a 7 segmentos.
 1 - Preselector codificador de 10 a BCD o un conjunto de 4 interruptores
DIL.
 1 - FD500 - Display a LED de 7 segmentos 1/2 Pulgada.
 6 - Resistencias de 1k5W de 1/4 de vatio. 
Contador ascendente descendente 0-9 para parqueadero
Proponemos la construcción de un contador ascendente-descendente de 0-9
ampliable al número que queramos con circuitos integrados TTL.
Además tiene la particularidad de que al llegar al conteo máximo (9) avisa
mediante un led rojo y a la vez impide que si incrementándose el contador.
Este modelo miniatura está basado en un contador de 0 a9 .para el conteo de
vehículos que ingresan a un parqueadero y que exigían que se incrementara
en uno cada que entraba un auto y se avisara en uno cada que salió un auto.
Si el parqueadero se llenaba, por ejemplo llegaba a 9 el conteo, se encendiera
una luz roja indicando esa situación e impidiendo el ingreso de más autos hasta
que saliera alguno del parqueadero reducirá el contador y encendiendo la luz
verde para que el contador se habilitara nuevamente.
El esquema electrónico es este:
El circuito funciona de la siguiente manera:
Tenemos dos sensores de pulsos implementados con pulsadores NA y LM555
que retardan el pulso en cerca de 1/2 segundo para que llegue sin rebote a las
entradas del 74192 que es un contador ascendente descendente de 0-9.
Cada que pulsamos un suiche NA, se genera un pulso en la salida
correspondiente y pasa a la entrada del 74192. Este integrado la decodifica y la
envía en binario al 7447 que se encarga de convertirla en un codigo apropiado
para excitar a un display de 7 segmentos de ánodo común.
Del código binario que genera el 74192 tomamos las entradas que
corresponden al número 9 (la 1 y la 8) y se la aplicamos a una compuerta AND
7408.
Esta compuerta enviará un 1 lógico a la salida cuando ambas entradas sean H
(1) y esto encenderá el led rojo. Cualquier otro número en sus entradas
provocarán un 0 en su salida, encendiendo el led verde. Esto indicará un
número menor que 9 y por lo tanto que pueden seguir entrando vehículos al
parqueadero.
Cuando se enciende el led rojo también se polariza el transistor 2N3904
causando que en su colector haya un nivel lógico 0 el cual inhibe el LM555
impidiéndole contar. Esto será así hasta que haya un número menor que 9 en
el contador 74192.
CONCLUSIÓNES

Hemos podido ver el funcionamiento total del Circuito integrado 7492 en su


máxima expresión para así poder analizar con más detenimiento cada una de
sus funciones y también la aplicación de este circuito en un proyecto muy
específico como lo es un parqueo de autos.
Muchos de los dispositivos denominados circuitos contadores que podemos
construir mediante un CI estándar, son de características similares y su
configuración de puesta en marcha difiere en aspectos concretos, por lo que se
recomienda estudiar las características del fabricante. Por otra parte, como ya
se ha comentado es conveniente utilizar como preselectores unos dispositivos
similares a los de la imagen de arriba. Todo lo descrito, puede aplicarse a otros
dispositivos de similares funciones incluso de distintas familias.
Así como el CI 7492 tiene sus variantes en las familias CMOS, TTL, etc.
Hemos podido apreciar sus diferencias en algunos aspectos pero en lo que es
su estructura interna podemos apreciar que son muy parecidas y también que
la diferencia más notoria es con cuanto voltaje puede trabajar cada una de
estas.
Por ultimo en el proyecto del parqueo hemos podido apreciar mejor el
funcionamiento del 7492 y también otros circuitos que se han implementado en
este pequeño proyecto.

También podría gustarte