arduino: 1. introducción

Primera entrada de una serie dedicada a Arduino y la electrónica

Joseph Stella

archivado en: Electrónica / 10 Noviembre, 2014 / taller:

Comienzo una serie sobre arduino y electrónica a partir de unos apuntes personales sobre la materia. No tengo claro que su lectura resulte muy útil, pero aquí los dejo por si acaso estuviera equivocado.

En el año 2005, dos estudiantes del Instituto Ivrea, en Italia, diseñaron el primer Arduino, cuyo nombre deriva al parecer de un bar que frecuentaba uno de ellos, el Bar di Re Arduino. En esencia, consiste en una placa con un microcontrolador, es decir, un circuito capaz de ejecutar las órdenes grabadas en su memoria y activar periféricos de entrada/salida.

kit de Arduino

kit de Arduino

Hoy en día, este proyecto de hardware libre ya ha recibido grandes apoyos, como el Google, y hay muchos tipos de placas. La más sencilla es la evolución directa de original, la Arduino UNO Rev 3, que es la más recomendable para empezar. Otra opción chula es comprarse un kit, como este de Amazon, con la placa Arduino MEGA R3, un poco mejor que la anterior, ya que tarde o temprano necesitaremos todos los gadgets que incluye (diodos led, protoboard, interruptores...).

El camino del ámbar

Antes de comenzar a trastear con Arduino conviene que recordemos algunos conceptos básicos de la electricidad, un término que viene del griego –ήλεκτρον (élektron)– y significa ambar.

Como es sabido, la materia está compuesta de átomos, que a su vez están formados por distintos tipos de partículas, como los electrones, que trazan órbitas en torno al núcleo. Cuando dos átomos intercambian entre sí electrones, es decir, que pasan de uno a otro, se produce una corriente por la que pasan cargas eléctricas.

Una manera de sacar provecho de la electricidad transformándola en luz, calor o movimiento es organizando su paso por un circuito al que estén conectados distintos componentes. Por ejemplo, una linterna está formada por un circuito que conecta una fuente de energía -una o más pilas- con un emisor de luz. Un circuito, por lo tanto, es una red eléctrica en la que hay componentes, como resistencias, condensadores, interruptores y toda una larga lista de artefactos fascinantes. Pero en nuestro caso nos vamos a centrar en un tipo especial de circuito, que es el circuito electrónico, caracterizado por incluir componentes electrónicos como un microprocesador.

Diagrama de un circuito de audio

Diagrama de un circuito de audio

 

Podemos pensar en un circuito como en una red hidráulica, una serie de cauces por los que discurre el agua hasta desembocar en el mar. En algunos sitios pasará con más fuerza, en otros se verá frenada por la pendiente o los sedimentos; y por la orilla podemos poner molinos de agua que aprovechen su fuerza, presas para retenerla, canalizaciones para conectar un cauce con otro... y, como ocurre con los ríos, si el circuito no está bien diseñado, el agua, la corriente eléctrica, puede desbordarse o estancarse y estropearlo todo. Por lo tanto, para que nuestro ecosistema electrónico funcione de forma correcta, tendremos que prestar atención a cuatro conceptos básicos: tensión, corriente, potencia y resistencia.

a) Tensión

La tensión eléctrica o voltaje es la diferencia de potencial entre dos puntos que por razones históricas se denominan positivo y negativo. Se mide en voltios y para entenderla podemos volver a pensar en un río. La fuerza con la que corre el agua depende de la diferencia de altura entre su nacimiento y su desembocadura.

Cuanta más empinada sea, con mayor fuerza irá el agua. En nuestro caso, la «altura» está determinada por la diferencia de potencial eléctrico, un concepto sobre el que volveremos más adelante.

Así, cuando aplicamos una fuente de alimentación al punto más alto del circuito, provocamos una fuerza de presión que pone en movimiento los electrones, el agua, que bajará con tanta fuerza, voltios, como sea la diferencia de potencial. Por ejemplo, si un punto A inicial tiene respecto a un punto B final una diferencia de potencial de 5, el voltaje -la fuerza con la que correrá la corriente- será de 5 voltios.

voltaje

 

b) Resistencia

El esqueleto de un circuito es el cable, el hilo conductor, que une los distintos componentes y por el cual pasa la corriente. Como veremos, en algunos puntos nos interesará bajar el voltaje para que pueda ser digerido por algunos componentes sin fundirse. En la siguiente entrada veremos esto en detalle.

