Foros de Electrónica

Comunidad de discusión sobre Automatización, Electrónica industrial, Microcontroladores y electrónica digital, Robótica, Domótica, Telemática, Tecnologías móviles, y muchos temas más.




Contador programable ascendente y descendente


       



#11  
mr_guns
Registrado: 28 Oct 2005
Mensajes: 23
citar
Tengo tres preguntas sobre el proyecto:

1) ¿para qué sirve el 555 y como lo uso en un contador 74LS190?

2) ¿como integro la alarma para que se active al llegar el conteo a 60 o a cero?

3) ¿como hago para que el conteo solo llegue a 60?

#12  
Marcelo
Colaborador
Ubicación: Venezuela
Registrado: 27 Jul 2005
Mensajes: 361
citar
Cita 1) ¿para qué sirve el 555 y como lo uso en un contador 74LS190?


El 555 es un timer CMOS muy versátil y que tiene infinidades de aplicaciones.

Tutorial:
http://www.uoguelph.ca/~antoon/gadgets/555/555.html

http://www.unicrom.com/tut_555.asp

Unas aplicaciones comunes con estos integrados son los osciladores o multivibradores astables y monoastables.

Con la configuración astables obtienes una onda de salida cuadrada o rectángular en la que puedes ajustar el ancho del pulso (el tiempo) en alta (o baja) y la frecuencia de los pulsos como desees, modificando los valores de los componentes periféricos del circuito.

Con la configuración monoastable proporcionas un único pulso en donde puedes ajustar según tu diseño, la duración en alta (o baja) de ese pulso. En los monoastables se utiliza normalmente un trigger que es una señal externa que dispara el monoastable.

Ahora los contadores. Bien sea el 74LS190 o cualquier otro similar, requiere para funcionar una señal de reloj o pulsos (de 5 voltios en norma TTL) para que funcionen.
Cada vez que el contador recibe un pulso en su pin de CLK (el 14 en el caso del 74190), el contador avanza o retrocede un valor en su cuenta. Recuerda que esos integrados tiene pines adicionales que se deben manejar como el "Enable" que activa el contador, el "UP" y el "DOWN" dependiendo el sentido de conteo o giro que desees en el contador y el "Reset" que como su ppalabra lo indica, sirve para "resetear" el contador.
Cuando energizas tu circuito, deberías mandar un pulso al reset del contador para inicializarlo.
Entonces, los 555 los puedes usar para generar el reloj periódico necesario en los contadores (astable) o para enviarles un solo pulso (monastable) a fin de que avancen o retrocedan de uno en uno, cada vez que envías la orden al trigger del circuito monastable por medio de un pulsador.

Cita 2) ¿como integro la alarma para que se active al llegar el conteo a 60 o a cero?


El diseño de eso puede ser de varias formas. Lo más sencillo es hacer un pequeño circuito que se active cuando el conteo llegue a 60.
Por ejemplo, si usamos un monoastable y un circuito que, con las salidas del contador en 60 genere el disparo del multivibrador, éste último hará sonar un buzzer de alarma por el tiempo en el que hayas diseñado el monoastable.

Cuando los pines de salida del contador (desde el bit 0 al bit 4 del primer nibble - dígito menos significativo) y del 0 al 4 del segundo nibble (dígito de las decenas, más significativos) tengan valores de 0 y 6 respectivamente, se deberá generar el pulso.

El byte de dos nibbles debería ser para 60, así:

dec.-----unid.
0110----0000
xabc----xxxx
6--------0

Como ves, lo que interesa solamente es cuando el nibble de las decenas es igual a 6. En este caso, como estás contando hasta 60, no interesa el de las unidades porque es 0. Lo deberás tomar en cuenta si quieres contar hasta 61, 68 o cualquier valor en el que las unidades sean distintas de cero.

Entonces, para este caso, no nos fijamos en el contador de unidades y tomamos del contador de los decimales solo los bits menos significativos nos interesan para tu caso: 110 (El último, nunca llegará a ser 1 porque pararemos el contador).

