Talaan ng mga Nilalaman:

LED Compass at Altimeter: 7 Hakbang (na may Mga Larawan)
LED Compass at Altimeter: 7 Hakbang (na may Mga Larawan)

Video: LED Compass at Altimeter: 7 Hakbang (na may Mga Larawan)

Video: LED Compass at Altimeter: 7 Hakbang (na may Mga Larawan)
Video: AL-9000 Digital Altimeter Barometer Compass 7 in 1 Meter Quick Set Up 2024, Hulyo
Anonim
Image
Image
Circuit Diagram at PCB
Circuit Diagram at PCB

Ang mga bagay na may LEDs ay palaging nakakaakit sa akin. Samakatuwid ang proyektong ito upang pagsamahin ang tanyag na digital na sensor ng sensor HMC5883L sa 48 LEDs. Sa pamamagitan ng paglalagay ng mga LED sa isang bilog na humantong na ang pag-iilaw ay ang direksyon na iyong patungo. Ang bawat 7.5 degree ay magdadala ng isang bagong LED na nagbibigay ng detalyadong mga resulta.

Nagbibigay din ang GY-86 board ng isang MS5611 barometric pressure sensor. Sa tulong ng sensor na ito posible na kalkulahin ang altitude. Dahil sa mataas na resolusyon perpekto ito para sa mga altimeter.

Ang sensor ng MPU6050 sa board na GY-86 ay may parehong 3-axis accelerometer at isang 3-axis gyroscope. Maaaring sukatin ng gyroscope ang tulin ng posisyon ng angular sa paglipas ng panahon. Maaaring sukatin ng accelerometer ang gravitational acceleration at sa pamamagitan ng paggamit ng trigonometry math posible na kalkulahin ang anggulo kung saan nakaposisyon ang sensor. Sa pamamagitan ng pagsasama-sama ng data ng accelerometer at gyroscope posible na makakuha ng impormasyon tungkol sa orientation ng sensor. Maaari itong magamit para sa ikiling na kabayaran para sa HMC5883L compass (na gagawin).

Ang mga maikling video ng tagubilin sa itinuturo na ito ay magpapaliwanag nang detalyado kung paano ito gumagana. Ang mga pamamaraan sa pagkakalibrate ay awtomatiko kaya ginagarantiyahan ang tagumpay. Magagamit ang temperatura sa Celsius (default) o Fahrenheit.

Magsaya ka !!

Hakbang 1: Altimeter

Image
Image

Ginagamit ng altimeter ang sensor ng presyon ng barometric ng MS5611. Maaaring matukoy ang altitude batay sa pagsukat ng presyon ng atmospera. Kung mas malaki ang altitude, mas mababa ang presyon. Sa pagsisimula, ang altimeter ay gumagamit ng default na presyon ng antas ng dagat na 1013.25 mbar. Sa pamamagitan ng pagpindot sa pindutan sa pin 21 ang presyon sa iyong lokasyon ay gagamitin bilang isang sanggunian. Sa ganitong paraan ginagawang posible upang sukatin kung anong taas ang mayroon (hal. Kapag nagmamaneho paakyat sa isang kotse).

Ang tinaguriang "Hypsometric formula" ay ginagamit sa proyektong ito. Ginagawa ng pamamaraang ito ang temperatura upang mabayaran ang pagsukat.

float alt=((powf (source / ((float) P / 100.0), 0.19022256) - 1.0) * ((float) TEMP / 100 + 273.15)) / 0.0065;

Maaari kang makahanap ng higit pa tungkol sa hypsometric formula dito:

Formula ng hypsometric

Ang data ng pag-calibrate ng pabrika at temperatura ng sensor ay nababasa mula sa sensor ng MS5611 at inilapat sa code upang makuha ang pinaka tumpak na mga sukat. Sa panahon ng pagsubok nalaman ko na ang sensor ng MS5611 ay sensitibo para sa mga daloy ng hangin at pagkakaiba sa lakas ng ilaw. Dapat ay posible upang makakuha ng mas mahusay na mga resulta kaysa sa video ng pagtuturo na ito.

Hakbang 2: Mga Bahagi

1 x Microchip 18f26k22 microcontroller 28-PIN PDIP

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

48 x LED's 3mm

1 x GY-86 module na may MS5611, HMC5883L at MPU6050 sensor

1 x SH1106 OLED 128x64 I2C

1 x Ceramic capacitor 100nF

1 x 100 Ohm risistor

Hakbang 3: Circuit Diagram at PCB

Circuit Diagram at PCB
Circuit Diagram at PCB

Tama ang lahat sa isang panig na PCB. Hanapin dito ang mga file ng Eagle at Gerber upang magawa mo ito mismo o magtanong sa isang gumagawa ng PCB.

Ginagamit ko ang LED Compass at Altimeter sa aking kotse at ginagamit ang interface ng OBD2 bilang isang power supply. Tama ang sukat ng microcontroller sa konektor.

Hakbang 4: Paano Perpektong Ihanay ang LED sa isang Circle sa Segundo Sa Eagle PCB Design Software

Dapat mong makita ang talagang magandang tampok na ito sa Eagle PCB Design Software na nakakatipid sa iyo ng oras ng trabaho. Gamit ang tampok na Eagle maaari mong perpektong ihanay ang mga LED sa isang bilog sa segundo.

Mag-click lamang sa tab na "File" at pagkatapos ay "Run ULP". Mula dito mag-click sa "cmd-draw.ulp". Piliin ang "Ilipat", "degree step" at "Circle". Punan ang pangalan ng unang LED sa patlang na "pangalan". Itakda ang mga coordinate ng gitna ng bilog sa grid sa mga patlang na "X center coord" at "Y center coord". Sa proyektong ito ay 48 LEDs kaya 360 na hinati ng 48 ay gumagawa ng 7.5 para sa patlang na "Angle step". Ang radius ng bilog na ito ay 1.4 pulgada. Pindutin ang ipasok at mayroon kang isang perpektong bilog ng LEDs.

Hakbang 5: Proseso ng Pag-calibrate ng Compass

Image
Image

Ang HMC5883L ay nagsasama ng isang 12 bit ADC na nagbibigay-daan sa kawastuhan ng heading na 1 hanggang 2 degree na Celsius. Ngunit bago ito magbigay ng magagamit na data kailangan itong i-calibrate. Upang magkaroon ng maayos at maayos na pagpapatakbo ang proyektong ito ay may ganitong paraan ng pagkakalibrate na nagbibigay ng x- at y offset. Hindi ito ang pinaka-sofisticated na pamamaraan ngunit sapat ito para sa proyektong ito. Ang pamamaraang ito ay babayaran ka lamang ng ilang minuto at bibigyan ka ng magagandang resulta.

Sa pamamagitan ng paglo-load at pagpapatakbo ng software na ito gagabayan ka sa proseso ng pagkakalibrate na ito. Sasabihin sa iyo ng OLED display kung kailan magsisimula ang proseso at kailan ito magtatapos. Hihilingin sa iyo ng proseso ng pagkakalibrate na i-on ang sensor ng 360 degree habang humahawak ito ng ganap na flat (pahalang sa lupa). I-mount ito sa isang tripod o katulad nito. Ang paggawa nito sa pamamagitan ng paghawak sa iyong kamay ay hindi gagana. Sa katapusan ang mga offset ay ipapakita sa OLED. Kung pinatakbo mo ang pamamaraang ito nang maraming beses dapat mong makita ang halos pantay na mga resulta.

Bilang pagpipilian, ang nakolektang data ay magagamit din sa pamamagitan ng RS232 sa pamamagitan ng pin 27 (9600 baud). Gumamit lamang ng isang programa ng terminal tulad ng Putty at kolektahin ang lahat ng data sa log file. Ang data na ito ay maaaring mai-import nang madali sa Excel. Mula dito maaari mong makita ang mas madali kung paano ang hitsura ng offset ng iyong HMC5883L.

Ang mga offset ay inilalagay sa EEPROM ng microcontroller. Mai-load ang mga ito sa pagsisimula ng kompas at altimeter software na makikita mo sa hakbang 7.

Hakbang 6: Bayaran ang Magnetic Declination ng Iyong Lokasyon

Image
Image
Paligsahan sa Mga Sensor
Paligsahan sa Mga Sensor

Mayroong isang magnetikong Hilaga at isang heyograpikong Hilaga (Hilagang Pole). Susundan ng iyong compass ang mga linya ng magnetic field ng mundo kaya ituro ang magnetikong Hilaga. Ang pagkakaiba sa pagitan ng magnetikong Hilaga at heyograpikong Hilaga ay tinawag na magnet na pagtanggi. Sa aking lokasyon ang pagtanggi ay 1 degree at 22 minuto lamang kaya hindi nagkakahalaga ng pagbabayad nito. Sa ibang mga lokasyon ang pagtanggi na ito ay maaaring hanggang sa 30 degree.

Hanapin ang magnetikong pagtanggi sa iyong lokasyon

Kung nais mong bayaran ito (opsyonal) maaari mong idagdag ang pagtanggi (degree at minuto) sa EEPROM ng microcontroller. Sa lokasyon na 0x20 maaari kang magdagdag ng mga degree sa naka-sign na hexadecimal form. Nilagdaan ito sapagkat maaari rin itong isang negatibong pagtanggi. Sa lokasyon 0x21 maaari kang magdagdag ng mga minuto din sa hexadecimal form.

Hakbang 7: Ipunin ang Code

Image
Image

I-compile ang source code na ito at i-program ang iyong microcontroller. Ang code na ito ay naiipon ng tama sa MPLABX IDE v5.20 at XC8 compiler v2.05 sa C99 mode (kaya isama ang mga direktoryo ng C99). Gayundin ang hex file ay magagamit upang maaari mong laktawan ang pamamaraan ng pagtitipon. Tiyaking na-uncheck mo ang checkbox na "pinagana ang data ng EEPROM" upang mapigilan ang data ng pagkakalibrate (tingnan ang hakbang 5) na ma-o-overtake. Itakda ang iyong programmer sa 3.3 volt!

Sa pamamagitan ng pagkonekta sa pin 27 sa lupa makuha mo ang temperatura sa Fahrenheit.

Salamat kay Achim Döbler para sa kanyang µGUI graphic library

Paligsahan sa Mga Sensor
Paligsahan sa Mga Sensor

Runner Up sa Paligsahan sa Mga Sensor

Inirerekumendang: