Archivo de la etiqueta: acelerómetro

Acelerómetro ADXL335

El sensor acelerómetro ADXL335 nos permite medir la aceleración en los tres ejes espaciales X,Y,Z. Es un sensor compacto y de tamaño muy reducido. Funciona a 3.3v y normalmente lo encontramos en forma de módulo con los componentes necesarios para su conexión directa a la placa  Arduino.

El rango capaz de medir este sensor  es de -3G a +3G (G=aceleración de la gravedad,  1G=9.8m/s2)

 

El sensor se conecta a tres entradas analógicas, una por cada eje de medición, el conector VCC se conecta a 3.3v

Con los valores de aceleración podemos medir la velocidad, detectar “sacudidas“, detectar “gestos” o analizar movimientos como andar o correr (podómetro). Un ejemplo del uso de acelerómetros es el famoso mando de la videconsola Wii (a parte de acelerómetros incluye otros sensores como giroscopios)

Con el sensor ADXL335 además de obtener los valores de aceleración, mediante algunos cálculos trigonométricos (que ArduinoBlocks realiza automáticamente) podemos obtener los valores de rotación: roll (ángulo de rotación en ejex X) y pitch (ángulo de rotación en eje Y).

roll = RAD_TO_DEG * (atan2(-yAng, -zAng) + PI);
pitch = RAD_TO_DEG * (atan2(-xAng, -zAng) + PI);

El valor de yaw (ángulo de rotación en eje Z) no podemos calcularlo sólo con un acelerómetro pues en este sentido de giro la aceleración por efecto de la gravedad no varía, por lo que necesitaríamos otros sensores más sofisticados que combinan acelerómetros con giroscopios  o sensores magnéticos (IMU).

Uso del bloque ADXL335 en ArduinoBlocks:

El bloque es muy fácil de utilizar, sólo debemos indicar los pines a donde está conectado cada eje X,Y,Z. Y elegir el tipo de dato que queremos: Accel-X, Accel-Y, Accel-Z, Roll o Pitch.

Ejemplo 1: En este programa de ejemplo leemos todos los datos que nos puede proporcionar el sensor y los mostramos por la consola serie:

Ejemplo 2:  Controlamos la posición de un servo a partir del ángulo roll del sensor:

Video del funcionamiento:

Programas compartidos:

http://www.arduinoblocks.com/web/project/1367

http://www.arduinoblocks.com/web/project/1382

Enlaces y recursos de interés:

http://bildr.org/2011/04/sensing-orientation-with-the-adxl335-arduino/

http://physics.rutgers.edu/~aatish/teach/srr/workshop3.pdf

http://cache.freescale.com/files/sensors/doc/app_note/AN3461.pdf

http://www.analog.com/media/en/technical-documentation/data-sheets/ADXL335.pdf

https://es.wikipedia.org/wiki/Fuerza_G

Más información y proyectos con ArduinoBlocks:

https://www.amazon.es/ArduinoBlocks-Programaci%C3%B3n-visual-bloques-Arduino/dp/1535513284/

Compartir