Download Chapter 6: The “Big Four” schematics, programs

Document related concepts

GPIO wikipedia , lookup

Circuitos de ayuda a la conmutación de transistores wikipedia , lookup

Relé de estado sólido wikipedia , lookup

Puerta NOT wikipedia , lookup

Transistor IGBT wikipedia , lookup

Transcript
Chapter 6: The “Big Four” schematics, programs and transducers.
La transducción es un aspecto clave en physical computing. Esto es la conversión de un tipo de
energía en otra (en general energía mecánica en energía eléctrica o viceversa). En este capitulo
discutiremos sobre los transductores organizados por categorías y hablaremos sobre los cuatro
grandes “big four” que son digital input-output y analog input-output.
Digital Input:
Son los transductores mas simples, existen dos estados para los digital input, 0-1 on or off
(encendido o apagado), es decir solo representan dos extremos. Básicamente son dos
conductores que pueden tocarse cerrando el circuito o separarse cortándolo.
Interruptores:
En general sirven para convertir energía mecánica en energía eléctrica (prender el interruptor
requiere energía mecánica proveniente del humano y se transforma en energía eléctrica, el
encendido del circuito). Al trabajar con interruptores es necesario conocer ciertos términos:
Normalmente abierto, en el interior no se esta haciendo contacto, por lo que cuando no se
presiona el interruptor el circuito no esta completo.
Normalmente cerrado, en el interior se esta haciendo contacto por lo que se debe presionar el
interruptor para cortar el circuito.
Interruptores momentáneos, poseen un resorte que los devuelve a su posición inicial.
Interruptores palanca, no poseen resorte así que se quedan en la ultima posición a la que se los
llevo.
Cada interruptor tiene polos que son dos cables que cierran o cortan el circuito. Cuando se
refieren a Throw estamos hablando sobre las posibles posiciones que puede tener el interruptor.
Un SPST es un (single-pole, single-throw), DPDT (doublé-pole, single-throw) y SPDT (singlepole, doble throw).
En general los interruptores se organizan según el máximo voltaje y amperaje que pueden
aguantar, por lo que puedes usar menor corriente para cualquier interruptor.
Digital Input Circuit:
Para conectar un input digital a un microcontrolador necesitas tres conexiones, poder, una
conexión al microcontrolador y una conexión a tierra. Cuando un pin esta en modo input esta
esperando interactuar con cualquier voltaje, por lo que si no esta conectado al voltaje deseado
(en general 5 volts) puede ser afectado por otras formas de energia. Lo conectamos a la tierra
mediante una resistencia a modo de que otro tipo de voltaje llegue a tierra en vez de afectar el
input.
Programando:
Como algunos pins son I/O al programar la instrucción debemos aclarar qué pin será Input.
Cuando el microcontrolador lee un pin envía voltaje hacia el (0 o 5v), lo que el software lee como
0-1 en código binario (extremos). Al programar indicaras el pin y su función antes de loop,
cuando declaras las variables para fijarlas en el programa sin tener que repetir este comando.
Digital Output:
Tiene la misma lógica de 0-1 del digital input. El output transforma el mensaje del input en una
respuesta, puede ser encender un LED por ejemplo.
Muchas veces trabajaras con dispositivos que necesiten mas voltaje y amperaje que el
microcontrolador puede dar como output, para solucionar este problema necesitaras
intermediarios como los transistores y relés “relay”.
Relays (relés o relevadores)
Son interruptores que son encendidos por un imán, en vez de la acción mecánica.
Electromechanical relays, usan energía eléctrica para controlar interruptores mecánicos. El
microcontrolador envía corriente al imán eléctrico el cual tira un conductor entre los dos
contactos cerrando el circuito, el cual es independiente al micro controlador. Algunos
interruptores de este tipo también son llamados “reed relays”. Se clasifican según el voltaje
requerido para controlar al electro magneto, pos la corriente y el voltaje que puede pasar por el
gran circuito.
Si quieres controlar dispositivos que utilicen corriente AC la forma mas simple es usando un
relay, ya que pueden intercambiar energía AC o DC como otras señales.
Transistores:
los transistores sirven para controlar desde mucha corriente a poca corriente. Son muy versátiles
y existen muchas variedades y muchos usos. Funcionan bien como interruptores y son mas
rápidos que los relés y más baratos que estos últimos. Los transistores son estrictamente
componentes que funcionan con DC, es decir no funcionan con corriente alterna. Todos los
transistores tienen tres conexiones, la base, el colector y el emisor. Poniendo un poco de voltaje
y corriente en la base del transistor permitirás que mucha corriente pase desde el colector al
emisor, es decir son como amplificadores.
Tipos:
Transistores Bipolares, hay dos tipos. NPN (es como un interruptor normalmente abierto) y PNP (
es equivalente a un interruptor normalmente cerrado).
Transistores Field-effect (FETs).
Programando:
Para programar output simplemente debes darle al pin la señal de High si quieres encender el
dispositivo o Low si lo quieres apagar.
Analog Input:
Los analog input permiten interactuar de forma mas amplia con los dispositivos obteniendo
información que ya no se encuentra en los extremos sino que pertenece a un rango. Ya no es
todo blanco o negro, también existe lo intermedio.
Transductores: para los analog input usaremos otro tipo de transductores, estudiaremos las
resistencias variables.
Resistencias Variables: Convierten un cambio en la fuente de energía en un cambio en la
resistencia. Ej: potenciómetros, termistores (la resistencia cambia con la temperatura ambiental),
photocelulas (varían con la intensidad de la luz), FSR o forcé-sensing resistors varían según la
fuerza aplicada en el sensor. Sensores Flex, varían según como se flexionen o doblen.
Como los microprocesadores solo leen códigos binarios, existen convertidores análogo-digital, lo
que genera un rango de voltajes al que asigna un valor digital en un determinado momento
haciéndolos compatibles.
Cuando usamos el comando “rctime” el capacitor almacena carga que liberara cuando el flujo de
alimentación se acabe.
Analog Output:
Con los output análogos podrás controlar un dispositivo utilizando la señal proveniente de un pin
I/O. Para lograr este control se utiliza un método llamado “pulsewidth modulation” o modulación
por pulso PWM. El PWM parte de la base que los microcontroladores no pueden producir
variados voltajes, solo producen alto o bajo voltaje (0-1, digital reed). Por lo que creando una
salida (output) variable de voltaje se puede simular voltaje análogo, a través de un promedio
resultante de las variaciones de voltaje al que llamamos pseudo-analog voltaje.
Generando sonidos:
Los parlantes funcionan con outputs análogos. Al programar el circuito para que suenen
usaremos el comando “freqout” lo cual permite generar cualquier tono desde un pin I/O
(regulando la frecuencia del tono). Revise este comando para cada lenguaje derivado del BASIC.
“duration” es el comando usado para determinar la duración del tono. “Array” es una variable que
posee varios compartimientos numerados.
RC Servo motor:
Con estos podemos controlar el movimiento de algunos objetos. Es mucho mas amplio que el
motor DC que solo puede controlar on-off.
Posee un rango de movimiento de 180º, pueden funcionar con 5v. En general el movimiento es
circular, pero se puede modificar para obtener otros movimientos.
Para programarlos se debe fijar el ángulo del motor.
From Analog-In to Analog-out: Escalando funciones
Para convertir un rango de inputs análogos en un output análogo, es necesario conocer los
máximos y mínimos de cada rango para poder desarrollar una función por rangos.
Para conocer el rango de un sensor (input análogo) necesitaras un programa que registra el
valor de los inputs. Para obtener el rango del output, en general se toman los primeros
parámetros que la función utiliza para estos. Una vez que conoces los rangos de input y output,
se puede utilizar una simple fórmula para intercambiarlos. A esta fórmula se le llama función de
escalamiento o función de rango. (revise las formulas que utiliza el libro para ejemplificar).
Cuando trabajamos con estas funciones es importante tener en mente los rangos numéricos con
los que trabaja el microprocesador y ajustar las formulas a ellos, por ejemplo si el micro
procesador le números de 0 a 1025 por ejemplo. Para programar el trabajo dentro de este rango
de lectura serán necesarios los comandos de “if” o “min/max”
Es importante entender que muchos de estos procesos y comandos pueden ser simplificados
con el uso de componentes eléctricos en el circuito, por eso es necesario entender muy bien que
hace cada uno de ellos y como funcionan.
Conclusiones:
Casi todos los proyectos de physical computing utilizaran alguna combinación de inputs y
outputs, por lo que el primer paso es identificar cuales son necesarios para tu proyecto, y
ordenarlos según análogo o digital. Primero has que cada input y output funcione, luego utiliza
funciones de rango para integrarlos. Luego guarda los códigos y comienza a trabajar con tus
proyectos. En general la lógica del I/O es siempre dar una instrucción que genera algún tipo de
respuesta en un mecanismo o en el ambiente, por lo que las funciones para dirigir dichas
respuestas seguirán la lógica de mandato, por lo que debes ser muy preciso y siempre declarar
las variables, explicar que estas haciendo y que quieres que hagan, a través de que pin, con que
input llegando a que output o viceversa.
** Comandos:
“if” indica que se genere una respuesta condicionada a si sucede algo o no.