c) Corriente

Dicho burdamente, la corriente o intensidad eléctrica son la cantidad de electrones que circulan por un material en un momento dado. Se mide en amperios y coulombios y para entenderla vamos a volver a la analogía del agua.

A la cantidad de agua que pasa por un sitio en un momento dado, como todos los litros de agua que pasan por el Amazonas durante un minuto o los que pasan por el caño de la ducha cuando nos bañamos, se le denomina caudal. Así, por ejemplo, podríamos medir el caudal del río Tigris viendo cuánta agua (Q) pasa por un área de un metro (A) durante un segundo (V) (no es exactamente así, pero nos vale para hacernos una idea).

Pues con la electricidad sucede lo mismo y podemos calcular la intensidad de una corriente eléctrica (I) midiendo la cantidad de carga "q" (en culombios), la cantidad de electrones, desplazada por una corriente de un amperio fluyendo durante un segundo.

d) Potencia

La potencia de una corriente eléctrica es resultado de la intensidad de la corriente y el voltaje y se mide en vatios (watts). Es algo similar a lo que ocurre en la fotografía. La luz que entra por el diafragma de una cámara de fotos depende del diámetro de su apertura (intensidad) y de la cantidad de tiempo que permanezca abierta (voltaje). Si abrimos mucho el diafragma obtendremos el mismo resultado que manteniendo un tiempo largo de exposición, pues lo que cuenta al final es la cantidad de luz que entra ya sea por una razón u otra.

Por no volver al agua, que ya estamos empapados, podemos pensar en otro ejemplo recurrente que es una bolsa de canicas. Si cada canica fuera un electrón y la abriéramos desde una rampa empinada, el voltaje sería resultado de la pendiente de la rampa, que determinaría la velocidad con la que caen las canicas; y la intensidad la cantidad de canicas que pasan por un tramo en un momento dado. La potencia, la fuerza, que llevan las canicas al caer sería resultado de su número (intensidad) y la pendiente (voltaje). Dicho en términos eléctricos: un vatio es la potencia producida por una diferencia de potencial de 1 voltio y una corriente eléctrica de 1 amperio.

Y hasta aquí la parte teórica, pasemos ya a la práctica

Hola mundo

Para desembarcar en este mundo fascinante que es Arduino y la electrónica vamos a realizar una primera práctica que sería el equivalente al Hola Mundo de cualquier tutorial sobre un lenguaje de programación. Necesitaremos una placa de Arduino, uno diodo led y el software necesario para compilar nuestro programa y cargarlo en la placa. Este software es un IDE (desarrolo de entorno integrado) que podemos descargar desde la página oficial: http://www.arduino.cc/en/Main/Software.

Partes principales de una placa arduino

Partes principales de una placa arduino

Nota: En Windows 8, la instalación de los drivers puede dar problemas. Hay que instalarlos a mano: botón derecho sobre Equipo, luego Administrar, Administrar dispositivos, buscamos el arduino -que previamente hemos conectado al ordenador por cable USB-, y ya buscamos los drivers que nos hemos bajado. Si sigue dando problemas, podemos hacer esto que recomienda Iván Perea: reiniciamos con configuraciones avanzadas y deshabilitamos el uso obligatorio de controladores firmados. Otra solución para el problema «el puerto seleccionado no existe o tu placa no esta conectada» en soloelectronicos.com.

El IDE es sencillo y para este primer proyecto solo tenemos que preocuparnos de dos opciones de configuración: una es seleccionar qué tipo de tarjeta estamos utilizando (Herramientas > tarjetas) y otra es indicar en qué puerto está conectada (bajo Windows, si no hemos tenido problemas con los drivers) nos aparecerá el que viene ahí configurado, en mi caso el COM3). Y ya está, ya nos podemos poner a escribir código ^^.

arduino_holamundo1

 

Un programa de Arduino, que suele denominarse sketch (borrador), consta de tres partes. Un primer bloque o encabezado en el que se da información sobre el programa (comentarios que no se ejecutan) y se definen variables y constantes. Una segunda parte agrupada en una función denominada setup(), en la que se inicializan las variables. Y un tercer bloque, agrupado en una función llamada loop(), que se ejecuta una y otra vez. Es decir, las instrucciones que pongamos en loop se irán desarrollando una detrás de otra hasta el final y luego volverán a empezar desde el principio.

