martes, 6 de septiembre de 2016

USO DEL SERVO MOTOR

¿Qué es?

Resultado de imagen de servomotorUn servomotor es un motor eléctrico que puede ser controlado tanto en velocidad como en posición. Está conformado por un motor, una caja reductora y un circuito de control. Los servos son sumamente útiles en robótica. Los motores son pequeños, tiene internamente una circuiteria de control interna y es sumamente poderoso para su tamaño.

El Servo Motor HS-311 es el servo perfecto para usos educativos, esto es porque el servo tiene muchas características que solo se encuentran en servos más caros. Una circuitería de calidad así como los engranes asegura la durabilidad del servo. Viene con varios accesorios y brazos para montarse. Este servo puede operar a 180°.


Cómo conectar el Servo Motor

Resultado de imagen de servomotor arduino

El servo motor consta de 3 cables que deben ser conectados adecuadamente en el aduino. A continuación, se detalla la conexión de cada cable.


Cable rojo del servo motor es el positivo y va conectado al pin de 5V del arduino. EN caso de estar ocupado conéctelo al protoboard para tener más salidas de 5v.

Cable negro del servo motor es el negativo puede ir conectado directamente al GND del Arduino o al protoboard donde tiene todas las GNDs referenciada.

Cable amarillo del servo motor al PIN 9 del Arduino o a cualquiera de los PINs marcados como PWM (Pulse Width Modulation, o modulación por ancho de pulsos), es por este cable donde se enviará la señal de control al servo motor para que vaya de 0º a 180º.

Uso del Servo Motor


Los servomotores hacen uso de la modulación por ancho de pulsos (PWM) para controlar la dirección o posición de los motores de corriente continua. La mayoría trabaja en la frecuencia de los 50 hertz, así las señales PWM tendrán un periodo de veinte milisegundos. La electrónica dentro del servomotor responderá al ancho de la señal modulada. 

Ejemplo de programación para el servo motor


#include <Servo.h>

Servo myservo;  //crea un referencia al servo motor

int pos = 0;    //posición inicial del servo
int positions[] = {0, 45, 90, 135, 180};  //posiciones (en grados) para moverse
int numPositions = 5; //cantidad de posiciones disponibles

void setup() 
{ 
  //control servo motor via pin 9
  myservo.attach(9, 650, 2350);
  Serial.begin(9600);
} 

void loop() 
{ 
  int i = 0;
  //cambia de posiciones
  for(i = 0; i < numPositions; i++) 
  {         
    pos = positions[i];

    //print debug output
    Serial.println("SETTING:");
    Serial.println(pos);

    //cambio de posicion del servo a una nueva
    myservo.write(pos); 

    //espero dos segundos
    delay(2000);
  }
}

miércoles, 31 de agosto de 2016

Proyecto Final

Materiales

 

 

Resumen del Procedimiento

1) Modificamos el protoboard para un uso adecuado de los componentes eléactricos.
2) Se cnecta cada motoreductor a los lados correspondientes de cada puente H.
3) Se colocan los puenres H en el protoboard pegàndolos con cinta doble cara.
4) Se procede a la programaciòn respectiva de cada puente H en el arduino, verificando su polaridad de giro en cada rueda para encaminarse en un mismo sentido, ya sea adelante, atràs o a los lados.
5) Conectamos el mòdulo Bluetooth teniendo en cuenta la conexiòn de los pines.
6) Procedemos a programar el mòdulo bluetooth con los "botones" de adelante, atràs y a los lados.
7) Mediante la aplicaciòn "Bluetooth RC Controller", nos conectamos con el mòdulo Bluetooth del robot.
8) Nuestra conexión es HC-06 y escribimos la clave.
 9) Probamos nuestro carro con la aplicaciòn.
10) Disfrutamos y nos preparamos para la carrera.



BLOG MODULO DE BLUETOOH HC 05

¿Qué es el Módulo Bluetooth?


Resultado de imagen para modulo bluetooth
ES UN COMPONENTE ELECTRONICO QUE ME PERMITE CONECTARME MEDIANTE BLUETOOH A CUALQUIER DISPOSITIVO CON SISTEMA OPERATIVO ANDROID CON EL FIN DE PODER CONTROLAR NUESTRO PROYECTO.

CONEXIÓN DEL MÓDULO DE BLUETOOH
LA SIGUIENTE IMAGEN INDICA LA FORMA DE CONEXIÓN DEL MÓDULO DE BLUETOOH A NUESTRO ARDUINO Y LA PROGRAMACIÓN BÁSICA.Resultado de imagen para conectar modulo bluetooth arduino


