Sisukord:
- Samm: üldteave kompassimooduli kohta
- 2. samm: nõutavad komponendid
- 3. samm: GY-511 kompassimooduli liidestamine Arduinoga
- 4. samm: kompassimooduli GY-511 kalibreerimine
- Samm: vooluring
- 6. samm: kood
- Samm: digitaalse kompassi tegemine
- 8. samm: ahel
- 9. samm: kood
- Samm: mis saab edasi?
Video: Kuidas kasutada GY511 moodulit Arduinoga [Digitaalse kompassi tegemine]: 11 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Ülevaade
Mõnes elektroonikaprojektis peame igal hetkel teadma geograafilist asukohta ja tegema vastavalt sellele konkreetse toimingu. Selles õpetuses saate teada, kuidas kasutada digitaalse kompassi tegemiseks LSM303DLHC GY-511 kompassimoodulit koos Arduinoga. Esiteks saate teada selle mooduli ja selle toimimise kohta ning seejärel näete, kuidas ühendada LSM303DLHC GY-511 moodul Arduinoga.
Mida õpid
- Mis on kompassimoodul?
- Kompassimoodul ja Arduino liides.
- Tehke digitaalne kompass GY-511 mooduli ja Arduino abil.
Samm: üldteave kompassimooduli kohta
GY-511 moodul sisaldab 3-teljelist kiirendusmõõturit ja 3-teljelist magnetomeetrit. See andur suudab mõõta lineaarset kiirendust täisväärtustel ± 2 g / ± 4 g / ± 8 g / ± 16 g ja magnetvälju täisväärtustel ± 1,3 / ± 1,9 / ± 2,5 / ± 4,0 / ± 4,7 / ± 5,6 / ± 8,1 Gauss.
Kui see moodul paigutatakse magnetvälja, indutseerib Lorentzi seaduse kohaselt selle mikroskoopilises mähises ergastusvool. Kompassimoodul teisendab selle voolu diferentsiaalpingeks iga koordinaadisuuna jaoks. Neid pingeid kasutades saate arvutada magnetvälja igas suunas ja saada geograafilise asukoha.
Nõuanne
QMC5883L on teine levinum kompassimoodul. See moodul, millel on sarnane struktuur ja rakendus nagu LMS303 moodulil, on jõudluse poolest pisut erinev. Nii et kui teete projekte, olge oma mooduli tüübi suhtes ettevaatlik. Kui teie moodul on QMC5882L, kasutage sobivat raamatukogu ja koode, mis on samuti õpetuses kaasas.
2. samm: nõutavad komponendid
Riistvara komponendid
Arduino UNO R3 *1
GY-511 3-teljeline kiirendusmõõtur + magnetomeeter *1
TowerPro servomootor SG-90 *1
1602 LCD -moodul *1
Džemprid *1
Tarkvararakendused
Arduino IDE
3. samm: GY-511 kompassimooduli liidestamine Arduinoga
GY-511 kompassimoodulil on 8 tihvti, kuid Arduinoga liidestamiseks vajate neid ainult 4. See moodul suhtleb Arduinoga, kasutades I2C protokolli, nii et ühendage mooduli SDA (I2C väljund) ja SCK (I2C kella sisend) kontaktid Arduino tahvli I2C tihvtidega.
Märkus. Nagu näete, oleme selles projektis kasutanud moodulit GY-511. Kuid seda juhist saate kasutada ka teiste LMS303 kompassimoodulite seadistamiseks.
4. samm: kompassimooduli GY-511 kalibreerimine
Navigeerimiseks tuleb esmalt moodul kalibreerida, mis tähendab mõõtmisvahemiku seadmist 0 kuni 360 kraadi. Selleks ühendage moodul Arduinoga, nagu allpool näidatud, ja laadige oma pardal üles järgmine kood. Pärast koodi täitmist näete jadamonitori aknas X, Y ja Z telje mõõtepiirkonna minimaalseid ja maksimaalseid väärtusi. Neid numbreid vajate järgmises osas, nii et kirjutage need üles.
Samm: vooluring
6. samm: kood
Selles koodis vajate I2C side jaoks Wire.h raamatukogu ja kompassimooduli jaoks LMS303.h raamatukogu. Neid raamatukogusid saate alla laadida järgmistelt linkidelt.
LMS303.h raamatukogu
Wire.h raamatukogu
Märkus. Kui kasutate QMC5883, vajate järgmist teeki:
MechaQMC5883L.h
Siin selgitame LMS303 koodi, kuid saate alla laadida ka QMC mooduli koodid.
Vaatame mõnda uut funktsiooni:
kompass.enableDefault ();
Mooduli lähtestamine
kompass.lugemine ();
Kompassimooduli väljundväärtuste lugemine
jooksmine_min.z = min (jooksmine_min.z, kompass.m.z); jooksva_max.x = max (jooksva_max.x, kompass.m.x);
Mõõtepiirkonna miinimum- ja maksimumväärtuste määramine mõõdetud väärtuste võrdlemise teel.
Samm: digitaalse kompassi tegemine
Pärast mooduli kalibreerimist ehitame kompassi, ühendades mooduli külge servomootori. Nii et servoindikaator näitab meile alati põhja suunda, nagu punane nool kompassil. Selleks arvutab kompassimoodul kõigepealt välja geograafilise suuna ja saadab selle Arduinole ning seejärel, sobiva koefitsiendi rakendamisega, arvutate servomootori pöörlemisnurga nii, et selle indikaator osutaks magnetilise põhja poole. Lõpuks rakendame selle nurga servomootorile.
8. samm: ahel
9. samm: kood
Selle osa jaoks on teil vaja ka raamatukogu Servo.h, mis on vaikimisi teie Arduino tarkvarasse installitud.
Vaatame mõnda uut funktsiooni:
Servo Servo1;
Mooduli lähtestamine
kompass.lugemine ();
Servomootori objekti tutvustus
Servo1.attach (servoPin); kompass.init (); kompass.enableDefault ();
Kompassimooduli ja servomootori initsialiseerimine
Argument Servo1.attach () on servomootoriga ühendatud tihvti number.
kompass.m_min = (LSM303:: vektor) { -32767, -32767, -32767}; kompass.m_max = (LSM303:: vektor) { +32767, +32767, +32767};
Nende joonte abil saate määratleda eelmises osas saadud vahemiku mõõtmise minimaalsed ja maksimaalsed väärtused.
ujukipealkiri = kompass.pealkiri ((LSM303:: vektor) {0, 0, 1});
Funktsioon rubriik () tagastab nurga koordinaattelje ja fikseeritud telje vahel. Fikseeritud telje saate funktsiooni argumendis vektoriga määratleda. Näiteks siin, määratledes (LSM303:: vektor) {0, 0, 1}, loetakse Z -telg konstantseks teljeks.
Servo1.write (rubriik);
Funktsioon Servo1.write () rakendab kompassimooduli lugemisväärtuse servomootorile.
Märkus. Pange tähele, et servomootoril võib olla magnetväli, seega on parem paigutada servomootor kompassimoodulist sobivale kaugusele, nii et see ei põhjusta kompassimooduli kõrvalekaldeid.
Soovitan:
Kuidas kasutada reaalajas kella moodulit (DS3231): 5 sammu
Kuidas kasutada reaalajas kella moodulit (DS3231): DS3231 on odav ja ülitäpne I2C reaalajas kell (RTC) koos integreeritud temperatuurikompensatsiooniga kristallostsillaatori (TCXO) ja kristalliga. Seadmel on akusisend ja see tagab täpse ajaarvestuse, kui toide on
[Docker Pi seeria] Kuidas kasutada IoT -sõlme (A) moodulit Raspberry Pi -l: 18 sammu
[Docker Pi seeria] Kuidas kasutada IoT Node (A) moodulit Raspberry Pi -l: Mis on IoT Node (A) moodul? IoT Node (A) on üks Docker Pi seeria moodulitest. IOT -sõlm (A) = GPS/BDS + GSM + Lora. I2C juhib otse Lorat, saadab ja võtab vastu andmeid, juhib GSM/GPS/BDS -moodulit SC16IS752 kaudu, emaplaat vajab ainult I2C -t
Pöörlev kodeerija: kuidas see töötab ja kuidas seda Arduinoga kasutada: 7 sammu
Pöörlev kodeerija: kuidas see töötab ja kuidas seda Arduinoga kasutada: seda ja muid hämmastavaid õpetusi saate lugeda ElectroPeaki ametlikul veebisaidil. Ülevaade Selles juhendis saate teada, kuidas kasutada pöördkodeerit Esiteks näete pöörleva kodeerija kohta teavet ja seejärel saate teada, kuidas
Kuidas kasutada Wemos ESP-Wroom-02 D1 mini WiFi-moodulit ESP8266 + 18650, kasutades Blynki: 10 sammu
Kuidas kasutada Wemos ESP-Wroom-02 D1 Mini WiFi moodulit ESP8266 + 18650, kasutades Blynk'i: Spetsifikatsioon: ühildub laadimissüsteemi integreerimisega nodemcu 18650 Indikaatortuli (roheline tähendab täielikku punast tähendab laadimist) saab laadimise ajal kasutada Lüliti juhttoite SMT pistikut saab kasutada unerežiimis · 1 lisa
Arduino digitaalse kompassi projekt: 3 sammu
Arduino digitaalse kompassi projekt: Tere! Selles juhendis näete, kuidas saate Arduino ja töötleva IDE abil digitaalset kompassi teha. See on üsna lihtne, kuid huvitav ja lahe välimus Arduino projekt. Selle õpetuse demo näidet saate vaadata videost