sábado, 23 de noviembre de 2013

Primer proyecto de Arduino en clase con sensor NTC

Hemos hecho como primer proyecto de Arduino en clases entre Pablo Arauz y yo un termómetro con un sensor NTC controlado por Arduino y que expresa los rangos de temperatura con varios diodos led que hacen las veces de referencia visual intuitiva por colores.
 Es completamente calibrable desde el código.

Acompaño esta entrada con una foto y un vídeo del proyecto.






¿A donde vamos a llegar?


Aqui os dejo un documental sobre la robotica avanzada y su implantacion en nuestras vidas el dia de mañana.
La realidad es impresionante.

El documental esta en ingles, pero se entiende bastante bien lo que quieren decirnos.

http://www.youtube.com/watch?v=DKiXM7bUypk

Disfrutadlo.

; )

Secuenciales y biestables.

Circuitos logicos, secuenciales!

RESETABLE JK FLIP - FLOP
Muchas veces se requiere flip-flops tipo JK que puedan ser Set y Reset a estados conocidos, antes de que ellos inicien su uso en un proceso particular. Por ejemplo, si se dispone de varios flip-flops para efectuar un trabajo en equipo, es prácticamente un requisito poderlos colocar con todas sus salidas en un nivel igual, lógico 1 o lógico =. Para esta función, el integrado tiene dos terminales auxiliares, marcados PRESET (PR) y CLEAR (CLR). El preset coloca en estado lógico 1 en la salida Q cuando es alimentado con un pulso bajo; si esto se hace con la entrada clear, el la salida Q aparece un estado lógico 0. se considera que las entradas preset y clear est´n en un nivel inactivo, cuando se las mantiene en alto(libres, "al aire"). A las entradas "clear" y "preset" se les conoce como "entradas de control prioritario", a las entradas "j" y "k" se les denomina "entradas de control simple".

CIRCUITO MONO - ESTABLE (ONE - SHOT)

Básicamente, el one-shot es un circuito con una sola entrada y dos salidas complementarias, Q y no-Q. Un pulso activo en la entrada, hace que el circuito cambie su estado, permanezca así invertido durante un período de tiempo dado, y luego retorne automáticamente a su estado original. El one.shot es un circuito mono-estable(monostable), o sea que tiene un estado definido al que siempre retornará.

Al one-shot se le conoce también como circuito IGUALADOR DE PULSOS, ya que, aunque los pulsos de disparo (trigger) tengan diferente ancho (width), los pulsos a la salida serán siempre iguales, con el mismo ancho o largo(tiempo que permanece el pulso en determinado nivel). Los circuitos monoestables son ampliamente usados como temporizadores, retardadores de pulsos, en toda clase de procesos industriales.

En TTL se consiguen los siguientes circuitos integrados monoestables: el 74121, el 74122(one shot regatillable y con terminal borrador-clear-) y el 74123 (dos monoestables independientes; equivale a tener dos 74122 en un mismo encapsulado). Ver diagrama de conexión y tablas de verdad en la figura 17.

Clic en las imágenes para verlas en tamaño real.
Otro monoestable algo especial es el 74221, que tiene dos monoestables con entrada Schmitt-trigger, y un equivalente en tecnología CMOS: el integrado MM74C221.

EL MULTIVIBRADOR

Es una forma de circuito oscilador, en el cual dos salidas complementarias están continuamente invirtiendo su estado, a una rata determinada por los componentes Rc del circuito (resistencia-capacidad). Si la salida en Q es una serie de pulsos positivos cortos, la salida en no-Q será una serie de pulsos positivos largos,, equivalentes al tiempo que permanece en el nivel bajo la salida Q. Veamos la figura 18.

Los multivibradores son usados donde quiera que sea necesario tener una hilera de pulsos u ondas cuadradas. Si se desea, la rata de repetición del circuito puede ser sincronizada por una fuente externa, tal como un pulso clock.

EL SCHMITT TRIGGER

