Sei sulla pagina 1di 16

5Hertz Tutoriales Documentación para tus

proyectos

Principio del formulario

Search...

Final del formulario

Inicio

Sensores

Magnéticos

Peso

Ultrasónicos

XBee

RF

LCD

Conceptos

Arduino

Acelerómetro

Tienda

Go to...

You are here: Home / Arduino / Introducción al giroscopio.


Introducción al giroscopio.

Posted by: 5Hertz on 21/02/2014 in Arduino 4 Comments 13,979 views 1

Los giroscopios, o girómetros, son dispositivos que miden o mantienen el movimiento de rotación.
MEMS (sistemas microelectromecánicos) giroscopios son pequeños sensores, de bajo costo para
medir la velocidad angular. Las unidades de velocidad angular se miden en grados por segundo (° /
s) o revoluciones por segundo (RPS). La velocidad angular es simplemente una medida de la
velocidad de rotación.

Giroscopios similares al anterior, se pueden utilizar para determinar la orientación y se encuentran


en la mayoría de los sistemas de navegación autónomos. Por ejemplo, si desea equilibrar un robot,
un giroscopio puede ser usado para medir la rotación de la posición de equilibrio y enviar
correcciones a un motor.

Contenido:
1. Introducción.
1.1 ¿Cómo funciona un girómetro?.
1.2 ¿Cómo funciona el giroscopio MEMS para detectar la velocidad angular?.
2. Como conectarse a un giroscopio.
2.1 Interfaz de comunicaciones.
2.2 Potencia.
3. Como seleccionar un giroscopio.
3.1 Alcance.
3.2 Sensibilidad.
3.3 Offset.
3.4 Tabla comparativa de algunos girómetros.
4. Como conectar un girómetro (giroscopio) al arduino.
4.1 Programación.

1.1 ¿Cómo funciona un girómetro?.

Cuando un objeto gira alrededor de un eje obtiene algo llamado velocidad angular. Una rueda que
gira puede ser medida en revoluciones por segundo (RPS ) o grados por segundo (° / s ) .
Tenga en cuenta que el eje z del giroscopio a abajo se alinea con el eje de rotación en la rueda.

Si conecta el sensor a la rueda que se muestra más arriba , se puede medir la velocidad angular del
eje z del giróscopo. Los otros dos ejes no son capaces de medir esa velocidad.

Imagínese si la rueda gira una vez por segundo . Se tendría una velocidad angular de 360 grados
por segundo . La dirección de giro de la rueda también es importante, si es en sentido horario
alrededor del eje , o va hacia la izquierda.

Un giroscopio MEMS de 3 ejes , similar a la que se muestra arriba en la imagen (ITG-3200), puede
medir la rotación en torno a tres ejes : X, Y , y Z . Algunos giroscopios vienen en variedades de eje
simple y doble, pero el giroscopio de tres ejes en un solo chip son cada vez más pequeño, menos
costoso y más popular.

Los giroscopios se utilizan a menudo en los objetos que no están girando muy rápido del todo. Las
aeronaves (con suerte) no giran. En se lugar giran unos pocos grados en cada eje . Mediante la
detección de estos pequeños cambios los giroscopios ayudan a estabilizar el vuelo de la aeronave.
Además, tenga en cuenta que la aceleración o la velocidad lineal de la aeronave no afecta a la
medición del giróscopo. Los giroscopios sólo miden la velocidad angular.

1.2 ¿Cómo funciona el giroscopio MEMS para detectar la velocidad angular?.


Funcionamiento interno de un sensor giroscópico MEMS.

El sensor MEMS dentro de un giroscopio es muy pequeño ( entre 1 a 100 micrómetros , el tamaño
de un cabello humano ). Cuando se hace girar el giroscopio, una pequeña masa de resonancia se
desplaza con los cambios de velocidad angular. Este movimiento se convierte en señales eléctricas
de muy bajas corrientes que se pueden amplificar para ser leídas por un microcontrolador.

2. Cómo conectarse a un giroscopio.

Las conexiones de hardware principales para usar un giroscopio son una interfaz de comunicación
y el poder . Como siempre, consulte la hoja de datos del sensor para la totalidad de la información
sobre las especificaciones y ejemplos de conexiones.

2.1 Interfaz de comunicaciones.

Giroscopios pueden tener ya sea una interfaz de comunicación digital o analógica.

Giroscopio con una interfaz digital por lo general usan el SPI o protocolos de comunicación I2C. El
uso de estas interfaces permite una conexión fácil a un microcontrolador. Una de las limitaciones
de una interfaz digital es la velocidad de muestreo máxima. El I2C tiene una frecuencia de
muestreo máximo de 400 Hz. El SPI, por otro lado, puede tener una frecuencia de muestreo
mucho más alta .

Giroscopios con una interfaz analógica representan la velocidad de rotación con un voltaje
variable, por lo general entre tierra y la tensión de alimentación. Un ADC en un microcontrolador
puede ser utilizado para leer la señal. Giroscopios analógicos pueden ser menos costoso y, a veces
más preciso, dependiendo de cómo se está leyendo la señal analógica.
2.2 Potencia.