Ahora suponte que los pines de esos bits que salen del contador de las unidades decimales se llaman a, b y c como te muestro más arriba, entonces tomando sus señales e implementando con compuertas AND y NOT un circuito lógico, tenemos que:

a (and) b (and - not) c = 1

La salida de este circuito lógico iría al trigger del monoastable que te haría sonar la alarma y las señales a, b y c las extraes del contador de los decimales.

Cita 3) ¿como hago para que el conteo solo llegue a 60?


Esta es otra pregunta que tiene varias soluciones.

La señal del circuito lógico que te comenté antes, es la misma que puedes usar para detenr el contador.

¿Como lo haces?, depende del circuito que hayas montado.

Por eso en un post pasado te comente que quizás sería más sencillo diseñar todo el circuito corriendo hasta 99 o 00 y luego ver como hacías para pararlo en 60.

Como obtener la señal de paro, ya lo tienes explicado en el punto anterior.

Ahora, como detener el conteo es otra cosa.

Una forma podría ser utilizar el pin de ENABLE del contador. Si esa señal debe mantenerse a 1, para que funciones el contador, entonces lo que hay que hacer es llevar la señal lógica que te expliqué antes, pero en fomra inversa es decir, negada.

Esa señal que siempre vale 0 excepto cuando el dígito decimal vale 60, en donde cambia a 1; al negarla, será siempre 1 excepto cuando el contador llegue a 60, que pasará a ser 0.

Entonces si colocamos la señal que estás usando como ENABLE, en una compuerta AND conjuntamente que la señal de 60 negada, el pin ENABLE estará activo hasta que el contador llegue a 60, donde esa compuerta AND tendrá un 0 a su salida que detendrá el contador.

Recuerda que como tu contador es ascendente y descendente, deberás aplicar algo similar cuando quieras contar hasta 00 desde un valor inicial preestablecido. Es decir, deberás poder seleccionar cual señal lógico de control (la de 60 o la de 0) es la que te para el contador.

Espero que me haya podido hacer entender.

Saludos,
Marcelo.


Ultima edición por Marcelo el Mie Nov 16, 2005 9:27 am, editado 3 veces

#13  
mr_guns
Registrado: 28 Oct 2005
Mensajes: 23
citar
Creo que voy entendiendo lo que pregunté anteriormente...ahora tengo otras dudas.

Ya tengo diagramado el esquema del proyecto practicamente completo, a partir de integrados (no de compuertas), lo único es que lo hice manualmente y no tengo escaner.

Una de las interrogantes que tengo es que no se donde ubicar las entradas del integrado 74LS190, osea (PO,P1,P2,P3), y supongo que PL debe ir al 555.

También, quisiera saber si la opción de llevar los display manualmente al número que desee para empezar a contar hacia arriba o hacia abajo la trae el 555, que creo que entendí que sí la traía.

Algo de lo que hice en el pre-diagrama fue ubicar los botones de "pausa" y "up/down"....el de "pausa" lo ubiqué conectándolo directamente al CE(4) de cada integrado 74LS190; el de "up/down" lo ubiqué directamente al U/D(5) de cada integrado 74LS190. Quisiera saber si está correcta esa parte.

Otra cosa que quiero saber es si al estar los contadores en cascada, cuando el primer contador llega a una década (en este caso que son solo dos), le da el pulso automáticamente al otro contador para que aumente o disminuya un dígito.

Aquí te envío un adjunto de cómo tengo el pre-diagrama...aunque no detallado, pero así de esa forma está hecho; trataré de escanearlo lo antes posible para postearlo por aquí.

Gracias,
E.C.



Este mensaje contiene archivos adjuntos, para verlos debes estar registrado.

#14  
Marcelo
Colaborador
Ubicación: Venezuela
Registrado: 27 Jul 2005
Mensajes: 361
citar
Cita Una de las interrogantes que tengo es que no se donde ubicar las entradas del integrado 74LS190, osea (PO,P1,P2,P3), y supongo que PL debe ir al 555.


Las entradas P0, P1, P2 y P3 sirven para preseleccionar el valor del contador al arrancarlo. Cuando se enciende el circuito, Y SI EL PIN PL ESTÁ EN ESTADO BAJO (0 V), lo que tengas en P0-P3 se pasa a las salida Q0-Q3. En tu caso te interesa que arranque en 0, para hacer esto podrías poner a 0 los pines PL - P0 - P1 - P2 - P3 para estar seguro que siempre será así y pasar luego a High (5 V) el pin PL para iniciar la cuenta.

De otra forma, el contador podría arrancar en cualquier valor.

Si te lo permiten tu profesor, podrías colocarle también un botón de "reset" que llevaría estos pines a "0" o Low para que se cargue el contador con 0 (en ambos 190) cuando lo presionas, sino vas a tener que implementarlo de alguna forma con el arranque y colocar PL en High cuando desees comenzar el conteo por primera vez.

La salida del 555 que tienes en configuración astable (pulsos a una frecuencia de 1 Hz, que es lo que te piden = 1 ciclo por segundo = 1 Pulso (Alto-Bajo) por segundo) y que es el encargado de correrte el conteo, debe ir en CP (señal de reloj) y depende de como implementes la cascada de los dos contadores (más abajo te digo).

Cita También, quisiera saber si la opción de llevar los display manualmente al número que desee para empezar a contar hacia arriba o hacia abajo la trae el 555, que creo que entendí que sí la traía.


Según tu documento, la selección de contar hacia arriba y hacia abajo la puedes realizar mediante un interruptor. Si es así, todo lo que debes hacer es colocar HIGH (5 V) en los pines (U/D) de ambos 190 para contar hacia abajo o un LOW (0 V) para contar hacia arriba usando el switche. El 555 sigue mandando la misma señal de reloj y esa es su función.
Ahora, para llevar los display manualmente a su valor de inicio deberás diseñar algo más selectivo.
Allí no podrás utilizar el 555 astable solamente, pues no tienes control sobre él ya que funciona en modo "Free Running" lo que quiere decir que éste genera su señal de reloj mientras esté energizado.

Ahora lee con calma y trata de entender la lógica. Si antes de colocar el pin 3 del 555 diréctamente al pin CP del o de los contadores (depende de como hayas hecho la cascada - más abajo te explico); intercalas una compuerta OR de manera tal que por uno de sus pines de entrada se inserte este reloj del 555 y por la otra puedas meter una señal a "1" o 5 V en forma manual, tendrías la posibilidad de escoger entre usar el 555 o la entrada manual.

Pero hay que buscar una manera de parar el 555 pues si no siempre mandará su señal de reloj y será la que prevalezca en la compuerta OR.

Por consiguiente, la señal de salida del reloj del 555 (pin 3)deberá estar controlada también de alguna forma por el botón Star/Pause que tienes en el circuito.

Siguiendo con esta lógica, puedes usar la señal que envías a CE.

Si colocas CE en un AND junto con la salida del reloj del 555, la señal de éste último solo estará activa cuando CE sea 1. Cuando CE sea 0, los contadores obedecerán solo a los pulsos manuales.

Fíjate en el dibujo anexo para que veas a que me refiero.

Ojo, que esta implementación dependerá de como tengas conectada la cascada de los dos contadores (más abajo te lo explico y cuando veas la datasheet sabrás a que me refiero). Sin embargo, es muy fácil adaptarlo a cada caso.

Cita Algo de lo que hice en el pre-diagrama fue ubicar los botones de "pausa" y "up/down"....el de "pausa" lo ubiqué conectándolo directamente al CE(4) de cada integrado 74LS190; el de "up/down" lo ubiqué directamente al U/D(5) de cada integrado 74LS190. Quisiera saber si está correcta esa parte.


