Uso de un acelerómetro y un giroscopio con Arduino

he comprado recientemente una combinación de 3 ejes acelerómetro y giroscopio de 2 ejes de Sparkfun y quería publicar parte del código utiliza para conseguirlo ya está en marcha.  Estoy pensando en usarlo en un Arduino basado en controlador MIDI que voy a publicar pronto (video a continuación, el código al final de página), quiero utilizar los controles analógicos de la inclinación y el movimiento de rotación para controlar la salida MIDI.  Acelerómetros y giroscopios se utilizan también con frecuencia sobre robots de equilibrio y otros tipos de comentarios.

Primero un poco de información básica:
Giroscopios medir el movimiento de rotación en grados por segundo.  No directamente le dirán información sobre tilt, movimiento sólo alrededor de un eje.  Aceleración medida de acelerómetros , fácilmente puede utilizar esta información para calcular la inclinación de un objeto por sustracción de los datos del acelerómetro actual de un valor que usted sepa que para ser cero inclinación.

Para este proyecto usé 5 grados de libertad IDG500/ADXL335 board de Sparkfun.  Me gusta este foro porque imprime los datos de acelerómetro y giroscopio como 5 tensiones analógicas que se pueden leer fácilmente con cinco pines de entrada analógicas de Arduino.  Algunos acelerómetros y giroscopios de salida digitalmente datos mediante la codificación en un ancho de pulso había modulado señal (PWM).  Si usted es corto en los pines de entrada analógicos en el Arduino, puede ser una buena idea usar uno de estos chips digitales, pero los chips analógicos son agradables porque requieren un esfuerzo mínimo para conseguir trabajo.

Lista de partes:
IMU analógico Combo Board - 5 grados de libertad IDG500/ADXL335 Sparkfun SEN-11072
Arduino Uno Sparkfun DEV-11021
Jefe masculino pernos Sparkfun PRT-00116
alambre calibre 22
protoboard

Pasos:

La soldadura de pernos de cabecera a la Junta de acelerómetro/giroscopio.  En un protoboard Conecte Arduino 5V al pin de "RAW", Arduino a tierra, luego conectar la clavija con la etiqueta X-Acc a A0, Y-Acc a A1 y A2 Z-Acc

El código siguiente muestra la aceleración X, Y y Z para la placa en el serial monitor (ctrl o Comando + Mayús + M).  He intentado centrar los valores alrededor de un punto cero introduciendo la variable "cero" en mi código y luego restando todos mis datos entrantes de este número.  De esta manera cuando la Junta se celebra paralela a la tierra, la aceleración X y Y ambos Lee 0.  Cuando la Junta se inclina x positivo mostrará un número positivo, y cuando se inclina para X negativo se mostrará un número negativo (lo mismo va para Y).  Este código de acelerómetro le permite determinar la orientación de la placa en el espacio 3D.

 //Analog Accerometer w Serial //by Amanda Ghassaei 

A veces puede que desee utilizar un giroscopio para obtener información rotacional sobre su placa, que no puede calcularse con un acelerómetro.  En un protoboard conectar la clavija etiquetada Vref a A0, yRate a1, xRate a2, y4.5 a A3 y x4.5 a A4.
Usted se estará preguntando sobre la diferencia entre el X / YRate y X Y4.5 salidas.  Giroscopios miden grados por segundo, este giroscopio salidas una tensión basada en los grados de movimiento por segundo, así que podemos decir que es salida voltios por grados por segundo (V ° s).  De la hoja de datos del giroscopio podemos ver que el X / YRate es salida de datos con 2.0mV/°/s sensibilidad y el X / Y4.5 es salida de datos con cerca de 4.5 veces la sensibilidad, o 9.1mV/°/s.
Añadir el siguiente código para mostrar la salida de cada uno de estos (fig 6).

 //Analog Gyro w Serial //by Amanda Ghassaei 

Quería a cero este código como lo hice con el anterior código de acelerómetro. Yo estaba esperando los resultados de x e y giro para igualar la salida de Vref mientras el dispositivo se mantiene inmóvil, pero como se aprecia en la figura 6, esto no es el caso (si alguien tiene una explicación para esto me encantaría oírla!). Puesto que Vref no era una referencia de Dios para mí a cero mi salida, usé algunos valores preestablecidos basados en los datos de la figura 6, puede encontrarlos en mi impresión declaraciones en el código siguiente. También quité el monitoreo de Vref, puesto que parecía ser estable sin importar cuánto me mudé el dispositivo, esto también me salvó un pin de entrada analógico en el Arduino.

 //Analog Gyro w Serial //by Amanda Ghassaei 

Los resultados de este código se muestran en la figura 7.  Rotación alrededor del x y y hachas cambiará los valores de xRate, x4.5, yRate y y4.5.
Usé este acelerómetro/giroscopio en un controlador de MIDI basada en Arduino que he estado trabajando. A continuación es el código para las dos aplicaciones que hizo una demostración en el video en la parte superior de este instructable.  Había conectado los tres ejes de acelerómetro y las salidas de dos 4.5gyro para este proyecto.

píxel se mueve, disparo MIDI (sólo utiliza x e y acelerómetro):

 //accelerometer test- single pixel //by Amanda Ghassaei 2012 

cuatro pixeles rebote (sólo utiliza x acelerómetro, aplicaciones x giro para borrar píxeles):

 //accelerometer test- bounce //by Amanda Ghassaei 2012 

Artículos Relacionados

LCD, potenciómetro y pwm led con Arduino

LCD, potenciómetro y pwm led con Arduino

Lo que usted necesita:Placa ArduinoPANTALLA LCD 16 * 2Recortador de 10 kΩPotenciómetro 10 kΩLED 5mm220, 330 resistencias ΩAlgunos puentesProtoboardQué dibujo se hace:En este bosquejo, se imprimirá el valor de potenciómetro analógico en la pantalla lc
El primer uso de 0,96" pantalla OLED de I2C con Arduino UNO

El primer uso de 0,96" pantalla OLED de I2C con Arduino UNO

Hoy, voy a mostrarte cómo utilizar 0,96" pantalla OLED de I2C con placa Arduino UNO. Hay un montón de diferentes tipos de pantallas OLED. Tengo 4-pines OLED pantalla conmigo. Esta muestra puede ser con pernos SPI en vez de I2C. Estas versiones se pue
Uso de LEGO MINDSTORMS RCX Sensor de luz con Arduino (programa con Visuino)

Uso de LEGO MINDSTORMS RCX Sensor de luz con Arduino (programa con Visuino)

En este Instructable aprenderá a programar el Arduino para controlar y obtener datos de LEGO MINDSTORMS RCX Sensor de luz con la ayuda de Visuino - un ambiente de desarrollo gráfico fácil de usar para Arduino.Tenga en cuenta que la anotación en algun
Acelerómetro y giroscopio Tutorial

Acelerómetro y giroscopio Tutorial

IntroducciónEsta guía está dirigida a todos los interesados en el uso de acelerómetros y giróscopos, así como dispositivos de combinación IMU (Unidad de medición inercial) en sus proyectos de electrónicaCubriremos:¿Qué mide un acelerómetro?¿Qué mide
Registrador de datos geo: Arduino + GPS + SD + acelerómetro para registrar, sello de tiempo y datos del sensor geo-tag

Registrador de datos geo: Arduino + GPS + SD + acelerómetro para registrar, sello de tiempo y datos del sensor geo-tag

versiones17 de octubre de 2013: he publicado una guía sobre el uso de tu teléfono Android para llevar a cabo una tarea similar al aprovechar tu Android dispositivo de construido en GPS y sensores.06 de febrero de 2013: Aparece en GeoAwesomeness http:
Intel Edison IoT - Servo Control utilizando acelerómetro

Intel Edison IoT - Servo Control utilizando acelerómetro

Hola todos, estoy entre los chicos afortunados que recibieron una placa Intel de Edison y el IoT Kit de Grove. Me he pasado mucho tiempo para aprender acerca de esta nueva Junta Directiva de Edison y Arduino impresionante estilo de codificación. Son
Control de cero con un acelerómetro

Control de cero con un acelerómetro

entorno de programación Scratch el es muy popular entre los niños. Usando Arduino, podemos introducir control acelerómetro por lo que sus juegos pueden reaccionar a la inclinación del acelerómetro.Había cubierto los conceptos básicos en el instructiv
Robot de pintura de la ventana (arduino, procesamiento, acelerómetro)

Robot de pintura de la ventana (arduino, procesamiento, acelerómetro)

la idea de este proyecto vino de uno de mis favoritos ' ibles: el polargraph. ¿Me encantó el estilo de dibujo y pensamiento lo guay sería hacerlo en el lado de un edificio? Por desgracia los retos para establecer una polargraph tan grande con un pres
Frambuesa Pi - Tutorial de Python de acelerómetro de 3 ejes ADXL345

Frambuesa Pi - Tutorial de Python de acelerómetro de 3 ejes ADXL345

El ADXL345 es una potencia pequeña, delgada, ultra bajo, acelerómetro de 3 ejes con alta resolución (13 bits) medición hasta ±16 g. salida Digital datos tiene el formato como complementan dos 16-bit y es accesible a través de la interfaz digital I2 C
Viejo coche RC hackeado: Android control vía BT. (acelerómetro manejo)

Viejo coche RC hackeado: Android control vía BT. (acelerómetro manejo)

hoy me encontré mi coche rc muy viejo, tengo un poco tuning... :)Programa de control creado con inventor de la aplicación 2.De la dirección con el acelerómetro del teléfono, con un control deslizante.Lamentablemente el regulador demasiado estrecho, p
Arduino Nano: Sensor acelerómetro giroscopio MPU9250 brújula I2C con Visuino

Arduino Nano: Sensor acelerómetro giroscopio MPU9250 brújula I2C con Visuino

MPU9250es uno de los más avanzados sensores de tamaño pequeño acelerómetro, giroscopio y brújula actualmente disponibles combinados. Tienen muchas características avanzadas, incluyendo filtrado de paso bajo, detección de movimiento e incluso un proce
Guía de giroscopio y acelerómetro con Arduino incluye filtrado de Kalman

Guía de giroscopio y acelerómetro con Arduino incluye filtrado de Kalman

esta guía fue publicada primero en el foro de Arduino y se puede encontrar aquí: http://arduino.cc/forum/index.php/topic, 58048.0.htmlYo apenas había publicado, así que aún más conseguirá un uso. El código se puede encontrar aquí:https://github.com/T
ACELERÓMETRO y registrador + hacer y uso

ACELERÓMETRO y registrador + hacer y uso

Fondo y propósitoHace unas semanas un amigo rompió su antebrazo: ella estaba en un autobús cuyo conductor tiró violentamente los frenos y cayó. Esto me recordó las veces en que tuve que recordar (amablemente) al conductor del autobús que no se suponí
GY-521 MPU6050 giroscopio de 3 ejes y acelerómetro con Arduino

GY-521 MPU6050 giroscopio de 3 ejes y acelerómetro con Arduino

Este video tutorial va sobre la instalación y configuración de un tablero de GY-521 MPU6050 3 ejes giroscopio y acelerómetro con un Arduino. Después de algunos problemas iniciales con pude conseguir el componente de trabajo. Al principio tuve problem