Obsah:

LED kompas a výškoměr: 7 kroků (s obrázky)
LED kompas a výškoměr: 7 kroků (s obrázky)

Video: LED kompas a výškoměr: 7 kroků (s obrázky)

Video: LED kompas a výškoměr: 7 kroků (s obrázky)
Video: STRANGE PARADIGMS - 04 - Zprávy a chat - UFO - Paranormální jevy 2024, Červenec
Anonim
Image
Image
Schéma zapojení a DPS
Schéma zapojení a DPS

Objekty s LED diodami mě vždy fascinují. Proto tento projekt spojil populární snímač digitálního kompasu HMC5883L se 48 LED diodami. Umístěním LED do kruhu se LED dioda, která svítí, pohybuje ve směru, kterým směřujete. Každých 7,5 stupňů bude pohánět nová LED, která poskytuje podrobné výsledky.

Deska GY-86 je také vybavena snímačem barometrického tlaku MS5611. Pomocí tohoto senzoru je možné vypočítat nadmořskou výšku. Díky vysokému rozlišení je ideální pro výškoměry.

Snímač MPU6050 na desce GY-86 má jak 3osý akcelerometr, tak 3osý gyroskop. Gyroskop dokáže měřit rychlost úhlové polohy v čase. Akcelerometr může měřit gravitační zrychlení a pomocí goniometrické matematiky je možné vypočítat úhel, pod kterým je senzor umístěn. Kombinací dat akcelerometru a gyroskopu je možné získat informace o orientaci senzoru. To lze použít pro kompenzaci náklonu kompasu HMC5883L (k provedení).

Krátká instruktážní videa v tomto návodu podrobně vysvětlí, jak to funguje. Kalibrační postupy jsou automatizovány, takže úspěch je zaručen. Teplota je k dispozici ve stupních Celsia (výchozí) nebo Fahrenheita.

Bavte se !!

Krok 1: Výškoměr

Image
Image

Výškoměr využívá snímač barometrického tlaku MS5611. Nadmořskou výšku lze určit na základě měření atmosférického tlaku. Čím větší nadmořská výška, tím nižší tlak. Při spuštění používá výškoměr výchozí tlak mořské hladiny 1013,25 mbar. Stisknutím tlačítka na kolíku 21 bude tlak ve vašem místě použit jako referenční. Tímto způsobem je možné přibližně změřit, jakou výšku něco má (např. Při jízdě do kopce s autem).

V tomto projektu je použit takzvaný „Hypsometrický vzorec“. Tento vzorec využívá teplotu ke kompenzaci měření.

float alt=((powf (zdroj / ((float) P / 100,0), 0,19022256) - 1,0) * ((float) TEMP / 100 + 273,15)) / 0,0065;

Více o hypsometrickém vzorci najdete zde:

Hypsometrický vzorec

Tovární kalibrační data a teplota čidla se načítají ze snímače MS5611 a aplikují se na kód, aby byla získána nejpřesnější měření. Během testu jsem zjistil, že senzor MS5611 je citlivý na proudění vzduchu a rozdíly v intenzitě světla. Musí být možné dosáhnout lepších výsledků než v tomto instruktážním videu.

Krok 2: Díly

1 x mikrokontrolér Microchip 18f26k22 28-PIN PDIP

3 x MCP23017 16bitový I/O expandér 28kolíkový SPDIP

48 x LED 3 mm

1 x modul GY-86 se senzory MS5611, HMC5883L a MPU6050

1 x SH1106 OLED 128x64 I2C

1 x keramický kondenzátor 100nF

1 x odpor 100 ohmů

Krok 3: Schéma zapojení a PCB

Schéma zapojení a DPS
Schéma zapojení a DPS

Vše se vejde na jednostrannou desku plošných spojů. Zde najdete soubory Eagle a Gerber, abyste si je mohli vyrobit sami nebo se zeptat výrobce desek plošných spojů.

V autě používám LED kompas a výškoměr a jako napájecí zdroj používám rozhraní OBD2. Mikrokontrolér se perfektně hodí do konektoru.

Krok 4: Jak perfektně sladit LED diody v kruhu během několika sekund pomocí softwaru Eagle PCB Design Software

