9788426727275.jpg

Arduino

Trucos y secretos

120 ideas para resolver

cualquier problema

Arduino

Trucos y secretos

120 ideas para resolver

cualquier problema

Paolo Aliverti

Sumario

1.Para empezar

1. Instalar Arduino

2. Cargar un sketch en Arduino

3. Programar Arduino con Arduino Web Editor

4. Cargar un sketch con Arduino Web Editor

5. Simular Arduino con TinkerCAD Circuits

6. Programar Arduino por bloques con Bitbloq

2.Programar Arduino

7. Crear un sketch vacío

8. Utilizar una variable

9. Definir una constante

10. Manipular cadenas de caracteres

11. Utilizar las cadenas

12. Convertir una variable de un tipo a otro

13. Repetir una operación

14. Utilizar un array

15. Obtener la longitud de un array

16. Copiar o ampliar un array

17. Utilizar arrays bidimensionales (matrices)

18. Definir una prueba simple

19. Definir una prueba con más de una alternativa

20. Definir una función

21. Crear clases y objetos

22. Generar números aleatorios

23. Encontrar el número más alto en un array

24. Ordenar una matriz de números

25. Rellenar un array de números aleatorios

26. Transformar una cadena en una matriz (tokenizar)

27. Gestionar índices múltiples y periódicos

28. Trabajar con bits

29. Crear un módulo

30. Utilizar librerías externas

31. Crear librerías propias

3.Los básicos: LED y botones

32. Encender un LED

33. Controlar la luminosidad de un LED

34. Utilizar un LED RGB

35. Crear un PWM en todos los pines (PWM software)

36. Generar una secuencia aleatoria de númerospara encender varios LED

37. Conectar botones

38. Debouncing

39. Mantener el estado de un botón

40. Identificar la pulsación y la liberación de un botón (bordes ascendentes y descendentes)

41. Medir el tiempo de pulsación de un botón

42. Obtener clics múltiples sobre un botón

43. Utilizar una entrada analógica

44. Botón en línea analógica

45. Utilizar un trimmer para configurar parámetros

46. Insertar pausas «largas»

47. Ganar seis pines digitales

48. Utilizar la consola para enviar y recibir comandos

49. Encender cuatro LED en secuencia con un botón

50. Convertir un valor de un intervalo al otro

51. Adivina el LED (programa por estados)

53. Controlar el llenado de una bañera (máquina con estados)

54. Encender una caldera

55. Simon

56. Marcar un número pulsando varios botones

4.Los sensores

57. Alimentar a Arduino

58. Medir una tensión

59. Medir una corriente

60. Conectar un sensor de temperatura (termistor)

61. Conectar un sensor de temperatura LM35

62. Conectar un sensor de luz

63. Conectar un sensor para la humedad

64. Utilizar un sensor digital para humedad y temperatura

65. Detectar un gas

66. Detectar campos magnéticos

67. Detectar la inclinación con un sensor tilt

68. Detectar el movimiento con un PIR

69. Crear un botón táctil o touch sensor

70. Utilizar un sensor de infrarrojos para descodificar un mando a distancia

71. Encender la TV con Arduino

72. Detectar un obstáculo con un sensor infrarrojo

73. Medir la distancia con un sensor a ultrasonidos

74. Utilizar la fecha y la hora actuales

75. Utilizar un teclado numérico

76. Detectar la orientación o el movimiento con acelerómetros y giroscopios

78. Encontrar el norte en una brújula

79. Conocer la posición geográfica con un GPS

80. Conectar un micrófono y realizar un clap control

81. Conectar una fuente de audio

82. Leer etiquetas RFID

83. Aislar una entrada

5.Los actuadores y la visualizaciónde información

84. Encender una bombilla de 12 V con un transistor

85. Controlar un relé con un transistor

86. Encender una bombilla de 12 V con un MOSFET

87. Controlar la velocidad de un motor

88. Controlar la dirección de rotación de un motor c.c.

89. Utilizar un servomotor

90. Encender una bombilla a 220 V

91. Interruptor crepuscular para una bombilla de 220 V

92. Utilizar un motor paso a paso (stepper)

93. Aislar las salidas

94. Aumentar las salidas con un registro de desplazamiento

95. Utilizar una pantalla de siete segmentos

96. Utilizar una pantalla LCD

97. Controlar una pantalla con solo dos cables (I2C)

98. Diseñar caracteres personalizados en una pantalla LCD

99. Crear un terminal de pantalla LCD

100. Crear un menú multinivel con una pantalla LCD

101. Conectar una pantalla gráfica TFT

102. Generar sonidos

103. LED NeoPixel

104. Generar una señal analógica

105. Conectar un amplificador

106. Controlar un potenciómetro digital

107. Reproducir un archivo de audio mp3 o wav

6.Comunicar e intercambiar datos

108. Añadir un nuevo puerto serie (SoftwareSerial)

109. Conectarse a un puerto RS232

110. Conectarse con un puerto RS485

111. Comunicar dos arduinos con el protocolo I2C

112. Comunicar dos arduinos con el protocolo SPI

113. Controlar Arduino con Firmata

114. Utilizar Arduino como consola para Processing

115. Controlar un LED por Bluetooth con un smartphone

116. Encender un LED con Python

117. Transmitir datos de Arduino a Python

118. Conectarse a Internet y ver una página web

119. Arduino como servidor web

120. Publicar una página web dinámica

121. Encender un LED con el navegador

122. Enviar un e-mail con Arduino pulsando un botón

123. Enviar SMS con Arduino

124. Recibir SMS

125. Leer y escribir un archivo desde una tarjeta SD

126. Generar una señal de TV

127. Emular un ratón USB

128. Emular un teclado USB

7.Índice analítico

Para empezar

En esta sección, encontrarás respuesta a los problemas más comunes de instalación y configuración de Arduino. Además, verás distintas alternativas para escribir proyectos y cargarlos en la placa, escribiendo código o colocando bloques.

La primera vez que nos acercamos a un nuevo producto, todo nos parece difícil y oscuro. Incluso Arduino, aunque pueda parecer sencillo, puede mostrar dificultades al inicio. Los problemas mayores surgen durante la fase de instalación, si bien con el tiempo el proceso de setup() ha sido mejorado y, actualmente, no es habitual tener ningún problema. Con las primeras placas, como Arduino Diecimila o Duemilanove, siempre surgía el drama de la instalación de los controladores por el puerto serie, caso que, hoy en día, es muy extraño que ocurra.

En esta primera sección encontrarás algunos «trucos» para resolver los problemas que podrías encontrar en la fase de instalación y configuración del producto. El método clásico para programar Arduino es el de utilizar su entorno de desarrollo (IDE). Hoy en día es posible programar Arduino también con plataformas en la nube (online) e, incluso, simularlo, de manera que la mayoría de los proyectos o sketch y de los ejemplos se pueden probar aun sin disponer de una placa real.

