Banner publicitario de PCBWay

[Aporte] Construccion de un robot animatronic

Hola gente, aqui de nuevo. esta vez les dejo un tutorial sobre la construccion de una cabeza animatronic. en este caso voy a comenzar por la construccion de los ojos, pero pienso hacer una cabeza completa, asi que ire dejando aqui, el avance del proyecto. aqui, los videos.

Parte 1:

Diagrama:
JOYSTICK SERVO_bb.jpg

Codigo Arduino:
Código:
/*
CONTROL DE 3 SERVOS CON ARDUINO
 
//incluir biblioteca de control de servos

#include "Servo.h"
 
//Crear un objeto clase Servo
Servo servoMotorObjX;
Servo servoMotorObjY;
Servo servoMotorObjZ;
 
//Definir pin digital (PWM) asociado al control de los servomotores
int const servoMotorX = 3;
int const servoMotorY = 5;
int const servoMotorZ = 6;
 
//Variábles en las que se almacena la posicion leida
//en los ejes de los joystick
int joystickX = 0;
int joystickY = 0;
int joystickZ = 0;
 
//Atribullendo el pin analógico A0 a la variáble del eje X
int ejeX = A0;
 
//Atribullendo el pin analógico A1 a la variable del eje Y
int ejeY = A1;
 
//Atribullendo el pin digital 2 a la variáble del eje Z
int ejeZ = 2;
 
void setup() {
  //asociando el pin digital de control de
  //servo al objeto clase Servo
  servoMotorObjX.attach(servoMotorX);
  servoMotorObjY.attach(servoMotorY);
  servoMotorObjZ.attach(servoMotorZ);
 
  //Definiendo eje Z como un pin de entrada
  pinMode(ejeZ, INPUT);
   
  servoMotorObjX.write(90);
  servoMotorObjY.write(90);
  servoMotorObjY.write(180);
 

}
 
void loop() {
  //Lée el valor del eje X
  joystickX = analogRead(ejeX);
 
  //Lée el valor del eje Y
  joystickY = analogRead(ejeY);
 
  //Lée el valor del eje Z
  joystickZ = digitalRead(ejeZ);
 
   
 
  //mapeando el valor leido en el joystick para una escala de
  //servo (entre 0 y 180)
  joystickX = map(joystickX, 0, 1023, 45, 135);
  joystickY = map(joystickY, 0, 1023, 45, 135);
  joystickZ = map(joystickZ, 0, 1, 0, 180);   
 
  //definiendo el valor/posicion del servomotor
  servoMotorObjX.write(joystickX);
  servoMotorObjY.write(joystickY);
  servoMotorObjZ.write(joystickZ);
 
  //espera 20 milisegundos.
  delay(20);
}
...
 

Adjuntos

  • Planos animatronic.pdf
    39.5 KB · Visitas: 47
Última edición:
El voltaje nominal es de 4,8V aunque la verdad los rangos no sabría cuales son, algunos dicen que de 3-7V, muchas veces se usan a 5V.
 
Atrás
Arriba