Tuto opravdu pěknou funkci musíte vidět v softwaru Eagle PCB Design Software, který vám ušetří hodiny práce. S touto funkcí Eagle můžete dokonale zarovnat LED v kruhu během několika sekund.

Stačí kliknout na kartu „Soubor“a poté na „Spustit ULP“. Odtud klikněte na "cmd-draw.ulp". Vyberte „Přesunout“, „Stupeň stupně“a „Kruh“. Do pole „název“vyplňte název první LED diody. Nastavte souřadnice středu kruhu na mřížce v polích „středový středník X“a „středový středník Y“. V tomto projektu je 48 LED diod, takže 360 děleno 48 dělá 7,5 pro pole „Úhlový krok“. Poloměr této kružnice je 1,4 palce. Stiskněte Enter a máte perfektní kruh LED diod.

Krok 5: Proces kalibrace kompasu

Image
Image

HMC5883L obsahuje 12bitový ADC, který umožňuje přesnost směru kompasu 1 až 2 stupně Celsia. Než ale poskytne použitelná data, musí být zkalibrována. Aby tento projekt fungoval hladce, existuje tato kalibrační metoda, která poskytuje posunutí x a y. Není to nejsofistikovanější metoda, ale pro tento projekt je dostačující. Tento postup vás bude stát jen několik minut a přinese pěkné výsledky.

Načtením a spuštěním tohoto softwaru budete provedeni tímto procesem kalibrace. OLED displej vám řekne, kdy proces začne a kdy skončí. Tento kalibrační proces vás vyzve k otočení senzoru o 360 stupňů, zatímco jej budete držet zcela rovný (vodorovně k zemi). Namontujte jej na stativ nebo něco podobného. Dělat to držením v ruce nefunguje. Na konci budou offsety prezentovány na OLED. Pokud tento postup spustíte několikrát, musíte vidět téměř stejné výsledky.

Shromážděná data jsou volitelně dostupná také přes RS232 přes pin 27 (9600 baudů). Stačí použít terminálový program, jako je Putty, a shromáždit všechna data v souboru protokolu. Tato data lze snadno importovat do aplikace Excel. Odtud můžete snáze vidět, jak vypadá offset vašeho HMC5883L.

Offsety jsou vloženy do EEPROM mikrokontroléru. Ty se načtou při spuštění softwaru kompasu a výškoměru, který najdete v kroku 7.

Krok 6: Kompenzujte magnetické deklinace vaší polohy

Image
Image
Soutěž senzorů
Soutěž senzorů

Existuje magnetický sever a geografický sever (severní pól). Váš kompas bude sledovat linie magnetického pole Země, takže směřujte na magnetický sever. Rozdíl mezi magnetickým severem a geografickým severem se nazývá magnetická deklinace. V mém místě je deklinace pouze 1 stupeň a 22 minut, takže to nemá cenu kompenzovat. Na jiných místech může být tato deklinace až 30 stupňů.

Najděte magnetickou deklinaci ve vašem místě

Pokud to chcete kompenzovat (je volitelné), můžete do EEPROM mikrokontroléru přidat deklinaci (stupně a minuty). Na místě 0x20 můžete přidat stupně v šestnáctkové podobě se znaménkem. Je podepsán, protože to může být také negativní deklinace. Na místě 0x21 můžete přidat minuty také v hexadecimální formě.

Krok 7: Sestavte kód

Image
Image

Zkompilujte tento zdrojový kód a naprogramujte svůj mikrokontrolér. Tento kód je správně kompilován pomocí kompilátoru MPLABX IDE v5.20 a XC8 v2.05 v režimu C99 (zahrňte tedy adresáře C99). K dispozici je také hexadecimální soubor, takže můžete kompilaci přeskočit. Ujistěte se, že zrušíte zaškrtnutí políčka „Data EEPROM povolena“, abyste zabránili přepsání kalibračních dat (viz krok 5). Nastavte programátor na 3,3 voltů!

Připojením kolíku 27 k zemi získáte teplotu ve Fahrenheite.

Díky Achimu Döblerovi za jeho grafickou knihovnu µGUI

Soutěž senzorů
Soutěž senzorů

Druhé místo v soutěži Senzory

Doporučuje: