termometro arduino en pantalla lcd tutorial

Proyecto “Mostrar la temperatura en una pantalla con Arduino”

Bienvenidos a un nuevo proyecto con Arduino, en este proyecto veremos como podemos mostrar la temperatura en una pantalla LCD con Arduino, la cual mediremos usando un termistor, además, hablaremos de los diferentes materiales empleados en su construcción, se mostrará un esquema de conexiones y finalmente podréis encontrar el código para poder controlar la pantalla y como mostrar los datos.

Materiales empleados en la realización del proyecto

A continuación veremos los diferentes materiales que se van a utilizar para realizar nuestra medición de temperatura con Arduino y una breve descripción de los mismos. Además, para todos aquellos que estén interesados en realizar el proyecto, pueden pinchar en las imágenes y os llevará a una web donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Termistor: Es un tipo de resistencia cuyo valor varía en función de la temperatura de una forma más acusada que una resistencia común.

Pantalla LCD: Una pantalla de cristal líquido o LCD es una pantalla delgada y plana formada por un número de píxeles en un solo color colocados delante de una fuente de luz o reflectora

Cables con pines: Estos cables tienen unos pines (macho o hembra) los cuales nos permitirán hacer las conexiones entre los diferentes elementos ya mencionados.

Componentes necesarios para este proyecto

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
Pantalla LCDPantalla LCDESUS
ProtoboardProtoboardESUS
Cables Macho HembraCables Macho HembraESUS

Video explicación del proyecto

Si lo que buscas es ver de una forma mucho más detallada de como realizar este proyecto desde el inicio hasta el final y una explicación del código, a continuación se muestra el video con dicho contenido, mucho mas visual y fácil de comprender. Y recuerda, si te gusta esta clase de contenido, no olvides suscribirte 😉

Esquema de conexiones Arduino para la pantalla LCD y el sensor de temperatura

Una de las partes más importantes a la hora de realizar nuestro montaje de la pantalla LCD pasa por conectar correctamente los diferentes elementos. Con el fin de evitar errores de montaje o conexiones erróneas, a continuación te dejamos el esquema de conexiones empleado para este proyecto, con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema de conexiones pantalla lcd con arduino termometro

Código de Arduino para la programación del sensor de temperatura y que se muestre por pantalla

A continuación se muestra el código de programación desarrollado específicamente para este proyecto. Los pines que puedes encontrar en el código son los mismos que encontrarás en el esquema de conexiones previamente mostrado.

Si quieres una explicación más detallada de las diferentes partes del código empleado para programar la pantalla LCD y del su funcionamiento del sensor de temperatura o termistor, te recomiendo que te veas el video que te hemos dejado más arriba.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Canal de YouTube -> RobotUNO
//Proyecto 3

#include <LiquidCrystal.h>

int tempPin = 0;
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
void setup(){
  lcd.begin(16, 2);
}

void loop(){
  int tempReading = analogRead(tempPin);
  double tempK = log(10000.0 * ((1024.0 / tempReading - 1)));
  tempK = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * tempK * tempK )) * tempK );
  float tempC = tempK - 273.15;
  lcd.setCursor(0, 0);
  lcd.print("Temp         C  ");
  lcd.setCursor(6, 0);
  lcd.print(tempC);
  delay(500);
}
sensor de aparcamiento con arduino

Proyecto “Sensor de aparcamiento con Arduino”

Bienvenidos a un nuevo proyecto con Arduino, en este proyecto veremos como podemos crear un sensor de aparcamiento con Arduino, el cual aumentará la frecuencia de los pitidos a medida que acerquemos la mano, además, hablaremos de los diferentes materiales empleados en su construcción, se mostrará un esquema de conexiones y finalmente podréis encontrar el código para poder controlar el sensor de ultrasonidos.

Materiales empleados en el sensor de aparcamiento

A continuación encontrarás los diferentes materiales que vas a utilizar para realizar el sensor de aparcamiento con Arduino y una breve descripción de los mismos. Además, para todos aquellos que estéis interesados en realizar el proyecto, podéis pinchar en las imágenes y os llevará a una web donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Modulo de ultrasonidos: se encarga de enviar y recibir señales sonoras y calcula la distancia de los objetos en función del tiempo que tardan en volver dichas señales.

Zumbador pasivo o buzzer: Se trata de un elemento con una membrana que vibra cuando se la alimenta con un potencial de corriente.

Cables con pines: Estos cables tienen unos pines (macho o hembra) los cuales nos permitirán hacer las conexiones entre los diferentes elementos ya mencionados.

Componentes necesarios para este proyecto

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
Sensor Ultrasonidos HC-SR04Sensor Ultrasonidos HC-SR04ESUS
BuzzerBuzzerESUS
Cables Macho HembraCables Macho HembraESUS
ProtoboardProtoboardESUS

Si lo que buscas es ver de una forma mucho más detallada de como realizar este proyecto desde el inicio hasta el final y una explicación del código, a continuación se muestra el video con dicho contenido, mucho mas visual y fácil de comprender. Y recuerda, si te gusta esta clase de contenido, no olvides suscribirte 😉

Esquema de conexiones Arduino para la construcción del sensor de aparcamiento

Una de las partes más importantes a la hora de realizar nuestro montaje del sensor de aparcamiento pasa por conectar correctamente los diferentes elementos. Con el fin de evitar errores de montaje o conexiones erróneas, a continuación te dejamos el esquema de conexiones empleado para este proyecto, con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema de conexiones sensor de aparcamiento arduino

Código de Arduino para la programación del sensor de aparcamiento con Arduino

A continuación se muestra el código de programación desarrollado específicamente para este proyecto. Los pines que puedes encontrar en el código son los mismos que encontrarás en el esquema de conexiones previamente mostrado.

Si quieres una explicación más detallada de las diferentes partes del código empleado para programar este sensor y de su funcionamiento, te recomiendo que te veas el video que te hemos dejado más arriba.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Canal de YouTube -> RobotUNO
//Sensor de aparcamiento con Arduino

int TRIG = 10;
int ECO = 9;
int LED = 3;
int DURACION;
int DISTANCIA;

void setup(){
  pinMode(TRIG, OUTPUT);
  pinMode(ECO, INPUT);
  pinMode(LED, OUTPUT);
  Serial.begin(9600); //Numero de bits por segundo = 9600
}

