Brazo robótico con iman
1. Introducción
metal. El brazo es controlado mediante una aplicación para smartphone.
2. Materiales y presupuesto
- Materiales:
- Kit brazo madera cortado a laser y 3 servos motores SG90. Coste: ~30€
- Placa Arduino Uno Rev3 (Proporcionada por el profesor)
- Breadboard. Coste: ~4€
- Cables: Coste: ~7€
- Transmisor Bluetooth (HC-05). Coste: ~4€
- Módulo electroimán KEYSTUDIO. Coste: ~13€
- Smartphone (App)
- Presupuesto: ~58€
3. Montaje
4. Código
#include <Servo.h>
Servo movil;
Servo codo;
Servo hombro;
Servo base;
char a;
int baseN = 90;
int hombroN = 90;
int codoN = 145;
int iman = 7;
String readString;
void setup() {
pinMode(13, OUTPUT);
pinMode(iman, OUTPUT);
codo.attach(9);
hombro.attach(10);
base.attach(11);
Serial.begin(9600);
movil.write(90);
/*codo.write(100);*/
codo.write(codoN);
hombro.write(hombroN);
base.write(baseN);
delay(10);
}
void loop() {
if (Serial.available()) {
a = Serial.read();
switch (a) {
case ‘0’:
baseN = 90;
hombroN = 90;
codoN = 145;
base.write(baseN);
hombro.write(hombroN);
codo.write(codoN);
break;
case ‘1’:
if (baseN <= 180) {
baseN += 3;
base.write(baseN);
delay(10);
}
break;
case ‘2’:
if (baseN >= 0) {
baseN -= 3;
base.write(baseN);
delay(10);
}
break;
case ‘3’:
//hombro acercarse
if (hombroN <= 170) {
hombroN += 4;
hombro.write(hombroN);
}
break;
case ‘4’:
//hombro alejarse
if (hombroN >= 90) {
hombroN -= 4;
hombro.write(hombroN);
}
break;
case ‘5’:
if (codoN < 170) {
codoN += 2;
codo.write(codoN);
}
break;
case ‘6’:
//codo abajo
if (codoN > 0) {
if ((hombroN < 120)
&& (hombroN – 10) > (180 – codoN) || (hombroN – 50) > (180 –
codoN)) {
codoN -= 2;
codo.write(codoN);
}
}
break;
case ‘7’:
//coge
if (a == ‘7’) {
digitalWrite(iman, HIGH);
}
break;
case ‘8’:
if (a == ‘8’) {
digitalWrite(iman, LOW);
}
break;
}
}
}
Código y diseño de aplicación (MitApp Inventor):
5. Problemas y posibles mejoras
Uno de los mayores problemas que tuvimos al realizar este proyecto fue debido a que al conectar el dispositivo bluetooth (HC-05) a la placa Arduino y mandarle señales con la aplicación del smartphone realizaba los movimientos que nosotros queríamos, pero de forma extraña y con rebotes.
Finalmente pudimos solucionarlo estos movimientos extraños y rebotes conectando los conectores TXD y RXD del dispositivo bluetooth (HC-05) a los pines 0 y 1 de la placa Arduino respectivamente ya que no servía en cualquier otro pin de entrada analógica.
- Mejora en la potencia de los servomotores para poder atrapar objetos de mayor peso.
- Mejora en el código para una menor limitación de los ángulos del brazo.
- Mejoras en la aplicación para realizar más movimientos con el acelerómetro y no tener que presionar botones.





