Añadir nuevo comentario

Arduino Robot : Primeros pasos

Español

Que tal, ya estamos de vuelta ! . Hoy vamos a comentar un poco los primeros pasos de Arduino Robot.

Se trata de realizar un par de programas de prueba para ver un poco la ubicación de los elementos y probar conexiones .

Tal como nos indican en la web de Arduino , está basado en dos placas (una para control  y otra para motores).

(fuente : arduino)

Las especificaciones son las siguientes:

Microcontroller ATmega32u4
Operating Voltage 5V
Input Voltage 5V through flat cable
Digital I/O Pins 5
PWM Channels 6
Analog Input Channels 4 (of the Digital I/O pins)
Analog Input Channels (multiplexed) 8
DC Current per I/O Pin 40 mA
Flash Memory 32 KB (ATmega32u4) of which 4 KB used by bootloader
SRAM 2.5 KB (ATmega32u4)
EEPROM (internal) 1 KB (ATmega32u4)
EEPROM (external) 512 Kbit (I2C)
Clock Speed 16 MHz
Keypad 5 keys
Knob potentiomenter attached to analog pin
Full color LCD over SPI communication
SD card reader for FAT16 formatted cards
Speaker 8 Ohm
Digital Compass provides deviation from the geographical north in degrees
I2C soldering ports 3
Prototyping areas 4

(fuente: arduino)

Después encajaremos la pantalla LCD tal como nos indican (la SD mirando a los cursores) y procederemos a conectar la placa de control al ordenador. Aparecerá un dialogo MAC, WIndows) que simplemente seguiremos las instrucciones . Una vez realizado  ya podemos empezar a trabajar con la placa de Control.

Para ello abriremos el software de Arduino, y probraremos el primer programa que nos ofrece la guia .

1.-  Test de motores

Copiamos el programa en el editor, y le damos al botón cargar para enviar a la placa. Posteriormente ponemos en ON el interruptor de la placa inferior y veremos el robot en movimiento.


#include // import the robot library

void setup(){ Robot.begin(); // initialize the library }

void loop(){ // move forward for one second

Robot.motorsWrite(255,255);

delay(1000);

Robot.motorsWrite(0,0); // stop moving

delay(1000); // move backwards for one second

Robot.motorsWrite(-255,-255);

delay(1000);

Robot.motorsWrite(0,0); // stop moving

delay(1000); }


Una vez pasado el programa veremos como el robot se desplaza en diferentes direcciones comprobando los motores. 

2.- Pantalla LCD 

El segundo paso seria el uso de la pantalla LCD.

(fuente:arduino)

Segun la guia deberiamos realizar el siguiente programa :


#include // include the robot library

void setup(){

Robot.begin();

Robot.beginLCD();

}

void loop(){

Robot.debugPrint(Robot.keyboardRead(), 10, 10);

delay(100);

}


Pero os podeis encontrar con un error en las librerias debido a que indica beginLCD() y da problemas a veces. Si es el caso simplemente substituir por beginTFT(). El programa quedaria de la siguiente manera:


#include // include the robot library

void setup(){

Robot.begin();

Robot.beginTFT();

}

void loop(){

Robot.debugPrint(Robot.keyboardRead(), 10, 10);

delay(100);

}


Lo que realiza este programa es segun el botón que pulsamos aparece su valor : 0,1,2,3 o 4.

 

3.- Texto y imagen en la pantalla LCD

Vamos ahora a añadir un texto en la pantalla y una imagen tal como se muestra en la figura con nuestro logo.

 

Para ello usaremos la targeta SD que nos viene. Debemos añadir la imagen (126x169px) que queremos mostrar en la targeta en formato BMP ( vigilar con las conversiones , que sea BMP). Si veis que la imagen no sale, es cuestión de formato.


#include <ArduinoRobot.h>
#include <utility/RobotTextManager.h>  
void setup() {
  // initialize the robot
  Robot.begin();
 
  // initialize the screen
  Robot.beginTFT();// inicio pantalla 
  Robot.beginSD(); // inicio de la SD
  Robot.clearScreen();
}
void loop() {
  textManager.writeText(10,7,"gerdsLAB");  // print the text
  delay(1000); // tiempo de espera
  textManager.showPicture("gerdslab.bmp", 0, 0);  // print the text
  delay(3000); // tiempo de espera
   }

Al cargar el programa en la placa de control del robot se mostrará en pantalla el texto y la imagen escogida.

Con esto ya tenemos nuestro primer programa en el robot y un saludo para cada vez que lo iniciemos ;-).

Hasta la proxima

 

 

 

Plain text

  • No se permiten etiquetas HTML.
  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Saltos automáticos de líneas y de párrafos.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.