ola gostaria de saber como conectar dois mpu 6050 eu nao sei onde define as portas analogicas neste codigo que eu peguei na internet, qria saber onde elas estao definidas

este é o codigo:

#include <I2Cdev.h>
#include<Wire.h>
const int MPU=0x68; //endereço do mpu

int AcX,AcY,AcZ,Tmp,GyX,GyY,GyZ;

void setup()
{
Serial.begin(9600);

//Inicializa o MPU-6050
Wire.write(0);
Wire.endTransmission(true);

}
void loop()
{
Wire.beginTransmission(MPU);
Wire.write(0x3B); // starting with register 0x3B (ACCEL_XOUT_H)
Wire.endTransmission(false);
//Solicita os dados do sensor
Wire.requestFrom(MPU,14,true);
//Armazena o valor dos sensores nas variaveis correspondentes
AcX=Wire.read()8|Wire.read(); //0x3B (ACCEL_XOUT_H) & 0x3C (ACCEL_XOUT_L)
AcY=Wire.read()8|Wire.read(); //0x3D (ACCEL_YOUT_H) & 0x3E (ACCEL_YOUT_L)
AcZ=Wire.read()8|Wire.read(); //0x3F (ACCEL_ZOUT_H) & 0x40 (ACCEL_ZOUT_L)
Tmp=Wire.read()8|Wire.read(); //0x41 (TEMP_OUT_H) & 0x42 (TEMP_OUT_L)
GyX=Wire.read()8|Wire.read(); //0x43 (GYRO_XOUT_H) & 0x44 (GYRO_XOUT_L)
GyY=Wire.read()8|Wire.read(); //0x45 (GYRO_YOUT_H) & 0x46 (GYRO_YOUT_L)
GyZ=Wire.read()8|Wire.read(); //0x47 (GYRO_ZOUT_H) & 0x48 (GYRO_ZOUT_L)

//Envia valor X do acelerometro para a serial e o LCD
Serial.print("AcX = "); Serial.print(AcX);
//Envia valor Y do acelerometro para a serial e o LCD
Serial.print(" | AcY = "); Serial.print(AcY);

//Envia valor Z do acelerometro para a serial e o LCD
Serial.print(" | AcZ = "); Serial.print(AcZ);

//Envia valor da temperatura para a serial e o LCD
//Calcula a temperatura em graus Celsius
Serial.print(" | Tmp = "); Serial.print(Tmp/340.00+36.53);

//Envia valor X do giroscopio para a serial e o LCD
Serial.print(" | GyX = "); Serial.print(GyX);

//Envia valor Y do giroscopio para a serial e o LCD
Serial.print(" | GyY = "); Serial.print(GyY);

//Envia valor Z do giroscopio para a serial e o LCD
Serial.print(" | GyZ = "); Serial.println(GyZ);

//Aguarda 300 ms e reinicia o processo
delay(1000);


}

Exibições: 664

Responder esta

Respostas a este tópico

Boa noite GMS

Leia : http://labdegaragem.com/forum/topics/sugest-o-de-como-postar

Remova seu sketch colado na área de texto e anexe-o como arquivos.

RV

Olá.

  Parece que vc publicou mais de uma vez o post, veja lá e delete os que fora a mais.

  Por curiosidade, qual a necessidade de usar 2 desses ?

  Vide:

"O pino AD0 desconectado define que o endereço I2C do sensor é 0x68. Conecte o pino AD0 ao pino 3.3V do Arduino para que o endereço seja alterado para 0x69. Essa mudança permite que você tenha dois módulos MPU-6050 em um mesmo circuito."

Ref:

https://www.filipeflop.com/blog/tutorial-acelerometro-mpu6050-arduino/

eu tinha feito esta pergunta mas meu problema agora é com as portas analogicas, nao sei quais devo usar, estou trabalhando em um projeto onde dois braços devem trabalhar sincronizados e estou usando o mpu para corrigir estes erros, obg pela resposta

Não vejo nenhuma leitura de porta analógica nesse código.

Ele está lendo posições de memória dentro do dispositivo I2C.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço