Modul fusion_hat.modules.gy87
- fusion_hat.modules.gy87.scan_i2c_addr(bus_id=1)[Quellcode]
Den I2C-Bus nach allen antwortenden Geräteadressen durchsuchen
- Parameter:
bus_id – I2C-Busnummer, Standard ist I2C_BUS (1)
- Rückgabe:
Liste aller erkannten I2C-Geräteadressen
- Rückgabetyp:
found
- fusion_hat.modules.gy87.tilt_comp_heading(mx, my, mz, ax, ay, az, decl_deg=0.0)[Quellcode]
Neigungskompensierte Richtung berechnen: Beschleunigungsdaten werden zur Berechnung der Roll-/Nickwinkel verwendet, danach werden die Magnetometerdaten kompensiert
- Parameter:
mx – Dreiachsige Daten vom Magnetometer (Gauss)
my – Dreiachsige Daten vom Magnetometer (Gauss)
mz – Dreiachsige Daten vom Magnetometer (Gauss)
ax – Dreiachsige Daten vom Beschleunigungssensor (g)
ay – Dreiachsige Daten vom Beschleunigungssensor (g)
az – Dreiachsige Daten vom Beschleunigungssensor (g)
decl_deg – Magnetische Deklination (Grad), wird verwendet, um magnetischen Norden in wahren Norden umzuwandeln
- Rückgabe:
Kompensierter Richtungswinkel, Bereich 0–360 Grad
- Rückgabetyp:
hdg
- class fusion_hat.modules.gy87.GY87(bus_id=1, decl_deg=0.0)[Quellcode]
Basisklasse:
objectHauptklasse des GY-87-Sensormoduls. Integriert MPU6050 (Beschleunigungssensor + Gyroskop), BMP180 (Barometer) und Magnetometer (unterstützt mehrere Modelle) und stellt vollständige Funktionen zum Auslesen der Sensordaten bereit, einschließlich Selbstwiederherstellungsmechanismus
- read_all()[Quellcode]
Alle Sensordaten lesen. Beinhaltet automatische Fehlerbehandlung und Selbstwiederherstellungsmechanismus zur Sicherstellung der Systemstabilität
- Rückgabe:
Wörterbuch mit allen Sensordaten {accel_g: (x,y,z), gyro_dps: (x,y,z), temp_mpu_c: float, temp_bmp_c: float, pressure_pa: float, altitude_m: float, mag_gauss: (x,y,z), heading_deg: float}
- Rückgabetyp:
dict
- fusion_hat.modules.gy87.demo_loop()[Quellcode]
Demo-Schleifenfunktion des GY-87-Sensormoduls
- Funktionen:
Angeschlossene I2C-Geräte scannen und anzeigen
GY87-Sensormodul initialisieren
Alle Sensordaten kontinuierlich lesen und anzeigen
Ausgabeformat je nach Vorhandensein des Magnetometers anpassen
- Ausgabeformat:
Mit Magnetometer: zeigt Beschleunigung, Winkelgeschwindigkeit, Magnetfeldstärke, Richtung, Temperatur, Druck und Höhe an
Ohne Magnetometer: zeigt alle Daten außer Magnetfeldstärke und Richtung an
- Abtastfrequenz:
~5 Hz (0,2 s Pause nach jedem Lesevorgang)