INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY CAMPUS ESTADO DE MÉXICO Laboratorio de Automatismos Lógicos Arduino, programación básica Objetivos. Implementar funciones combinacionales en el dispositivo programable Arduino, utilizando su propio editor como herramienta de programación. Poner en operación un elemento de carga en el Arduino, utilizando optoacopladores como elemento de protección. Implementar señales de entrada en el Arduino, utilizando acondicionamientos de señal para su captura. Marco Teórico El microcontrolador Arduino posee una plataforma de desarrollo de código abierto. Dentro de sus capacidades con él se puede desarrollar aplicaciones de comunicación y procesamiento entrada salida. Utiliza el lenguaje de programación denominado Wiring, basada en Processing (entorno multimedia). Su carácter multiplataforma, lo sencillo de su programación y de código abierto hacen que Arduino adquiera popularidad entre la comunidad universitaria para el desarrollo de proyectos. El entorno de esta herramienta está constituida por un editor de texto, un área de mensajes y de una barra de herramientas con sus respectivos menús. Para mayor comprensión de las características, bondades y ejemplos de aplicación, el lector se puede referir a la página electrónica http://arduino.cc/es/guide/environment Optoacoplador Se compone de un diodo y de un fototransistor; en particular el diodo es un LED (Light emitting diode), de tal forma que cuando éste ilumine, el fototransistor responda e inicie la conducción, razón por la cual, la corriente de salida del optoacoplador (corriente del colector del fototransistor) es proporcional a la corriente del LED (corriente de entrada de base). En general, el factor de ganancia entre estas dos corrientes está en función de la temperatura ambiente; entre mayor sea la temperatura, mayor ganancia de corriente en la salida. El optoacoplador también es llamado optoaislador, ya que la impedancia entre el LED y el fototransistor es muy alta, típicamente de 10 3 ohms. Por esta razón, funcionan como elementos de aislamiento, sobre todo en equipo o dispositivos sensibles. Es así que, de este modo, se conjugan en un solo dispositivo semiconductor, un fotoemisor y un fotorreceptor con conexión óptica y alta impedancia y por lo general, estos elementos vienen en presentación de encapsulado tipo DIP. Ver figura 2. 1
Fig 2. Diagrama esquemático de un Optoacoplador. Actividad previa Con la ayuda de las siguientes referencias, resuelva, para el Arduino, las preguntas siguientes: http://arduino.cc/es/main/software http://www.ladyada.net/learn/arduino/index.html http://www.youtube.com/watch?v=fcxza9_kg6s Qué arquitectura posee el Adruino Uno? Cómo se lee una entrada? Cómo se escribe una salida? Cómo se editan los operandos lógicos AND, OR y NOT? Cómo se conecta una carga a una salida, tal como un LED, un motor de CD o un optoacoplador? Preguntas de Reflexión Desarrollo Experimental Material Arduino Uno Motor de CD a 10/12 Volts Optoacoplador 4N26(25) Tarjeta de cableado rápido (protoboard) DipSwitch LED Fuente de alimentación a 5 y a 10/12 Vcc 2
Actividades Una sencilla aplicación industrial cuenta con un motor eléctrico, para llevar a cabo su producción cotidiana, y con un testigo luminoso, para mostrar una señal visual de precaución. Un operador emplea una botonera, que contiene dos botones, la cual trabaja de la siguiente manera: Cuando el operador oprime B1, y sólo B1, se debe de encender el indicador luminoso. Si se mantiene oprimido B1 y se oprime el segundo botón, B2, entonces arranca el motor, permaneciendo encendido el indicador. Cualquier otra combinación de los botones hará que se apaguen, tanto la lámpara como el motor. Fig. 3 Botonera y Motores de carga. El diagrama esquemático de la implementación se observa en la Fig. 6. Actividades i. Monte el diagrama mostrado en la Fig 6. ii. Programe el Arduino para que el motor y el indicador trabajen como ya se explicó iii. Utilice las funciones Serial.begin(9600); Serial.println( ); para desplegar tanto un texto como los estados para los dos botones, el motor y el LED. 3
M Fig 6. Circuito electrónico para el arranque del motor y del indicador luminoso (LED). Actividad complementaria Utilice la técnica de programación funcional para resolver el mismo problema de la actividad. Agregue al menos un botón pulsador normalmente abierto, NA, operando a 24 Vcc, en sustitución de alguno de los botones del DipSwitch, con su acondicionamiento correspondiente. 4
Conclusiones Bibliografía G. Maxinez, J. Alcalá, VHDL, el arte de programar sistemas digitales, CECSA 1 a ed., México 2002. Floyd, Digital Fundamentals, Prentice Hall 8 th ed., New Jersey 2003. 5