Introducción a la Programación en Arduino

¿Cómo programar en Arduino?

Toda persona ha deseado tener la capacidad de controlar las cosas utilizando tecnología, sentir que tenemos el control. En el mundo de la electrónica contamos con una gran variedad de herramientas para realizar sistemas autómatas. Sin embargo, la curva de aprendizaje siempre es algo complicada y bastante prolongada. Si te has preguntado ¿Cómo programar en Arduino? quédate. En este post encontrarás una breve pero completa introducción a la Programación en Arduino, con ejemplos prácticos, código explicado y materiales utilizados.


El proyecto llamado Arduino®, inició en el año 2005 como un proyecto de tesis de maestría (si, algunas tesis si salen del librero). Iniciado con la ideología de ser una herramienta fácil de usar, incluso por personas que no tuvieran conocimientos sólidos de programación. Asimismo, se buscaba que fuera una plataforma económica, con una interfaz de software muy intuitiva, sin la necesidad de tener una interfaz de programador externo y además que todo fuera desarrollado como hardware libre. Con estas ideas, se podría obtener una plataforma para el prototipado de proyectos en un corto plazo y además con la capacidad de ser comercializados.

Tipos de Arduino

Sin entrar en muchos detalles técnicos, existen muchos tipos de Arduino, mencionando que se han desarrollado diversas tarjetas de desarrollo con capacidades aumentadas o disminuidas. Por ejemplo, tarjetas Arduino de bajo consumo energético, o de gran cantidad de puertos. Al ser de hardware libre, en el mercado podemos encontrar tarjetas originales y genéricas.

Dentro de las tarjetas que podemos obtener del mercado, la más utilizada es la tarjeta Arduino Uno (pásate a esta página si quieres conocer más acerca de la placa y donde comprarla al mejor precio), la cual contiene lo necesario hablando de capacidades y puertos de conexión, para la mayoría de los proyectos. Es la tarjeta más comercializada por lo que podremos encontrar muy buenos precios en el mercado de genéricos.

Arduino UNO original vs genérico
Arduino Uno Original vs Genérico

Puertos

El Arduino contiene distintas maneras de comunicarse con objetos de la vida real: sensores, botones, motores, lámparas, entre muchos otros. Para lograr esto, la tarjeta electrónica está equipada con entradas analógicas y digitales. Para realizar comunicaciones específicas, las tarjetas cuentan además con un puerto de comunicación Serial-USB, I2C y SPI, esto dependiendo de la versión que utilices. Mas adelante conforme avancemos, iré explicando más a detalle cada protocolo de comunicación mencionado.

Lenguaje de Programación

El lenguaje utilizado para programar nuestro Arduino está basado en C++, por lo que con la mínima experiencia en programación deberías de ser capaz de entenderlo. Sin embargo, no te preocupes, yo te iré guiando conforme avancemos.

Los elementos más básicos que hay que tomar en cuenta son las llaves {} que se utilizan para bloques de programación, donde irán todas las instrucciones o líneas de código que se ejecutarán dentro de las funciones. Los ; utilizados para indicar el fin de cada línea de código. Sin estos dos elementos principales, nuestro compilador nos enviará un mensaje de error.

Algo muy utilizado en nuestros programas son los bloques o líneas con comentarios, con ellos podremos ir anotando mensajes que el compilador ignorará y no los programará, por así decirlo. Para utilizarlos se pueden insertar para una línea // y para un bloque de comentarios /* XXX */ donde las “XXX” pueden ser reemplazadas por las líneas de código que desees, todo lo que esté envuelto entre las barras quedará como comentario.

La estructura general de un programa para Arduino se muestra a continuación:

Instalación e Interfaz

Bueno, manos a la obra. Lo primero que deberemos de hacer es acceder a la página oficial de Arduino, luego a la pestaña de Software/Downloads, posteriormente buscar el sistema operativo correspondiente. Existen versiones para Windows, Mac OS X y Linux, para todos prácticamente. Una vez que le des click a la versión que te corresponde, te preguntará si quiere apoyar al proyecto Arduino® donando dinero, no es obligatorio, por lo que podrás optar por solamente descargar el software.

Una vez que tengas todo correctamente instalado, procederemos a realizar nuestro primer programa. Por cierto, antes de utilizarlo por primera vez asegúrate de seleccionar dónde se guardarán tus proyectos por defecto, ya que aquí deberán estar las librerías que nos vayamos descargando.

Primer Programa

Una vez que tengamos todo instalado, nuestra tarjeta de Arduino conectada a las computadora, arrancamos el programa. Lo primero que deberemos revisar es que la tarjeta sea detectada por la computadora, para eso deberemos de revisar en la pestaña Herramientas/Placa:, si no lo detecta automáticamente, deberemos elegir nuestra placa de la lista que se despliega. Asimismo, deberemos revisar en la pestaña Herremientas/Puerto el puerto USB adecuado, donde esté conectado nuestro Arduino. Esto no debería representar problema alguno ya que la mayoría de las veces lo detecta de manera automática.