void loop(){
  digitalWrite(TRIG, HIGH);
  delay(1);
  digitalWrite(TRIG, LOW);
  DURACION = pulseIn(ECO, HIGH);
  DISTANCIA = DURACION / 58.2;   //Valor especificado por el fabricante
  Serial.println(DISTANCIA);
  delay(200);
  if(DISTANCIA<=20 && DISTANCIA >= 0){
    digitalWrite(LED, HIGH);
    delay(DISTANCIA * 10);
    digitalWrite(LED, LOW);
  }
}

proyecto LEDs con mando a distancia

Proyecto “LEDs con mando a distancia con Arduino”

Bienvenidos a un nuevo proyecto con Arduino, en este proyecto veremos como podemos iluminar LEDs a distancia con Arduino, los cuales controlaremos con un mando a distancia con infrarrojos, además, hablaremos de los diferentes materiales empleados en su construcción, se mostrará un esquema de conexiones y finalmente podréis encontrar el código para poder encender y apagar LEDs a distancia con Arduino.

Materiales

A continuación veremos los diferentes materiales que se van a utilizar para realizar este proyecto de LEDs a distancia usando la placa de Arduino y una breve descripción de los mismos. Además, para todos aquellos que estén interesados en realizar el proyecto, pueden pinchar en las imágenes y os llevará a una web donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Mando a distancia: Se trata de un dispositivo que envía distintas señales infrarrojas en función del botón que hayamos pulsado.

LED: Elemento emisor de luz mediante una unión p-n.

Cables con pines: Estos cables tienen unos pines (macho o hembra) los cuales nos permitirán hacer las conexiones entre los diferentes elementos ya mencionados.

Componentes necesarios para este proyecto

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
Kit de LEDsKit de LEDsESUS
Cables Macho HembraCables Macho HembraESUS
ProtoboardProtoboardESUS

Video explicación del proyecto

Si lo que buscas es ver de una forma mucho más detallada de como realizar este proyecto desde el inicio hasta el final, a continuación se muestra el video con dicho contenido, mucho mas visual y fácil de comprender. Y recuerda, si te gusta esta clase de contenido, no olvides suscribirte 😉

Esquema de conexiones Arduino para la construcción de los LEDs controlados a distancia

Una de las partes más importantes a la hora de realizar nuestro montaje de los LEDs y el receptor para controlarlos con el mando a distancia pasa por conectar correctamente los diferentes elementos. Con el fin de evitar errores de montaje o conexiones erróneas, a continuación te dejamos el esquema de conexiones empleado para este proyecto, con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema de conexiones leds con mando a distancia

Código de Arduino para la programación de los LEDs controlados a distancia

A continuación se muestra el código de programación desarrollado específicamente para este proyecto. Los pines que puedes encontrar en el código son los mismos que encontrarás en el esquema de conexiones previamente mostrado.

Si quieres una explicación más detallada de las diferentes partes del código empleado para programar estos LEDs y de su funcionamiento para ser controlados con un mando de infrarrojos, te recomiendo que te veas el video que te hemos dejado más arriba.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Canal YouTube -> RobotUNO
//Proyecto 1
#include "IRremote.h"
#define LED1 2
#define LED2 3
#define LED3 4
#define LED4 5
#define LED5 6
#define LED6 7
#define LED7 8
#define LED8 9
#define LED9 10
#define LED10 12

int receiver = 11;
IRrecv irrecv(receiver);
decode_results results;

void translateIR(){
  switch(results.value){    
  case 0xFFA25D: Serial.println("POWER");
  digitalWrite(LED1, LOW);
  digitalWrite(LED2, LOW);
  digitalWrite(LED3, LOW);
  digitalWrite(LED4, LOW);
  digitalWrite(LED5, LOW);
  digitalWrite(LED6, LOW);
  digitalWrite(LED7, LOW);
  digitalWrite(LED8, LOW);
  digitalWrite(LED9, LOW);
  digitalWrite(LED10, LOW);
  break;  
  
  case 0xFFC23D: Serial.println("FAST FORWARD");
  digitalWrite(LED1, HIGH);
  digitalWrite(LED2, HIGH);
  digitalWrite(LED3, HIGH);
  digitalWrite(LED4, HIGH);
  digitalWrite(LED5, HIGH);
  digitalWrite(LED6, HIGH);
  digitalWrite(LED7, HIGH);
  digitalWrite(LED8, HIGH);
  digitalWrite(LED9, HIGH);
  digitalWrite(LED10, HIGH);
  break;  
  
  case 0xFF6897: Serial.println("0");
  pinMode(LED1, OUTPUT);
  digitalWrite(LED1, HIGH);
  break;  
  
  case 0xFF30CF: Serial.println("1");
  pinMode(LED2, OUTPUT);
  digitalWrite(LED2, HIGH);
  break;  
  
  case 0xFF18E7: Serial.println("2");
  pinMode(LED3, OUTPUT);
  digitalWrite(LED3, HIGH);
  break;  
  
  case 0xFF7A85: Serial.println("3");
  pinMode(LED4, OUTPUT);
  digitalWrite(LED4, HIGH);
  break;  
  
  case 0xFF10EF: Serial.println("4");
  pinMode(LED5, OUTPUT);
  digitalWrite(LED5, HIGH);
  break;  
  
  case 0xFF38C7: Serial.println("5");
  pinMode(LED6, OUTPUT);
  digitalWrite(LED6, HIGH);
  break; 
   
  case 0xFF5AA5: Serial.println("6");
  pinMode(LED7, OUTPUT);
  digitalWrite(LED7, HIGH);
  break;  
  
  case 0xFF42BD: Serial.println("7");
  pinMode(LED8, OUTPUT);
  digitalWrite(LED8, HIGH);
  break;  
  
  case 0xFF4AB5: Serial.println("8");
  pinMode(LED9, OUTPUT);
  digitalWrite(LED9, HIGH);
  break;  
  
  case 0xFF52AD: Serial.println("9");
  pinMode(LED10, OUTPUT);
  digitalWrite(LED10, HIGH);
  break;  
  
  case 0xFFFFFFFF: Serial.println("ERROR");break; 
  
  default: 
    Serial.println("Otro botón");
  }
  delay(500);
}


void setup() {
  Serial.begin(9600);
  Serial.println("IR Receiver Button Decode"); 
  irrecv.enableIRIn();
}


void loop(){
  if (irrecv.decode(&results)) 
  {
    translateIR(); 
    irrecv.resume();
  }  
}

barrera-con-contraseña-arduino

Proyecto “Barrera con contraseña Arduino”

Bienvenidos a un nuevo proyecto con Arduino, en este proyecto veremos como podemos crear una barrera la cual se levantará cuando se introduzca correctamente la contraseña correcta con Arduino, además, hablaremos de los diferentes materiales empleados en su construcción, se mostrará un esquema de conexiones y finalmente podréis encontrar el código.

Materiales empleados en la realización del proyecto

A continuación veremos los diferentes materiales que se van a utilizar para realizar la barrera con contraseña en Arduino y una breve descripción de los mismos. Además, para todos aquellos que estén interesados en realizar el proyecto, pueden pinchar en las imágenes y os llevará a una web donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Matriz numérica: Modulo capaz de detectar que tecla se está pulsando mediante la alimentación de uno de los nodos del botón.

Servomotores:  motores de 5v con una reductora, lo que permite un gran manejo de su posición y una gran fuerza para su reducido tamaño.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Palos de helado: Usaremos estos palos para crear la barrera.

Cables con pines: Estos cables tienen unos pines (macho o hembra) los cuales nos permitirán hacer las conexiones entre los diferentes elementos ya mencionados.

Componentes necesarios para este proyecto

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
Servomotores ArduinoServomotores ArduinoESUS
Cables Macho HembraCables Macho HembraESUS
Palitos de heladoPalitos de heladoESUS

Video explicación del proyecto

Si lo que buscas es ver de una forma mucho más detallada de como realizar este proyecto desde el inicio hasta el final y una explicación del código, a continuación se muestra el video con dicho contenido, mucho mas visual y fácil de comprender. Y recuerda, si te gusta esta clase de contenido, no olvides suscribirte 😉

Esquema de conexiones Arduino para la construcción de la barrera con contraseña

Una de las partes más importantes a la hora de realizar nuestro montaje de la barrera y la matriz numérica pasa por conectar correctamente los diferentes elementos. Con el fin de evitar errores de montaje o conexiones erróneas, a continuación te dejamos el esquema de conexiones empleado para este proyecto, con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema de conexiones barrera con contraseña arduino

Código de Arduino para la programación de la barrera con contraseña

A continuación se muestra el código de programación desarrollado específicamente para este proyecto. Los pines que puedes encontrar en el código son los mismos que encontrarás en el esquema de conexiones previamente mostrado.

Si quieres una explicación más detallada de las diferentes partes del código empleado para programar esta grúa y de su funcionamiento, te recomiendo que te veas el video que te hemos dejado más arriba.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Robot UNO
//Proyecto -> Barrera con contraseña

#include <Servo.h>
#include <Keypad.h>

char contrasena[]="1234"; //NUMERO DE LA CONTRASEÑA
char codigo[4];
int cont=0; 
const byte ROWS = 4; 
const byte COLS = 4;
char hexaKeys[ROWS][COLS] = {
 {'1','2','3','A'},
 {'4','5','6','B'},
 {'7','8','9','C'},
 {'*','0','#','D'}
};
byte rowPins[ROWS] = {9, 8, 7, 6};
byte colPins[COLS] = {5, 4, 3, 2};
Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
Servo servomotor;
int valor;
void setup(){
 servomotor.attach(11,1000,2000);
 Serial.begin(9600);
}
void loop(){
 char customKey = customKeypad.getKey();
 servomotor.write(0);
 if (customKey != NO_KEY){
 codigo[cont]=customKey;
 Serial.print(codigo[cont]);
 cont++;
 if(cont==4){
 if(codigo[0]==contrasena[0]&&codigo[1]==contrasena[1]&&codigo[2]==contrasena[2]&&codigo[3]==contrasena[3]){
 digitalWrite(13,!digitalRead(13)); 
 Serial.println("   Contraseña correcta");
 servomotor.write(180);
 delay(5000); //TIEMPO QUE SE MANTIENE SUBIDA LA BARRERA (en ms)
 servomotor.write(0);
 }
 else if(codigo[0]!=contrasena[0]||codigo[1]!=contrasena[1]||codigo[2]!=contrasena[2]||codigo[3]!=contrasena[3]){
 Serial.println("   Contraseña incorrecta");
 }
 cont=0; 
    }
  }
}

himno-de-españa-con-arduino

Proyecto “Canción Himno de España con Arduino”

Bienvenidos a un nuevo proyecto con Arduino, en este proyecto veremos como podemos hacer sonar el himno de España, o cualquier otra canción con Arduino. Además, aprenderás a como hacer todo tipo de canciones con Arduino para que puedas hacer sonar todo típo de melodias.

Materiales empleados para hacer canciones con Arduino

A continuación veremos los diferentes materiales que se van a utilizar para realizar este proyecto. Para hacer sonar el himno de España con Arduino es indispensable que esea un zumbador PASIVO.

Además, para todos aquellos que estén interesados en realizar el proyecto, pueden pinchar en las imágenes y os llevará a una web donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Cables con pines: Estos cables tienen unos pines (macho o hembra) los cuales nos permitirán hacer las conexiones entre los diferentes elementos ya mencionados.

Zumbador pasivo: Se trata de un elemento con una membrana que vibra cuando se la alimenta con una seña PWM con diferentes frecuiencias. A diferencia de los zumbadores pasivos que solo tienen una única frecuencia. Los zumbadores pasivos pueden reproducir todo tipo de notas.

Componentes utilizados en el proyecto

A continuación os dejamos una lista con todos los componentes empleados en el proyecto de la grúa. De esta formapodeis ir directamente a la web y adquirirlos.

El carrito ES os permitirá comprar los componentes en Amazon España y US os dirigirá a la tienda de amazon de Estados Unidos.

¡IMPORTANTE! Es necesario que el Buzzer sea pasivo para que pueda reprodir diferentes melodías.

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
Buzzer PasivoBuzzer PasivoESUS
Cables Macho HembraCables Macho HembraESUS
ProtoboardProtoboardESUS

Video de cómo reproducir canciones con Arduino

