Sei sulla pagina 1di 12

CONSTRUCIN DE UN

BRAZO ROBTICO DE
TRES GRADOS DE
LIBERTAD

Alumnos: Brayan Cajuzol Vitte

Fecha: 25/05/2017
I. TTULO DESCRIPTIVO DEL PROYECTO.

CONSTRUCIN DE UN BRAZO ROBTICO DE TRES GRADOS


DE LIBERTAD

II. OBJETIVOS DE LA INVESTIGACIN.

-Construccin de un brazo robtico angular.


-Entender el funcionamiento de un Arduino NANO,
l298n,Servomotor.
-Aprender a programar un Arduino Nano.

III. FUNDAMENTOS TERICOS.

3.1. Arduino nano

La placa Arduino Nano es una placa de prueba pequea y completa basada en


ATmega328. Tiene funcionalidad similar al modelo Arduino Duemilanove, pero en
un mdulo DIP. Solo carece de jack de alimentacin DC y funciona con un cable
Mini-B USB en lugar de uno estndar.
Las caractersticas de entrada salida son que cada uno de los 14 pines digitales
del Nano pueden ser usados como entrada o salida, usando las funciones
pinMode(), digitalWrite(), y digitalRead(). Operan a 5 voltios. Cada pin puede
proveer o recibir un mximo de 40mA y poseen una resistencia de pull-up

2
(desconectada por defecto) de 20 a 50 kOhms. Adems algunos pines poseen
funciones especializadas:

Serial: 0 (RX) y 1 (TX). (RX) usado para recibir y (TX)usado para transmitir
datos TTL va serie. Estos pines estn conectados a los pines
correspondientes del chip USB-a-TTL de FTDI.

Interrupciones Externas: pines 2 y 3. Estos pines pueden ser configurados


para activar una interrupcin por paso a nivel bajo, por flanco de bajada o
flanco de subida, o por un cambio de valor. Mira la funcin attachInterrupt()
para ms detalles.

PWM: pines 3, 5, 6, 9, 10, y 11. Proveen de una salida PWM de 8-bits


cuando se usa la funcin analogWrite().
SPI: pines 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estos pines soportan
la comunicacin SPI, la cual, a pesar de poseer el hardware, no est
actualmente soportada en el lenguaje Arduino.

El Nano posee 8 entradas analgicas, cada unas de ellas provee de 10 bits


de resolucin (1024 valores diferentes). Por defecto miden entre 5 voltios y
masa, sin embargo es posible cambiar el rango superior usando la funcin
analogReference(). Tambin, algunos de estos pines poseen funciones
especiales:

I2C: Pines 4 (SDA) y 5 (SCL). Soporta comunicacin I2C (TWI) usando la


librera Wire (documentacin en la web Wiring).

Hay algunos otros pines en la placa:

AREF. Tensin de referencia por las entradas analgicas. Se configura con


la funcin analogReference().

Reset. Pon esta lnea a nivel bajo para resetear el micro controlador.
Normalmente se usa para aadir un botn de reset que mantiene a nivel
alto el pin reset mientras no es pulsado.

3
Las caractersticas ms destacadas son:
Micro controlador ATmega328 con cargador de inicio pre programado.
Tensin de entrada (recomendada): +7 a + 12 V.
Tensin de entrada (lmites): +6 a + 20 V.
14 pines GPIO (de los que 6 ofrecen salida PWM).
6 pines de entrada analgica.
Corriente DC por pin de E/S: 40 mA.
Memoria Flash de 32 KB (2 KB para cargador de inicio).
SRAM de 2 KB.
EEPROM de 1 KB.
Admite comunicacin serie IC.
Frecuencia de reloj: 16 MHZ.
Dimensiones: 0,73 x 1,7.

3.2. Driver l298n

Este chip L298N te permite controlar dos motores de corriente continua o un motor
paso a paso bipolar de hasta 2 amperios.

El mdulo cuenta con todos los componentes necesarios para funcionar sin
necesidad de elementos adicionales.