Es un circuito biestable (dos estados), con una entrada y una salida. El nivel en la salida cambia agudamente, de una manera rápida, cuando el nivel de la señal de entrada excede un predeterminado valor, lo que permite su aplicación en conversión de ondas senoidales a ondas cuadradas, y en acondicionamiento eléctrico de señales (para facilitar el manejo de circuitos TTl con fuentes de señales No-TTl). También, el circuito Schmitt-Trigger puede ser usado para restaurar pulsos que han sido deteriorados por interferencias durante su transmisión.

Para comprender las características de su funcionamiento, tomemos imaginariamente un Schmitt-Trigger que tenga su salida en nivel bajo, y apliquemos a su entrada un pulso cualquiera, cuyo voltaje esté subiendo muy lentamente, algo así como una onda senoidal.

Al comienzo de haber aplicado la señal de entrada, no hay ningún cambio apreciable en el estado bajo de su salida; pero, llegado cierto momento, la salida del Schmitt-Trigger se invierte al estado alto, y continúa así aunque el nivel de voltaje en el pulsol siga aumentando. Al punto o valor del voltaje de la señal ascendente que produjo el cambio en la salida, se le conoce como POSITIVE GOING THRESHOLD (umbral en el sentido positivo).

Supongamos ahora que la señal comienza a bajar, a disminuir su voltaje. Llegará el instante en el cual la salida del Schmitt-Trigger cambiará abruptamente al nivel bajo original, punto al que se ha denomiando NEGATIVE GOING THRESHOLD (umbral en el sentido negativo). Los puntos o niveles de umbral son distintos para el sentido positivo y para el sentido negativo de la señal gatilladora, y a su diferencia se le conoce como HISTERESIS. Por ejemplo, un Schmitt-Trigger del integrado 7413 necesita que la señal suba hasta 1.7 voltios para que la salida cambie a su nivel superior, pero luego es necesario que baje hasta 0.9 voltios para que recupere su nivel bajo original. En este caso, la histeresis fue de 0.8 voltios.

En la práctica, se consiguen circuitos integrados digitales con gatilladores Schmitt-Trigger ya incluidos en sus entradas (un gatillador para cada entrada). Veamos algunos ejemplos:

7413-Dos compuertas NAND de 4 entradas con circuitos Schmitt-Trigger.

7414-Seis inversores con entrada Schmitt-Trigger

74121-Un monoestable con compuerta Schmitt-Trigger en la entrada B

74132-Cuatro NAND de dos entradas con circuito Schmitt-Trigger

74221-Dos monoestables (one - Shots) con entradas Schmitt-Trigger

DIAGRAMAS DE TIEMPO

El diagrama de tiempos para un circuito lógico es usualmente tan útil como el esquema electrónico. El diagrama de tiempos es una representación pictórica de la manera como los niveles lógicos varían en función del tiempo. Es de bastante utilidad cuando se desea conocer de un solo vistazo las características operacionales de un circuito, o se está buscando una falla en un proyecto digital. La figura 20 muestra el diagrama de tiempos para varias funciones de las variables lógicas A y B, mostradas en las dos filas superiores. La variable A está representada por un flujo de datos en serie, compuestos de alternantes 1's y dos 0's.

Si A y B son combinadas en una compuerta AND, cuya salida C es lógica 1 cuando A y B sean lógica 1. El resultado se obtenido es una repetición de datos compuestos por un 1 y tres 0's.

El complemento de C es mostrado en la cuarta fila; observemos que no-C es lógica 0 cuando C está en lógica 1, y viceversa. En otras palabras, cuando una línea sube, la otra baja.

Si A y B son combinadas en una compuerta OR, se obtiene en la quinta fila el resultado D 0 A + B; su complemento es mostrado en la sexta fila.

Como un ejemplo del uso del diagrama de tiempos, asumamos que se desea determinar si la compuerta AND de C 0 CB está trabajando apropiadamente. Un osciloscopio adecuado podrá indicar la correcta presencia de A y de B. El técnico debe conocer, sin embargo, lo que espera en C. Viendo en el osciloscopio el resultado obtenido en el punto C, se puede comparar dicha figura con la mostrada por el diagrama de tiempos, para saber cómo está trabajando la compuerta AND.