Si lo que buscas es ver de una forma mucho más detallada de como realizar este proyecto desde el inicio hasta el final y una explicación del código, a continuación se muestra el video con dicho contenido, mucho mas visual y fácil de comprender. Y recuerda, si te gusta esta clase de contenido, no olvides suscribirte 😉

Esquema de conexiones para conectar el zumbador a tu Ardiono

Una de las partes más importantes a la hora de hacer sonar una melodía con Ardiono es realizando correctamente las conexiones a nuestro zumbador pasivo.

En este caso, el montaje es muy simple pero para que el código funcione correctamente, es necesario que los pines vayan conectados en la misma posición que se muestra en el esquema mostrado a continuación.

Con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema-himno-de-españa-con-arduino

Equivalencia de cada nota musical y su frecuencia en Arduino

Con esta sencilla tabla que te dejamos a continuación podrás crear cualquier canción.

Nota musical Frecuencia en Herzios (Hz)
DO 523.25
RE 587.33
MI 659.26
FA 698.46
SOL 783.99
LA 880
SI 987.77
RE2 1174.66
DO2 1062
RES 622.25
FAS 739.99
SOLS 830.61
FAS2 1479.98

Código de Arduino para la programación del himno de España con Arduino

A continuación se muestra el código de programación desarrollado específicamente para el himno de España. Los pines que puedes encontrar en el código son los mismos que encontrarás en el esquema de conexiones previamente mostrado.

Si quieres una explicación más detallada de las diferentes partes del código empleado para programar el himno de España y de su funcionamiento, te recomiendo que te veas el video que te hemos dejado más arriba.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Canal de YouTube -> Robot UNO<br>//Proyecto -> Himno de España con Arduino
#define DO 523.25
#define RE 587.33
#define MI 659.26
#define FA 698.46
#define SOL 783.99
#define LA 880
#define SI 987.77
#define RE2 1174.66
#define DO2 1062
#define DoS 554.37
#define RES 622.25
#define FAS 739.99
#define SOLS 830.61
#define FAS2 1479.98
#define a 1000
#define b 500
void setup() {
 pinMode(8,OUTPUT);
}
void loop() {  
 //---------------- PRIMERA PARTE
 tone(8, SOL , a);
 delay(500);
 noTone(8);
 tone(8, RE , a);
 delay(500);
 noTone(8);
 tone(8, SI , a);
 delay(500);
 noTone(8);
 tone(8, SOL , b);
 delay(500);
 noTone(8);
 tone(8, RE2 , b);
 delay(400);
 noTone(8);
 tone(8, DO2 , b);
 delay(400);
 noTone(8);
 tone(8, SI , b);
 delay(400);
 noTone(8);
 tone(8, LA , b);
 delay(400);
 noTone(8);
 tone(8, SOL , b);
 delay(400);
 noTone(8);
 tone(8, SOL , b);
 delay(400);
 noTone(8);
 tone(8, FAS , b);
 delay(400);
 noTone(8);
 tone(8, MI , b);
 delay(400);
 noTone(8);
 tone(8, RE , b);
 delay(400);
 noTone(8);
 tone(8, SOL , a);
 delay(500);
 noTone(8);
 tone(8, LA , a);
 delay(500);
 noTone(8);
 tone(8, SI , 1500);
 delay(1000);
 noTone(8);
 tone(8, RE2 , b);
 delay(400);
 tone(8, DO2 , b);
 delay(400);
 tone(8, SI , b);
 delay(400);
 tone(8, LA , b);
 delay(400);
 tone(8, SOL , b);
 delay(400);
 tone(8, RE2 , 2000);
 delay(1000);
 //--------------------- SEGUNDA PARTE 
 tone(8, RE2 , a);
 delay(500);
 tone(8, SI , 250);
 delay(500);
 tone(8, RE2 , 250);
 delay(400);
 tone(8, DO2 , a);
 delay(400);
 tone(8, LA , 250);
 delay(500);
 tone(8, DO2 , 250);
 delay(400);
 tone(8, SI , a);
 delay(500);
 tone(8, SOL , 250);
 delay(400);
 tone(8, SI , 250);
 delay(400);
 tone(8, LA , b);
 delay(400);
 tone(8, RE , b);
 delay(400);
 tone(8, MI , b);
 delay(400);
 tone(8, FAS , b);
 delay(400);
 tone(8, SOL , a);
 delay(500);
 tone(8, LA , a);
 delay(500);
 tone(8, SI , 250);
 delay(500);
 tone(8, DO2 , 250);
 delay(400);
 tone(8, RE2 , b);
 delay(400);
 tone(8, DO2 , b);
 delay(400);
 tone(8, SI , a);
 delay(500);
 tone(8, LA , a);
 delay(500);
 tone(8, SOL , 2000);
 delay(1000);
}

matriz-led-controlada-por-joystick

Proyecto “Matriz LED controlada con joystick”

Bienvenidos a un nuevo proyecto con Arduino, en este proyecto veremos como podemos controlar una matriz LED mediante un joystick como el de la play, además, hablaremos de los diferentes materiales empleados en su construcción, se mostrará un esquema de conexiones y finalmente podréis encontrar el código para poder controlar y dibujar en la matriz.

Materiales para la matriz led con joystick

A continuación veremos los diferentes materiales que se van a utilizar para realizar en Arduino nuestra matriz LED controlada mediante un joystick y una breve descripción de los mismos. Además, para todos aquellos que estén interesados en realizar el proyecto, pueden pinchar en las imágenes y os llevará a una web donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Joystick: Mediante la variación de dos potenciómetros se logra conocer la posición exacta (X,Y) en la que nos encontramos y de esta forma usarlo como mando.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Cables con pines: Estos cables tienen unos pines (macho o hembra) los cuales nos permitirán hacer las conexiones entre los diferentes elementos ya mencionados.

Matriz LED: Como su propio nombre indica, se trata de una matriz la cual podremos iluminar como nosotros queramos mediante el uso de un pequeño controlador que lleva incorporada.

Componentes necesarios para este proyecto

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
JoystickJoystickESUS
Cables Macho HembraCables Macho HembraESUS
ProtoboardProtoboardESUS
Matriz LED 8x8Matriz LED 8×8ESUS

Video explicación del proyecto

Si lo que buscas es ver de una forma mucho más detallada de como realizar este proyecto desde el inicio hasta el final y una explicación del código, a continuación se muestra el video con dicho contenido, mucho mas visual y fácil de comprender. Y recuerda, si te gusta esta clase de contenido, no olvides suscribirte 😉

Esquema de conexiones Arduino para la construcción de una matriz LED controlada mediante un joystick

Una de las partes más importantes a la hora de realizar nuestro montaje de la grúa pasa por conectar correctamente los diferentes elementos. Con el fin de evitar errores de montaje o conexiones erróneas, a continuación te dejamos el esquema de conexiones empleado para este proyecto, con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema proyecto1

Código de Arduino para la programación de la matiz LED

A continuación se muestra el código de programación desarrollado específicamente para este proyecto. Los pines que puedes encontrar en el código son los mismos que encontrarás en el esquema de conexiones previamente mostrado.

Si quieres una explicación más detallada de las diferentes partes del código empleado para programar esta matriz de 64 LEDs y de su funcionamiento, te recomiendo que te veas el video que te hemos dejado más arriba.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Canal de YouTube -> Robot UNO//Proyecto -> Matriz led controlada con joystick
#include "LedControl.h"

LedControl lc=LedControl(12,10,11,1);
const int SW_pin = 2; 
const int xpin = 0; 
const int ypin = 1; 
int filas=4, col=4;

void setup() {
  pinMode(SW_pin, INPUT);
  digitalWrite(SW_pin, HIGH);
  Serial.begin(9600);
  lc.shutdown(0,false);
  lc.setIntensity(0,8);
  lc.clearDisplay(0);
}

void loop() {
  if(digitalRead(SW_pin) == 0){
    Serial.print("click");
    Serial.print("\n");
    lc.clearDisplay(0);    
    filas=4;
    col=4;
    lc.setLed(0,col,filas,true);
  }
  else if(analogRead(xpin)>525 && filas<7){
    Serial.print("derecha");
    Serial.print("\n");
    filas++;
    lc.setLed(0,col,filas,true);
  }  
  else if(analogRead(xpin)<510 && filas > 0){
    Serial.print("izquierda");
    Serial.print("\n");
    filas--;
    lc.setLed(0,col,filas,true);
  } 
  else if(analogRead(ypin)>520 && col < 7){
    Serial.print("abajo");
    Serial.print("\n");
    col++;
    lc.setLed(0,col,filas,true);
  } 
  else if(analogRead(ypin)<500 && col > 0){
    Serial.print("arriba");
    Serial.print("\n");
    col--;
    lc.setLed(0,col,filas,true);
  }
  Serial.print("\n\n");
  delay(100);
}

dispensador-para-hamsters-automatico

Proyecto “Dispensador automático para mascotas”

Bienvenidos a un nuevo proyecto con Arduino, en este proyecto veremos como podemos construir un dispensador automático para mascotas con la ayuda de un servomotor y la placa de Arduino, además, hablaremos de los diferentes materiales empleados en su construcción, se mostrará un esquema de conexiones y finalmente podréis encontrar el código para poder controlar el dispensador el cual sirve para cualquier mascota, desde peces, tortugas hasta hámsteres o conejos.

Materiales empleados en dispensador

A continuación veremos los diferentes materiales que se van a utilizar para realizar nuestro dispensador con Arduino y una breve descripción de los mismos. Además, para todos aquellos que estén interesados en realizar el proyecto, pueden pinchar en las imágenes y os llevará a una web donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Servomotor:  motor de 5v con una reductora, lo que permite un gran manejo de su posición y una gran fuerza para su reducido tamaño.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Cables con pines: Estos cables tienen unos pines (macho o hembra) los cuales nos permitirán hacer las conexiones entre los diferentes elementos ya mencionados.

Cartulina: Se usará como estructura aunque puede usarse cualquier otro tipo de material.

Componentes necesarios para este proyecto

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
Servomotores ArduinoServomotores ArduinoESUS
Cables Macho HembraCables Macho HembraESUS
ProtoboardProtoboardESUS

Video explicación paso a paso del dispensador

Si lo que buscas es ver de una forma mucho más detallada de como realizar este proyecto desde el inicio hasta el final y una explicación del código, a continuación se muestra el video con dicho contenido, mucho mas visual y fácil de comprender. Y recuerda, si te gusta esta clase de contenido, no olvides suscribirte 😉

Esquema de conexiones Arduino para la construcción del dispensador automático

Una de las partes más importantes a la hora de realizar nuestro montaje del dispensador automático para mascotas, pasa por conectar correctamente los diferentes elementos. Con el fin de evitar errores de montaje o conexiones erróneas, a continuación te dejamos el esquema de conexiones empleado para este proyecto, con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema-de-conexiones-dispensador-automatico-para-hamsters

Código de Arduino para la programación del dispensador para mascotas

A continuación se muestra el código de programación desarrollado específicamente para este proyecto. Los pines que puedes encontrar en el código son los mismos que encontrarás en el esquema de conexiones previamente mostrado.

Si quieres una explicación más detallada de las diferentes partes del código empleado para programar el dispensador y de su funcionamiento, te recomiendo que te veas el video que te hemos dejado más arriba.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Canal de YouTube -> RobotUNO
//Proyecto -> Dispensador automatico

#include<Servo.h>

Servo servo1;
int PINSERVO = 2;
int PULSOMIN = 1000;
int PULSOMAX = 2000;
void setup(){
  servo1.attach(PINSERVO, PULSOMIN, PULSOMAX);
}

void loop(){
  servo1.write(0);
  delay(10000);
  servo1.write(180);
  delay(500);
}

display-7-segmentos-controlado-por-mando-a-distancia

Proyecto “Display de 7 segmentos controlado con mando a distancia”

Bienvenido a un nuevo proyecto con Arduino, en este post aprenderás a como controlar un display o BCD de 7 segmentos mediante un mando a distancia, el cual enviará las señales a través de un módulo de infrarrojos, además, te mostraremos los diferentes materiales empleados en su construcción, su esquema de conexiones y finalmente te dejaremos el código para que puedas realizar este proyecto, el cual se puede aplicar a multitud de proyectos a control remoto.

Materiales necesarios para su construcción

En este apartado verás una breve explicación de los diferentes materiales que se van a utilizar para realizar este proyecto de un controlador a distancia para displays de 7 segmentos. Si estás interesado en realizar el proyecto, a continuación también te dejaremos los links a diferentes webs donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Cables con pines: Estos cables tienen unos pines (macho o hembra) los cuales nos permitirán hacer las conexiones entre los diferentes elementos ya mencionados.

Display de 7 segmentos: Se trata de un pequeño dispositivo con 7 segmentos que se iluminan de forma independiente pudiendo crear los diferentes números y letras de nuestro abecedario.

Mando a distancia: Se trata de un dispositivo que envía distintas señales infrarrojas en función del botón que hayamos pulsado.

Receptor infrarrojos: Como su nombre indica, es el encargado de recibir la señal enviada desde el mando para poder procesarla y actuar sobre el elemento que deseemos controlar.

Componentes necesarios para este proyecto

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
Cables Macho HembraCables Macho HembraESUS
ProtoboardProtoboardESUS

Video explicación del proyecto

Si lo que buscas es ver de una forma mucho más detallada como funciona el display de 7 segmentos junto a una pequeña explicación de las diferentes conexiones, así como una explicación del código, a continuación te dejamos un video donde se muestra de una forma mucho mas visual y fácil de comprender todo el proceso desde el inicio hasta el final. Y recuerda, si te gusta esta clase de contenido, no olvides SUSCRIBIRTE 😉

Esquema de conexiones Arduino para la construcción del display de 7 segmentos controlado a distancia

Para este proyecto no necesitarás una gran cantidad de conexiones pero es importante que las realices de forma correcta, es por eso que para realizar el montaje del display y el receptor infrarrojo te vamos a mostrar un esquema de conexiones  para este proyecto, con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema-de-conexiones-display-7-segmentos-controlado-mando-distancia

Código de Arduino para la programación del display de 7 segmentos controlado con mando a distancia

A continuación se muestra el código de programación desarrollado específicamente para este proyecto.

Como se puede apreciar en dicho código, se ha usado una sentencia “case” para activar los diferentes segmentos que de forma conjunta generan los diferentes números.

Los pines empleados en el código son los mismos que puedes encontrar en el esquema de conexiones previamente mostrado.

Si quieres una explicación más detallada de las diferentes partes del código empleado para programar este proyecto con Arduino y de su funcionamiento, te recomiendo que te veas el video que te hemos dejado más arriba.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Canal de YouTube -> RobotUNO
//Display de 7 segmentos controlado con MANDO A DISTANCIA

#include "IRremote.h"
#define a 2
#define b 3
#define c 4
#define d 5
#define e 6
#define f 7
#define g 8

int receiver = 11;
IRrecv irrecv(receiver);
decode_results results;

void translateIR(){
  switch(results.value){
  case 0xFF6897: Serial.println("0");
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, LOW);
  break;  
  case 0xFF30CF: Serial.println("1");
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  break;  
  case 0xFF18E7: Serial.println("2");
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, LOW);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, LOW);
  digitalWrite(g, HIGH);
  break;  
  case 0xFF7A85: Serial.println("3");
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, HIGH);
  break;  
  case 0xFF10EF: Serial.println("4");
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  break;  
  case 0xFF38C7: Serial.println("5");
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  break;  
  case 0xFF5AA5: Serial.println("6");
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  break;  
  case 0xFF42BD: Serial.println("7");
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  break;  
  case 0xFF4AB5: Serial.println("8");
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  break;
  case 0xFF52AD: Serial.println("9");
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  break;
  case 0xFFFFFFFF: Serial.println("ERROR");break;  
  default: 
    Serial.println("Otro botón");
  }
  delay(500);
}

void setup() {
  Serial.begin(9600);
  Serial.println("MANUALIDADES Y EXPERIMENTOS"); 
  irrecv.enableIRIn();
  for(int i=2 ; i<=8 ; i++){
    pinMode(i,OUTPUT);
  }
}

void loop(){
  if (irrecv.decode(&results)) 
  {
    translateIR(); 
    irrecv.resume();
  }  
}

brazo-robotico-con-arduino

Proyecto “Brazo robótico controlado por botones”

En este nuevo proyecto de Arduino, verás como crear un brazo robótico controlado por botones, se trata de un brazo robótico de 3 grados de libertad y una pinza al final, además, verás cuales son los diferentes materiales empleados en su construcción, cual es su esquema de conexiones y finalmente podrás encontrar el código para para controlar el brazo robótico mediante el uso de botones.

Materiales necesarios para su construcción

A continuación hablaremos de los diferentes materiales utilizados para la construcción de nuestro brazo robótico controlado por botones con Arduino, también se hará una breve descripción de cada uno de los materiales. Si estás interesado en realizar el proyecto, a continuación tienes los enlaces a diferentes páginas donde poder adquirirlos.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Motor paso a paso: Mediante impulsos eléctricos, es posible controlar el giro del motor, el cual se efectúa de una forma discreta.

Servomotores:  motores de 5v con una reductora, lo que permite un gran manejo de su posición y una gran fuerza para su reducido tamaño.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Palos de helado: Usaremos estos palos como estructura para dar forma a nuestra grúa.

Componentes necesarios para el brozo robótico

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
Servomotores ArduinoServomotores ArduinoESUS
Cables Macho HembraCables Macho HembraESUS
Botones ElectrónicaBotones ElectrónicaESUS
Motor paso a pasoMotor paso a pasoESUS
Palitos de heladoPalitos de heladoESUS
ProtoboardProtoboardESUS

Video con la explicación del brozo robótico

Para poder ver de una forma mucho más detallada, como realizar este brazo robótico controlado con botones, te dejamos a continuación un video donde podrás ver desde el inicio hasta el final como se ha hecho paso a paso, como puede ser la explicación del código y  los diferentes pasos de su construcción. Y recuerda, si te gusta esta clase de contenido, no olvides SUSCRIBETE 😉

Esquema de conexiones Arduino para la construcción del brazo robótico

Si quieres que tu proyecto funcione correctamente, una de las partes más importantes a la hora de realizarlo es que tengas claro cual va a ser tu esquema de conexiones y de como vas a conectar correctamente los diferentes elementos. Con el fin de evitarte errores de montaje o conexiones erróneas, a continuación te dejamos el esquema de conexiones empleado para este proyecto, además, con este esquema de conexiones puedes usar el código código que te dejamos más adelante sin necesidad de hacer ninguna modificación.

