Sisukord:

LED -kompass ja altimeeter: 7 sammu (piltidega)
LED -kompass ja altimeeter: 7 sammu (piltidega)

Video: LED -kompass ja altimeeter: 7 sammu (piltidega)

Video: LED -kompass ja altimeeter: 7 sammu (piltidega)
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, November
Anonim
Image
Image
Lülitusskeem ja trükkplaat
Lülitusskeem ja trükkplaat

Valgusdioodidega objektid võluvad mind alati. Seetõttu ühendab see projekt populaarse digitaalse kompassianduri HMC5883L ühendamise 48 LED -iga. Asetades valgusdioodid ringi, on valgustatud LED suund, kuhu te suundute. Iga 7,5 kraadi käivitab uue LED -i, mis annab üksikasjalikke tulemusi.

Tahvel GY-86 pakub ka õhurõhu andurit MS5611. Selle anduri abil on võimalik kõrgust arvutada. Suure eraldusvõime tõttu sobib see ideaalselt kõrguse mõõtmiseks.

GY-86 plaadil oleval MPU6050 anduril on nii 3-teljeline kiirendusmõõtur kui ka 3-teljeline güroskoop. Güroskoop suudab mõõta nurgaasendi kiirust aja jooksul. Kiirendusmõõtur saab mõõta gravitatsioonikiirendust ja trigonomeetria abil saab arvutada anduri paigutusnurga. Kiirendusmõõturi ja güroskoobi andmete ühendamisel on võimalik saada teavet anduri orientatsiooni kohta. Seda saab kasutada kompassi HMC5883L kaldenurga kompenseerimiseks (teha).

Selle juhendi lühikesed juhendvideod selgitavad üksikasjalikult, kuidas see toimib. Kalibreerimisprotseduurid on automatiseeritud, nii et edu on tagatud. Temperatuur on saadaval Celsiuse järgi (vaikimisi) või Fahrenheiti järgi.

Lõbutse hästi !!

Samm: kõrgusmõõtur

Image
Image

Kõrgusmõõtur kasutab õhurõhu andurit MS5611. Kõrgust saab määrata atmosfäärirõhu mõõtmise põhjal. Mida suurem on kõrgus, seda madalam on rõhk. Käivitamisel kasutab altimeeter vaikimisi merepinna rõhku 1013,25 mbar. Vajutades nuppu tihvti 21 juures, kasutatakse võrdluseks teie asukoha rõhku. Sel viisil on võimalik ligikaudu mõõta, kui kõrge on miski (nt autoga ülesmäge sõites).

Selles projektis kasutatakse nn hüpsomeetrilist valemit. See valem kasutab mõõtmise kompenseerimiseks temperatuuri.

