En este proyecto vamos a ver el funcionamiento del aceleremotro GY-291 ADXL345, en el mismo veremos como trabaja con 2 servos, su conexión a un arduino mini pro, también se utilizará un laser.
Tal vez pueda interesarte proyectos en arduino, pic, robótica, telecomunicaciones, suscribete en http://www.youtube.com/user/carlosvolt?sub_confirmation=1 mucho videos con código fuentes completos y diagramas
Acerca del ADXL345
El ADXL345 es un acelerómetro de 3 ejes de alta resolución (13 bit) que puede medir hasta ± 16 g. Es pequeño y delgado, y tiene bajo consumo de energía. El formato de los datos de salida es de complemento a dos de 16 bit. Los datos se pueden obtener a través de interfaz SPI de 3 o 4 alambre, o I2C.
El ADXL345 es adecuado para medir la aceleración estática de la gravedad para aplicaciones de detección de inclinación, así como la aceleración dinámica ocasionada por algún movimiento o impacto. Su alta resolución (4 mg/LSB) permite medir cambios de inclinación de menos de 1.0.
Incluye funciones especiales de detección. Puede reconocer cuando no hay inactividad con base en la presencia o ausencia de movimiento, y si la aceleración en cualquier eje excede de un nivel establecido por el usuario. Tambin detecta pequeños impulsos individuales y dobles, cuando el dispositivo está en caída libre. Estas funciones se pueden asignar a cualquiera de los dos pines de salida de interrupción. La tarjeta cuenta con un buffer de 32 bits tipo FIFO, para almacenar datos y minimizar la intervención del procesador que se este empleando. Incluye modalidades de bajo consumo que permiten administrar la energía con base en la detección de movimiento y la medición del umbral de aceleración activa para lograr consumos de energía extremadamente bajos.
Nota: El empaque de este sensor informa que trabaja entre 3.3 y 5 V DC, pero el rango de voltaje correcto para esta tarjeta es de 2.0 a 3.6 V DC.
Características:
- Voltaje de alimentación: 2.0 – 3.6 V DC
- Bajo consumo de potencia: 40 µA en modalidad de medición, y 0.1 µA en modo de espera @ 2.5 V
- Detección de pequeños impulsos (sencillo y doble, semejante a un doble click)
- Detección de caída libre
- Compatible con interfaces SPI e I2C
Pin Out ADXL345
Pin Out Arduino mini pro
Pin out SG90 Servo
Naranja–> Señal
Rojo–> Positivo
Marrón–> Negativo
Código fuente
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
//Más proyectos en http://www.rogerbit.com //Suscribete en http://www.youtube.com/user/carlosvolt?sub_confirmation=1 //Grupo en Facebook https://www.facebook.com/groups/RogerBit/ //Librerias necesarias para el funcionamiento del proyecto #include <Wire.h> #include <ADXL345.h> #include <Servo.h> //Crea el objeto adxl ADXL345 adxl; //crear los objetos servoX y servoY para controlar los servos Servo servoX; Servo servoY; //Variables int valorX; int valorY; void setup() { adxl.powerOn(); //Pines usados para los servos servoX.attach(4); servoY.attach(5); } void loop(){ int x,y,z; adxl.readAccel(&x, &y, &z);//leemos los valores del acelerómetro y almacenarlos en variables x, y, z valorX = x; valorY = y; //escala para usarlo en el servo (valor entre 0 y 179) valorX = map(valorX, -255, 255, 179, 0); valorY = map(valorY, -255, 255, 0, 179); //establece la posición del servo de acuerdo con el valor obtendido en el acelerometros ejes x e y servoX.write(valorX); servoY.write(valorY); delay(15); } |
Descargar—>Acelerometro_servo_laser
Diagrama de conexión
Librerías
adxl345 datasheet
Descarga—> ADXL345
Fotos reales del proyecto
VIDEO RECOMENDADO








