Arduino
Arduino
Programación orientada a objetos (POO) Se trata de una técnica que aumenta considerablemente la
velocidad de desarrollo de los programas gracias a la reutilización de los objetos. El elemento principal de
la programación orientada a objetos es el objeto. El objeto es un conjunto complejo de datos y programas
que poseen estructura y forman parte de una organización. Un objeto contiene varios datos bien
estructurados y pueden ser visibles o no dependiendo del programador y las acciones del programa en
ese momento.
PROGRAMACION ARDUINO
Programar Arduino consiste en traducir a líneas de código las tareas automatizadas que queremos hacer
leyendo de los sensores y en función de las condiciones del entorno programar la interacción con el
mundo exterior mediante unos actuadores.
Arduino proporciona un entorno de programación sencillo y potente para programar, pero además incluye
las herramientas necesarias para compilar el programa y “quemar” el programa ya compilado en la
memoria flash del microcontrolador. Además el IDE nos ofrece un sistema de gestión de librerías y
placas muy práctico.
ELEMENTOS
En este ejemplo declaramos las variables led1 y led2, que bien podrían ser utilizadas para declarar las salidas digitales
que vamos a utilizar en Arduino para colocar ambos leds, de tal forma que podamos programar su encendido y apagado.
Utilizando variables nos evitamos poner el valor de esa salida digital en el código de forma constante, de tal forma que si
por alguna razón queremos cambiar esa salida digital y conectar un led que estaba conectado a la salida 13, a la 12, sólo
tendríamos que realizar ese cambio en la declaración de la variable, y no en todas las veces que la utilizamos en el código.
La función setup() es la parte encargada de recoger la configuración y loop() es la que contiene el programa que se
ejecutará cíclicamente (de ahí el término loop –bucle).
Ambas funciones son necesarias para que el programa trabaje. La función de configuración setup() debe contener la
declaración de las variables. Es la primera función a ejecutar en el programa, se ejecuta sólo una vez, y se utiliza por
ejemplo para configurar o inicializar las entradas/salidas digitales con la instrucción pinMode(), la comunicación por el
puerto serie y otras configuraciones iniciales.
La función loop() contiene el código que se ejecutará continuamente (lectura de entradas, activación de
salidas, etc) Esta función es el núcleo de todos los programas de Arduino y la que realiza la mayor parte
del trabajo..
Como se observa en este bloque de código cada instrucción acaba con ; y los comentarios se indican con
// al principincio de la línea que va a ser «comentada». Al igual que en el lenguaje de programación C se
pueden introducir bloques de comentarios con /* …líneas de código */, de tal forma que podemos
escribir un comentario literal informativo de nuestro código en varias líneas empezando y acabando con
estos símbolos.
● ArduBlock – construido para aquellos que empiezan a programar. En lugar de escribir código aquí
se construyen los programas de forma visual usando bloques que contienen las instrucciones. Es lo
equivalente a Scratch, un lenguaje de bloques creado en el MIT para enseñar a los niños a
programar. Cabe decir que aunque parece un lenguaje de principiantes, puede servir como una
introducción a lenguajes ya más sofisticados más adelante.
● Snap4Arduino – se basa en el lenguaje de tomar y soltar (drag&drop) desarrollado en Berkeley.
este lenguaje ofrece una experiencia ligeramente diferente a la de ArduBlock. El método para armar
sus scripts se parece mucho al diseñar visualmente una interfaz, pero claramente el lenguaje está
diseñado para gente de más edad. Los autores indican que aún hay muchos bugs en el sistema,
pero que es completamente usable en general. Snap4Arduino no compila código, pero interactúa
con el Arduino mientras está conectado a la computadora.
● C# – Un lenguaje que cada vez es más popular y que es el estándar de facto por ejemplo en
Xamarin. En sí, se trata de la biblioteca CmdMessenger, con la que se puede ir más allá de la
simple conexión serial entre el Arduino y la computadora. CmdMessenger puede usarse dentro de
Visual Studio y a través del lenguaje C# poder llamar funciones y mandar y recibir comandos. En
muchos sentidos es un enfoque diferente a los lenguajes para Arduino y cómo se usan.
● Python – Aunque Python trabaja en general como un intérprete, es posible usarlo para comunicar
el dispositivo a través del puerto serial. Esto se hace de forma muy simple en cualquier sistema
Unix, pero si se usa PC o Mac, entonces PySerial puede ser de mucha ayuda. Se requiere una
copia de Python en la computadora para poder interactuar con el Arduino. Probablemente no sea
una buena idea introducirse en el lenguaje Python si se es principiante. Lo mejor es adquirir cierta
soltura programando para después pasar a un lenguaje con un sinfín de características como es
Python.
● Tiny Basic para Arduino – del cual ya hablamos en algún otro artículo.
● Sketch – el cual es uno de los lenguajes con más apoyo por parte de la comunidad de Arduino y se
usa para un buen número de proyectos. Este lenguaje es muy parecido a C en su sintaxis y es muy
sencillo de usar en general. Hay mucha documentación y es una posibilidad muy sólida frente a
otros que aún tienen dificultades, bugs o un reducido número de usuarios.