/* Este es un primer sketch de Arduino */

void setup() {

/* Aquí inicializamos las variables */

}

void loop() {

/* Estas sentencias se ejecutarán una y otra vez */

}

Pero antes de seguir con el código, vamos a preparar nuestro primer circuito. Para eso necesitaremos un diodo led. Un diodo es un componente electrónico de dos terminales por el que circula la corriente eléctrica en un solo sentido y cuando aprovecha esta circulación para emitir luz se denomina led (light-emitting diode). Entre otras utilidades, los diodos led nos servirán para comprobar el funcionamiento de un circuito.

En la base del led hay dos electrodos, es decir, dos conductores eléctricos que se caracterizan por ofrecer poca resistencia al paso de la electricidad. El más largo es el ánodo y el más corto el cátodo y, si la electricidad fuera agua, podríamos decir que sale del ánodo para terminar en el cátodo (bueno, en realidad es al revés, pero no nos liemos ahora con eso xD).

En la parte superior de la placa de Arduino se encuentran los denominados pines digitales, los cuales se caracterizan por poder estar en dos estados: OFF, también llamado bajo (low), apagado o a 0V; y ON, alto (high), encendido o a 5V. Es decir, son pines binarios. Pues bien, en el pin número 13 pondremos el ánodo de nuestro diodo led. ¿Y por qué precisamente en este? Como veremos, para que no se escacharren los led hay que rebajar la cantidad de voltios que reciben y para eso utilizaremos resistencias, menos en este caso, pues el pin número 13 lleva una resistencia incorporada.

El cátodo del diodo lo conectaremos al pin que está al lado del número 13, en el que está escrito GND, abreviatura de ground, tierra, y del que por el momento nos basta con saber que es el fin del circuito (la masa). Así, en un esquema dibujado con el programa fritzing, nuestro circuito debería quedar de esta manera:

arduino_holamund2

Volvamos con el código. El lenguaje de programación de Arduino deriva de processing / java y es más sencillo que un botijo. Es un lenguaje tipado (hay que declarar las variables) que cuenta con todo el repertorio necesario para realizar operaciones básicas: constantes, variables, estructuras condicionales, bucles y funciones. Además, tiene una serie de métodos propios que guardan relación con las peculiaridades electrónicas del sistema y que ya iremos viendo con calma. De momento, solo nos interesan dos:

a) pinMode(pin, modo). Este método sirve para indicar si un pin será de entrada (INPUT), que es su modo por defecto, o de salida (OUTPUT). Normalmente, se define el pin en la cabecera del sketch asignándolo a una variable y ya luego en el método setup se indica el modo. En nuestro caso, lo pondremos como OUTPUT, es decir, que se pondrá en estado alto, emitiendo 5V, cuando se lo indiquemos.

b) digitalWrite(pin, valor). Este método se utiliza para cambiar el estado de un pin, de alto (activo) a bajo (inactivo) y viceversa.

Así, combinando estos dos métodos con delay(milisegundos), que sirve para establecer una pausa en milisegundos en la ejecución del código, y referenciando el pin 13 en una variable llamada led, nuestro sketch podría ser algo así:

/* En la variable led guardamos el número 13, que nos servirá para referenciar ese pin más adelante */

int led = 13;

void setup() {

/* Indicamos el pin led, el 13, será de salida */

pinMode( led, OUTPUT );

}

/* Cada segundo (1000 milisegundos) le cambiamos de estado, encendiendo así el led a intervalos */

void loop() {

digitalWrite(led, HIGH);

delay(1000);

digitalWrite(led, LOW);

delay(1000);

}

Escrito esto, podemos darle al botón Cargar que se encuentra en la barra superior del IDE (el botón con la flechica) y si todo ha ido bien nuestro led se pondrá a parpadear de forma intermitente. ¿Chulo, no?

|| Tags: , , ,

valoración de los lectores sobre arduino: 1. introducción

  • estrellica valoración positiva
  • estrellica valoración positiva
  • estrellica valoración positiva
  • estrellica valoración positiva
  • estrellica valoración positiva
  • 5 sobre 5 (4 votos)

¿Te ha parecido útil o interesante esta entrada?
dormido, valoración 1 nadapensativo, valoración 2 un poco sonrisa, valoración 3 a medias guiño, valoración 4 bastante aplauso, valoración 5 mucho

Tú opinión es muy importante, gracias por compartirla!

Aportar un comentario

*