Giroscopios MEMS son generalmente dispositivos de baja potencia. la corriente que consumen
están en mA y, a veces en el rango de µA. La tensión de alimentación para giroscopios es
generalmente 5V o menos. Giroscopios digitales pueden tener voltajes lógicos seleccionables o
funcionar a la tensión de alimentación. Para cualquier interfaz digital, recuerde conectar 5V a
líneas de 5V y 3.3V a líneas de 3.3V. También, giroscopios con interfaces digitales pueden tener
modos de alimentación y de sueño tan bajos que les permiten ser utilizados en aplicaciones que
funcionan con batería. A veces esto es una ventaja sobre un giroscopio analógico.

3. Cómo seleccionar un giroscopio.

Hay muchas especificaciones a tener en cuenta al seleccionar un giroscopio. Aquí están algunos de
los más importantes los:

3.1 Alcance.

El rango de medición, o rango de escala completa, es la velocidad angular máxima que el


giroscopio puede leer.

3.2 Sensibilidad.

La sensibilidad se mide en mV por grado por segundo ( mV / ° / s ) . No deje que la dimensión


extraña de este valor te asuste . Se determina la cantidad de los cambios de voltaje para una
velocidad angular dada. Por ejemplo , si se especifica un giroscopio con una sensibilidad de 30 mV
/ ° / s y se ve un cambio de 300 mV en la salida, esto quiere decir que el giroscopio rota a 10 º / s .

Una buena regla para recordar : si la sensibilidad aumenta, el margen disminuye. Por ejemplo,
mire la hoja de datos del giróscopo LPY503 o cualquier giroscopio con un rango seleccionable :
Tenga en cuenta que con un rango mayor, la sensibilidad disminuye y se obtiene menos
resolución.

3.3 Off set.

Al igual que con cualquier sensor, los valores que son medidos contendrán cierta cantidad de error
o corrimiento. Usted puede ver el corrimiento midiendo la salida cuando el giroscopio se
encuentre estático. Aunque se podría pensar que se vería 0°/s, siempre se verá un ligero error
distinto de cero en la salida. Estos errores son a veces llamados desplazamiento de la polarización.
La temperatura del sensor afecta en gran medida el error. Para ayudar a minimizar el origen de
este error, la mayoría de los giroscopios han incorporado un sensor de temperatura. Por lo tanto ,
usted es capaz de leer la temperatura del sensor y corregir cualquier temperatura o cambios
dependientes. Con el fin de corregir estos errores, el giróscopo debe ser calibrado. Esto se hace
generalmente al mantener el giroscopio quieto y reduciendo a cero de todas las lecturas en el
código.

3.4 Tabla comparativa de algunos de los girómetros más usados.

Nota: estos dispositivos estarán próximamente en tienda.

Dispositivo Ejes Rango Interfaz Requerimie Características


ntos de
energía

IDG1215 2 (X,Y) ±67°/s Analógi 3V100µA -Incluye amplificador y


ca filtro paso bajo.

LPR503AL 2 (X,Y) ±30°/s±120°/s Analógi 2.7V a 3.6 V - Filtro paso bajo.


ca 6.8 mA - SEFL-TEST.
- Power down.

LPR5150AL 2 (X,Y) ±1500°/s±6000°/s Analógi 2.7V a 3.6 V - Filtro paso bajo.


ca 6.8 mA - SEFL-TEST.
- Power down.

ITG3200 3 (X,Y,Z) ±2000°/s Digital 2.1V a 3.6V - Filtro paso bajo


I2C-16 6.5 mA programable.
bits - Sensor de
temperatura.

MPU-6050 3 ±250, ±500, Digital 2.375V- - Filtro paso bajo


aceleróme ±1000, and I2C 3.46VG-3.6 programable.
tro (X,Y,Z) ±2000°/sec±2g, mAA- 500µA - Detección de
±4g, ±8g and orientación.
3
- Interrupciones
girómetro ±16g programables.
(X,Y,Z) - Detección de caída
libre.
- SEL-TEST.
- Detección de golpe.

LPY503AL 2 (X,Z) ±30°/s±120°/s Analógi 2.7 V a 3.6 - Filtro paso bajo.


ca V6.8mA - SEFL-TEST.
- Power down.

MPU-3050 3 (X,Y,Z) ±250, ±500,±1000, Digital 2.1V a 3.6V - Interrupciones


and ±2000°/sec I2C 6.1 mA programable soporta
características tales
como el
reconocimiento de
gestos, paneo,
detección de cero
movimiento,
detección de golpe y
sacudida.
- Filtro paso bajo
programable.
- Funcionalidad
podómetro.

MPU-6000 3 ±250, ±500, Digital 2.375V- - Filtro paso bajo


aceleróme ±1000, I2C 3.46VG-3.6 programable.
tro (X,Y,Z) mAA- 500µA - Detección de
and orientación.
3 ±2000°/sec±2g, - Interrupciones
girómetro programables.
±4g, ±8g and
(X,Y,Z) - Detección de caída
±16g libre.
- SEL-TEST.
- Detección de golpe.

MAX-21000 3 (X,Y,Z) ±31.25/±62.50/±1 Digital 1.71V a 3.6V -Filtro paso bajo


25/ I2C,SPI 5.4 mA programable.(Interrup
ciones programable)
±250/±500/±1k/±2
k °/s

BMG160 3 (X,Y,Z) ±125°/s a DigitalI 2.4V a 3.6V - Filtro paso bajo.


±2000°/s 2C, SPI 5mA - Sensor de
temperatura.

4. Cómo conectar su girómetro (giroscopio) al arduino.

Del mismo modo que pasa con los acelerómetros, los girómetros analógicos son más fáciles de
usar que sus homólogos digitales así que, ¿Porqué no empezamos por ver cómo usar el sensor
analógico?.

Usaremos el sensor LPY503AL sus características se puede apreciar en la tabla comparativa vista
más arriba.

De acuerdo con el fabricante para : +30°/sec –> 4xOUTX, 4xOUTZ = 1.23V + SoA*30 = 2.23V en
variables quedaría algo así:

gyroZeroVoltage + gyroSensitivity * ?= gyroRate

Ocupamos despejar ? (que está en °/s ) de la ecuación, y queda:


Hacemos las conexiones correspondientes como se muestra continuación.

Ya que tengamos todo correctamente conectado veamos el código.

4.1 Programación.

(DESCARGA AQUI)

Definimos las los parámetros del sensor basándonos en la fórmula de arriba (sólo usamos unos de
los ejes, si su giroscopio es de mas ejes se la dejamos de tarea).

int gyroPin = 2; //El girómetro es conectado al pin A2.


float gyroVoltage = 3.3; //El funciona a 3.3V.
float gyroZeroVoltage = 1.23; //El cero del sensor es 1.23V.
float gyroSensitivity = .0333; //La sensibilidad es 33.3mV/°/s.
float rotationThreshold = 2; //Mínimo °/s para posible ruido presente.
float gyroVel = 0;
void setup() { //esta linea baja el voltaje de referencia de las entradas. analógicas
analogReference(EXTERNAL);
Serial.begin (9600);
}

Desarrollamos la fórmula para calcular la velocidad angular.

Esta linea convierte el valor de 0-1023 a 0-3.3V

void loop() {
float gyroRate = (analogRead(gyroPin) * gyroVoltage) / 1023;
Serial.print(gyroRate);
Serial.print(“ “);

Esta linea encuentra el offset entre el voltaje en reposo y el voltaje en rotación.

gyroRate -= gyroZeroVoltage;

Esta linea divide el offset entre la sensibilidad.

gyroRate /= gyroSensitivity;

La salida se ignora si la velocidad es muy pequeña psiblemente ruido.

if (gyroRate >= rotationThreshold || gyroRate <= -rotationThreshold) {

gyroVel = gyroRate;
Serial.print(gyroVel);
Serial.println(“ “);
}
else {
Serial.println(“ “); }
delay(10);
}
Imagen donde se aprecia el voltaje analógico del girómetro y su representación en velocidad
angular.

Ir al inicio

inShare0

About 5Hertz

Previous: Configura tus XBee’s en modo espejo.

Next: Introducción a las LCD


4 comments

juan carlos

10/05/2014 at 3:59 pm

Gracias por dar un resume bien entendido!, gracias

Reply

Dtarja

18/05/2014 at 9:08 pm

Muchas gracias, sin embargo a mi siempre me da la misma lectura , no se a que se debe, estoy
usando un LPr510AL saludos!

Reply

Mari Alba

21/08/2014 at 11:55 am

Gracias, por la nota. Me es muy util para mi proyecto. Saludos

Reply

Daniel

28/11/2014 at 8:45 am

Excelente post. Muchas gracias.

Reply

Leave a Reply Cancel reply


Principio del formulario

Your email address will not be published. Required fields are marked *

Name *

Email *

Website

Comment

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym
title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike>
<strong>

Post Comment 431 0

2015 20
Current day month ye@r *

Leave this field empty *

Final del formulario

@5HzElectronica

@5HzElectronica

Flickr 5Hz
Síguenos en Facebook

Categorías

5Hz (1)

Acelerómetro (1)

Arduino (3)

Conceptos (2)
GPS (1)

LCD (1)

Programación (1)

RF (1)

Sensores (3)

Magnéticos (1)

Peso (1)

Ultrasónicos (1)

XBee (3)

Archivos

April 2014 (5)

March 2014 (2)

February 2014 (7)

January 2014 (3)

Comentarios recientes

EDGAR CAMPOS LAMPREA on ¿Cuál Arduino comprar?

Acelerómetro de tres ejes | El gato inquieto on ABC del acelerometro.

Daniel on Introducción al giroscopio.

Tutoriales de 5Hz Electrónica

© Copyright 2014, All Rights Reserved

Scroll To Top

Potrebbero piacerti anche