lunes, 12 de septiembre de 2016

"Uso del Servo Motor"

Servo Motor HITEC HS311

El es un dispositivo similar a un motor de corriente continua que tiene la capacidad de ubicarse en cualquier posición dentro de su rango de operación, y mantenerse estable en dicha posición. 
Resultado de imagen para que es el servo motor  Resultado de imagen para usos que le dan a al servo motor
Como podemos ver en las imágenes, hay dos distintos tipos de Servo Motores, pero tienen la misma función, a si que no hay de que preocuparse. 
Gracias a esto, las personas usan estos Servomotores para distintas cosas, cómo por ejemplo; en la "Robótica", que lo pueden usar para el control de las llantas, brazos, piernas, cabeza, etc. Otros usos que le pueden dar las personas son las maquinarias que usan para hacer cilindros para autos, etc. Pero hay que tener en cuenta de que ellos usan otro tipo de servomotores. 
Actividad con el "Servomotor"
En esta actividad, trabajamos en como había que conectar el servomotor, la cual es de la siguiente manera:
  • 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 o café del servo motor es el negativo puede ir conectado directamente al GND del Arduino o al protoboard donde tiene todas las GNDs referenciadas.
  • 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)
Ejemplo de la programación:
#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);
  }
}

domingo, 4 de septiembre de 2016

Conexión de motor reductor y puente H

Primero hay que saber ¿Qué es el motor reductor?;
- Es un conjunto de engranes que van acoplados a la flecha de un motor eléctrico y sirve para reducir el numero de rpm del motor pero a una velocidad constante. Sus partes están formadas por mecanismo de tornillo sin fin y corona. En este tipo de mecanismo el efecto del rozamiento en los flancos del diente hace que estos engranajes tengan los rendimientos más bajos de todas las transmisiones; dicho rendimiento se sitúa entre un 40 y un 90% aproximadamente, dependiendo de las características del reductor y del trabajo al que está sometido. El moto reductor va conectado de la siguiente manera al puente H o directamente a un batería en otro caso. Hay que recordar que el protector del moto reductor tiene dos ganchillos para conectar los jumper en esta caso mas fácilmente , estos ganchos no tiene polaridad. Lo único que causa la inversión de la polaridad es que cambie el sentido de que giran los engranajes. En el caso que este conectados a una rueda cambiara la dirección.
El puente H.-  Es un circuito electrónico que nos permite controlar el giro de un motor de corriente continua, me refiero a que el motor gire en el sentido de las agujas de un reloj o en el sentido contrario a las mismas.
Actividad con lo aprendido
La actividad en si consistían en que los moto reductores funcionen correctamente en la conexión de la batería el puente H y el arduino. Y aquí una imagen de los comandos:


lunes, 11 de julio de 2016

Secuencia de varios leds con potenciometro y botón de dos patas

En este proyecto, tuvimos que hacer una secuencia en la que la botonera y el potenciometro debian actuar al mismo tiempo, y así nos salió con códigos y todo:

y aquí los códigos:
int boton=0;
int velocidad;
void setup() {
  // put your setup code here, to run once:
pinMode (0,OUTPUT);
pinMode (1,OUTPUT);
pinMode (2,OUTPUT);
pinMode (3,OUTPUT);
pinMode (4,OUTPUT);
pinMode (5,OUTPUT);
pinMode (6,OUTPUT);
pinMode (7,OUTPUT);
pinMode (8,OUTPUT);
pinMode (9,OUTPUT);
pinMode (10,OUTPUT);
pinMode (11,OUTPUT);
pinMode (12,INPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  velocidad = analogRead (5);
  boton = digitalRead (12);
  if(boton==LOW){
    digitalWrite(0, HIGH);
    digitalWrite(6,HIGH);
    delay(velocidad/2);
    digitalWrite(0,LOW);
    digitalWrite(6,LOW);
    delay(velocidad/2);
    digitalWrite(1, HIGH);
    digitalWrite(7,HIGH);
    delay(velocidad/2);
    digitalWrite(1,LOW);
    digitalWrite(7,LOW);
    delay(velocidad/2);
    digitalWrite(2,HIGH);
    digitalWrite(8,HIGH);
    delay(velocidad/2);
    digitalWrite(2,LOW);
    digitalWrite(8,LOW);
    delay(velocidad/2);
    digitalWrite(3, HIGH);
    digitalWrite(9,HIGH);
    delay(velocidad/2);
    digitalWrite(3,LOW);
    digitalWrite(9,LOW);
    delay(velocidad/2);
    digitalWrite(4, HIGH);
    digitalWrite(10,HIGH);
    delay(velocidad/2);
    digitalWrite(4,LOW);
    digitalWrite(10,LOW);
    delay(velocidad/2);
    digitalWrite(5,HIGH);
    digitalWrite(11,HIGH);
    delay(velocidad/2);
    digitalWrite(5,LOW);
    digitalWrite(11,LOW);
    delay(velocidad/2);
    }
  else {
    digitalWrite(0,HIGH);
    digitalWrite(1,HIGH);
    digitalWrite(2,HIGH);
    digitalWrite(6,HIGH);
    digitalWrite(7,HIGH);
    digitalWrite(8,HIGH);
    delay(velocidad/2);
    digitalWrite(0,LOW);
    digitalWrite(1,LOW);
    digitalWrite(2,LOW);
    digitalWrite(6,LOW);
    digitalWrite(7,LOW);
    digitalWrite(8,LOW);
    delay(velocidad/2);
    digitalWrite(3,HIGH);
    digitalWrite(4,HIGH);
    digitalWrite(5,HIGH);
    digitalWrite(9,HIGH);
    digitalWrite(10,HIGH);
    digitalWrite(11,HIGH);
    delay(velocidad/2);
    digitalWrite(3,LOW);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    delay(velocidad/2);
    }

}

domingo, 10 de julio de 2016

Encender con el Arduino muchas luces Leds con potenciometro

Este es un deber que nos mandó el profesor, trata de lo aprendido con el potenciometro  hacer que las luces LEDS de nuestro Protobard o la luces del carro fantástico funcione con el potenciometro  Aquí hay una foto y vídeo de como quedó.

Y los códigos son:
int velocidad;
void setup() {
  // put your setup code here, to run once:
 pinMode(2, OUTPUT);
 pinMode (3,OUTPUT);
pinMode (4,OUTPUT);
pinMode (5,OUTPUT);
pinMode (6,OUTPUT);
pinMode (7,OUTPUT);
pinMode (8,OUTPUT);
pinMode (9,OUTPUT);
pinMode (10,OUTPUT);

}

void loop() {
 velocidad = analogRead (0);
 digitalWrite(0,HIGH);
    digitalWrite(2,HIGH);
    digitalWrite(3,HIGH);
    digitalWrite(4,HIGH);
    digitalWrite(5,HIGH);
    digitalWrite(6,HIGH);
    digitalWrite(7,HIGH);
    digitalWrite(8,HIGH);
    digitalWrite(9,HIGH);
    digitalWrite(10,HIGH);
    delay(velocidad/2);
    digitalWrite(2,LOW);
    digitalWrite(3,LOW);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
    digitalWrite(6,LOW);
    digitalWrite(7,LOW);
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    delay(velocidad/2);

}



Potenciometro con Arduino

En este día, el profesor nos explico de como deberíamos conectar el potenciometro al Arduino. Primero explicando como había que ponerlo o ubicarlo al Protobard, y que cosa conectar a cada pata.
Aquí verán dos imágenes de un ejemplo de cómo conectarlo, y un vídeo de que sí funciona:


Y aquí los códigos:
int rapidez;
void setup() {
  // put your setup code here, to run once:
pinMode(13, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
rapidez = analogRead(0);

digitalWrite(13, HIGH);
delay(rapidez);
digitalWrite(13, LOW);
delay(rapidez);




Encender el un pin con una botonera en Arduino


En este día, el profesor nos estaba enseñando como sería la instalación y programación con una botonera en el arduino. Primero, el profesor nos enseño como era la botonera, cómo es cada pata, etc. 

Cómo se puede ver en la imagen de la parte izquierda, está la forma en la que se debe instalar los cables con la botonera. Aquí estaría el ejemplo con el Arduino y el protobard. 


Y aquí los códigos de instalació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);
 }
}





sábado, 9 de julio de 2016

El carro fantástico con otro ¡SENTIDO!

En este día el profesor nos dijo que teníamos que hacer que la forma que debía ir las luces LEDS deberían cambiar. Dijo que primero había que poner ocho LEDS y conectarlo al arduino. Con los mismo códigos del primer ejercicio del Arduino, teníamos que cambiar cierta parte de la programación para que desde la mitad de los LEDS (4) se prendan de un lado desde la izquierda hasta el final y la otra mitad desde la derecha hasta el final y que regrese. 

Y aquí el ejemplo de como quedaría con los códigos:

void setup() {
  // put your setup code here, to run once:
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
}

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);
}

Diarios - Información con Arduino

Primera semana de clases                                                           abril 25, 2016 14:40
En este día, 25 de abril del 2016, empezamos nuestra primera actividad de clases en la que se le hace llamar "Selfie de un compañero", este trabajo consistía en que el profesor daba un pedazo de papel a cada estudiante, en ese pedazo de papel tenías que tratar de dibujar a ti mismo en un tiempo determinado, luego tenemos que entregarlo al maestro. Luego el maestro tenia que entregar cada carta a cada alumno, pero tiene que barajearlo para que no le toque igual a cada uno, luego de que el profesor terminase, todos debíamos tratar de identificar de quién era la imagen, para algunos se les hacía difícil, pero otros fáciles. Luego de identificar a la persona dibujada, teníamos que encontrarla y hablar sobre los sensores, luego de eso tomarnos una selfie con el compañero. Al final el profesor sacaba a los estudiantes a que nos hablen si es que fue difícil identificar al compañero y porque, luego decir de que hablamos a cerca de los sensores. Aquí les presentó el dibujo que hizo la persona que me tocaba:
Como pueden ver, ese es el dibujo que mi compañero de clase dibujo, el nombre lo puse yo, para mí fue fácil ya que él dejo una pista en su camisa, puso la letra S, además de que estaba echando un ojo a la mayoría de los dibujos que hacían los compañeros. no me tomé una selfie con mi compañero ya que estaba con otra persona que tenía mi dibujo, con ella si me tome una selfie y hablamos sobre los sensores.



Luces del "Carro Fantástico" en ¡ARDUINO!
En este día, tuvimos que hacer en nuestro Arduino y Protobard, la secuencia de luces que tenía el "carro fantástico" la cual era 8 luces que se prendían de izquierda a derecha y viceversa. Entonces, lo primero que teníamos que hacer es tomar el ejemplo del "Blind que ya viene por defecto en la aplicación del "Arduino". Luego ponemos las luces Leds, las resistencias de 220 en su lugar y los cable macho-macho. En la siguiente imagen, podemos ver como está conectado. Las resistencias entran conectadas con la pata negativa del Led y el que le da energía es el arduino la cual conectamos un cable macho-macho al GND, que es el piso en español. 

Aquí veremos un ejemplo de la programación con el Arduino,hay otras formas para no hacerlas tan larga, pero este es un código para "principiantes" y un vídeo de como quedó con un DELAY de 50.



Y aquí un vídeo: