- Tarvittavat materiaalit
- Mikä on magnetometri ja miten se toimii?
- Kuinka HMC5883L-anturimoduuli toimii
- Piirikaavio
- Digitaalikompassin piirilevyjen valmistus
- Piirilevyn kokoaminen
- Arduinon ohjelmointi
Ihmisen aivot on rakennettu monimutkaisesta rakenteesta, joka auttaa meitä olemaan hallitseva laji maan päällä. Esimerkiksi aivojen entorhinaalinen aivokuori voi antaa sinulle suunnan tunnetta, joka auttaa sinua navigoimaan helposti paikoissa, joita et tunne. Mutta toisin kuin me, robotit ja miehittämättömät Ariel-ajoneuvot tarvitsevat jotain saadakseen tämän suuntauksen, jotta he voisivat ohjata itsenäisesti uusilla maastoilla ja maisemilla. Eri robotit käyttävät erityyppisiä antureita tämän saavuttamiseksi, mutta yleisesti käytetty on magnetometri, joka voisi ilmoittaa robotille, missä geografisessa suunnassa se on tällä hetkellä. Tämä auttaa robottia paitsi havaitsemaan suunnan myös kääntymään ennalta määriteltyyn suuntaan ja enkeliä.
Koska anturi pystyy osoittamaan maantieteellisen pohjoisen, etelän, idän ja lännen, me ihmiset voisimme myös käyttää sitä ajoittain tarvittaessa. Joten yritetään tässä artikkelissa ymmärtää, miten magnetometri-anturi toimii ja kuinka se voidaan liittää Arduinon kaltaiseen mikro-ohjaimeen. Rakennamme tänne hienon digitaalikompassin, joka auttaa meitä löytämään reittiohjeet hehkuvalla pohjoista osoittavalla LEDillä. Tämä digitaalikompassi on siististi valmistettu PCBGOGOn piirilevyltä, jotta voin kantaa sitä ensi kerralla, kun menen ulos luonnoon ja toivon, että eksyisin vain käyttämään tätä asiaa kotini löytämiseen. Aloitetaan.
Tarvittavat materiaalit
- Arduino Pro mini
- HMC5883L-magneettianturi
- LED-valot - 8
- 470Ohm-vastus - 8Nos
- Tynnyri Jack
- Luotettava PCB-valmistaja, kuten PCBgogo
- FTDI-ohjelmoija minille
- PC / kannettava tietokone
Mikä on magnetometri ja miten se toimii?
Ennen kuin sukelamme piiriin, ymmärretään vähän magnetometristä ja miten ne toimivat. Kuten nimestä käy ilmi, termi Magneto ei tarkoita sitä ihmettelevää hullua mutanttia, joka voisi hallita metalleja pelaamalla pianoa ilmassa. Ohh! Mutta pidän siitä kaverista, että hän on siisti.
Magnetometri on itse asiassa laite, joka pystyy havaitsemaan maan magneettinavat ja osoittamaan suunnan sen mukaan. Me kaikki tiedämme, että maa on valtava pallomainen magneetti pohjoisnavan ja etelänavan kanssa. Ja sen takia on magneettikenttä. Magnetometri tunnistaa tämän magneettikentän ja pystyy magneettikentän suunnan perusteella havaitsemaan suunnan, jota olemme edessään.
Kuinka HMC5883L-anturimoduuli toimii
HMC5883L ollessa magnetometri anturi ei sama asia. Siinä on HMC5883L IC, joka on Honeywelliltä. Tässä IC: ssä on 3 magneettiresistiivistä materiaalia, jotka on järjestetty akseleille x, y ja z. Näiden materiaalien läpi virtaavan virran määrä on herkkä maan magneettikentälle. Joten mittaamalla näiden materiaalien läpi kulkevan virran muutoksen voimme havaita muutoksen maapallon magneettikentässä. Kun muutos on magneettikenttä absorboitunut, arvot voidaan lähettää I2C-protokollan kautta mihin tahansa upotettuun ohjaimeen, kuten mikro-ohjaimeen tai prosessoriin.
Koska anturi toimii tunnistamalla magneettikentän, lähtöarvoihin vaikuttaa suuresti, jos metalli sijoitetaan lähelle. Tätä käyttäytymistä voidaan käyttää hyödyntämään näitä antureita myös metallinilmaisimina. Magneetteja ei tule tuoda tämän anturin lähelle, koska magneetin voimakas magneettikenttä saattaa laukaista anturiin vääriä arvoja.
Ero HMC5883L: n ja QMC5883L: n välillä
Näiden antureiden ympärillä on yleinen hämmennys monille aloittelijoille. Tämä johtuu siitä, että jotkut myyjät (itse asiassa suurin osa) myyvät QMC5883L-antureita Honeywellin alkuperäisten HMC5883L-anturien sijaan. Se johtuu pääasiassa siitä, että QMC5883L on paljon halvempi kuin HMC5883L-moduuli. Surullinen osa on, että näiden kahden anturin toiminta on hieman erilaista ja samaa koodia ei voida käyttää molemmille. Tämä johtuu siitä, että kummankin anturin I2C-osoite ei ole sama. Tässä opetusohjelmassa annettu koodi toimii vain yleisesti saatavana olevalla anturimoduulilla QMC5883L.
Jos haluat tietää anturimallisi, sinun on vain etsittävä tarkasti itse IC: tä lukemaan, mitä sen päälle on kirjoitettu. Jos se on kirjoitettu jotain L883: n tapaan, se on HMC58836L ja jos se on kirjoitettu jotain DA5883: ta, se on QMC5883L IC. Molemmat moduulit on esitetty alla olevassa kuvassa helpottamiseksi.
Piirikaavio
Tämän Arduino-pohjaisen digitaalisen kompassin piiri on melko yksinkertainen, meidän on yksinkertaisesti liitettävä HMC5883L-anturi Arduinoon ja liitettävä 8 LEDiä Arduino Pro minin GPIO-nastoihin. Koko piirikaavio on esitetty alla
Anturimoduuli on 5 nastat ulos josta DRDY (Data Ready) ei käytetä projektiin, koska me toimivat anturin jatkuvassa tilassa. Vcc: tä ja maadoitettua nastaa käytetään moduulin virtalähteeseen 5 V: lla Arduino-kortista. SCL ja SDA ovat I2C-tiedonsiirtoväylän linjat, jotka on kytketty Arduino Pro minin vastaavasti A4- ja A5 I2C -nastoihin. Koska moduulissa itsessään on vetovoima linjoilla, niitä ei tarvitse lisätä ulkoisesti.
Suunnan osoittamiseksi olemme käyttäneet 8 LEDiä, jotka kaikki on kytketty Arduinon GPIO-nastoihin 470 ohmin virranrajoitusvastuksen kautta. Täydellinen piiri saa virtansa 9 V: n paristosta tynnyriliittimen kautta. Tämä 9 V toimitetaan suoraan Arduinon Vin-nastalle, jossa sitä säädetään 5 V: ksi Arduinon sisäisellä säätimellä. Tätä 5 V: tä käytetään sitten anturin ja Arduinon virtaan.
Digitaalikompassin piirilevyjen valmistus
Piirin idea on sijoittaa 8 lediä pyöreästi siten, että kukin led osoittaa kaikki 8 suuntaa, nimittäin pohjoiseen, koilliseen, itään, kaakkoon, etelään, lounaaseen, länteen ja luoteeseen. Joten ei ole helppoa järjestää niitä siististi leipälaudalle tai edes perf-laudalle. Piirilevyn kehittäminen tälle piirille tekee siitä näyttävän siistimmältä ja helppokäyttöisemmältä. Joten avasin piirilevyjen suunnitteluohjelmistoni ja sijoitin ledit ja vastuksen siistiin pyöreään kuvioon ja yhdistin raidat muodostamaan yhteydet. Oma suunnitteluni näytti tältä tältä alla valmistuessaan. Voit myös ladata Gerber-tiedoston alla olevasta linkistä.
- Lataa Gerber-tiedosto digitaalikompassin piirilevylle
Olen suunnitellut sen olevan kaksoissivulevy, koska haluan Arduinon olevan piirilevyn alaosassa, jotta se ei pilaa piirilevyn yläosaa. Jos olet huolissasi siitä, että joudut maksamaan korkeita kaksoispiirilevyjä, pidä kiinni, sain uuden uuden tuloksen.
Nyt kun suunnittelumme on valmis, on aika saada ne valmistettua. PCB: n tekeminen on melko helppoa yksinkertaisesti noudattamalla alla olevia ohjeita
Vaihe 1: Mene osoitteeseen www.pcbgogo.com, rekisteröidy, jos olet ensimmäinen kerta. Syötä sitten piirilevyn prototyyppi -välilehdelle piirilevyn mitat, kerrosten määrä ja tarvitsemasi piirilevyn määrä. Piirikorttini on 80 cm × 80 cm, joten välilehti näyttää tältä alla
Vaihe 2: Jatka napsauttamalla Lainaa nyt -painiketta. Sinut siirretään sivulle, jossa voit asettaa muutamia lisäparametreja tarvittaessa, kuten käytetyn raidan etäisyys jne. Mutta useimmiten oletusarvot toimivat hyvin. Ainoa asia, joka meidän on otettava huomioon tässä, on hinta ja aika. Kuten näette, rakennusaika on vain 2-3 päivää ja se maksaa vain 5 dollaria PSB: lle. Voit sitten valita haluamasi toimitustavan vaatimuksesi perusteella.
Vaihe 3: Viimeinen vaihe on lähettää Gerber-tiedosto ja jatkaa maksua. Varmistaaksesi prosessin sujuvuuden, PCBGOGO tarkistaa ennen maksun suorittamista, onko Gerber-tiedostosi kelvollinen. Näin voit olla varma, että piirilevysi on valmistusystävällinen ja tavoittaa sinut sitoutuneena.
Piirilevyn kokoaminen
Kun levy oli tilattu, se saapui minuun muutaman päivän kuluttua, vaikka kuriiri oli siististi merkittyssä hyvin pakatussa laatikossa ja kuten aina piirilevyn laatu oli mahtava. Jaan muutaman kuvan alla olevista taulukoista, jotta voit arvioida.
Kytkin juottotangon päälle ja aloin koota levyä. Koska jalanjäljet, tyynyt, läpiviennit ja silkkipaino ovat täydellisesti oikean muotoisia ja kokoisia, minulla ei ollut mitään ongelmia levyn kokoamisessa. Lauta oli valmis vain 10 minuutissa laatikon purkamisesta.
Muutama kuva taulusta juottamisen jälkeen on esitetty alla.
Arduinon ohjelmointi
Nyt kun laitteistomme on valmis, katsokaamme ohjelmaa, joka on ladattava Arduino-kortillemme. Koodin tarkoituksena on lukea QMC5883L-magnetometri-anturin tiedot ja muuntaa ne asteiksi (0-360). Kun tiedämme tutkinnon, meidän on kytkettävä päälle LED, joka osoittaa tietyn suunnan. Tässä ohjelmassa käyttämäni suunta on pohjoinen. Joten riippumatta siitä missä olet , vain yksi LED palaa pöydälläsi ja LEDin suunta osoittaa POHJOIS-suunnan. Kerran myöhemmin voidaan laskea toinen suunta on yksi suunta on tiedossa.
Tämän digitaalisen kompassiprojektin täydellinen koodi löytyy tämän sivun lopusta. Voit ladata sen suoraan pöydällesi sisällyttäessäsi kirjaston ja olet valmis lähtemään. Mutta jos haluat tietää