Innholdsfortegnelse:
- Trinn 1: Nødvendig maskinvare:
- Trinn 2: Maskinvaretilkobling:
- Trinn 3: Java -kode for å måle magnetfeltintensitet:
- Trinn 4: Søknader:
Video: Magnetisk feltmåling ved hjelp av HMC5883 og Raspberry Pi: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
HMC5883 er et digitalt kompass designet for lavfelt magnetisk sansing. Denne enheten har et bredt magnetfeltområde på +/- 8 Oe og en utgangshastighet på 160 Hz. HMC5883-sensoren inkluderer automatiske degaussing-stroppdrivere, offset-kansellering og en 12-biters ADC som muliggjør 1 ° til 2 ° kompassretningsnøyaktighet. Alle I²C minimoduler er designet for å fungere på 5VDC.
I denne opplæringen skal vi forklare detaljert bruk av HMC5883 med Raspberry pi og programmeringen ved å bruke java programmeringsspråk.
Trinn 1: Nødvendig maskinvare:
Maskinvare som kreves for å utføre oppgaven er som følger:
1. HMC5883
2. Bringebær Pi
3. I2C -kabel
4. I2C Shield For Raspberry Pi
5. Ethernet -kabel
Trinn 2: Maskinvaretilkobling:
Maskinvaretilkoblingsdelen forklarer i utgangspunktet ledningsforbindelsene som kreves mellom sensoren og bringebær -pi. Å sikre riktige tilkoblinger er den grunnleggende nødvendigheten mens du arbeider på et hvilket som helst system for ønsket utgang. Så de nødvendige tilkoblingene er som følger:
HMC5883 fungerer over I2C. Her er eksempel på koblingsskjema, som viser hvordan du kobler til hvert grensesnitt på sensoren.
Uten boksen er brettet konfigurert for et I2C-grensesnitt, derfor anbefaler vi å bruke denne tilkoblingen hvis du ellers er agnostiker. Alt du trenger er fire ledninger!
Bare fire tilkoblinger kreves Vcc, Gnd, SCL og SDA -pinner, og disse er koblet til ved hjelp av I2C -kabel.
Disse sammenhengene er vist på bildene ovenfor.
Trinn 3: Java -kode for å måle magnetfeltintensitet:
Fordelen med å bruke bringebær pi er at det gir deg fleksibiliteten til programmeringsspråket der du vil programmere brettet for å koble sensoren til det. Ved å utnytte denne fordelen med dette brettet, demonstrerer vi her at det er programmering i Java. Java -koden for HMC5883 kan lastes ned fra vårt github -fellesskap som er Dcube Store.
I tillegg til brukernes brukervennlighet, forklarer vi koden også her:
Som det første trinnet i kodingen må du laste ned pi4j -biblioteket i tilfelle java, fordi dette biblioteket støtter funksjonene som brukes i koden. Så for å laste ned biblioteket kan du besøke følgende lenke:
pi4j.com/install.html
Du kan også kopiere den fungerende java -koden for denne sensoren herfra:
importer com.pi4j.io.i2c. I2CBus;
importer com.pi4j.io.i2c. I2CDenhet;
mport com.pi4j.io.i2c. I2CFactory;
import java.io. IOException; offentlig klasse HMC5883
{
public static void main (String args ) kaster Unntak
{
// Lag I2C -buss
I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1);
// Få I2C -enhet, HMC5883 I2C -adresse er 0x1E (30)
I2CDevice -enhet = Bus.getDevice (0x1E);
// Velg Konfigurasjonsregister A
// Normal målekonfigurasjon, datahastighet o/p = 0,75 Hz
device.write (0x00, (byte) 0x60);
// Velg Modusregister
// Kontinuerlig målemodus
device.write (0x02, (byte) 0x00);
Tråd. Sover (500);
// Les 6 byte med data fra 0x03 (3)
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
byte data = ny byte [6];
device.read (0x03, data, 0, 6);
// Konverter dataene
int xMag = ((data [0] & 0xFF) * 256 + (data [1] & 0xFF));
hvis (xMag> 32767)
{
xMag -= 65536;
}
int zMag = ((data [2] & 0xFF) * 256 + (data [3] & 0xFF));
hvis (zMag> 32767)
{
zMag -= 65536;
}
int yMag = ((data [4] & 0xFF) * 256 + (data [5] & 0xFF));
hvis (yMag> 32767)
{
yMag -= 65536;
}
// Utdata til skjermen
System.out.printf ("Magnetfelt i X-akse: %d %n", xMag);
System.out.printf ("Magnetfelt i Y-akse: %d %n", yMag);
System.out.printf ("Magnetfelt i Z-akse: %d %n", zMag);
}
}
Skriv () og les () funksjonene brukes til å skrive henholdsvis kommandoene og lese sensorutgangen. Følgende del illustrerer avlesningen av magnetiske feltverdier.
// Les 6 byte data fra 0x03 (3)
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
byte data = ny byte [6];
device.read (0x03, data, 0, 6);
Utgangen er vist på bildet ovenfor.
Trinn 4: Søknader:
HMC5883 er en overflatemontert, multi-chip modul designet for lavfelt magnetisk sensing med et digitalt grensesnitt for applikasjoner som lavpris kompassering og magnetometri. Dens en til to graders høy nøyaktighet og presisjon muliggjør fotgjengernavigasjon og LBS -applikasjoner.
Anbefalt:
DIY -- Hvordan lage en edderkopprobot som kan kontrolleres ved hjelp av smarttelefon ved hjelp av Arduino Uno: 6 trinn
DIY || Hvordan lage en edderkopprobot som kan kontrolleres ved hjelp av smarttelefon ved hjelp av Arduino Uno: Mens du lager en edderkopprobot, kan du lære så mange ting om robotikk. Som å lage roboter er både underholdende og utfordrende. I denne videoen skal vi vise deg hvordan du lager en Spider -robot, som vi kan bruke ved hjelp av smarttelefonen vår (Androi
Magnetisk feltmåling ved hjelp av HMC5883 og Arduino Nano: 4 trinn
Magnetisk feltmåling ved hjelp av HMC5883 og Arduino Nano: HMC5883 er et digitalt kompass designet for lavfelt magnetisk sansing. Denne enheten har et bredt magnetfeltområde på +/- 8 Oe og en utgangshastighet på 160 Hz. HMC5883 -sensoren inkluderer automatiske drivere for avfetting av stropper, avbestilling av forskyvning og en
Magnetisk feltmåling ved hjelp av HMC5883 og Particle Photon: 4 trinn
Magnetisk feltmåling ved hjelp av HMC5883 og Particle Photon: HMC5883 er et digitalt kompass designet for lavfelt magnetisk sansing. Denne enheten har et bredt magnetfeltområde på +/- 8 Oe og en utgangshastighet på 160 Hz. HMC5883 -sensoren inkluderer automatiske drivere for avfetting av stropper, avbestilling av forskyvning og en
Hvordan lage en drone ved hjelp av Arduino UNO - Lag en quadcopter ved hjelp av mikrokontroller: 8 trinn (med bilder)
Hvordan lage en drone ved hjelp av Arduino UNO | Lag en Quadcopter ved hjelp av mikrokontroller: Introduksjon Besøk min Youtube -kanal En Drone er en veldig dyr gadget (produkt) å kjøpe. I dette innlegget skal jeg diskutere hvordan jeg får det billig? Og hvordan kan du lage din egen slik til en billig pris … Vel, i India er alle materialer (motorer, ESCer
Døralarm ved hjelp av magnetisk hallsensor: 5 trinn
Døralarm ved hjelp av magnetisk hallsensor: Døralarm er en veldig vanlig og nyttig enhet for sikkerhetsformål. De brukes til å oppdage om døren er åpen eller lukket. Ofte har vi sett en døralarm i kjøleskapet som ga en annen lyd når de ble aktivert. Døralarm Pro