Arduino en LliureX 19

1. Introducción



Arduino es un sistema muy utiltizado hoy en día para programar microcontroladores de una forma fácil e intuitiva. Usar Arduino no requiere de conocimientos informáticos elevados, aunque, eso sí, hay que tener ciertos conocimientos de programación para poder usarlo.

Antes de usar Arduino nos hemos de hacer con una placa Arduino. Podemos encontrar numerosos tipos de placas en la misma página de Arduino por unos 20 euros, aunque también se pueden encontrar modelos compatibles de menor calidad por unos 4 €. Os recomendamos la placa UNO R3, ya que es una de la más usadas. Hay un montón de dispositivos que con el que podemos hacer muchísimos proyectos tanto en el aula de informática como en en el taller de tecnología, desde pantallas LCDs, sensores de todo tipos, dispositivos GPS, etc... Lo mejor de todo ello es que prácticamente todos los dispositivos que adquieras para Arduino tienen una librería (en C) asociada que nos permite hacer uso de ellos prácticamente con unos pocos conocimientos de C.

Todos estods dispositicos también stán en su versión clónica, que aunque no tienen la misma calidad que el original, siempre nos podrá proporcionar dispositivos a un menor coste.

En LliureX tienes dos formas para poder usar Arduino:

  • Con el IDE de Arduino (que requiere conocimietos de C)
  • Con Scratch for Arduino (S4A). Aunque ya existe una evolución llamada Snap for Arduino.
  • Con mblock que sirve tanto para arduino como robots basados en Arduino.

En ambos casos, antes de empezar a programar nuestro dispositivo, hemos de instalar el IDE de Arduino.

2. Instalación del IDE Arduino



Para instalar el IDE de Arduino tenemos dos opciones, la segunda es la más recomendable:

Instalar la versión de los repositorios de ubuntu. Para ello, hemos de instalar el paquete Arduino y Arduino-core, dentro de este paquete ya está incluido el IDE Arduino que aunque veamos como un paquete diferente llamado Arduino IDE, NO hace falta instalarlo. Podemos instalarlo desde synaptic:


001 Ardu


Buscamos los paquetes y los seleccionamos:


002 Ardu


También podemos instalarlo rápidamente a través de la terminal con:

sudo apt install arduino arduino-core


Una vez instalados los paquetes podemos encontrar el IDE en el menú Inicio > Electrónica > Arduino IDE.


003 Ardu



La otra opción, y la más recomendable, es instalar solamente el paquete arduino-ide, ya que este paquete es el más actualizado y el equipo de LliureX ha corregido algunos errores de permisos que solían aparecer.


004 Ardu


También podemos instalarlo rápidamente a través de la terminal con:

sudo apt install arduino-ide


Una vez instalado el programa nos aparece en Inicio > Desarrollo > Arduino IDE:


005 Ardu

3. Instalación de Arduino-ide en un cliente ligero o semiligero.



Para instalar el arduino-ide en una imagen para una cliente ligero o semiligero deberemos entrar en el admincenter de lliurex (esto solo lo podrá hacer el administrador del sistema) e instalar el programa arduino-ide. Tenéis todo el proceso detallado aquí.

De esta manera solo tendremos que instalar el paquete en una única imagen y será accesible para todos los usuarios donde podrán realizar las prácticas.

4. Uso de Arduino-web



Existe una alternativa que es el uso de Arduino desde una página web, esta opción solo esta recomendada para conexiones con un amplio ancho de banda. Podemos encontrar toda la información aquí.

5. Arduino IDE



Cuando accedamos al Arduino IDE (version 1.6.7) nos encontramos con al siguiente ventana:


6 Arduino



Arduino IDE es capaz de detectar qué placa tienes instalada y qué puerto USB estás usando. Aunque no está de más asegurarse. Para ello, antes de empezar a programar hemos de decirle al programa qué tarjeta vamos a usar, vamos a Herramientas > Placa y escogemos nuestro modelo de tarjeta.


7 Arduino


Luego en Herramientas > Puerto le indicamos qué USB vamos a utilizar:


8 Arduino


Y ya está configurada la placa. Ahora podemos coger uno de los numerosos ejemplos que tenemos para poder cargar un programa y ver cómo todo funciona correctamente. En este caso vamos a coger el ejemplo de una pantalla LCD 16x2:


9 Arduino

6. Ejemplo Serial Input



En nuestro caso lo hemos modificado un poco para que funcione con nuestro shield, pero tenéis todas la información (eso sí, en inglés) relacionada con cada ejemplo en un enlace en los comentarios del principio del programa:

/* LiquidCrystal Library - Serial Input Demonstrates the use a 16x2 LCD display. The LiquidCrystal library works with all LCD displays that are compatible with the Hitachi HD44780 driver. There are many of them out there, and you can usually tell them by the 16-pin interface. This sketch displays text sent over the serial port (e.g. from the Serial Monitor) on an attached LCD. The circuit: * LCD RS pin to digital pin 12 * LCD Enable pin to digital pin 11 * LCD D4 pin to digital pin 5 * LCD D5 pin to digital pin 4 * LCD D6 pin to digital pin 3 * LCD D7 pin to digital pin 2 * LCD R/W pin to ground * 10K resistor: * ends to +5V and ground * wiper to LCD VO pin (pin 3) Library originally added 18 Apr 2008 by David A. Mellis library modified 5 Jul 2009 by Limor Fried (http://www.ladyada.net) example added 9 Jul 2009 by Tom Igoe modified 22 Nov 2010 by Tom Igoe This example code is in the public domain. http://arduino.cc/en/Tutorial/LiquidCrystalSerial */ // include the library code: #include <LiquidCrystal.h> // initialize the library with the numbers of the interface pins LiquidCrystal lcd(8, 9, 4, 5, 6, 7); void setup(){ // set up the LCD's number of columns and rows: lcd.begin(16, 2); // initialize the serial communications: Serial.begin(9600); } void loop() { // when characters arrive over the serial port... if (Serial.available()) { // wait a bit for the entire message to arrive delay(100); // clear the screen lcd.clear(); // read all the available characters while (Serial.available() > 0) { // display each character to the LCD lcd.write(Serial.read()); } } }


Al principio hace una pequeña explicación sobre cómo funciona el programa, el copyright y al final el enlace donde nos aparece una explicación mucho más detallada del programa, con los esquemas de montaje, etc...


Para cargar el programa pulsamos sobre el botón: 12 Arduino situado en la parte superior izquierda, el botón de al lado nos sirve para verificar el código en caso de que haya algún error.


11 Arduino


El programa nos permite enviar cadenas de texto a la pantalla a través del puerto serie, para ello debemos comunicarnos con el programa a través del monitor serial


13 Arduino


Y enviar el mensaje que queremos que aparezca en nuestra pantalla:


14 Arduino


10 Arduino

Mastodon E-Mail