Ardublockly es una plataforma online para programar Arduino, mediante bloques. Desde el menú principal podremos acceder a esta sección en la que podremos ahorrarnos mucho tiempo para desarrollar los programas más sencillos.
Lo mejor de todo es que se pueden crear bloques personalizados para crear código con Arduino y facilitar la comprensión de la programación de nuestros robots sin los errores típicos que nos hacen perder tiempo.
Durante el desarrollo de los tutoriales iré añadiendo los bloques más apropiados para facilitar la aplicación de algunos conceptos complejos y desarrollar rapidamente nuestros propios robots.
En esencia, he introducido algunas secciones y bloques adicionales con algunas de las librerías que considero que son más importantes para tener un robot medianamente robusto.
En principio ya vienen los bloques genéricos:
- Variables
- Funciones
- Logica (Logic)
- Bucles (Loops)
- Matemáticas (Math)
- Texto
- Audio
Otros que se aplican a la placa Arduino
- Entradas y salidas (Input / Output)
- Time
- Comms – Comunicación Serial, SoftwareSerial y SPI
- Motors – Servomotores y
Y otros bloques personalizados para integrar otras librerías útiles para crear robots más complejos.
- Car Control – Ultrasonidos y motores
- IMU – Acelerómetro, giroscopio y filtro Madgwick
- Parser – Parseado de Strings
- Bloom
- AdafruitMotorShield – Bloques para el Motor Shield de Adafruit
Para utilizar algunas de estas secciones voy a hacer un pequeño repaso para poder extender las posibilidades que nos ofrecen estos bloques.
Variables
Las variables siempre hay de definirlas con un tipo a escoger desde la misma sección de variables:
- int
- char
- long
- float
- String
De esta manera el código se generará adecuadamente a un lateral con el tipo asignado y nunca se podrá utilizar como otro tipo distinto ya que el lenguaje de Arduino está tipado. En caso de querer convertir los tipos de estas variables se puede hacer uso de otras funciones de conversión definidas que se proporcionan con otros bloques adicionales.
Funciones
Las funciones nos permiten integrar variables de salida, pero además podemos seleccionar variables de entrada con el tipo asignado que se interpretará en el código de forma correcta.
SofwareSerial y comunicaciones
Un apartado que considero importante es la comunicación por serie con la librería de SoftwareSerial de la que ya he hablado en otras muchas ocasiones.
SoftwareSerial es una librería nos permite establecer comunicación con otros dispositivos por serie RX y TX, que utilizaremos para las comunicaciones inalámbricas por Bluetooth, WiFi, entre otros…
Librerías personalizadas
Además de algunos bloques de utilidad he creado otras secciones para facilitar la programación de nuestro robot Smart Car Chassis, que iremos realizando durante las siguientes lecciones.
Entre ellas econtraremos algunas librerías de utilidad y funciones aplicadas para crear una programación apropiada en la robótica con Arduino.
Ejemplos
Por último, en la sección superior izquierda podremos encontrar una serie de ejemplos de programas que iré colgando con la que podremos rapidamente acceder a toda la programación de nuestros robots, además de guardar y cargar los mismos que desarrollemos desde la esquina superior derecha.
Ahora solamente nos tendremos que preocupar de crear una estructura correcta en nuestros programas sin la necesidad de poseer conocimientos avanzados.
Ardublockly es un proyecto basado en la programación por bloques desarrollada por Google con Blockly y que se utiliza en muchísimas plataformas de enseñanza y aprendizaje en ciencias de la computación para adaptar esta barrera que es la programación para los más jóvenes y que sirve de transición para comenzar a programar robots de forma divertida e intuitiva.