INHOUDSOPGAWE:
- Stap 1: Oorsig BMG160:
- Stap 2: Wat u benodig..
- Stap 3: Hardeware -aansluiting:
- Stap 4: Gyroscoopmeting met drie assen, Arduino-meting:
- Stap 5: Aansoeke:
Video: Interfacing van 3-as gyroscoop sensor BMG160 met Arduino Nano: 5 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
In die huidige wêreld is meer as die helfte van die jeug en kinders dol op speletjies, en almal wat daarvan hou, gefassineer deur die tegniese aspekte van spel, ken die belangrikheid van bewegingswaarneming op hierdie gebied. Ons was ook verbaas oor dieselfde ding, en net om dit op die planke te plaas, het ons daaraan gedink om aan 'n gyroscoopsensor te werk wat die hoeksnelheid van enige voorwerp kan meet. Die sensor wat ons aangeneem het om die taak te hanteer, is BMG160. BMG160 is 'n 16-bis, digitale, triaksiale, gyroscoopsensor wat die hoeksnelheid in drie loodregte kamerafmetings kan meet.
In hierdie handleiding gaan ons die werking van BMG160 met Arduino Nano demonstreer.
Die hardeware wat u vir hierdie doel benodig, is soos volg:
1. BMG160
2. Arduino Nano
3. I2C -kabel
4. I2C -skild vir Arduino Nano
Stap 1: Oorsig BMG160:
In die eerste plek wil ons u vertroud maak met die basiese kenmerke van die sensormodule BMG160 en die kommunikasieprotokol waarop dit werk.
BMG160 is basies 'n 16-bis, digitale, triaksiale, gyroscoopsensor wat hoeksnelhede kan meet. Dit is in staat om hoeksnelhede in drie loodregte kamerafmetings, die x-, y- en z-as, te bereken en die ooreenstemmende uitsetsignale te verskaf. Dit kan kommunikeer met die framboos -pi -bord met behulp van die I2C -kommunikasieprotokol. Hierdie spesifieke module is ontwerp om aan die vereistes vir verbruikerstoepassings sowel as industriële doeleindes te voldoen.
Die kommunikasieprotokol waarop die sensor werk, is I2C. I2C staan vir die inter-geïntegreerde stroombaan. Dit is 'n kommunikasieprotokol waarin die kommunikasie plaasvind deur middel van SDA (seriële data) en SCL (seriële klok) lyne. Dit maak dit moontlik om verskeie toestelle gelyktydig te verbind. Dit is een van die eenvoudigste en doeltreffendste kommunikasieprotokolle.
Stap 2: Wat u benodig..
Die materiaal wat ons nodig het om ons doel te bereik, bevat die volgende hardeware -komponente:
1. BMG160
2. Arduino Nano
3. I2C -kabel
4. I2C -skild vir Arduino Nano
Stap 3: Hardeware -aansluiting:
Die hardewareaansluitingsgedeelte verduidelik basies die bedradingverbindings wat tussen die sensor en die Arduino benodig word. Die korrekte noodsaaklikheid is om korrekte verbindings te verseker terwyl u aan 'n stelsel werk vir die gewenste uitset. Die vereiste verbindings is dus soos volg:
Die BMG160 werk oor I2C. Hier is die voorbeeld -bedradingsdiagram wat demonstreer hoe om elke koppelvlak van die sensor aan te sluit.
Uit die boks is die bord gekonfigureer vir 'n I2C-koppelvlak, daarom beveel ons aan dat u hierdie aansluiting gebruik as u anders agnosties is.
Al wat u nodig het, is vier drade! Slegs vier verbindings is nodig Vcc-, Gnd-, SCL- en SDA -penne en dit word met behulp van I2C -kabel verbind.
Hierdie verbindings word getoon in die foto's hierbo.
Stap 4: Gyroscoopmeting met drie assen, Arduino-meting:
Kom ons begin nou met die arduino -kode.
Terwyl ons die sensormodule met die arduino gebruik, bevat ons die Wire.h -biblioteek. "Wire" -biblioteek bevat die funksies wat die i2c -kommunikasie tussen die sensor en die arduino -bord vergemaklik.
Die volledige arduino -kode word hieronder gegee vir die gemak van die gebruiker:
#insluit // BMG160 I2C adres is 0x68 (104)
#definieer Addr 0x68
leemte opstelling ()
{
// Initialiseer I2C -kommunikasie as MASTER
Wire.begin ();
// Initialiseer seriële kommunikasie, stel baud rate = 9600 in
Serial.begin (9600);
// Begin I2C -oordrag
Wire.beginTransmission (Addr);
// Kies Range register
Wire.write (0x0F);
// Stel 'n volle omvang van 2000 dps op
Wire.write (0x80);
// Stop I2C -oordrag
Wire.endTransmission ();
// Begin I2C -oordrag
Wire.beginTransmission (Addr);
// Kies bandwydte -register
Draad.skryf (0x10);
// Stel bandwydte in = 200 Hz
Wire.write (0x04);
// Stop I2C -oordrag
Wire.endTransmission ();
vertraging (300);
}
leemte lus ()
{
ongetekende int data [6];
// Begin I2C -oordrag
Wire.beginTransmission (Addr);
// Kies Gyrometer data register
Wire.write (0x02);
// Stop I2C -oordrag
Wire.endTransmission ();
// Versoek 6 grepe data
Wire.requestFrom (Addr, 6);
// Lees 6 grepe data
// xGyro lsb, xGyro msb, yGyro lsb, yGyro msb, zGyro lsb, zGyro msb
as (Wire.available () == 6)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
data [4] = Wire.read ();
data [5] = Wire.read ();
}
vertraging (300);
// Skakel die data om
int xGyro = ((data [1] * 256) + data [0]);
int yGyro = ((data [3] * 256) + data [2]);
int zGyro = ((data [5] * 256) + data [4]);
// Gee data na die seriële monitor
Serial.print ("X-as van rotasie:");
Serial.println (xGyro); Serial.print ("Y-as van rotasie:");
Serial.println (yGyro); Serial.print ("Z-rotasie-as:");
Serial.println (zGyro);
vertraging (500);
}
Stap 5: Aansoeke:
BMG160 het 'n uiteenlopende aantal toepassings op toestelle soos selfone, toestelle vir menslike masjienkoppelvlak. Hierdie sensormodule is ontwerp om aan die vereistes vir verbruikerstoepassings te voldoen, soos beeldstabilisering (DSC en kamera-telefoon), speel- en wysapparate. Dit word ook gebruik in stelsels wat gebaarherkenning vereis en die stelsels wat gebruik word vir binnenshuise navigasie.
Aanbeveel:
Sesydige PCB LED -dobbelsteen met WIFI en gyroscoop - PIKOCUBE: 7 stappe (met foto's)
Sesydige PCB LED -dobbelsteen met WIFI en gyroscoop - PIKOCUBE: Hallo makers, dit is die vervaardiger van moekoe! Vandag wil ek jou wys hoe om 'n regte LED -dobbelsteen te bou, gebaseer op ses PCB's en 54 LED's in totaal. Die kubus het 'n ESP8285-01F, naas die binneste gyroskopiese sensor wat beweging en dobbelsteenposisie kan waarneem
Gyroscoop LED -beheer met Arduino: 5 stappe
Gyroscope Led Control With Arduino: In hierdie projek sal ek jou wys hoe om 'n eenvoudige 4 -led -kanteldimmer te bou met 'n gyroscoop en 'n arduino uno. Daar is 4 LED's in 'n "+" vorm en hulle sal meer verlig word as u die broodbord kantel. Dit behels geen soldeer nie
SmartPhone Game Simulator- Speel Windows-speletjies met behulp van gebaarbeheer IMU, versnellingsmeter, gyroscoop, magnetometer: 5 stappe
SmartPhone Game Simulator- Speel Windows-speletjies met behulp van gebaarbeheer IMU, versnellingsmeter, gyroscoop, magnetometer: Ondersteun hierdie projek: https://www.paypal.me/vslcreations deur te skenk aan open source-kodes & ondersteuning vir verdere ontwikkeling
Arduino Nano en Visuino: omskakel versnelling in hoek van versnellingsmeter en gyroscoop MPU6050 I2C -sensor: 8 stappe (met foto's)
Arduino Nano en Visuino: omskakel versnelling in 'n hoek van versnellingsmeter en gyroscoop MPU6050 I2C -sensor: 'n Tydjie gelede het ek 'n handleiding geplaas oor hoe u MPU9250 versnellingsmeter, gyroscoop en kompassensor kan koppel aan Arduino Nano en dit met Visuino kan programmeer om pakkiedata te stuur en te vertoon dit op 'n omvang en visuele instrumente. Die versnellingsmeter stuur X, Y
Arduino Nano: versnellingsmeter gyroscoop kompas MPU9250 I2C sensor met Visuino: 11 stappe
Arduino Nano: Accelerometer Gyroscope Compass MPU9250 I2C Sensor Met Visuino: MPU9250 is een van die mees gevorderde gekombineerde versnellingsmeters, gyroscoop en kompas sensors wat tans beskikbaar is. Hulle het baie gevorderde funksies, waaronder lae -pass -filter, bewegingsopsporing en selfs 'n programmeerbare gespesialiseerde verwerker