sábado, 10 de marzo de 2012

Taller de robótica en la F11




Ayer estuve en el taller de robótica de Reset(clase F11)y estuve probando algunas cosas.

La primera fue desarrollar la oruga de Obijuan. Como todavía no tengo la impresora disponible hice los módulos con plantillas y la Dremel.

Estas son las fotos del desarrollo. Las plantillas como siempre están colocadas en el Thingiverse:

La plancha de PVC a mecanizar


Colocando las plantillas

Plantillas ya hechas

Colocados los servos

Después de ponerles los servos, probé a ponerles un programa siempre:

#include

Servo myservo; // crea un objeto tipo servo para controlar el servo
Servo myservo2; // crea un objeto tipo servo para controlar el servo
int pos = 90; // variable para almacenar la posición del servo
int pos2 = 90;
Servo myservo3;
int pos3 = 90;// crea un objeto tipo servo para co// crea un objeto tipo servo para co// variable para almacenar la posición del servo
void setup()
{
myservo.attach(9); // liga el servo conectado en el pin 9 al objeto servo
myservo2.attach(6);
myservo2.attach(10); // liga el servo conectado en el pin 6 al objeto servo
}

void loop()
{
pos2=180/2;
for(pos = 0; pos < 180; pos += 1) // va de 0 a 180 grados { // en pasos de 1 grado myservo.write(pos); pos2 -= 1; myservo2.write(pos2/2); // dice al servo que se posicione en la posición indicada por la variable 'pos' delay(15); myservo.write(pos);// espera 15 ms para dar tiempo al servo a llegar a la nueva posición } pos2=90; for(pos = 180; pos>=1; pos-=1) // va de 180 a 0 grados
{
myservo.write(pos);
pos2 += 1;
myservo2.write(pos2/2); // dice al servo que se posicione en la posición indicada por la variable 'pos'
delay(15);
myservo3.write(pos);// espera 15 ms para dar tiempo al servo a llegar a la nueva posición
}
pos3=90;
for(pos = 180; pos>=1; pos-=1) // va de 180 a 0 grados
{
myservo.write(pos);
pos2 += 1;
myservo2.write(pos2/2); // dice al servo que se posicione en la posición indicada por la variable 'pos'
delay(15);
myservo3.write(pos);// espera 15 ms para dar tiempo al servo a llegar a la nueva posición
}

}


Tiene fallos de montaje, pero los corregiré cuando Obijuan suba las librerías de las orugas, ya que con dichas librerías si que podré simular el movimiento perfectamente.



Por otra parte estuve ayudando al control de servos continuos, que como ya tenia cierta experiencia, como puse en la entrada anterior. He hecho un programa muy simple para control de un servo continuo:

#include

Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created

int pos = 0; // variable to store the servo position

void setup()
{
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}


void loop()
{

pos=0;
myservo.write(pos);
delay(1000);
pos=180;
myservo.write(pos);
delay(1000);
pos=94;
myservo.write(pos);
delay(1000);

}

Vamos ahora con otro experimento, los Legos MindStorms. Mi experiencia fue muy buena y aunque yo jamas tuve Legos de chico, fue muy fácil de aprender a dominar su manejo. Dejo un video de un robot que hice, aunque espero en el futuro hacer una entrada sobre ello:


No hay comentarios:

Publicar un comentario

Seguir @Exergy123