MPU6050 – Aplicação Gráfica com o Processing

MPU6050 é um sensor que combina acelerômetro e giroscópio em um único CI, de baixíssimo custo, de alta performance, muito utilizado por estudantes, hobbystas e cientistas de todo o mundo.
As aplicações com esse sensor são incontáveis, sendo muito empregado na robótica e em sistemas de controle com as mais diversas funcionalidades em todas as áreas da engenharia.

Especificações MPU6050

O sensor MPU6050 combina um giroscópio de 3 eixos e um acelerômetro de 3 eixos (ao todo 6 graus de liberdade – 6DOF) do tipo MEMS (sistemas microeletromecânicos) na mesma matriz de silício juntamente com um Digital Motion Processor ™ (DMP ™) integrado que é capaz de processar algoritmos complexos de fusão de sensores de 9 eixos usando o patenteado e comprovado mecanismo MotionFusion ™.

Os algoritmos MotionFusion de 9 eixos integrados do MPU-6050 acessam magnetômetros externos ou outros sensores através de um barramento mestre I2C auxiliar, permitindo que os dispositivos coletem um conjunto completo de dados do sensor sem intervenção do processador do sistema.
Além disso, esta placa tem um sensor de temperatura embutido no CI MPU6050, permitindo medições entre -40 e +85 ºC.

O MPU6050 possui alta precisão devido ao conversor analógico digital de 16 bits para cada canal, portanto o sensor captura os canais X, Y e Z ao mesmo tempo.

    • Chip: MPU6050
    • Tensão de Operação: 3-5V
    • Conversor AD 16 bits
    • Comunicação: Protocolo padrão I2C
    • Faixa do Giroscópio: ±250, 500, 1000, 2000°/s
    • Faixa do Acelerômetro: ±2, ±4, ±8, ±16g
    • Dimensões: 2 x 1,6 x 0,1 mm

Processsing

 

Processing é um sketchbookProcessing Logo de software flexível e uma linguagem para aprender a codificar no contexto das artes visuais.
Desde 2001, a Processing promoveu a alfabetização de software nas artes visuais e a alfabetização visual na tecnologia. Existem dezenas de milhares de estudantes, artistas, designers, pesquisadores e entusiastas que usam o Processing para aprendizado e prototipagem.

Projeto MPU6050 com Processing

Embora esta aplicação com o sensor MPU6050 seja muito comum, é muito interessante desenvolvê-la como exercício, principalmente para aqueles que conhecem acelerômetro e giroscópio na teoria, mas nunca viram seu emprego na prática.

Montagem

Primeiramente, devemos soldar a barra de pinos na placa do CI MPU6050 e em seguida fazer a conexão no Arduino, que é muito simples, conforme o esquema de sua respectiva a placa UNO ou MEGA.

UNO

Esquema MPU6050 com Arduino UNO

MEGA

Esquema MPU6050 com Arduino MEGA

Calibragem do MPU6050

Prosseguindo, baixe a biblioteca  MPU-6050, inclua na IDE Arduino e em seguida baixe o código de calibragem.
Feito isso, carregue o sketch no Arduino, abra o Monitor Serial, inicie a calibração, aguarde alguns instantes até o final e copie os offsets para serem inseridos no próximo programa.

Calibragem MPU6050

Funcionamento MPU6050

Vá à pasta Arquivo>Exemplo>MPU6050> MPU6050_DMP6 abra o exemplo MPU6050_DMP6, MPU6050_DMP6insira os valores offsets encontrados no sketch de calibragem, carregue o código, abra o Monitor Serial e observe se está havendo a variação dos valores do YAW, PITCH e ROLL. Caso afirmativo, então o MPU-6050 está funcionando corretamente e podemos seguir para a apresentação gráfica do TEAPOT no Processing.

Offsets Defaut MPU6050

MPU6050_DMP6

Offsets Calibrados MPU6050

MPU6050_DMP6

Preparação da Representação Gráfica com o Processing

Então, dando prosseguimento, devemos agora mudar a configuração no código  para # define OUTPUT_TEAPOT conforme destacado abaixo:

Defaut

Configuração TEAPOT MPU6050

Configuração Gráfica TEAPOT

Configuração TEAPOT MPU6050

Feito isso, Seguindo para o Processing,  baixe a biblioteca Toxilib, descompacte-a, copie a pasta e cole em C:\Users\admin\Documents\Processing\libraries. Então,  baixe o arquivo MPUTeapot, inicie o programa e configure-o conforme indicado abaixo:

Defaut

Configuração Porta COM TEAPOT MPU 6050

Configuração da Porta Serial no Processing

Configuração Porta COM TEAPOT MPU6050

Então, devemos fazer a configuração da Porta Serial COM de acordo com o seu Arduino que nesse caso foi a porta “COM 4” , porém poderá ser COM 1, COM 2 … COM N.

Apresentação Gráfica do YAW, PITCH e ROLL no Processing

Finalizando, verifique se as conexões estão corretas, se a Serial certa está selecionada no Processig, carregue o código no Arduino e, então, vá para o Processing, pressione o botão executar, observe a imagem e movimente o sensor.
Podemos observar então os movimentos YAW, PITCH e ROLL no gráfico apresentado.

 

Onde comprar?

#VLADCONTROL SHOP