Paper Lectura#2 Physical Computing chp 4 y 6

Page 1

Paper Lectura#2: Physical Computing Chp 4 y 6 Chapter 4: Lo más difícil de empezar a programar es lograr que el computador haga algo. Es convención de los programadores probar que ya pueden lograr algo con un lenguaje de programación a través del mensaje ‘Hello World!’. En un microcontrolador, ese ‘Hello World!’ es un LED Blink. Una vez que logras hacer que pestañee un LED, entiendes el proceso básico de tu microcontrolador, y de ahí en adelante todo se vuelve más fácil y comprensible. Un microcontrolador (como Arduino) al integrarse a un circuito electrónico amplifica enormemente las posibilidades de complejidad de los inputs y outputs. Al integrar un microcontrolador al circuito, podemos jugar con los inputs y outputs. Podemos hacer que para lograr el output *prender la luz*, se tenga que presionar más de un switch, o sensor. O podemos hacer que el output sea programado a través del software del microcontrolador. Para integrar el microcontrolador al circuito, lo primero es identificar las entradas y salidas digitales o análogas, llamadas pins en nuestro microcontrolador. De esta manera sabemos en qué pin integraremos nuestros componentes. Un microcontrolador común tiene pins para información análoga, digital, poder, tierra y comunicación con el procesador. Casi todos los microcontroladores tienen entradas análogas y digitales y algunos presentan también salidas análogas. Generalmente los microcontroladores de lower level necesitan la inclusión de un dispositivo llamado clock, que permite el paso de un nivel determinado de corriente desde el poder. Sirve como regulador de voltaje del sistema. Los clocks por lo general ya vienen integrados en los microcontroladores de higher level. En microcontroladores de lower level el clock es necesario, pero se puede reemplazar por un sistema de regulación de voltaje combinando resistores y capacitores. Un microcontrolador debe ser programado, es decir, se le debe cargar un código para programar su funcionamiento con el circuito. La mayoría puede ser programado cuantas veces se quiera, sin embargo, existen algunos microcontroladores que solo pueden ser programados una sola vez. Los softwares de programación se basan en la transducción de información análoga en lenguaje binario. De esta manera el controlador puede leer y procesar el input. Este sistema funciona para ambos lados, desde el paso de información análoga a binaria y viceversa. De átomos a bits y de bits a átomos. Algunos software pueden volver a responder con un output en lenguaje legible, todo desde información binaria. Para programar el chip es necesario conectarlo a un computador de escritorio a través de un cable o hardware determinado. Antes de la existencia de Arduino, se usaban controladores lower level, los cuales era más difícil programar, al tener que usar software diferente para editar, compilar y transferir el código al microcontrolador, además de requerir un adaptador para comunicar al controlador con el computador de escritorio. La plataforma de Arduino logra las tres funciones con el mismo software de arduino, el cual se descarga gratuitamente desde la web. Eso le da un aproach más high level, pero sin sacrificar las amplísimas posibilidades de input y output. Aprender a programar por códigos es un ejercicio de prueba y error. Se trata de aprender a identificar, modificar o remover errores del código y volver a probar nuevamente (el proceso conocido como debugging), hasta que finalmente el código logra los resultados que buscas en tu circuito. Chapter 6: Lo esencial de Physical Computing es la capacidad de transducción desde la información del mundo físico al mundo digital, y viceversa. Necesitamos determinar qué tipo de energía tendrá nuestro input y output para poder decidir qué transductor necesitamos para lograrlo en cada caso.