Pestaña Herramientas
Pestaña Herramientas.

Ya que nuestra tarjeta está conectada, estamos listos para realizar nuestro primer programa.

Lo primero que programaremos será lo más simple del mundo pero bastante didáctico, encender y apagar un Diodo Emisor de Luz (LED), un pequeño “foquito”. Con esto estaremos manipulando las salidas de nuestra placa. Para este ejemplo yo utilizaré un Arduino UNO, como el de la foto más arriba. Yo te recomiendo que inicies con esta placa ya que es muy versátil y económica, la mayoría de tus proyectos se podrán resolver con ella.

Lo resolveremos de dos maneras.

1. Con el LED incorporado en la tarjeta

LED Incorporado a la tarjeta Arduino UNO
LED Incorporado a la tarjeta Arduino UNO.

El código es el siguiente:

La función de configuración únicamente la estamos utilizando para indicarle al Arduino que utilizaremos un pin (terminar física de la tarjeta) como salida, para nuestro caso utilizamos el LED incorporado a la tarjeta llamado LED_BUILTIN , y le indicamos que se utilizará como puerto de salida OUTPUT, por lo que deducimos con esto que la función utilizada es la llamada pinMode(). Observa que las funciones siempre se utilizan con su nombre y luego un par de paréntesis, donde en ellos indicaremos los parámetros con los que alimentaremos la función. Para este caso, la función recibe dos parámetros de entrada: el pin a utilizar y el tipo. pinMode(pin,TIPO). El pin a utilizar puede ser mencionado con su nombre o con el número del pin físico que necesitemos. Los pines disponibles se consultan en la tarjeta o en su manual, para el Arduino UNO Click Aquí. No se preocupen, poco a poco los iremos conociendo todos.

Bien, ya que tenemos configurado nuestro pin como salida, nos vamos a la función principal llamada loop, en ella pondremos todas las líneas de código que necesitamos ejecutar de manera indefinida. Para indicarle a la tarjeta que realice algo con el pin, utilizaremos la función digitalWrite(pin,ESTADO), que nos servirá para enviarle dos cosas, o que encienda (voltaje en alto: 5 volts), o que se apague (voltaje en bajo: 0 volts). Para lo que tenemos que enviarle a la función dos parámetros, que pin es el que se afectará y cuál es el estado: HIGH para encender y LOW para apagar.

Lo siguiente que encontramos en el código es un retardo; es decir, indicarle a la tarjeta que haga una pausa, esta se la indicamos con la función delay(tiempo), indicándole cuantos milisegundos (ms) deberá esperar. Para nuestro ejemplo 1000 ms para 1 segundo.

¿Te está gustando este artículo?

Te invito a descargar totalmente gratis la Guía de Inicio en Arduino

Encontrarás mucha información extra, conceptos y sobre todo podrás llevarla contigo en todo momento

2. Con un LED externo

Para esto necesitamos un LED, una resistencia y un pequeño protoboard, en nuestro ejemplo utilizaremos estos:

Materiales LED
Materiales LED.

Utilizaremos una resistencia de 470 Ω, aunque puede ser cualquier otro similar, esto es para limitar el voltaje que le tocará al LED, ya que los LEDs consumen 1.7 volts, como la salida del Arduino por su pin es de 5 volts, la resistencia absorberá el resto. El diagrama de conexiones es el siguiente:

Conexión LED
Diagrama de conexiones para LED.

Recuerda que el LED tiene polaridad, es decir, una de sus patitas, la mas larga, se considera la terminal positiva, misma que irá directo a la salida No. 12 de nuestro Arduino, que será el utilizado como salida. La patita mas corta será considerada la terminal negativa, misma que irá hasta el pin de GND (tierra) de nuestro Arduino. La resistencia puede ir antes o después del LED, es indistinto. La imagen siguiente es como nos queda finalmente implementado, te recomiendo utilizar cables con pines para facilitar la conexión.

Conexión al Arduino UNO.
Conexión al Arduino UNO.

El código quedaría como el siguiente:

Si observan con atención, lo único que cambiamos fue el nombre del pin, ahora será el pin No. 12, por lo que lo indicamos en el programa.

Si estás utilizando un LED de baja intensidad, como en este ejemplo, recuerdo observarlo desde la parte superior para poder ver con más claridad su brillo.

Te animo a que modifiques el programa a tu antojo, variando los tiempos de encendido y apagado, utilizando más LEDs y distintas salidas de la placa.


Hasta aquí tenemos nuestro primer programa, espero que haya sido de tu agrado. Espera más tutoriales y recuerda enviarme tus comentarios y sugerencias.

Recuerda visitar nuestras redes sociales

Deja un comentario