esquema-de-conexiones-brazo-robotico-controlado-por-botones

 Como podéis observar, existe una pequeña diferencia entre las conexiones que se realizan en el vídeo y las que se muestran en esta imagen. Esto es debido a que en el video se alimentan todos los motores desde la placa de Arduino UNO, cosa que es incorrecta ya que la corriente que circula por esta para alimentar los motores puede quemar la placa. Por este motivo es mas correcto realizar las conexiones tal y como se observa en esta imagen, ya que la alimentación proviene del modulo “mb-102”, haciendo que la intensidad que para alimentar los motores no pase por la placa de Arduino.

Por último, realizar este montaje (que es muy recomendable) o el que aparece en el video, no va a afectar en nada al código de programación, ya que las conexiones de los motores no cambian de pines en la placa de Arduino UNO.

Código de Arduino para la programación del brazo robótico controlado por botones

Para finalizar con este proyecto del brazo robótico, a continuación te dejamos el código de programación desarrollado específicamente para este proyecto.

Si estás interesado en automatizar todos los movimientos del brazo robótico, a continuación te dejamos un video en el cual se muestra este proyecto pero con sus movimientos preprogramados. Puedes verlo pinchando AQUÍ.

Respecto al código, recuerda instalar las librerías “Servo.h” y “Stepper.h”. También asegúrate de que el puerto donde esta conectada la placa de Arduino es el que esta seleccionado.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Canal de YouTube -> RobotUNO
//BRAZO ROBOTICO 2.0

#include <Servo.h>
#include <Stepper.h>
#define STEPS 32
#define temp 25

//MOTOR PASO A PASO
volatile boolean TurnDetected; 
volatile boolean rotationdirection; 
const int PinCLK=2;   
const int PinDT=3;   
int RotaryPosition=0;   
int PrevPosition;    
int StepsToTake; 
Stepper small_stepper(STEPS, 4, 6, 5, 7);
void isr ()  {
  delay(4);  // delay for Debouncing
  if (digitalRead(PinCLK))
    rotationdirection= digitalRead(PinDT);
  else
    rotationdirection= !digitalRead(PinDT);
  TurnDetected = true;
}

//SERVOMOTORES
int i=0,j=0,x=0;
Servo servomotor3; //Servomotor pinza
int boton_sub3=0;
int boton_baj3=0;
Servo servomotor2; //Servomotor en medio
int boton_sub2=0;
int boton_baj2=0;
Servo servomotor1; //Servomotor abajo
int boton_sub1=0;
int boton_baj1=0;

void setup(){
  //MOTOR PASO A PASO
  pinMode(PinCLK,INPUT);
  pinMode(PinDT,INPUT);  
  attachInterrupt (0,isr,FALLING); 

  //SERVOMOTORES
  servomotor3.attach(13);
  servomotor3.write(0);
  pinMode(A4,INPUT);
  pinMode(A5,INPUT);
  
  servomotor2.attach(12);
  servomotor2.write(0);
  pinMode(A2,INPUT);
  pinMode(A3,INPUT);
  
  servomotor1.attach(11);
  servomotor1.write(0);
  pinMode(A0,INPUT);
  pinMode(A1,INPUT);
}

void loop(){
  //MOTOR PASO A PASO
  small_stepper.setSpeed(700); 
  if (TurnDetected)  {
    PrevPosition = RotaryPosition; 
    if (rotationdirection) {
      RotaryPosition=RotaryPosition-1;}
    else {RotaryPosition=RotaryPosition+1;}
    TurnDetected = false;
    if ((PrevPosition + 1) == RotaryPosition) {
      StepsToTake=50; 
      small_stepper.step(StepsToTake);}
    if ((RotaryPosition + 1) == PrevPosition) {
      StepsToTake=-50;
      small_stepper.step(StepsToTake);}
  }
     digitalWrite(4, LOW);
     digitalWrite(5, LOW);
     digitalWrite(6, LOW);
     digitalWrite(7, LOW);   
  
  //SERVOMOTOR pinza
  boton_sub3=digitalRead(A4);
  boton_baj3=digitalRead(A5);
  if(boton_sub3==HIGH){
     i++;
     servomotor3.write(i);
     delay(temp);
  }
  if(boton_baj3==HIGH){
    i--;
    servomotor3.write(i);
    delay(temp);
  }
  //SERVOMOTOR en medio 
  boton_sub2=digitalRead(A2);
  boton_baj2=digitalRead(A3);
  if(boton_sub2==HIGH){
     j++;
     servomotor2.write(j);
     delay(temp);
  }
  if(boton_baj2==HIGH){
    j--;
    servomotor2.write(j);
    delay(temp);
  }
  //SERVOMOTOR abajo
  boton_sub1=digitalRead(A0);
  boton_baj1=digitalRead(A1);
  if(boton_sub1==HIGH){
     x++;
     servomotor1.write(x);
     delay(temp);
  }
  if(boton_baj1==HIGH){
    x--;
    servomotor1.write(x);
    delay(temp);
  }
}

proyecto brazo robotico con arduino

Proyecto “Brazo robótico con Arduino”

Bienvenidos a un nuevo proyecto con Arduino, en este proyecto veremos como podemos crear un brazo robótico con Arduino. Este es un brazo robótico de 3 grados de libertad el cual emplea servomotores y una pinza al final. Además, hablaremos de los diferentes materiales empleados en su construcción, se mostrará un esquema de conexiones y finalmente podréis encontrar el código para poder controlar el brazo robótico.

Materiales empleados en la realización del brazo robótico con Arduino

A continuación veremos los diferentes materiales que se van a emplear para realizar nuestro brazo robótico y una breve descripción de los mismos.

Además, para todos aquellos que estén interesados en realizar el proyecto, pueden pinchar en las imágenes y os llevará a una web donde poder adquirir dichos materiales.

Placa de Arduino UNO: Es el cerebro de nuestro proyecto, encargada de controlar todos los procesos del mismo mediante el código que encontrarás más adelante.

Motor paso a paso: Mediante impulsos eléctricos, es posible controlar el giro del motor, el cual se efectúa de una forma discreta.