4
3.3. Motor

Un motor CC est compuesto de un estator y un rotor. En muchos motores c.c.,


generalmente los ms pequeos, el estator est compuesto de imanes para crear
un campo magntico.

En motores corriente continua ms grandes este campo magntico se logra con


devanados de excitacin de campo. El rotor es el dispositivo que gira en el centro
del motor cc y est compuesto de arrollados de cable conductores de corriente
continua. Esta corriente continua es suministrada al rotor por medio de las
escobillas generalmente fabricadas de carbn.

Nota: un devanado es un arrollado compuesto de cables conductores que tiene un


propsito especfico dentro de un motor

3.4. Servo motor

Los servos son un tipo especial de motor de c.c. que se caracterizan por su
capacidad para posicionarse de forma inmediata en cualquier posicin dentro de
su intervalo de operacin. Para ello, el servomotor espera un tren de pulsos que
se corresponde con el movimiento a realizar.

5
Estn generalmente formados por un amplificador, un motor, un sistema reductor
formado por ruedas dentadas y un circuito de realimentacin, todo en un misma
caja de pequeas dimensiones. El resultado es un servo de posicin con un
margen de operacin de 180 aproximadamente.

Las seales de PWM requeridas para que el circuito de control electrnico son
similares para la mayora de los modelos de servo. Esta seal tiene la forma de
una onda cuadrada. Dependiendo del ancho del pulso, el motor adoptar una
posicin fija.

Ancho de pulsos para lograr diferentes posiciones en un servomotor (180, 135,


90, 45 y 0)
Las seales que vemos en la imagen son las que permiten que el eje del motor
adquiera determinada posicin. Estas seales deben repetirse en el tiempo para
que el motor mantenga una posicin fija.

6
3.5. Fuente alimentacin PC

Podemos tener una computadora con lo ms rpido y potente del mercado, con
grandes cantidades de RAM, procesadores de muchos ncleos y la ms completa
de las mother-boards, sin embargo, todo ello depende de un pequeo dispositivo
llamado Fuente de alimentacin, sin la cual ninguno de estos componentes
podra funcionar.

Ignorada por la mayora de los usuarios, la fuente de alimentacin de una PC es la


encargada de suministrar la energa que todos los componentes y perifricos
necesitan para hacer su trabajo, y es una pieza increblemente compleja y precisa,
ya que adems de suministrar la energa necesaria, lo hace de manera perfecta y
contante.

3.6. Resistencias

Una resistencia ideal es un elemento pasivo que disipa energa en forma de calor
segn la ley de Joule. Tambin establece una relacin de proporcionalidad entre la
intensidad de corriente que la atraviesa y la tensin medible entre sus extremos,
relacin conocida como ley de Ohm.

7
3.7. Pulsadores

Un botn o pulsador es un dispositivo utilizado para realizar cierta funcin. Los


botones son de diversas formas y tamaos y se encuentran en todo tipo de
dispositivos, aunque principalmente en aparatos elctricos y electrnicos.

Los botones son por lo general activados, al ser pulsados con un dedo. Permiten
el flujo de corriente mientras son accionados. Cuando ya no se presiona sobre l
vuelve a su posicin de reposo.

IV. DIAGRAMAS

5.1. SOFWARE

#include <Servo.h> #funcion para usar los servos

const int motor11 = 2; #pin 2 del Arduino conectado al driver l298n


const int motor12 = 3; #pin 3 del Arduino conectado al driver l298n

Servo pinza1;#creamos variable del brazo


Servo pinza21;# creamos variable de la garra
int pos = 0; variable para sumar un grado del movimiento de cada servo.

void setup()
{
pinza1.attach(4);#brazo conectado al pin 4 del Arduino.
pinza1.write (90);#empieza el servo en posicin 90.
pinza21.attach(5); #garra conectado al pin 5 del Arduino.
pinza21.write (30); #empieza el servo en posicin 30.

8
pinMode(motor11, OUTPUT);#ponemos pin del Arduino modo salida de voltaje.
pinMode(motor12, OUTPUT); # ponemos pin del Arduino modo salida de voltaje.
}

