Sisällysluettelo:
- Vaihe 1: Yleistä kompassimoduulista
- Vaihe 2: Tarvittavat komponentit
- Vaihe 3: Liitä GY-511-kompassimoduuli Arduinon kanssa
- Vaihe 4: GY-511-kompassimoduulin kalibrointi
- Vaihe 5: Piiri
- Vaihe 6: Koodi
- Vaihe 7: Digitaalisen kompassin luominen
- Vaihe 8: Piiri
- Vaihe 9: Koodi
- Vaihe 10: Mitä seuraavaksi?
Video: Kuinka käyttää GY511 -moduulia Arduinon kanssa [Tee digitaalinen kompassi]: 11 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Yleiskatsaus
Joissakin elektroniikkahankkeissa meidän on tiedettävä maantieteellinen sijainti milloin tahansa ja tehtävä tietty toiminto sen mukaisesti. Tässä opetusohjelmassa opit käyttämään LSM303DLHC GY-511 -kompassimoduulia Arduinon kanssa digitaalisen kompassin tekemiseen. Ensin opit tästä moduulista ja sen toiminnasta, ja sitten näet kuinka liittää LSM303DLHC GY-511 -moduuli Arduinon kanssa.
Mitä opit
- Mikä on kompassimoduuli?
- Kompassimoduuli ja Arduino -käyttöliittymä.
- Tee digitaalinen kompassi GY-511-moduulin ja Arduinon avulla.
Vaihe 1: Yleistä kompassimoduulista
GY-511-moduulissa on 3-akselinen kiihtyvyysmittari ja 3-akselinen magnetometri. Tämä anturi voi mitata lineaarisen kiihtyvyyden täydellä asteikolla ± 2 g / ± 4 g / ± 8 g / ± 16 g ja magneettikentän täydellä asteikolla ± 1,3 / ± 1,9 / ± 2,5 / ± 4,0 / ± 4,7 / ± 5,6 / ± 8,1 Gauss.
Kun tämä moduuli asetetaan magneettikenttään, Lorentzin lain mukaan viritysvirta indusoi sen mikroskooppisessa kelassa. Kompassimoduuli muuntaa tämän virran differentiaalijännitteeksi kullekin koordinaattisuunnalle. Näillä jännitteillä voit laskea magneettikentän kumpaankin suuntaan ja saada maantieteellisen sijainnin.
Kärki
QMC5883L on toinen yleisesti käytetty kompassimoduuli. Tämä moduuli, jolla on samanlainen rakenne ja sovellus kuin LMS303 -moduulilla, on hieman erilainen suorituskyvyssä. Joten jos teet projekteja, ole varovainen moduulityypin suhteen. Jos moduulisi on QMC5882L, käytä asianmukaista kirjastoa ja koodeja, jotka sisältyvät myös opetusohjelmaan.
Vaihe 2: Tarvittavat komponentit
Laitteiston osat
Arduino UNO R3 *1
GY-511 3-akselinen kiihtyvyysmittari + magnetometri *1
TowerPro-servomoottori SG-90 *1
1602 LCD -moduuli *1
Puserot *1
Ohjelmistosovellukset
Arduino IDE
Vaihe 3: Liitä GY-511-kompassimoduuli Arduinon kanssa
GY-511-kompassimoduulissa on 8 nastaa, mutta tarvitset vain 4 niistä liittääksesi Arduinon. Tämä moduuli kommunikoi Arduinon kanssa käyttäen I2C -protokollaa, joten liitä moduulin SDA (I2C -lähtö) ja SCK (I2C -kellotulo) -nastat Arduino -kortin I2C -nastoihin.
Huomautus Kuten näette, olemme käyttäneet GY-511-moduulia tässä projektissa. Voit kuitenkin käyttää tätä ohjetta muiden LMS303 -kompassimoduulien määrittämiseen.
Vaihe 4: GY-511-kompassimoduulin kalibrointi
Navigoidaksesi sinun on ensin kalibroitava moduuli, mikä tarkoittaa mittausalueen asettamista 0 - 360 astetta. Voit tehdä tämän yhdistämällä moduulin Arduinoon alla kuvatulla tavalla ja lataamalla seuraavan koodin taulullesi. Kun olet suorittanut koodin, näet mittausalueen minimi- ja maksimiarvot X-, Y- ja Z -akselille sarjamonitori -ikkunassa. Tarvitset näitä numeroita seuraavassa osassa, joten kirjoita ne muistiin.
Vaihe 5: Piiri
Vaihe 6: Koodi
Tässä koodissa tarvitset Wire.h -kirjaston I2C -viestintään ja LMS303.h -kirjaston kompassimoduuliin. Voit ladata nämä kirjastot seuraavista linkeistä.
LMS303.h kirjasto
Wire.h -kirjasto
Huomautus Jos käytät QMC5883 -laitetta, tarvitset seuraavan kirjaston:
MechaQMC5883L.h
Tässä selitämme LMS303: n koodin, mutta voit ladata myös QMC -moduulin koodit.
Katsotaanpa joitain uusia toimintoja:
kompassi.enableDefault ();
Moduulin alustus
kompassi.luku ();
Kompassimoduulin lähtöarvojen lukeminen
käynnissä_min.z = min (käynnissä_min.z, kompassi.m.z); käynnissä_max.x = maksimi (juokseva_maksi.x, kompassi.m.x);
Mittausalueen minimi- ja maksimiarvojen määrittäminen vertaamalla mitattuja arvoja.
Vaihe 7: Digitaalisen kompassin luominen
Moduulin kalibroinnin jälkeen rakennamme kompassin kytkemällä servomoottorin moduuliin. Joten servo -ilmaisin näyttää aina pohjoisen suunnan, kuten kompassin punainen nuoli. Tätä varten kompassimoduuli laskee ensin maantieteellisen suunnan ja lähettää sen Arduinolle, ja sitten soveltamalla sopivaa kerrointa lasketaan kulma, jonka servomoottori pyörii niin, että sen osoitin osoittaa magneettista pohjoista. Lopulta käytämme tätä kulmaa servomoottoriin.
Vaihe 8: Piiri
Vaihe 9: Koodi
Tätä osaa varten tarvitset myös Servo.h -kirjaston, joka on oletusarvoisesti asennettu Arduino -ohjelmistoosi.
Katsotaanpa joitain uusia toimintoja:
Servo Servo1;
Moduulin alustus
kompassi.luku ();
Esittelyssä servomoottorikohde
Servo1.attach (servoPin); kompassi.init (); kompassi.enableDefault ();
Kompassimoduulin ja servomoottorin alustaminen
Servo1.attach () -argumentti on servomoottoriin liitetyn nastan numero.
kompassi.m_min = (LSM303:: vektori) { -32767, -32767, -32767}; kompassi.m_max = (LSM303:: vektori) { +32767, +32767, +32767};
Näillä viivoilla määrität edellisessä osassa saadun alueen mittausalueen minimi- ja maksimiarvot.
kelluva otsikko = kompassi.otsikko ((LSM303:: vektori) {0, 0, 1});
Suunta () -funktio palauttaa koordinaattiakselin ja kiinteän akselin välisen kulman. Voit määrittää kiinteän akselin vektoreilla funktioargumentissa. Esimerkiksi tässä määrittämällä (LSM303:: vektori) {0, 0, 1} Z -akselia pidetään vakioakselina.
Servo1.write (otsikko);
Servo1.write () -toiminto käyttää kompassimoduulin lukuarvoa servomoottorissa.
Huomaa Huomaa, että servomoottorissa voi olla magneettikenttä, joten on parempi sijoittaa servomoottori sopivalle etäisyydelle kompassimoduulista, jotta se ei aiheuta kompassimoduulin poikkeamista.
Suositeltava:
Kuinka käyttää DHT22 -kosteus- ja lämpötila -anturia Arduinon kanssa: 6 vaihetta
Kuinka käyttää DHT22 -kosteus- ja lämpötila -anturia Arduinon kanssa: Tässä opetusohjelmassa opimme käyttämään DHT22 -kosteus- ja lämpötila -anturia Arduinon kanssa ja näyttämään arvot OLED -näytöllä
Kuinka käyttää DHT12 I2C -kosteus- ja lämpötila -anturia Arduinon kanssa: 7 vaihetta
Kuinka käyttää DHT12 I2C -kosteus- ja lämpötila -anturia Arduinon kanssa: Tässä opetusohjelmassa opimme käyttämään DHT12 I2C -kosteus- ja lämpötila -anturia Arduinon kanssa ja näyttämään arvot OLED -näytöllä
Kuinka käyttää Twitteriä Arduinon kanssa: 7 vaihetta
Kuinka käyttää Twitteriä Arduinon kanssa: Haluatko helpon tavan olla vuorovaikutuksessa käyttäjien, maailman ja faneidesi kanssa? Tweet it! Käyttämällä vain Arduino Unoa ja Ethernet -suojaa voit helposti lisätä mahdollisuuden tweetata mitä tahansa tietoa tai dataa
Digitaalinen kompassi Arduinon ja HMC5883L -magnetometrin avulla: 6 vaihetta
Digitaalinen kompassi Arduinon ja HMC5883L -magnetometrin avulla: Hei kaverit, tämä anturi voi osoittaa maantieteellisen pohjoisen, etelän, idän ja lännen, me ihmiset voisimme myös käyttää sitä ajoittain tarvittaessa. Niin. Tässä artikkelissa yritämme ymmärtää, miten magnetometrimittari toimii ja miten se liitetään mikroyhteyteen
Kuinka käyttää Attiny85: tä Arduinon kanssa: 4 vaihetta
Kuinka käyttää Attiny85: tä Arduinon kanssa: Ostin uuden Digisparkin Attiny85 -levyn, mutta en voinut käyttää sitä kahteen päivään pelkästään ohjainpakettien vuoksi. Ja lopulta etsimisen jälkeen löysin vastauksen. Vertasin tähän erilaisia opetusohjelmia ja yritin. Sain virheen CO: lle