Os adjunto tambien en esta entrada unos videos de interes sobre los biestables:

http://www.youtube.com/watch?v=QpNu3Y5fLSc
http://www.youtube.com/watch?v=85VJ4Bq4UwQ
http://www.youtube.com/watch?v=vFWGbkROEBg
http://www.youtube.com/watch?v=qducqmetzhA


Circuitos combinacionales y secuenciales

Circuitos Combinacionales
Un circuito combinacional es un sistema que contiene operaciones booleanas básicas (AND, OR, NOT), algunas entradas y un juego de salidas, como cada salida corresponde a una función lógica individual, un circuito combinacional a menudo implementa varias funciones booleanas diferentes, es muy importante recordar éste echo, cada salida representa una función booleana diferente.
Un ejemplo común de un circuito combinacional es el decodificador de siete segmentos, se trata de un circuito que acepta cuatro entradas y determina cuál de los siete segmentos se deben iluminar para representar la respectiva entrada, de acuerdo con lo dicho en el párrafo anterior, se deben implementar siete funciones de salida diferentes, una para cada segmento. Las cuatro entradas para cada una de éstas funciones booleanas son los cuatro bits de un número binario en el rango de 0 a 9. Sea D el bit de alto orden de éste número y A el bit de bajo orden, cada función lógica debe producir un uno (para el segmento encendido) para una entrada dada si tal segmento en particular debe ser iluminado, por ejemplo, el segmento e debe iluminarse para los valores 0000, 0010, 0110 y 1000.
En la siguiente tabla se puede ver qué segmentos deben iluminarse de acuerdo al valor de entrada, tenga en cuenta que sólo se están representando valores en el rango de 0 a 9, los decodificadores para las pantallas de siete segmentos comerciales tienen capacidad para desplegar valores adicionales que corresponden a las letras A a la F para representaciones hexadecimales, sin embargo la mecánica para iluminar los respectivos segmentos es similar a la aquí representada para los valores numéricos.

Los circuitos combinacionales son la base de muchos componentes en un sistema de cómputo básico, se puede construir circuitos para sumar, restar, comparar, multiplicar, dividir y muchas otras aplicaciones más.
Circuitos Secuenciales
Un problema con la lógica secuencial es su falta de "memoria". En teoría, todas las funciones de salida en un circuito combinacional dependen del estado actual de los valores de entrada, cualquier cambio en los valores de entrada se refleja (después de un intervalo de tiempo llamado retardo de propagación) en las salidas. Desafortunadamente las computadoras requieren de la habilidad para "recordar" el resultado de cálculos pasados. Éste es el dominio de la lógica secuencial. Una celda de memoria es un circuito electrónico que recuerda un valor de entrada después que dicho valor ha desaparecido. La unidad de memoria más básica es el flip-flop Set/Reset. Aunque recordar un bit sencillo es importante, la mayoría de los sistemas de cómputo requieren recordar un grupo de bits, ésto se logra combinando varios flip-flop en paralelo, una conexión de éste tipo recibe el nombre de registro. A partir de aquí es posible implementar diferentes circuitos como registros de corrimiento y contadores, éstos últimos también los conocemos como circuitos de reloj. Con los elementos mencionados es posible construir un microprocesador completo.

He encontrado algunos enlaces a vídeos de interés sobre los multiplexores y sobre los circuitos combinacionales que os pongo a continuacion:

http://www.youtube.com/watch?v=3t6Gn89bZbo
http://www.youtube.com/watch?v=jYDLtqPaFjU
http://www.youtube.com/watch?v=bxnze-YBjL4
http://www.youtube.com/watch?v=KA_On0OmA4E
http://www.youtube.com/watch?v=Q887j1snu8A
http://www.youtube.com/watch?v=ZbzrNMF3vR8