Código do Acelerômetro, Giroscópio e Magnetômetro MPU-9250
Neste tutorial, iremos explorar como usar o sensor MPU-9250, que combina um acelerômetro, giroscópio e magnetômetro em um único módulo compacto. Ao final deste guia, você será capaz de ler os dados do sensor e interpretar seu significado em seus projetos. Este sensor é particularmente útil para aplicações como robótica e drones, onde a orientação e o rastreamento de movimento são críticos. Você pode consultar o vídeo para mais esclarecimentos sobre a configuração e o código (no vídeo às 00:20).
Hardware Explicado
O módulo MPU-9250 integra três sensores: um acelerômetro, um giroscópio e um magnetômetro. O acelerômetro mede forças de aceleração, permitindo determinar a velocidade e a orientação. O giroscópio fornece velocidade angular, ajudando a entender a mudança de orientação ao longo do tempo. Por fim, o magnetômetro atua como uma bússola, fornecendo dados do campo magnético que auxiliam na navegação.
Esta combinação de sensores é particularmente benéfica em aplicações onde o rastreamento de movimento preciso é necessário, como em drones ou smartphones. O MPU-9250 se comunica via I2C ou SPI, tornando-o versátil para diferentes configurações de microcontroladores.
Detalhes da Ficha Técnica
| Fabricante | InvenSense |
|---|---|
| Número da peça | MPU-9250 |
| Tensão lógica/IO | 1,8 V (I/O), 3,3 V (suprimento) |
| Tensão de alimentação | 2,4 - 3,6 V |
| Corrente de saída (por canal) | 3,2 mA (operação normal) |
| Corrente de pico (por canal) | 19,8 mA (máx) |
| Orientação sobre frequência PWM | N/A |
| Limiares de lógica de entrada | 0,3 * VDD(baixo), 0,7 * VDD(alto) |
| Queda de tensão / RDS(on)/ saturação | N/A |
| Limites térmicos | -40 a 85 °C |
| Pacote | QFN |
| Notas / variantes | Inclui regulador de tensão interno |
- Garanta o fornecimento adequado de tensão (2,4 - 3,6 V) para evitar danificar o módulo.
- Use um resistor de pull-up para as linhas SDA e SCL, se já não estiver incluído na sua placa de quebra.
- Verifique o endereço I2C (o padrão é 0x68) e ajuste o pino ADO de acordo para endereços alternativos.
- Verifique as conexões quanto à estabilidade para evitar leituras errôneas.
- Calibre os sensores regularmente para medições precisas.
Instruções de Fiação


Para conectar o MPU-9250 ao seu Arduino, comece conectando o pino VCC do MPU-9250 ao pino de 5V do Arduino. O módulo possui um regulador interno, portanto, é seguro alimentá-lo com 5V. Em seguida, conecte o pino GND ao terra (GND) do Arduino. Para comunicação de dados, conecte o pino SDA ao pino A4 do Arduino e o pino SCL ao pino A5. Esta configuração é padrão para muitas placas Arduino.
Se você estiver usando um Arduino Mega, os pinos SDA e SCL estão localizados nos pinos 20 e 21, respectivamente. Certifique-se de que as conexões estejam seguras para evitar erros de comunicação. Se você precisar alterar o endereço I2C do MPU-9250, conecte o pino ADO a 5V para defini-lo como 0x69. Desconectá-lo reverterá para 0x68.
Exemplos de Código e Guia passo a passo
No esboço do Arduino, começamos incluindo a biblioteca MPU9250 e criando uma instância do sensor:
#include "MPU9250.h"
MPU9250 IMU(Wire,0x68);
O código inicializa o sensor e começa a comunicação nosetup()função:
void setup() {
Serial.begin(115200);
status = IMU.begin();
if (status < 0) {
Serial.println("IMU initialization unsuccessful");
while(1) {}
}
}
Dentro doloop()função, nós continuamente lemos e imprimimos os dados do sensor:
void loop() {
IMU.readSensor();
Serial.print("AccelX: ");
Serial.print(IMU.getAccelX_mss(),6);
// More print statements for other axes
}
Esta seção lê os valores do acelerômetro, giroscópio e magnetômetro, exibindo-os no Monitor Serial. Certifique-se de verificar o código completo carregado abaixo do artigo para a implementação completa.
Demonstração / O que Esperar
Quando você executar o código, deverá ver os valores do sensor sendo atualizados em tempo real no Monitor Serial. Os valores do acelerômetro vão flutuar à medida que você mover o sensor, enquanto os valores do giroscópio mostrarão a taxa de rotação. O magnetômetro fornecerá a intensidade do campo magnético em três eixos, que podem ser usados para determinar a orientação. Tenha cuidado com entradas flutuantes, pois podem levar a leituras imprecisas (no vídeo às 12:30).
Capítulos
- Introdução (00:00)
- Hardware Explicado (01:30)
- Instruções de Fiação (04:00)
- Exemplos de Código e Passo a Passo (06:00)
- Demonstração (10:00)
Recursos e referências
-
ExternoFolha de dados do MPU-9250invensense.com
-
ExternoMapa de registradores do MPU-9250invensense.com
-
ExternoObtenha a biblioteca MPU-9250 do GitHubgithub.com
Arquivos📁
Nenhum arquivo disponível.