ujuk alt=(((pulber (allikas / ((ujuk) P / 100,0), 0,19022256) - 1,0) * ((ujuk) TEMP / 100 + 273,15)) / 0,0065;

Lisateavet hüpsomeetrilise valemi kohta leiate siit:

Hüpsomeetriline valem

Tehase kalibreerimisandmed ja anduri temperatuur loetakse MS5611 andurilt ja rakendatakse koodile, et saada kõige täpsemaid mõõtmisi. Katse käigus leidsin, et MS5611 andur on tundlik õhuvoolude ja valguse intensiivsuse erinevuste suhtes. Peab olema võimalik saada paremaid tulemusi kui käesolevas juhendvideos.

2. samm: osad

1 x mikrokiip 18f26k22 28-PIN PDIP mikrokontroller

3 x MCP23017 16-bitine I/O Expander 28-pin SPDIP

48x LED 3mm

1 x GY-86 moodul MS5611, HMC5883L ja MPU6050 anduritega

1 x SH1106 OLED 128x64 I2C

1 x keraamiline kondensaator 100 nF

1 x 100 oomi takisti

Samm: vooluahela skeem ja trükkplaat

Lülitusskeem ja trükkplaat
Lülitusskeem ja trükkplaat

Kõik sobib ühepoolsele trükkplaadile. Siit leiate failid Eagle ja Gerber, et saaksite seda ise teha või küsida trükkplaatide tootjalt.

Ma kasutan oma autos LED -kompassi ja altimeetrit ning kasutan toiteallikana OBD2 liidest. Mikrokontroller sobib ideaalselt pistikusse.

4. samm: kuidas LED -id täiuslikult joondada ringis sekunditega Eagle PCB disainitarkvaraga

Peate nägema seda tõeliselt kena funktsiooni Eagle PCB disainitarkvaras, mis säästab teie töötunde. Selle Eagle'i funktsiooni abil saate LED -id sekunditega ideaalselt ringjoonele joondada.

Lihtsalt klõpsake vahekaarti "Fail" ja seejärel "Käivita ULP". Siit klõpsake "cmd-draw.ulp". Valige "Liiguta", "astmeline samm" ja "Ring". Sisestage väljale "nimi" esimese LED -i nimi. Määrake ringi keskpunkti koordinaadid ruudustikul väljadel "X center coord" ja "Y center coord". Selles projektis on 48 LED -i, nii et 360 jagatud 48 -ga teeb välja "Nurga samm" jaoks 7,5. Selle ringi raadius on 1,4 tolli. Vajutage sisestusklahvi ja teil on täiuslik LED -ide ring.

Samm: kompassi kalibreerimisprotsess

Image
Image

HMC5883L sisaldab 12 -bitist ADC -d, mis võimaldab kompassi suuna täpsust 1-2 kraadi Celsiuse järgi. Kuid enne kasutatavate andmete andmist tuleb see kalibreerida. Selle projekti tõrgeteta toimimiseks on olemas see kalibreerimismeetod, mis tagab x- ja y-nihke. See ei ole kõige pehmem meetod, kuid selle projekti jaoks piisav. See protseduur maksab teile vaid paar minutit ja annab teile ilusaid tulemusi.

Selle tarkvara laadimisel ja käivitamisel juhendatakse teid selles kalibreerimisprotsessis. OLED -ekraan näitab, millal protsess algab ja millal see lõpeb. See kalibreerimisprotsess palub teil pöörata andurit 360 kraadi, hoides seda absoluutselt tasasena (maapinnaga horisontaalselt). Paigaldage see statiivile vms. Kui teete seda käes hoides, see ei toimi. Lõpus esitatakse kompenseerimised OLED -il. Kui teete seda protseduuri mitu korda, peate nägema peaaegu võrdseid tulemusi.

Valikuliselt on kogutud andmed saadaval ka RS232 kaudu tihvti 27 kaudu (9600 baud). Kasutage lihtsalt terminaliprogrammi nagu Putty ja koguge kõik logifaili andmed. Neid andmeid saab hõlpsasti Excelisse importida. Siit näete hõlpsamini, kuidas teie HMC5883L nihe välja näeb.

Nihked sisestatakse mikrokontrolleri EEPROM -i. Need laaditakse kompassi ja kõrgusemõõturi tarkvara käivitamisel, mille leiate sammust 7.

Samm: kompenseerige oma asukoha magnetilist deklinatsiooni

Image
Image
Andurite võistlus
Andurite võistlus

Seal on magnetiline põhi ja geograafiline põhi (põhjapoolus). Teie kompass järgib Maa magnetvälja jooni, nii et osutage magnetilisele põhjale. Magnetilise põhja ja geograafilise põhja vahelist erinevust nimetatakse magnetiliseks deklinatsiooniks. Minu asukohas on langus ainult 1 kraad ja 22 minutit, nii et seda ei tasu kompenseerida. Teistes kohtades võib see langus olla kuni 30 kraadi.

Leidke oma asukohast magnetiline deklinatsioon

Kui soovite seda kompenseerida (valikuline), saate lisada deklinatsiooni (kraadid ja minutid) mikrokontrolleri EEPROM -i. Asukohas 0x20 saate kraadid lisada allkirjastatud kuueteistkümnendsüsteemis. See on allkirjastatud, kuna see võib olla ka negatiivne deklinatsioon. Asukohas 0x21 saate minutid lisada ka kuueteistkümnendsüsteemis.

Samm: koostage kood

Image
Image

Koostage see lähtekood ja programmeerige oma mikrokontroller. See kood kompileeritakse õigesti C99 -režiimis MPLABX IDE v5.20 ja XC8 kompilaatori v2.05 abil (nii et lisage ka C99 kataloogid). Saadaval on ka kuuskantfail, nii et saate kompileerimisprotseduuri vahele jätta. Veenduge, et eemaldate märkeruudu "EEPROM -andmed lubatud", et vältida kalibreerimisandmete (vt 5. samm) ülekirjutamist. Seadke oma programmeerija 3,3 voldile!

Ühendades tihvti 27 maapinnaga, saate temperatuuri Fahrenheiti järgi.

Täname Achim Döblerit µGUI graafikakogu eest

Andurite võistlus
Andurite võistlus

Andurite võistluse teine koht

Soovitan: