Durante este curso académico 2021-2022 hemos trabajado con varios grupos de 4º ESO pequeños proyectos, han investigado sobre el funcionamiento de algunos sensores y hemos aprendido el funcionamiento de los servomotores.
Como proyecto final, han realizado un pequeño robot utilizando servomotores.
Los alumnos han puesto 2 servos para cada una de las piernas del robot, los han pegado con una pistola de silicona y los han programado para que se muevan de la siguiente manera:
#include <Servo.h>
Servo der_arriba;
Servo der_abajo;
Servo izq_arriba;
Servo izq_abajo;
void setup() {
der_arriba.attach(5);
der_abajo.attach(6);
izq_arriba.attach(7);
izq_abajo.attach(8);
posicion_inicial();
delay(3000);
}
int f=0;
void loop() {
if (f==0) {
saludar();
caminar();
bailar();
f=1;
}
}
void posicion_inicial(){
der_arriba.write(0); delay(100);
der_abajo.write(0); delay(100);
izq_arriba.write(90); delay(100);
izq_abajo.write(90); delay(100);
}
void saludar(){
for (int i=0;i<2;i++){
der_abajo.write(50); delay(100);
izq_abajo.write(40); delay(100);
der_abajo.write(0); delay(100);
izq_abajo.write(90); delay(100);
}
}
void caminar(){
int vel=50; //Velocidad a la que anda
for (int i=0;i<30;i++){
der_arriba.write(90); delay(vel);
der_abajo.write(50); delay(vel);
der_arriba.write(0); delay(vel);
der_abajo.write(0); delay(vel);
izq_arriba.write(0); delay(vel);
izq_abajo.write(40); delay(vel);
izq_arriba.write(90); delay(vel);
izq_abajo.write(90); delay(vel);
}
}
void bailar(){
for (int i=0;i<5;i++){
der_abajo.write(50); delay(300);
izq_abajo.write(40); delay(150);
der_abajo.write(0); delay(300);
izq_abajo.write(90); delay(150);
der_arriba.write(90); delay(500);
izq_arriba.write(0); delay(500);
der_arriba.write(0); delay(500);
izq_arriba.write(90); delay(500);
der_arriba.write(90); delay(500);
izq_arriba.write(0); delay(500);
der_arriba.write(0); delay(500);
izq_arriba.write(90); delay(500);
}
}
No hay comentarios:
Publicar un comentario