El gran éxito que ha obtenido Scratch (https://scratch.mit.edu), un sistema desarrollado por el MIT para escribir código colocando elementos gráficos, también ha llegado a Arduino, definiendo casi un estándar para este tipo de interfaz de programación. Por esta razón se pueden encontrar sistemas como TinkerCAD Circuits y Bitbloq con los cuales la programación de Arduino se lleva a cabo mediante bloques. Con estos métodos es complicado escribir código complejo, pero son muy eficaces para que niños y principiantes se acerquen con éxito a la programación.

1. Instalar Arduino

Descarga Arduino IDE desde el sitio web http://www.arduino.cc/en/Main/Software y sigue las instrucciones que te proporciona el sistema (Windows, Mac o Linux). Es imprescindible que instales Arduino IDE en tu ordenador para poder programar Arduino.

Figura 1.1 – Descarga del software para Arduino.

Al detalle

Visita la dirección web http://www.arduino.cc/en/Main/Software y descarga la última versión del programa. En el momento de escribir este libro, la versión publicada es la 1.8.5 y está disponible para Windows, Mac OS X y Linux. Elige la versión compatible con tu sistema y descárgala en una carpeta.

Windows

El procedimiento de instalación de Arduino es en general bastante sencillo.

Si trabajas con Windows, puedes consultar las instrucciones publicadas en el sitio web de Arduino (http://www.arduino.cc/en/Guide/Windows).

Para empezar, consigue una placa Arduino y un cable para conectarla al ordenador. El cable depende de la versión de Arduino que hayas comprado. Para la más habitual, Arduino Uno, necesitarás un cable USB tipo A-B, de los que se utilizan para las impresoras (Figura 1.2). El conector USB macho tipo B es de forma rectangular, mientras que el conector macho de tipo A tiene forma cuadrada, con dos bordes redondeados.

Si dispones de un Arduino Mega, un Due o un Leonardo, deberás utilizar un cable micro-USB: el cable que se utiliza normalmente para cargar los teléfonos móviles Android.

Figura 1.2 – Cable USB de tipo A-B, adecuado para Arduino Uno.

Si la placa es nueva, conecta el cable y comprueba que el conector encaja bien en la clavija. Si utilizas un cable micro-USB, fíjate porque, aunque la toma micro-USB se encuentra soldada sobre el circuito impreso, es muy fácil romperla con una pequeña flexión.

Conecta Arduino al ordenador: la placa debería encenderse. Todas las placas Arduino cuentan, como mínimo, con un LED que empezará a parpadear, es decir, indicará algún tipo de actividad. Probablemente1 Windows detectará la presencia de nuevo hardware y solicitará la búsqueda o instalación de los nuevos controladores. Con las últimas versiones del programa, el procedimiento de instalación se ha simplificado notablemente y resulta muy raro tener que instalar dichos controladores de forma manual, si bien no lo es para algunas placas en concreto.

La descripción oficial del procedimiento de instalación, en el sitio web de Arduino, dice:

1.Conecta Arduino al ordenador y espera a que Windows inicie el proceso de instalación de los controladores hasta que la instalación falle.

2.Abre el Panel de control, pulsa en «Sistema y seguridad». Luego, en «Sistema».

3.En la ventana «Sistema», abre «Administrador de dispositivos».

4.En la lista de hardware, busca la opción «Puertos (COM y LPT)». Entre las opciones, deberías ver un puerto denominado «Arduino Uno (COMxx)». Si no encuentras el periférico, busca en «Otros dispositivos» o «Dispositivos desconocidos».

5.Pulsa con el botón derecho del ratón sobre «Arduino Uno (COMxx)» y elige «Actualizar el software de controlador».

6.Elige «Examinar las carpetas para buscar el controlador».

7.Navega por las carpetas donde has descargado y desempaquetado el programa de Arduino y localiza el archivo arduino.inf que encontrarás en la carpeta «Driver» (¡no en la carpeta «FTDI USB Drivers»!). En las versiones más antiguas de Arduino IDE (hasta la 1.0.3) este archivo de denomina Arduino Uno.inf.

8.Windows reconocerá el controlador y la instalación finalizará.

Ya puedes iniciar Arduino pulsando sobre el icono que aparece en el Escritorio o en el menú de inicio.

Mac OS X

Para OS X, el procedimiento de instalación es aún más sencillo. Puedes consultar las instrucciones en el sitio web de Arduino (http://www.arduino.cc/en/Guide/MacOSX).

Debes descargar un archivo comprimido (.zip) en tu ordenador. Normalmente, dicho archivo acaba en la carpeta «Descargas» o en el Escritorio. Descomprime el archivo con un doble clic y verás otro archivo con el nombre Arduino.app: arrástralo a la carpeta «Aplicaciones».

Por lo general, con las nuevas placas no deberás hacer nada más, ni tendrás que instalar ningún tipo de controlador. Los controladores FTDI te servirán en el caso de que quieras utilizar una placa «Duemilanove». Puedes encontrar estos controladores en el sitio web de FTCI (http://www.ftdichip.com/Drivers/VCP.htm).

Inicia Arduino con un doble clic sobre el icono situado dentro de la carpeta «Aplicaciones».

GNU/Linux

Desde la versión diez de Ubuntu, puedes encontrar Arduino en los repositorios de sistema («Universe»). Utiliza synaptic para localizar el paquete e instalarlo. Si no, puedes abrir un terminal y escribir:

sudo apt-get update && sudo apt-get install arduino arduino-core

Deberás introducir tu contraseña porque estás utilizando el comando sudo. Cuando finalice la instalación, Arduino estará entre los programas instalados.

Si el software no se inicia, quizás tengas que instalar Java. Instala el paquete open-jdk utilizando synaptic o desde un terminal.

Comprueba si tu usuario forma parte del grupo «dialout», para que tenga los permisos para utilizar los puertos serie. De no ser así (o en caso de duda), únete al grupo con:

sudo usermod -aG dialout pablo

Sustituye pablo por el nombre de tu usuario. De forma alternativa, puedes lanzar Arduino desde un terminal utilizando el comando sudo:

sudo ./arduino

2. Cargar un sketch en Arduino

Para cargar un sketch en Arduino, pulsa el botón «Verify» situado en la barra de herramientas del IDE y, después, haz clic en «Upload». También se puede cargar directamente pulsando simplemente en «Upload».

Al detalle

Mientras trabajas con Arduino, tendrás que cargar continuamente nuevos sketch en la placa. La operación de carga es muy sencilla y rápida, y ha caracterizado el éxito de Arduino. Hace unos años, el procedimiento para programar un microcontrolador era bastante complejo, pero actualmente es cuestión de segundos. Para cargar un nuevo sketch en la placa, solo necesitas un cable USB del tipo adecuado. El cable depende del tipo de placa y, por desgracia, ¡cada modelo necesita uno distinto! Para programar Arduino Uno, la placa más utilizada, se necesita un cable USB de tipo A-B, de los que se utilizan habitualmente para conectar una impresora al ordenador (Figura 1.2). Si es la primera vez que cargas un sketch, antes debes instalar el software (consulta el truco núm. 1 para ver cómo hacerlo).

Para cargar un sketch en Arduino:

1.Inicia el entorno de programación de Arduino.

2.Crea tu prototipo y cabléalo a Arduino.

3.Escribe el sketch.

4.Conecta Arduino al ordenador.

5.En Tools > Port, comprueba que se encuentra seleccionado el puerto correcto. En Windows, debería aparecer una opción del tipo COMx (Arduino Uno); en Mac, verás algo como /dev/tty.usbmodemXXX, mientras que en GNU/Linux encontrarás /dev/ttyACM0 o /dev/ttyS0 o S1.

6.Comprueba también que el hardware configurado en Tools > Board corresponde a tu placa (por ejemplo, Arduino Uno).

Figura 1.3 – Ventana de Arduino con el sketch Blink cargado. En la barra de herramientas, puedes ver los botones «Verify», para controlar el código (1), y «Upload» para cargarlo en la placa (2).

7.Ahora, pulsa el botón «Verify» (el primero de la barra de herramientas).

8.El ordenador trabajará durante unos segundos mientras controla el código. Si todo ha ido bien y no hay errores, en la parte inferior de la ventana, en la consola, deberías ver solo texto de color blanco.

9.Pulsa «Upload», el segundo botón de la barra de herramientas, para transferir el programa a la placa.

10.Si no surge ningún problema de comunicación (normalmente, debido a la selección errónea del puerto), tras unos instantes el firmware será transferido y, en la parte inferior de la ventana, debería aparecer el texto «Done Uploading».

Si algo va mal:

Comprueba el puerto serie: ¿es el correcto? ¿Se ha instalado correctamente?

¿El cable está bien introducido en la placa? ¿Se encienden los LED?

¿Has elegido la placa correcta?

Figura 1.4 – Ventana de Arduino al finalizar la carga de un sketch.

3. Programar Arduino con Arduino Web Editor

Arduino Web Editor es la versión online del clásico Arduino IDE. Puedes programar Arduino utilizando simplemente un navegador con conexión a Internet. Para utilizar Arduino Web Editor, conéctate al sitio web https://create.arduino.cc/editor (es obligatorio registrarse).

Al detalle

Desde hace poco tiempo, se encuentra disponible también la versión online, llamada Arduino Web Editor, que permite programar online y guardar todos los proyectos en la nube, es decir, en los servidores de Arduino. Arduino Web Editor forma parte de la nueva plataforma Arduino Create, nacida para ayudar a los makers a escribir código, colaborar y encontrar soporte para sus proyectos. Con esta solución utilizarás siempre la versión más actualizada del IDE, completa con todas las librerías. Puedes empezar a utilizar la versión online de Arduino visitando la página de descarga (http://www.arduino.cc/en/Main/Software). Para poder acceder al editor, es necesario, obviamente, registrarse. El acceso se lleva a cabo desde una página donde hay que introducir los datos de inicio de sesión y una contraseña. Una vez te hayas registrado, recibirás un correo electrónico con un enlace para activar tu cuenta y completar el proceso de registro. Puedes acceder a Arduino Web Editor en la dirección web https://create.arduino.cc/editor.

Figura 1.5 – La página web de acceso al Web Editor.

Aun así, para utilizar Arduino Web Editor, necesitarás instalar un pequeño programa, denominado plugin, que funciona en el ordenador y se comunica con la placa y el Web Editor. Este plugin está disponible para Windows, Linux y Mac y se instala con un proceso similar al de Arduino IDE. El plugin reconoce la placa que se encuentra conectada al ordenador y administra la carga del firmware que has escrito online.

Figura1.6 – La página web de acceso al Web Editor.

El Web Editor se puede utilizar con los navegadores más comunes (Chrome, Firefox, Safari y Edge), aunque se recomienda utilizar con Chrome. Cuando te hayas identificado, verás a la izquierda, en la primera columna, el menú principal con las opciones:

Sketchbook: el lugar donde guardarás todos tus proyectos.

Examples: una sección con varios ejemplos que puedes descargar para entender el funcionamiento de Arduino.

Libraries: la sección de gestión de las librerías.

Serial Monitor: una sección para activar el Serial Monitor online y recibir y transmitir datos con Arduino conectado al ordenador.

Help: enlace y páginas de ayuda.

Preferences: las opciones de configuración del Web Editor.

La segunda columna solo contiene las opciones relativas a cada menú, mientras que la tercera es el área principal donde se escribe el código.

El Web Editor es muy cómodo porque te permite tener siempre disponibles tus proyectos estés donde estés y con la última versión del compilador y de las librerías. Desgraciadamente, a veces es más lento respecto al IDE de Arduino, puesto que trabaja online y los proyectos que creas se compilan en un servidor remoto y se descargan en tu ordenador.

4. Cargar un sketch con Arduino Web Editor

Después de haber escrito el sketch online, en Arduino Web Editor, pulsa «Verify» y, después, «Upload», igual que en el IDE de Arduino.

Al detalle

El procedimiento de carga de un sketch con Arduino Web Editor no es muy distinto al procedimiento clásico. Para utilizar Arduino Web Editor, debes registrarte en el sitio web e instalar el plugin en el ordenador (consulta el truco núm. 1).

Para cargar un sketch en Arduino Web Editor:

1.Entra en Arduino Web Editor (https://create.arduino.cc/editor) con tus datos de inicio de sesión y tu contraseña.

2.Crea tu primer prototipo y conéctalo a Arduino.

3.Escribe el sketch online.

4.Conecta Arduino a tu ordenador.

5.Comprueba que se encuentre seleccionada tu placa y el puerto serie correcto (Figura 1.7) mediante el menú desplegable situado al inicio del sketch.

6.Seguidamente, pulsa el botón «Verify» (muestra un signo con forma de «V» y está situado justo debajo del título del sketch).

7.Pulsa «Upload», el botón situado junto a «Verify», para transferir el programa desde los servidores de Arduino a tu placa (Figura 1.8).

8.Tras unos instantes, el firmware será transferido y, en la parte inferior de la ventana, debería aparecer el texto «Success: Done Uploading» (Figura 1.9).

Figura 1.7 – Antes de cargar el sketch con Arduino Web Editor, selecciona la placa y el puerto serie que hay que utilizar.

Figura 1.8 – Los botones «Verify» y «Upload» se encuentran justo debajo del título del sketch.

Figura 1.9 – Cuando finaliza la carga, en la parte inferior de la ventana, aparecerá el mensaje: «Success: Done Uploading».

5. Simular Arduino con TinkerCAD Circuits

Es posible montar y simular un circuito electrónico con Arduino utilizando TinkerCAD Circuits (http://www.tinkercad.com/), un software online que surgió, en un principio, para el modelado 3D pero que, desde hace poco tiempo, también incluye un módulo de diseño y simulación electrónica. Para poder utilizar TinkerCAD Circuits es preciso registrarse y funciona directamente desde el navegador.

Al detalle

¿Existe un simulador para Arduino? Mucha gente se hace esta pregunta y, de hecho, hace unos años, había algún software, aunque las distintas soluciones existentes presentaban todas limitaciones o algún que otro defecto para ser consideradas útiles. Hace poco, Autodesk ha preparado un módulo online para realizar y simular cualquier tipo de circuito electrónico.

Los simuladores existen desde hace mucho tiempo, aunque suelen ser programas difíciles de usar. Autodesk ha conseguido crear un programa integrado dentro de TinkerCAD, un conocido CAD online, muy sencillo de usar y bastante fiable. El simulador de Autodesk se denomina TinkerCAD Circuits y permite no solo simular circuitos analógicos, formados por LED, resistencias, condensadores y transistores, e integrados, sino también añadir Arduino, programarlo y depurarlo. Una auténtica maravilla.

Para utilizar TinkerCAD Circuits, es obligatorio registrarse gratuitamente en TinkerCAD (http://www.tinkercad.com/) introduciendo tu correo electrónico y una contraseña segura. También es posible activar un proceso de inicio de sesión en dos pasos con el envío de un código numérico para el acceso. Una vez registrado, ya se puede acceder a TonkerCAD. Para entrar en la sección Circuits, hay que pulsar sobre el enlace situado en la barra de herramientas de la izquierda. En el escritorio verás todos tus circuitos, con una previsualización y el título. Para crear un nuevo circuito, pulsa en «Create new Circuit». Los circuitos pueden ser privados o públicos. Para modificar la visibilidad, pulsa sobre el icono que muestra un engranaje en una esquina de la imagen de la previsualización y elige la opción «properties». Si decides hacer público un circuito, asegúrate de completar todas las informaciones necesarias y de introducir etiquetas y una descripción adecuada. Al situar el puntero del ratón sobre la previsualización aparece el texto «Tinker this»: pulsa sobre él para modificar el circuito.

Figura 1.10 – El escritorio de TinkerCAD Circuits.

Tanto el diseño como la modificación de un circuito son muy sencillos y rápidos. La configuración del área de trabajo es muy parecida a la de Fritzing. Los componentes se agrupan en la columna de la izquierda, dentro de un panel que cuenta con filtros y un campo de búsqueda. Para crear un circuito, empieza a arrastrar elementos hasta el área principal. Si te falta algo, intenta buscarlo. Por ejemplo, puedes pedir una bread- board escribiendo «breadboard» en el campo de búsqueda. Las conexiones eléctricas se trazan pulsando sobre un terminal libre y desplazando el ratón. El algoritmo de trazado de los cables es muy flexible y permite trazar líneas ordenadas y con curvas precisas.

Figura 1.11 – TinkerCAD permite crear circuitos electrónicos, así como utilizar Arduino.

Insertando en el área de trabajo una placa Arduino (hasta el momento solo está disponible Arduino Uno), podrás editar el código e, incluso, probarlo. Para acceder al código, hay que pulsar el botón «Code» situado en la barra de herramientas superior. Aparecerá un nuevo panel a la derecha, en el cual podrás empezar a escribir el código para Arduino. Cuando veas por primera vez el panel para escribir el código te sorprenderá: el código se encuentra definido por bloques, como en Scratch. ¡Incluso los más pequeños pueden empezar a experimentar con Arduino! Para cambiar a la vista «clásica» del sketch, abre el menú desplegable situado sobre el panel que contiene los bloques y elige «Code».

Prueba a escribir el código para que un LED parpadee:

void setup() {
 pinMode(13, OUTPUT);

}

void loop() {

digitalWrite(13, HIGH);

delay(1000); // Wait for 1000 millisecond(s)

digitalWrite(13, LOW);

delay(1000); // Wait for 1000 millisecond(s)

}

Comprueba que el código sea correcto y, después, pulsa «Start Simulation» para iniciar la simulación. Tras unos instantes, si no hay errores, ¡el LED de Arduino empezará a parpadear! Sencillo, ¿no?

Figura 1.12 – Para acceder al código de Arduino hay que pulsar el botón «Code».

El simulador también permite depurar paso a paso el código (debug). Insertando breakpoint, es decir, puntos de parada donde la ejecución del programa se detendrá, podrás analizar los valores memorizados en las variables y entender mejor lo que ocurre. Cuando el programa está en depuración, puedes hacerlo avanzar de breakpoint a break- point o bien línea por línea. Para activar el modo debug basta con pulsar sobre el botón que muestra el dibujo de una cucaracha estilizada. Los breakpoint se insertan simplemente pulsando al inicio de la línea.

Figura 1.13 – TinkerCAD Circuits incluye también el Serial Monitor y el debug.

Figura 1.14 – Incluso los más pequeños pueden escribir código para Arduino utilizando la programación por bloques estilo Scratch.

6. Programar Arduino por bloques con Bitbloq

Bitbloq es un entorno de programación online, por bloques, para Arduino. Para utilizarlo, hay que acceder desde Chrome a la siguiente dirección web: http://bitbloq.bq.com.

Al detalle

Bitbloq 2 es un lenguaje de programación por bloques que se puede utilizar para diseñar proyectos para Arduino. Se utiliza online y puede programar directamente las placas Arduino Uno mediante un plugin que debe instalarse en el ordenador. La forma de los bloques es muy parecida a la de Scratch y de TinkerCAD Circuits. A diferencia de este último, los circuitos y los proyectos no pueden ser simulados, sino solo creados. Para probarlos, es preciso cargarlos en una placa real, que puede ser un Arduino Uno, un Arduino Mega o algunos kits robóticos propuestos por Bitbloq. Las placas y el hardware son limitados y solo se pueden utilizar los componentes incluidos en los kits. No encontrarás bread- boards, resistencias ni transistores. Para programar con Bitbloq debes instalar el navegador Chrome y es recomendable registrarse, si bien se puede utilizar también como invitado.

El área de trabajo está dividida en tres columnas principales:

A la izquierda puedes ver un selector para activar las vistas «hardware», «software» y «project info».

En el centro, el área principal, donde se diseñan los circuitos y los bloques de código.

A la derecha, un panel con las piezas de hardware o los distintos tipos de bloques (según el modo de trabajo activo).

Para programar Arduino con Bitbloq:

1.Conecta una placa Arduino Uno al ordenador con un cable USB.

2.Abre Bitbloq 2 (http://bitbloq.bq.com) desde el navegador Chrome.

3.Entra introduciendo los datos de inicio de sesión y la contraseña, o bien trabaja como invitado.

4.Si has iniciado sesión, crea un nuevo proyecto.

5.Pulsa sobre la pestaña «Boards» y arrastra una placa Arduino Uno al área de trabajo (Figura 1.15).

Figura 1.15 – El área principal de trabajo de Bitbloq: arrastra una placa Arduino Uno para empezar a diseñar el código.

6.Añade los componentes de hardware necesarios arrastrándolos hasta el área de trabajo y conectándolos entre sí.

7.Pasa a la vista «Software» y crea un sketch arrastrando los bloques desde la columna lateral.

8.Pulsa en «Probar» (el botón con forma de «V» situado sobre el menú/barra de herramientas superior) y espera a que el programa se compile correctamente.

9.Pulsa sobre el botón «Subir» (muestra un símbolo en forma de flecha y está situado sobre el menú/barra de herramientas superior) y aparecerá una ventana que solicitará la descarga de la aplicación Web2Board. Selecciona el sistema operativo correcto e instala el plugin. Es posible que tengas que reiniciar el ordenador. Esta operación es necesaria solo la primera vez que se utiliza Bitbloq.

10.Tras este reinicio, vuelve a abrir Bitbloq 2, abre de nuevo el proyecto y pulsa una vez más sobre el botón «Cargar».

11.Cuando termine la carga, aparecerá un mensaje en la pantalla que informa de que todo ha ido bien: «Programa cargado con éxito».

Verás que las conexiones eléctricas están simplificadas. Para conectar un LED a Arduino, se indica un único cable; esto es así porque se prevé el uso de placas sencillas y kits robóticos que no necesitan un montaje complejo de los circuitos.

La sección de programación por bloques se divide en tres partes: una zona para definir variables globales (funciones y clases con visibilidad global), una zona Setup y una zona Loop.

Los bloques están agrupados en la columna de la derecha y organizados según su funcionalidad. Para añadir un bloque al sketch, basta con arrastrarlo hasta una de las tres zonas de trabajo, exactamente dentro del rectángulo «Drag a block here to start your program».

Los bloques insertados en la zona Setup se ejecutan al inicio del programa y se utilizan para determinar el comportamiento de los pines y de otras acciones que deben ejecutarse solo una vez al inicio del programa. Los bloques insertados en la zona Loop se repiten continuamente.

Si sientes curiosidad por ver cómo se crea el sketch, puedes pasar de la vista de bloques a la de código pulsando sobre «Blocks» o «Code».

Para hacer que un LED parpadee, primero debes conectar un LED a la placa (Figura 1.16) y, después, pasar a la sección «Software» para componer los bloques (Figura 1.17).

Figura 1.16 – Añade los componentes electrónicos arrastrándolos desde el panel lateral.

Figura 1.17 – En la sección Software puedes crear un sketch arrastrando los bloques desde el panel lateral.

No es necesario que especifiques el pin utilizado en la sección Setup. Para realizar el blink, arrastra un bloque «Switch on» desde el área «Components» (de color rojo), después, un bloque «Delay» desde la sección «Control» (color azul), un bloque «switch off» y otro «Delay» (Figura 1.18). Al mismo tiempo que el sketch gráfico, Bitbloq genera el correspondiente código, visible en la sección «Code» (Figura 1.19).

Completa el proyecto añadiendo un nombre y una descripción en la sección «Project Info».

Figura 1.18 – El código de un simple blink.

Figura 1.19 – Si sientes curiosidad, puedes echar un vistazo al código generado por Bitbloq.


1 El condicional es obligatorio dada la heterogénea variedad de configuraciones de hardware y las versiones de Windows.

Programar Arduino