Servomotores:  motores de 5v con una reductora, lo que permite un gran manejo de su posición y una gran fuerza para su reducido tamaño.

Protoboard: Tabla con orificios (pines) la cual está conectada internamente y usaremos para realizar nuestras conexiones para el proyecto.

Palos de helado: Usaremos estos palos como estructura para dar forma a nuestra grúa.

Para conocer más a fondo sobre cada uno de los diferentes materiales, puedes visitar la página “materiales” donde se explicará de una forma más extensa el funcionamiento y los posibles usos de cada uno de ellos.

Componentes necesarios para contruir un brazo robótico con servomotores

 A continuación os dejamos una lista con todos los componentes empleados en el proyecto de este brazo robótico con servomotores. De esta forma podeis ir directamente a la web y adquirirlos.

El carrito ES os permitirá comprar los componentes en Amazon España y US os dirigirá a la tienda de amazon de Estados Unidos.

Kit iniciación ArduinoKit iniciación ArduinoESUS
Placa Arduino UnoPlaca Arduino UnoESUS
Servomotores ArduinoServomotores ArduinoESUS
Motor paso a pasoMotor paso a pasoESUS
Palitos de heladoPalitos de heladoESUS
ProtoboardProtoboardESUS
Cables Macho HembraCables Macho HembraESUS

Video con explicación paso a paso del proyecto del brazo robótico con servomotores

Si lo que buscas es ver de una forma mucho más detallada de como realizar este proyecto desde el inicio hasta el final y una explicación del código, a continuación se muestra el video con dicho contenido, mucho mas visual y fácil de comprender. Y recuerda, si te gusta esta clase de contenido, no olvides suscribirte 😉

Esquema de conexiones Arduino para la construcción del brazo robótico

Una de las partes más importantes a la hora de realizar nuestro montaje del brazo robótico pasa por conectar correctamente los diferentes elementos. En este caso, es importante que todos los servomotores estén correctamente conectados.

Con el fin de evitar errores de montaje o conexiones erróneas, a continuación te dejamos el esquema de conexiones empleado para este proyecto, con este esquema de conexiones es posible usar el código que puedes encontrar al final del post sin necesidad de hacer ninguna modificación.

esquema-conexiones-brazo-robotico-arduino

Como podéis observar, existe una pequeña diferencia entre las conexiones que se realizan en el vídeo y las que se muestran en esta imagen. Esto es debido a que en el video se alimentan todos los servomotores desde la placa de Arduino UNO.

Esto es incorrecto, ya que la corriente que circula por la placa de Arduino podría quemarla si todos los servomotores se alimentan desde la misma placa. Por este motivo es mas correcto realizar las conexiones tal y como se observa en esta imagen, ya que la alimentación proviene del modulo “mb-102”, haciendo que la intensidad que para alimentar los motores no pase por la placa de Arduino.

Por último, realizar este montaje (que es muy recomendable) o el que aparece en el video, no va a afectar en nada al código de programación, ya que las conexiones de los motores no cambian de pines en la placa de Arduino UNO.

Código de Arduino para la programación del brazo robótico

A continuación se muestra el código de programación desarrollado específicamente para este proyecto. Los pines que puedes encontrar en el código son los mismos que encontrarás en el esquema de conexiones previamente mostrado.

El codigo que te mostramos a continuación tiene unos movimientos predefinidos, los cuales puedes ver en el video que te hemos dejado arriba. Sin embargo, si deseas que tu brazo robótico pueda realizaar más movimientos, te recomendamos que te veas el siguiente video que te dejamos AQUÍ.

Respecto al código, recuerda instalar las librerías “Servo.h” y “Stepper.h”. También asegúrate de que el puerto donde esta conectada la placa de Arduino es el que esta seleccionado.

Si tienes dudas sobre cómo usar o instalar el entorno de programación empleado para Arduino, te dejamos un link de comó descargar el IDE de Arduino

//Canal de YouTube -> Robot UNO
//Proyecto -> Brazo robotico version1
#include <Servo.h>
#include <Stepper.h>
Servo servomotor3; //Servomotor pinza
Servo servomotor2; //Servomotor enmedio
Servo servomotor1; //Servomotor abajo
Stepper motor(2048, 4, 6, 5, 7);
void setup() {
  servomotor3.attach(11);
  servomotor2.attach(10);
  servomotor1.attach(9);
  motor.setSpeed(5);
}
void loop() {
  //Reinicio
  servomotor1.write(0);
  servomotor2.write(0);
  servomotor3.write(0);
  //motor.step(512);
  delay(3000);
  //COJE EL OBJETO
  for(int i=0; i<=45; i++){
    servomotor3.write(i);
    delay(25);
  }
  delay(1000); 
  for(int i=0; i<=90; i++){
    servomotor2.write(i);
    delay(25);
  }
  delay(1000);  
  for (int i=0; i<=90; i++){
    servomotor1.write(i);
    delay(25);
  }
  delay(1000);
  for(int i=45; i>=0; i--){
    servomotor3.write(i);
    delay(25);
  }
  delay(1000);
   for (int i = 90; i>=0; i--){
    servomotor1.write(i);
    delay(25);
  }
  delay(1000);
  for (int i = 90; i>=0; i--){
    servomotor2.write(i);
    delay(25);
  }
  delay(1000);
  //GIRA CON EL OBJETO
  motor.step(512);
  delay(1000);
  //DEJA EL OBJETO
  for(int i=0; i<=90; i++){
    servomotor2.write(i);
    delay(25);
  }
  delay(1000);
  for (int i=0; i<=90; i++){
    servomotor1.write(i);
    delay(25);
  }
  delay(1000);  
  for(int i=0; i<=45; i++){
    servomotor3.write(i);
    delay(25);
  }
  delay(1000);
  //VUELVE A LA POSICION INICIAL
  servomotor1.write(0);
  servomotor2.write(0);
  motor.step(-512);
  delay(3000);
}

También te puede interesar este otro proyecto sobre un brazo robótico controlado por botones

Si te ha gustado este proyecto. A continuación te proponemos una variación que no te costará nada de implementar. En este caso se ha empleado el mismo brazo robótico pero en vez de controlarlo mediante comandos, se ha controlado mediante el uso de botones. De esta forma podrás seguir con la evolución de este fascinante proyecto.

brazo robotico controlado por botones arduino