Como podemos ver en la imagen, tenemos 4 pines en el módulo Bluetooth que debemo conectar al arduino:
El RXD debe ir conectado al pin digital 1 del arduino.
El TXD debe ir conectado al pin 0 del arduino.
EL GND DEbe ir conectado a tierra en el arduino.
El VCCdebe ir conectado a los 5v del arduino.

Para conectarlos podemos usar cables macho-hembra

sábado, 23 de julio de 2016

Moto Reductor + Puente H

Como su nombre lo dice, los motorreductores no son más que dispositivos eléctricos que poseen un motor acoplado y se usan para reducir o regular la velocidad en máquinas y aparatos de una manera eficiente y segura.
En pocas palabras los reductores son sistemas de engranajes que permiten que los motores eléctricos funcionen a diferentes velocidades para los que fueron diseñados.

Componentes de un reductor

Los reductores son diseñados a base de engranajes, mecanismos circulares y dentados con geometrías especiales de acuerdo con su tamaño y la función en cada motor.























Puente H

Es un circuito electrónico que permite a un motor (/en este caso dc), girar en ambos sentidos, es decir el motor ya no iá para un solo lado sino que puede girar para izquierda o derecha y también podrá avanzar o retroceder.
Un puente H se usa para invertir el giro de un motor, pero también se puede usar para frenarlo.


Explicación de cómo conectar el puente H al arduino


Para conectar al arduino debemos conectar a 2 pines los terminales de contro, en mi caso utilizaré IN3 y IN4.En el arduino, si queremos controlar la velocidad del motor, tenemos que hacer uso de PWM. Este PWM será aplicado a los pines de activación de cada salida o pines ENA y ENB respectivamente, por tanto los jumper de selección no serán usados.
Luego utilizaremos también las salidas para motores, que son las que dicen OUT, las cuales hay 4 en el puente h y utilizaré el OUT 2 la en la cual se hacen 3 conexiones. En la izquierda se conecta el cable positivo de la batería de 6v-12v, mientras que la de enmedio se conecta al GND del arduino.  Adicionalmente en OUT 4 conectamos 2 cables macho macho que iran al motor reductor.



 MI PUENTE H






























Conexión del Puente H (configuración)

Mi conexión es la misma que el mr pyoectó en la pantalla. Ya que no se ve muy bien en la imagen la escribiré a continuación:

int IN3 = 5, int IN4 = 4;

void setup() {

pin Mode (IN4,OUTPUT);
pinMode (IN3, OUTPUT);

}

void loop() {

digitalWrite (IN4, HIGH);
digitalWrite (IN3, LOW);
delay (4000);

digitalWrite (IN4, LOW);
delay (500);

digitalWrite (IN3, HIGH);
delay(4000);

digitalWrite (IN3, LOW);
delay(5000);

}





Mi conexión del Puente H al Arduino





Materiales a usar para la práctica:


1) Arduino Uno
2) Moto reductor
3) Puente H
4) Batería 6v-12v
5) 2 Cables macho-hembra
6) 3 cables Macho-macho
7) destornillador


Conexión Moto reductor + Puente H
























Anexos

Explicación del MR.




lunes, 11 de julio de 2016

El gran proyecto (sumativa)

Sumativa


Luego de habernos familiarizado mediante la práctica, explicación e investigación con varios de los componentes, llega el trabajo final. Realmente es muy complejo este trabajo consistía en utilizar 12 leds, 6 en frente y otros 6 en frente, realizar 2 secuncias. La primera secuencia, se realiza cuando el botón no está aplastado, en esta secuencia, se encienden los leds, desde varios extremos opuestos, y se van acercando. En la segunda secuencia, la cual es realizada cuando el botón es aplastado, se deben encender 3 leds de un lado y 3 del otros, luego estos se apagan y se e3ncienden los demas. Todo este trabajo debe unirse con un potenciómetro el cual va a regular la velocidad, es decir debemoos hacer que el potenciómetro aumente la velocidad de encendido y apagao de los leds, y disminuya.


En esta imagen se puede apreciar lo que se debe realizar en el trabajo.



RESULTADO OBTENIDO




Desarrollo y Opiniones

