FoxAutorytet
8piorunówPracował kodował ktoś kiedyś magnetometr / kompas jak QMC5883 albo BMM150?
Kompletnie nie umiem zrobić żeby pokazywały konkretny kierunek. Jakieś pokazuje dane praktycznie nie mające większego związku z kierunkiem albo zupełnie nieliniowo. w datashit nie ma napisane jak liniowe i jakie dane wypluwa tylko wiadomo że pokazuje max 8192
#elektronika #programowanie

@Fox https://www.circuitbasics.com/how-to-setup-a-magnetometer-on-the-arduino/
How to Setup a Magnetometer on the Arduino - Circuit BasicsMagnetometers can turn your Arduino into a digital compass. They're great for navigation and guidance systems, and can even be used detect electric currents in wires.Circuit Basics@Fox ja mam HMC5883 zamiast GMC5883, ale ja normalnie mialem przykladowy kod który zadziałał w arduino ide
void InitializeMagnetometer(){
Serial.println("Initializing Magnetometer");
if(!magnetometer.begin()){
Serial.println("Ooops, no HMC5883 detected ... Check your wiring!");
while(1);
}
Serial.println("Magnetometer initialized");
}
void PrintMagnetometer(){
sensors_event_t event;
magnetometer.getEvent(&event);
float heading = atan2(event.magnetic.y, event.magnetic.x);
float declinationAngle = 0.22;
heading += declinationAngle;
// Correct for when signs are reversed.
if(heading < 0)
heading += 2*PI;
if(heading > 2*PI)
heading -= 2*PI;
earth_angle = heading * 180/M_PI;
}

