void loop()
{

int dato = analogRead(0); #pin anlogo para todos los pulsadores.


int pin_posicion = 0;#para los servos guardar posicin inicial.
int pin_posicion_final = 0;#para los servos guardar posicin final.

if (dato > 530 && dato < 570)# si la entrada analgica esta en esos rangos
realiza todos esos pasos.
{
digitalWrite(motor11, LOW); #pone a tierra la entrada del motor.
digitalWrite(motor12, HIGH); # pone en 9v la entrada del motor.
delay(30);
digitalWrite(motor11, LOW); #pone a tierra la entrada del motor, para apagar
motor.
digitalWrite(motor12, LOW); #pone a tierra la entrada del motor, para apagar
motor.
}

if (dato > 320 && dato < 380)


{
digitalWrite(motor11, HIGH); # pone en 9v la entrada del motor.
digitalWrite(motor12, LOW); #pone a tierra la entrada del motor.
delay(30);
digitalWrite(motor11, LOW); #pone a tierra la entrada del motor, para apagar
motor.
digitalWrite(motor12, LOW); #pone a tierra la entrada del motor, para apagar
motor.
}

if (dato > 260 && dato < 290)# si la entrada analgica esta en esos rangos
realiza todos esos pasos.
{
pin_posicion = 0;
{
pin_posicion = pinza1.read();#lee la posicin del servo
pin_posicion_final = pin_posicion + 10; #aumenta 10 grados a posicin inicial
if (pin_posicion <= 180) #si la posicin menor a 180,sumar 1 a posicin.
{
for (pos = pin_posicion; pos <= pin_posicion_final ; pos += 1)
{

9
pinza1.write(pos);hace que el servo se mueva a la posicin +1
delay(20);espera 20 milisegundos.
}
}
}
}

if (dato > 200 && dato < 230)


{
pin_posicion = 0;
{
pin_posicion = pinza1.read();
pin_posicion_final = pin_posicion - 10;
if (pin_posicion >= 40) #si la posicin menor a 180,resta 1 a posicin.
{
for (pos = pin_posicion; pos >= pin_posicion_final; pos -= 1)
{
pinza1.write(pos);
delay(20);
}
}
}
}

if (dato > 170 && dato < 190)


{
pin_posicion = 0;
{
pin_posicion = pinza21.read();
pin_posicion_final = pin_posicion + 10;
if (pin_posicion <= 180)
{
for (pos = pin_posicion; pos <= pin_posicion_final ; pos += 1)
{
pinza21.write(pos);
pinza22.write(pos-2);
delay(20);
}
}
}
}

if (dato > 130 && dato < 160)


{
pin_posicion = 0;
{
pin_posicion = pinza21.read();

10
pin_posicion_final = pin_posicion - 10;
if (pin_posicion >= 0)
{
for (pos = pin_posicion; pos >= pin_posicion_final; pos -= 1)
{
pinza21.write(pos);
pinza22.write(pos+2);
delay(20);
}
}
}
} }

5.2. HARDWARE

11
I. ASPECTOS ADMINISTRATIVOS.

Presupuesto.

-Arduino nano.s/.30.00
-Alambres conectores y pulsadores..s/.12.00
-Servomotores(3)......s/.80.00
-Fuente PC ........s/.25.00
-Componentes comunes .....s/.10.00
-Driver l298n ....s/.8.00

II. BIBLIOGRAFIA.

-https://es.wikipedia.org/wiki/Presi%C3%B3n
-http://distributor.alldatasheet.es/view.jsp?Searchword=MPXV4006GP
-https://es.wikipedia.org/wiki/Mil%C3%ADmetro_columna_de_agua
-http://online.unitconverterpro.com/es/tablas-de-conversion/conversor-
alpha/factors.php?cat=pressure&unidad=pascal&categoria=Presi%C3%
B3n&unit=31&val=

12

Potrebbero piacerti anche