Realizar este trabajo no fue nada fácil, pues trajo consigo mucho esfuerzo y dedicación. En mi caso, pasé varios día intentando hallar el código correcto, puesto que era algo teóricamente largo, tuve que empezar días antes. Tambíen tuve que investigar en algunos casos, ya que no recordaba cómo utilizar algunos de los componentes y cómo agregar variables para unir este trabajo. Sin embargo, me di cuenta que un con análisis fue suficiente para poder realizar este trabajo. Al pincipio estuve muy encerrado a una sola manera de realiza el ejrcicio, sin embargo me propuse analizar otras alternativas que podrían servir, y así fue. Al principio, como todo trabajo hubieron muchos problemas, los leds no encendían porque estaban mal colocados, hacían faltas cables, el código no era compilado correctamente, las secuencias estaban endesoreden, en fin hubieron muchos problemas, pero al final luego de arreglar muy bien los detalles y mejorar cada parte que estaban mal colocada o mal hecha, pudimos obtener el resultado que tanto deseábamos. Al final mi compa;era Ana y yo nos emocionamos y llenamos de alegría, orgullo y satisfación al haber obtenido el resultado esperado, ya que pudimos realizar ambas secuencias como eran y obtuvimos la maxima calificación.










Anexos
Código utilizado





Pulsador

Pulsador

Vamos a hacer nuestra primera prueba de botón (pulsador) conectando un LED en nuestra tarjeta Arduino. El símbolo del esquema para un pulsador de botón es algo diferente que el mostrado. Prepare un LED rojo y una resistencia de 10K Ohms, así como el pulsador de botón y construya un montaje del esquema en su tabla de prototipado cerca del Arduino.




Esta es primero la explicación que nos dio el mr en la pizarra, parece simple aunque en realidad es algo compleja. Algo muy importante en el pulsador es que la energía fluye de modo X, cruzado y luego de esto se debe colocar una resistencia.




Así es como se debe montar el pulsador en nuestra placa Arduino.


Actividad, encender un led aplastando el botón



En esta actividad trabajamos modificando el led del pin 13 que se encuentra en la placa Arduino para que al pulsar o no pulsar la botonera se encienda o se apague dicho led. Para esto se conectaba una de las patas del led a tierra pero utilizando una resistencia de 1k ohmios y del otro lado se conectaba a la placa al pin de 5v y al pin 13 que era con el que se iba a trabajar.

Código de configuración




int estado = 0;


void setup() {
  // put your setup code here, to run once:
pinMode(11, INPUT);  
pinMode(13,OUTPUT);
}
void loop() {
  // put your main code here, to run repeatedly:
estado = digitalRead(12);

 if (estado == HIGH){
  digitalWrite(13, HIGH);
 } 
 else {
   digitalWrite(13, LOW);
 }
}





















Auto Fantástico II: Encender los leds en direcciones opuestas


Auto Fantástico II: Encender los leds en  direcciones opuestas



Luego que realizamos la primera secuencia encendiendo y apagando los leds en un mismo sentido, esta actividad tendrá algo peculiar, que será encender y apagar leds en sentidos opuestos.

Para esta actividad necesitaremos:


8 leds
8 resistencias
Arduino
Protoboard
8 Cables macho macho
1 cable más que i´ra conectado a tierra


Luego que ya tenemos el protoboard montado con la secuencia anterior, lo que va a variar, será el código de programación por varios motivos:
1) Ya no se encenderá un led a la vez, sino dos.
2) Al encender dos leds a la vez, también se apagarán los mismo, y así hasta terminar con todos.
3) Luego que llega al extremo, no debe empezar desde el principio, sino que debe regresar en sentido contrario al origen, seiguiendo la misma secuencia.

Desarrollo


Lo primero que hice, fue darme cuenta que debía unir 2 códigos de leds para encendido. Así de esta manera obtendr´´iamos el siguiente código en void loop

void loop() {
  // put your main code here, to run repeatedly:
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
delay(100);
digitalWrite(5, HIGH);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(5, LOW);
digitalWrite(8, LOW);
delay(100);
digitalWrite(4, HIGH);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(4, LOW);
digitalWrite(9, LOW);
delay(100);
digitalWrite(3, HIGH);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(3, LOW);
digitalWrite(10, LOW);
delay(100);
digitalWrite(10, HIGH);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(10, LOW);
digitalWrite(3, LOW);
delay(100);
digitalWrite(9, HIGH);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(9, LOW);
digitalWrite(4, LOW);
delay(100);
digitalWrite(8, HIGH);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(8, LOW);
digitalWrite(5, LOW);
delay(100);
digitalWrite(7, HIGH);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
delay(100);
}


Como podemos ver en el código, a iferencia del primer trabajo, aquí se ponen 2 pines digitales seguidos, ya que funcionarán al mismo tiempo.