Correcto. Solo que el Up/Down creo que lo puedes hacer aparte, con el interruptor lo que facilitaría las cosas. Revisa el enunciado del problema. El CE te permite o no la cuenta. CE en HIGH, permite contar y en LOW para la cuenta si y solo si PL está en estado HIGH.

Cita Otra cosa que quiero saber es si al estar los contadores en cascada, cuando el primer contador llega a una década (en este caso que son solo dos), le da el pulso automáticamente al otro contador para que aumente o disminuya un dígito.


Hay dos forma se de hacer esto. Puedes hacerlo en forma sincrónica o asincrónica. La forma en que lo dibujastes es asincrónica y la salida de "clock ripple" se usa para disparar el segundo contador. La otra forma es usar el "Carry" y el "Borrow" del contador para disparar el segundo dígito. En este último caso, la misma señal de reloj que envía el 555 entra en los dos contadores a su para CP.

En resumen para esto último:

1) Asincrónico: La pin RC del contador de unidades entra al pin CP del contador de decenas. El reloj del 555 entra al pin CP del contador de unidades y el pin CP del contador de decenas va a tierra o 0 V.

2) Sincrónico: La señal del 555 entra en sendos pines CP de cada contador. La RC del contador de unidades entra al pin CE del contador de decenas.

La opción 2, necesita una buena señal de reloj para que se sincronice en forma correcta el cambio.

Te recomiendo que te leas la datasheet del 74ls190 donde te explican muy bien el funcionamiento de esto. Parece algo engorroso pero si lo lees con calma verás que no es tan complicado.

El 74LS190 es un contador descontinuado, por lo que hay por allí unas datasheet algo pobres. Puedes bajarte esta como referencia:

http://www.ece.msstate.edu/classes/ece4263/lab/LABS/project/74ls190.pdf#search='74LS190 datasheet'

Saludos,
Marcelo.



Este mensaje contiene archivos adjuntos, para verlos debes estar registrado.

#15  
mr_guns
Registrado: 28 Oct 2005
Mensajes: 23
citar
Esto está bastante claro. Solo me falta esquematizar todo y armar el circuito, pero creo que ya tengo bien definida la idea de como lo voy a hacer.

Gracias,
E.C.

#16  
mr_guns
Registrado: 28 Oct 2005
Mensajes: 23
citar
Hay una parte que se me ha pasado comentar, y es la parte que dice "3-Para programar el punto de inicio de conteo se utilizarán dos pulsadores que indiquen cual digito ha de modificarse".

Mi idea es colocar dos interruptores, uno que blokee el U/D de uno, para solo colocar manualmente uno de los díjitos donde quiera; y el otro de los interruptores para que haga lo mismo con el U/D del otro contador.

#17  
Marcelo
Colaborador
Ubicación: Venezuela
Registrado: 27 Jul 2005
Mensajes: 361
citar
Según entiendo del enunciado de tu problema:

1) Mediante un interruptor seleccionas UP o DOWN
2) Luego con PULSADORES debes variar los dígitos.

Creo que no puedes usar interruptores para seleccionar cual dígito vas a cambiar.
De todas formas, si deseas hacerlo como dices, debes actuar con esa misma idea pero sobre CE y no sobre UP/DOWN. Recuerda que CE te permite que el contador avance o no. UP/DOWN solo determina el sentido de conteo según su valor. Por lo tanto, si quieres cambiar las unidades, debes llevar CE de las decenas a "0" con el interruptor y viceversa.

Te voy a dar una idea para que la analices.

El último esquemático que te hice, preví el conteo manual.

Donde dice "pulso manual" se colocaría el pulsador para cambiar el dígito (unidades o decenas, son 2 pulsadores).

Si el interruptor que selecciona UP o DOWN está en UP, los dígitos cambiaran mediante el pulsador uno a uno en dirección UP cada vez que lo presiones. Si está en DOWN harán lo mismo pero hacia abajo.

La idea es que hasta que no pulses INICIO o START, la señal CE esté a 0 (LOW) por lo que el 555 funciona pero el AND (que lo hace con CE) no deja que la señal de reloj llegue al contador.

En estas condiciones, si accionas uno de los pulsadores manual, colocaras a 5 V (HIGH) tanto a CP (reloj) como CE (Enable) y el contador avanzará o retrocederá (dependiendo de como esté el interruptor UP/DOWN) una unidad.

En el momento en que acciones el botón START; CE debe pasar a valer 1, lo que permite que la señal del 555 alcance los contadores y éstos empiecen a funcionar. Si en ese momento presionara uno de los pulsadores de cambio manual, el resultado podría ser impredecible pues no está considerado en el circuito que eso pueda suceder.

La etapa de como colocar o permutar el valor de CE, no la hemos discutido todavía pero te indiqué algo de ello en los primeros mensajes.
El botón de START/PAUSA deberá funcionar de manera tal que arranque al energizar el circuito en "0" y luego vaya cambiando su valor ente "1" y "0" secuencialmente con cada pulsación. Para esto te comenté algo de Flip/Flop Set/Reset. START/PAUSA colocara CE a "1" o a "0".

Recuerda siempre que hay muchas formas de hacer esto y se te pueden ocurrir otras.

Saludos,
Marcelo.



Este mensaje contiene archivos adjuntos, para verlos debes estar registrado.

#18  
mr_guns
Registrado: 28 Oct 2005
Mensajes: 23
citar
También, si me puedes aclarar la parte de: "Ahora suponte que los pines de esos bits que salen del contador de las unidades decimales se llaman a, b y c, entonces tomando sus señales e implementando con compuertas AND y NOT un circuito lógico, tenemos que:

a (and) b (and - not) c = 1"

Si me puedes postear un ejemplo gráfico sobre esto creo que entendería por completo esa parte.

Gracias,
E.C.

#19  
Marcelo
Colaborador
Ubicación: Venezuela
Registrado: 27 Jul 2005
Mensajes: 361
citar
Ok, aquí esta. La salida de este circuito lógico será uno cuando el dígito de las decenas valga 6. Con ese "1" deberás ver como haces para detener el contador. Pudieras usar la señal CE en forma combinada con la que viene del pulsador START/PAUSE u ocasionar que el circuito que controla el pulsador, reciba esta señal y actúe como si se hubiera pulsado la tecla.

Saludos.
Marcelo.



Este mensaje contiene archivos adjuntos, para verlos debes estar registrado.

#20  
mr_guns
Registrado: 28 Oct 2005
Mensajes: 23
citar
Aquí te envío el proyecto funcional, al menos en el papel, si tienes alguna sugerencia sobre esto....estoy abierto al cambio.

Gracias,
E.C.



Este mensaje contiene archivos adjuntos, para verlos debes estar registrado.

 Responder





 Otros temas de interés 
No hay mensajes nuevos ¿Cómo hallar la frecuencia de un circuito?
No hay mensajes nuevos Variadores de frecuencia OMRON
No hay mensajes nuevos Variador de frecuencia de 150 HP
No hay mensajes nuevos Filtro para frecuencia de sonido de palmada
No hay mensajes nuevos Problema con la frecuencia de actualización del monitor

Foros de Electronica
|| Cuestiones Elementales de Electrónica || Fuentes de alimentacion || Circuitos de radio || Diseño de circuitos en general ||
|| Sistemas de Audio: Preamplificadores, Ecualizadores || Amplificadores || Reparación || Discusión ||
|| Microcontroladores y sistemas embebidos || Circuitos logicos combinacionales y secuenciales || Interfaces y Programacion || Dudas en general || Sistemas de Video || PC Hardware || Telematica y comunicaciones || Tecnologias moviles || Software Electronico || Robotica, Domotica y Mecatronica || Autotrónica || Automatizacion, Electronica industrial y de Potencia || Documentacion, circuitos y esquemas || Donde Las Ideas Convergen... || Tutoriales y Manuales || Proyectos Prácticos ||