Digital Input (DI) Estos son los transductores básicos, ya que nos dan dos opciones (On y OFF), lo cual es cien por ciento compatible con el lenguaje binario de nuestro controlador. Un ejemplo simple es un switch, que solo contempla las opciones ON y OFF. Se introducen los conceptos de normally open y normally closed, para denotar si un circuito está abierto (sin permitir el flujo de energía) o cerrado (permitiendo el flujo de energía). Existen los momentary switches, que se activan mientras los presionas, pero vuelven a su posición original cuando dejas de ejercer presión. Los toggle switches se quedan en la posición en que los dejas. Los interruptores tienen un número de polos en donde uno puede conectar dos cables, cada polo es un circuito independiente. Los interruptores además pueden tener varias posiciones, uno de tres posiciones permite elegir izquierda, ambos y derecha. Se clasifican de acuerdo a esto y al voltaje y amperaje que soportan. Circuito de DI: Para hacer un circuito con DI se necesitan tres cables, uno de poder, tierra y uno para conectarse al controlador. El microcontrolador al tener un input digital en cierto pin está esperando a ser afectado por voltaje. Para prevenir falsos positivos, se conecta el pin también a tierra mediante una resistencia para evitar alzas de voltaje no deseadas. Se conecta mediante una resistencia porque la electricidad sigue el camino de menor resistencia, y si no estuviera esta resistencia, al presionar el interruptor generaríamos un corto circuito, dado que la energía tomaría ese camino. Digital Output (DO) Cualquier cosa que se pueda encender y apagar puede ser un DO, sin embargo no todos se pueden conectar directamente al microcontrolador como los LEDs. Un ejemplo son los Relays , son interruptores que se abren o cierran por un electroimán en vez de manualmente con el dedo, funcionan electromagnéticamente. Cuando el microcontrolador le envía energía al relay, el electroimán tira un conductor y cierra el circuito, este último circuito es independiente del microcontrolador, puede llevar tanta energía como soporte dicho relay y puede ser AC o DC. También hay relays de estado sólido, que no tienen piezas móviles, son más rápidos pero también más caros. Otro ejemplo son los transistores, controlan el paso de gran cantidad de corriente con una pequeña corriente, son muy parecidos a los relés. Hay de diversos tipos que no se detallarán en esta parte, nos interesa que funcionan como interruptores electrónicos, son más rápidos que los relés y más baratos, pero solo funcionan con corriente continua. Los transistores bipolares tienen tres conexiones: base, colector y emisor, al poner una pequeña cantidad de voltaje y corriente en la base, se permite el paso de una mayor cantidad de corriente desde el colector al emisor, funcionan como un amplificador. Dentro de los transistores bipolares, existen dos tipos, los NPN, equivalentes a un interruptor normalmente abierto, y los PNP, equivalentes a un interruptor normalmente cerrado. Analog Input (AI) Por lo general, las energías percibidas por los transductores en physical computing son de tipo análoga. Esto se percibe a través de resistores variables, permitiendo medir no solo si el circuito está abierto o cerrado, sino cuán abierto o cerrado está según la variación de resistencia. Un potenciómetro es un resistor varable, que mide la fuerza de a presión ejercida sobre él, esto luego es traducido a corriente eléctrica. Otro ejemplo son los sensores de temperatura o de luz. No todos los microcontroladores son compatibles con este tipo de input. Analog Output Este tipo de output me permite configurar a través del código diferentes niveles del output en el mundo físico. Por ejemplo, controlar que tanto deseo que una luz se ilumine, qué tanto quiero que suba o baje


una cortina o qué tan agudo quiero un sonido. La modulación de amplitud de pulso nos permite simular voltajes variables en la salida, ya que un microcontrolador por si mismo no puede hacerlo. Se interrumpe y vuelve a reanudar la entrega de voltaje en milisegundos para crear la ilusión de un voltaje menor: la luz se ve menos iluminada, siendo que en realidad está siendo prendida y apagada sin que lo podamos notar. El voltaje promedio logrado a través de este método en el tiempo es el voltaje que deseamos entregar al output. Esto se puede hacer para generar el efecto dimmer en LEDs y distintas velocidades en motores. Para Outputs análogos de música, hay que programar las notas según su frecuencia de Hz, en el texto aparecen las frecuencias de la escala de Sol: pitch(0) = 262 ‘ middle C pitch(1) = 277 ‘ C# pitch(2) = 294 ‘ D pitch(3) = 311 ‘ D# pitch(4) = 330 ‘ E pitch(5) = 349 ‘ F pitch(6) = 370 ‘ F# pitch(7) = 392 ‘ G pitch(8) = 415 ‘ G# pitch(9) = 440 ‘ A

Los servos son motores de output, que nos permiten mover cosas. Se recomienda agregar capacitores al circuito del servo para suavizar la carga que genera sobre el circuito y no afectar el voltaje del resto del circuito. Desde Input Análogo a Output Análogo Para utilizar este tipo de I/O es necesario conocer los valores máximos y mínimos del rango de funcionamiento de cada uno de mis componentes de este tipo. Se utilizan funciones que pueden ser simples multiplicaciones de variación lineal o cosas más complejas como una variación exponencial. Para traducir los valores que entrega el sensor a los que necesitamos nosotros, la función dependerá de cada componente y lo que perciba/ocacione este. Se pueden buscar los rangos en las fichas técnicas de los componentes o haciéndolos funcionar en todo su rango para estudiar los valores que entrega en distintas situaciones. Una vez que se conoce este rango, se genera una función “escaladora” o “de rango”. Se debe tener especial atención a los valores anormales que pueden quedar fuera del rango determinado, lo que puede general errores u órdenes no deseados, tanto en input como output. Jose Hosiasson - MID


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.