Hoy os traemos un tutorial sobre Visualino, un programa basado en arduino muy fácil de utilizar ya que utiliza bloques para programar. El objetivo de este tutorial es aprender a programar un paso a nivel gracias a él y a unos cuantos componentes y sensores.
Primero de todo, nos tenemos que ir a la página oficial de Visualino y descargar el programa. Está disponible en múltiples plataformas y es gratuito. Una vez descargado tenemos que asegurarnos que también tenemos instalado el IDE de Arduino, ya que de lo contrario no podremos cargar nuestro programa en la placa. Aquí tenéis el enlace.
Una vez instalado todo el paquete, ejecutaremos el programa y nos aparecerá una interfaz como ésta:
Las partes principales del programa son las siguientes:
- 1-Barra de control: aquí tenemos las piezas de puzzle que necesitamos para programar nuestro proyecto. Se dividen en colores según su uso y funcionalidad.
- 2-Pieza maestra: es la pieza central de nuestro programa. Todas las piezas que coloquemos irán dentro de ella
- 3-Código nativo: Aquí podremos ver como se traduce nuestro programa hecho en puzzle a código real. En "herramientas" lo podemos esconder.
- 4-Barra de herramientas: Sirve para guardar nuestro progreso y subir nuestro programa al chip arduino
- 5-Basura: las piezas que no necesitamos podemos eliminarlas arrastrándolas a esta zona.
Nuestro paso a nivel va a estar formado por los siguientes elementos:
- Sensor de ultrasonidos: detectará cuando pasa el tren.
- Led Rojo: Indicará cuando está pasando el tren.
- Motor Servo. Motor que acciona la barrera, abriéndola o cerrándola.
- Alarma sonora. Nos indicará de manera acústica que el tren está pasando.
A parte de estos elementos necesitaremos un arduino donde meter el código que programemos en Visualino.
Siempre que empezamos un programa en arduino o cualquier otra versión del IDE como Visualino, tenemos que definir las variables que vamos a necesitar. Para definirlas nos vamos a la pestaña variables y seleccionamos la pieza "declarar variable global". Todas son de tipo entero (números).
En nuestro caso hemos definido 4 variables:
- Distancia_detección: Aquí definimos la distancia mínima de detección, en cm.
- Led: Definimos el PIN de arduino donde tenemos conectado el led rojo. En nuestro caso el PIN 13.
- Servo: Igual que con el Led, definimos el PIN de conexión.
- Zumbador: igual que con el Led y el servo, en este caso asignamos el valor de 5.
A continuación, para facilitar la compresión del programa, vamos a definir 6 funciones que van a controlar todas las acciones del paso a nivel. Para ello nos vamos a la pestaña funciones y seleccionamos la pieza que véis en la imagen de abajo.
Las funciones son las siguientes:
- Lectura_sensor_ultrasonidos: Como su nombre indica nos devuelve la distancia de detección que está midiendo el sensor. Declaramos una variable interna llamada Valor_sensor y la igualamos al bloque del sensor. El bloque del sensor lo encontraréis en Zum bloqs.
- Encender y apagar LEDROJO: Enciende y apaga el led. Lo que hacemos es escribir por el pin digital valores de ALTO y BAJO.
- Encender_alarma: Acciona el zumbador con un tono predeterminado de DO durante 5 segundos. El bloque del zumbador lo encontraréis en Zum bloqs.
- Abrir y cerrar Barrera: Abre y cierra la barrera según el ángulo que le indiquemos. El bloque del servo lo encontraréis en la pestaña Servo.
Por último vamos con el programa principal. Como ya hemos comentado antes, utilizar funciones nos va a facilitar mucho la programación y la lectura general. Primero sacaremos la pieza "SI" de la pestaña control. Haremos click en la estrella azul de su interior y añadiremos "de lo contrario". Ya estamos listos para acabar la programación.
En la condición lo que debemos de escribir es lo siguiente:
"Si la distancia que detecta el sensor de ultrasonidos es menor que 20 cm, entonces activa la secuencia de emergencia, sino no hagas nada".
Esta frase, en lenguaje de programación, equivale a comparar el resultado de la función Lectura_sensor_ultrasonidos con la variable distancia_detección. Si el valor es inferior, entonces encenderemos el led rojo, cerraremos la barrera y encenderemos la alarma. Una vez pasen 5 segundos, abriremos la barrera y apagaremos el led rojo. Si la lectura es superior a ese umbral, entonces no haremos nada, lo que significa tener abierta la barrera y el led rojo apagado.
Todas estas piezas las sacaremos de la pestaña funciones. La comparación la sacaremos de la pestaña lógica.
Una vez tengamos nuestro programa completo, toca subirlo a nuestra placa. Para subirlo pulsamos el botón subir. Antes de subirlo, os tenéis que asegurar que abajo a la derecha tenéis seleccionado el tipo de placa y el puerto COM de conexión.
Esperamos que os haya gustado el tutorial. En nuestra sección de CMcode tenéis más tutoriales dedicados a la programación.
¡Un saludo CMakers!