Este contenido es un complemento práctico para los contenidos teóricos de los temas 4. Fundamentos de Computación Física, 5. Internet de las Cosas y 6. Robótica, de la asignatura Computación y Robótica de 2º y 3º de ESO.
🛠️ Materiales:
- 1 x Placa Arduino.
- 1 x Protoboard.
- 1 x LED.
- 1 x Resistencia de 220 ohmios.
- 2 x Cable Dupont macho-macho.
Todo entorno de programación que se precie dispone de lo que llamamos la Consola, que es un espacio que nos permite, entre otras cosas, mostrar información sobre algún elemento de nuestro interés. Esta consola en el caso de Arduino se llama monitor serial.
De esta manera, podemos hacer que mientras nuestro programa se está ejecutando vaya enviando información al monitor serial para nosotros poder comprobar por ejemplo qué color hemos enviado al LED, qué valor está usando un potenciómetro o qué cantidad de voltaje estamos enviando a un zumbador. Incluso podemos hacer lo contrario, podemos usar el monitor serial para introducir datos en el circuito.
Desde el punto de vista del programador, nos facilita mucho la tarea, porque nos ayuda a explicarnos qué está pasando en nuestro circuito.
Piensa en el monitor serial como en el cable que nos permite comunicar el ordenador con la placa Arduino y viceversa.
En nuestro Arduino IDE podemos acceder al Monitor Serie activando este icono:

Se nos abrirá una ventana que tiene este aspecto, que será donde irán apareciendo los mensajes que vayamos enviando desde nuestro programa:

Igualmente, podemos acceder al monitor serial en TinkerCad pulsando en Monitor en serie que verás en la parte de abajo de tu código:

Independientemente del entorno de programación en el que te encuentres -Arduino IDE o TinkerCad-, el código que controla el monitor serie es el mismo. Así que, vamos a ver cómo podemos usarlo para beneficiarnos de sus utilidades.

La instrucción de la línea 2 debemos incluirla siempre en el setup() de todos los programas donde queramos hacer uso del monitor. 9600 indica el Baud Rate -la velocidad a la que se va a comunicar la placa Arduino con el monitor- y se mide en baudios.
Para hacer nuestro primer ejemplo de su funcionamiento, vamos a crearnos una variable llamada contador, y la vamos a inicializar a 0. Luego en en loop() simplemente vamos a mostrar el valor que contiene la variable contador cada medio segundo:

Si ejecutas el programa anterior en la placa y pulsas en Serial Monitor, obtendrás esto:

Como puedes ver, lo que está pasando es que en el monitor serie está apareciendo el valor de la variable contador cada medio segundo. El problema es que es poco legible porque aparece cada valor a continuación del otro, sin ninguna separación. Para hacerlo más legible, podemos hacer que aparezca un valor en cada línea, escribiendo println en lugar de print:
Pero claro, cualquiera que vea esa ristra de números en la consola, no entenderá de donde vienen. Por eso, siempre es recomendable mostrar qué es lo que está apareciendo en el monitor. Así que vamos a volver a modificar nuestro código para que aparezca una salida más limpia:
Además, el monitor serie no sólo nos permite enviar información a la pantalla para ver qué está pasando, sino introducir datos para que el ordenador se los envíe a la placa.
Vamos a ver cómo podemos encender y apagar un LED utilizando el teclado del ordenador y el monitor serie.
El esquema de conexión ya lo tienes más que trabajado:

Ahora, en el código, le vamos a decir que cuando se pulse la letra e el LED debe encenderse y cuando se pulse la letra a el LED debe apagarse:

Fíjate en la línea 10, en la que comprobamos si el monitor serie está disponible. Y también en la línea 11 que es donde se lee la letra que ha introducido el usuario por teclado, y se guarda en la variable opción.
Como ya entiendes el funcionamiento del monitor serie, se pide que montes el circuito que controla el movimiento de un servomotor:
- Al inicio el servomotor debe moverse a su posición 0º.
- Después, la única manera de mover el servomotor será a través del monitor serie, de manera que si escribimos con el teclado A, B o C, el servomotor debe girar esta cantidad de grados respectivamente: 120, 60 o 45.
- Recuerda que el servomotor que usamos en clase tiene una amplitud de giro de 0 a 180º, por lo que tu programa debe controlar que el servomotor se mueva sólo cuando recibe una cantidad de grados de ese rango.
- Cinco segundos después de cada movimiento, el servomotor debe volver a su posición original.
Como siempre, ya sabes:
- Descarga en tu ordenador el archivo .ino
- Conecta la placa al ordenador.
- Abre Arduino IDE.
- Carga el programa y revisa que el código sea correcto.
- Desde Arduino IDE, guarda el programa en la placa.
- Desconecta la placa.
- Monta tu circuito sobre la mesa.
- Avisa al profesor para que lo revise.
- Solo si te da el visto bueno, puedes conectar la placa y comprobar que todo funciona correctamente.