Përmbajtje:
- Hapi 1: Vështrim BMG160:
- Hapi 2: Ajo që ju nevojitet.. !
- Hapi 3: Bashkimi i harduerit:
- Hapi 4: Matja e Xhiroskopit me 3 Aks Kodi Arduino:
- Hapi 5: Aplikimet:
Video: Ndërfaqja e sensorit të xhiroskopit me 3 boshte BMG160 me Arduino Nano: 5 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:10
Në botën e sotme, më shumë se gjysma e të rinjve dhe fëmijëve janë të dhënë pas lojrave dhe të gjithë ata që e duan atë, të magjepsur nga aspektet teknike të lojrave e dinë rëndësinë e ndjeshmërisë së lëvizjes në këtë fushë. Ne gjithashtu u mahnitëm nga e njëjta gjë dhe vetëm për ta sjellë atë në dërrasa, ne menduam të punojmë në një sensor xhiroskopi i cili mund të masë shkallën këndore të çdo objekti. Pra, sensori që morëm për t'u marrë me detyrën është BMG160. BMG160 është një sensor xhiroskop 16-bit, dixhital, treaksial, i cili mund të masë shkallën këndore në tre dimensione të dhomës pingul.
Në këtë tutorial, ne do të demonstrojmë punën e BMG160 me Arduino Nano.
Pajisjet kompjuterike që do t'ju nevojiten për këtë qëllim janë si më poshtë:
1. BMG160
2. Arduino Nano
3. Kabllo I2C
4. Mburoja I2C Për Arduino Nano
Hapi 1: Vështrim BMG160:
Para së gjithash, ne dëshirojmë t'ju njohim me veçoritë themelore të modulit të sensorit që është BMG160 dhe protokollin e komunikimit në të cilin funksionon.
BMG160 është në thelb një sensor xhiroskop 16-bit, dixhital, treaksial, i cili mund të masë normat këndore. Shtë i aftë të llogarisë ritmet këndore në tre dimensione të dhomës pingul, boshtin x-, y- dhe z, dhe të sigurojë sinjalet përkatëse të daljes. Mund të komunikojë me bordin e mjedrës pi duke përdorur protokollin e komunikimit I2C. Ky modul i veçantë është krijuar për të përmbushur kërkesat për aplikimet e konsumatorit, si dhe qëllimet industriale.
Protokolli i komunikimit në të cilin punon sensori është I2C. I2C qëndron për qarkun e integruar. Shtë një protokoll komunikimi në të cilin komunikimi zhvillohet përmes linjave SDA (të dhëna serike) dhe SCL (ora seriale). Mundëson lidhjen e shumë pajisjeve në të njëjtën kohë. Shtë një nga protokollet më të thjeshtë dhe më efikas të komunikimit.
Hapi 2: Ajo që ju nevojitet.. !
Materialet që na duhen për të arritur qëllimin tonë përfshijnë përbërësit e mëposhtëm të harduerit:
1. BMG160
2. Arduino Nano
3. Kabllo I2C
4. Mburoja I2C për Arduino Nano
Hapi 3: Bashkimi i harduerit:
Seksioni i lidhjes së harduerit në thelb shpjegon lidhjet e telave të kërkuara midis sensorit dhe Arduino. Sigurimi i lidhjeve të sakta është nevoja themelore gjatë punës në çdo sistem për daljen e dëshiruar. Pra, lidhjet e nevojshme janë si më poshtë:
BMG160 do të funksionojë mbi I2C. Këtu është shembulli i diagramit të instalimeve elektrike, duke demonstruar se si të lidhni secilën ndërfaqe të sensorit.
Jashtë kutisë, bordi është i konfiguruar për një ndërfaqe I2C, si i tillë ne rekomandojmë përdorimin e këtij bashkimi nëse përndryshe jeni agnostik.
Gjithçka që ju nevojitet janë katër tela! Vetëm katër lidhje kërkohen kunjat Vcc, Gnd, SCL dhe SDA dhe këto janë të lidhura me ndihmën e kabllit I2C.
Këto lidhje demonstrohen në fotot e mësipërme.
Hapi 4: Matja e Xhiroskopit me 3 Aks Kodi Arduino:
Le të fillojmë me kodin arduino tani.
Ndërsa përdorim modulin e sensorit me arduino, ne përfshijmë bibliotekën Wire.h. Biblioteka "Wire" përmban funksione të cilat lehtësojnë komunikimin i2c midis sensorit dhe bordit arduino.
I gjithë kodi arduino është dhënë më poshtë për lehtësinë e përdoruesit:
#përfshi // Adresa BMG160 I2C është 0x68 (104)
#përcaktoni Addr 0x68
void setup ()
{
// Filloni komunikimin I2C si MASTER
Wire.begin ();
// Filloni Komunikimin Serial, vendosur normën e baudit = 9600
Serial.filloj (9600);
// Filloni Transmetimin I2C
Wire.beginTransmetimi (Addr);
// Zgjidhni Regjistrin e diapazonit
Wire.write (0x0F);
// Konfiguro gamën e plotë të shkallës 2000 dps
Wire.write (0x80);
// Ndaloni Transmetimin I2C
Wire.endTransmission ();
// Filloni Transmetimin I2C
Wire.beginTransmetimi (Addr);
// Zgjidhni regjistrin e Bandwidth
Wire.write (0x10);
// Vendosni gjerësinë e brezit = 200 Hz
Wire.write (0x04);
// Ndaloni Transmetimin I2C
Wire.endTransmission ();
vonesë (300);
}
lak void ()
{
të dhëna int të panënshkruara [6];
// Filloni Transmetimin I2C
Wire.beginTransmetimi (Addr);
// Zgjidhni regjistrin e të dhënave të Gyrometer
Wire.write (0x02);
// Ndaloni Transmetimin I2C
Wire.endTransmission ();
// Kërkoni 6 bajt të dhëna
Tela. Kërkohet Nga (Addr, 6);
// Lexoni 6 bajt të dhëna
// xGyro lsb, xGyro msb, yGyro lsb, yGyro msb, zGyro lsb, zGyro msb
nëse (Wire. në dispozicion () == 6)
{
të dhëna [0] = Wire.read ();
të dhëna [1] = Wire.read ();
të dhëna [2] = Wire.read ();
të dhëna [3] = Wire.read ();
të dhëna [4] = Wire.read ();
të dhëna [5] = Wire.read ();
}
vonesë (300);
// Shndërroni të dhënat
int xGyro = ((të dhënat [1] * 256) + të dhënat [0]);
int yGyro = ((të dhënat [3] * 256) + të dhënat [2]);
int zGyro = ((të dhënat [5] * 256) + të dhënat [4]);
// Dalja e të dhënave në monitorin serik
Serial.print ("Boshti X i rrotullimit:");
Serial.println (xGyro); Serial.print ("Y-Boshti i Rrotullimit:");
Serial.println (yGyro); Serial.print ("Z-Boshti i Rrotullimit:");
Serial.println (zGyro);
vonesë (500);
}
Hapi 5: Aplikimet:
BMG160 ka një numër të larmishëm aplikimesh në pajisje si celularët, pajisjet e ndërfaqes së makinerisë njerëzore. Ky modul sensor është projektuar për të përmbushur kërkesat për aplikimet e konsumatorëve, të tilla si stabilizimi i imazhit (DSC dhe aparati-telefon), lojërat dhe pajisjet e drejtimit. Gjithashtu përdoret në sistemet që kërkojnë njohjen e gjesteve dhe sistemet e përdorura në navigimin e brendshëm.
Recommended:
Ndërfaqja e sensorit kapacitiv të gjurmëve të gishtërinjve me Arduino UNO: 7 hapa
Ndërfaqja e sensorit kapacitiv të gjurmëve të gishtërinjve me Arduino UNO: Hej, çfarë ka, djema! Akarsh këtu nga CETech. Sot ne do të shtojmë një shtresë mbrojtëse në projektet tona. Mos u shqetësoni ne nuk do të caktojmë asnjë truprojë për të njëjtën gjë. Do të jetë një sensor gjurmë gishtash pak i bukur dhe i bukur nga DFRobot. Pra
Ndërfaqja e sensorit të gazit me Arduino: 4 hapa
Ndërfaqja e sensorit të gazit me Arduino: Sensori i tymit MQ-2 është i ndjeshëm ndaj tymit dhe ndaj gazeve të mëposhtëm të ndezshëm: LPG, Butan, Propan, Metan, Alkool, Hidrogjen. Rezistenca e sensorit është e ndryshme në varësi të llojit të gazit. Sensori i tymit ka një potenciometër të integruar
Ndërfaqja e sensorit të temperaturës LM35 me Arduino: 4 hapa
Ndërfaqja e sensorit të temperaturës LM35 Me Arduino: Termometrat janë aparate të dobishëm që përdoren për një kohë të gjatë për matjen e temperaturës. Në këtë projekt, ne kemi bërë një termometër dixhital të bazuar në Arduino për të shfaqur temperaturën aktuale të ambientit dhe ndryshimet e temperaturës në një LCD. Mund të jetë depl
Ndërfaqja e sensorit të xhiroskopit me 3 boshte BMG160 me mjedër Pi: 5 hapa
Ndërfaqja e Sensorit të Xhiroskopit 3-Bosht BMG160 Me Raspberry Pi: Në botën e sotme, më shumë se gjysma e të rinjve dhe fëmijëve janë të dhënë pas lojërave dhe të gjithë ata që janë të dhënë pas saj, të magjepsur nga aspektet teknike të lojrave e dinë rëndësinë e ndijimit të lëvizjes në këtë fushë. Ne gjithashtu u mahnitëm nga e njëjta gjë dhe
Ndërfaqja e sensorit të xhiroskopit me 3 boshte BMG160 me grimcë: 5 hapa
Ndërfaqja e sensorit të xhiroskopit me 3 boshte BMG160 me grimcë: Në botën e sotme, më shumë se gjysma e të rinjve dhe fëmijëve janë të dhënë pas lojrave dhe të gjithë ata që janë të dhënë pas saj, të magjepsur nga aspektet teknike të lojrave e dinë rëndësinë e ndijimit të lëvizjes në këtë domen. Ne gjithashtu u mahnitëm nga e njëjta gjë dhe