Indholdsfortegnelse:
- Trin 1: Påkrævet hardware:
- Trin 2: Hardware -tilslutning:
- Trin 3: Java -kode til måling af magnetisk feltintensitet:
- Trin 4: Ansøgninger:
Video: Magnetisk feltmåling ved hjælp af HMC5883 og Raspberry Pi: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
HMC5883 er et digitalt kompas designet til lavfeltmagnetisk sansning. Denne enhed har et bredt magnetfeltområde på +/- 8 Oe og en udgangshastighed på 160 Hz. HMC5883-sensoren inkluderer automatiske degaussing-remdrivere, offset-annullering og en 12-bit ADC, der muliggør 1 ° til 2 ° kompasskursnøjagtighed. Alle I²C mini -moduler er designet til at fungere ved 5VDC.
I denne vejledning vil vi forklare den detaljerede bearbejdning af HMC5883 med Raspberry pi og dens programmering ved hjælp af java programmeringssprog.
Trin 1: Påkrævet hardware:
Hardware, der kræves for at udføre opgaven, er som følger:
1. HMC5883
2. Hindbær Pi
3. I2C -kabel
4. I2C Shield Til Raspberry Pi
5. Ethernet -kabel
Trin 2: Hardware -tilslutning:
Hardware -tilslutningssektionen forklarer grundlæggende de ledningsforbindelser, der kræves mellem sensoren og hindbær pi. At sikre korrekte forbindelser er den grundlæggende nødvendighed, mens du arbejder på et hvilket som helst system til den ønskede output. Så de nødvendige forbindelser er som følger:
HMC5883 fungerer over I2C. Her er eksemplet på ledningsdiagram, der viser, hvordan du tilslutter hver grænseflade på sensoren.
Out-of-the-box er tavlen konfigureret til en I2C-grænseflade, som sådan anbefaler vi at bruge denne tilslutning, hvis du ellers er agnostiker. Alt du behøver er fire ledninger!
Der kræves kun fire tilslutninger Vcc, Gnd, SCL og SDA ben, og disse er forbundet ved hjælp af I2C kabel.
Disse forbindelser er vist på billederne ovenfor.
Trin 3: Java -kode til måling af magnetisk feltintensitet:
Fordelen ved at bruge hindbær pi er, at det giver dig fleksibiliteten i det programmeringssprog, hvor du vil programmere tavlen for at kunne tilslutte sensoren til den. Ved at udnytte denne fordel ved dette kort demonstrerer vi her, at det er programmering i Java. Java -koden til HMC5883 kan downloades fra vores github -fællesskab, der er Dcube Store.
Ud over brugernes brugervenlighed forklarer vi også koden her:
Som det første trin i kodning skal du downloade pi4j -biblioteket i tilfælde af java, fordi dette bibliotek understøtter de funktioner, der bruges i koden. Så for at downloade biblioteket kan du besøge følgende link:
pi4j.com/install.html
Du kan også kopiere den fungerende java -kode til denne sensor herfra:
importer com.pi4j.io.i2c. I2CBus;
import com.pi4j.io.i2c. I2CDevice;
mport com.pi4j.io.i2c. I2CFactory;
import java.io. IOException; offentlig klasse HMC5883
{
public static void main (String args ) kaster Undtagelse
{
// Opret I2C -bus
I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1);
// Hent I2C -enhed, HMC5883 I2C -adresse er 0x1E (30)
I2CDevice -enhed = Bus.getDevice (0x1E);
// Vælg konfigurationsregister A
// Normal målekonfiguration, datahastighed o/p = 0,75 Hz
device.write (0x00, (byte) 0x60);
// Vælg Tilstandsregister
// Kontinuerlig målingstilstand
device.write (0x02, (byte) 0x00);
Tråd. Sover (500);
// Læs 6 bytes 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;
}
// Output data til skærmen
System.out.printf ("Magnetisk felt i X-akse: %d %n", xMag);
System.out.printf ("Magnetisk felt i Y-akse: %d %n", yMag);
System.out.printf ("Magnetisk felt i Z-akse: %d %n", zMag);
}
}
Funktionerne Write () og read () bruges til at skrive henholdsvis kommandoerne og læse sensoroutput. Følgende del illustrerer aflæsningen af magnetfeltværdier.
// Læs 6 bytes 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);
Outputtet er vist på billedet ovenfor.
Trin 4: Ansøgninger:
HMC5883 er et overflademonteret, multi-chip modul designet til lavfeltmagnetisk sansning med en digital grænseflade til applikationer såsom lavpriskompassering og magnetometri. Dens en til to graders høje nøjagtighed og præcision muliggør fodgængernavigation og LBS -applikationer.
Anbefalede:
DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin
DIY || Sådan laver du en edderkoprobot, der kan styres ved hjælp af smartphone Brug af Arduino Uno: Mens du laver en edderkoprobot, kan man lære så mange ting om robotik. Ligesom at lave robotter er underholdende såvel som udfordrende. I denne video vil vi vise dig, hvordan du laver en Spider -robot, som vi kan betjene ved hjælp af vores smartphone (Androi
Magnetisk feltmåling ved hjælp af HMC5883 og Arduino Nano: 4 trin
Magnetisk feltmåling ved hjælp af HMC5883 og Arduino Nano: HMC5883 er et digitalt kompas designet til lavfelt magnetisk sansning. Denne enhed har et bredt magnetfeltområde på +/- 8 Oe og en udgangshastighed på 160 Hz. HMC5883 -sensoren inkluderer automatiske degaussing -remdrivere, offset -annullering og en
Magnetisk feltmåling ved hjælp af HMC5883 og Particle Photon: 4 trin
Magnetisk feltmåling ved hjælp af HMC5883 og Particle Photon: HMC5883 er et digitalt kompas designet til lavfeltmagnetisk sansning. Denne enhed har et bredt magnetfeltområde på +/- 8 Oe og en udgangshastighed på 160 Hz. HMC5883 -sensoren inkluderer automatiske degaussing -remdrivere, offset -annullering og en
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: 4 trin
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: Hej, jeg er Rithik. Vi kommer til at lave en internetstyret LED ved hjælp af din telefon. Vi kommer til at bruge software som Arduino IDE og Blynk.Det er enkelt, og hvis det lykkedes dig, kan du styre så mange elektroniske komponenter, du ønskerTing We Need: Hardware:
Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)
Sådan laver du en drone ved hjælp af Arduino UNO | Lav en Quadcopter ved hjælp af mikrokontroller: Introduktion Besøg min Youtube -kanal En Drone er en meget dyr gadget (produkt) at købe. I dette indlæg vil jeg diskutere, hvordan jeg gør det billigt ?? Og hvordan kan du lave din egen sådan til en billig pris … Nå i Indien alle materialer (motorer, ESC'er