Taula de continguts:
- Pas 1: altímetre
- Pas 2: parts
- Pas 3: Diagrama de circuits i PCB
- Pas 4: Com alinear perfectament els LED en un cercle en segons amb el programari Eagle PCB Design
- Pas 5: procés de calibració de la brúixola
- Pas 6: Compenseu la declinació magnètica de la vostra ubicació
- Pas 7: Compileu el codi
Vídeo: Brúixola i altímetre LED: 7 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:13
Els objectes amb LED sempre em fascinen. Per tant, aquest projecte combina el popular sensor de brúixola digital HMC5883L amb 48 LED. Si col·loqueu els LED en un cercle, el led que s’il·lumina és la direcció cap a la qual us dirigiu. Cada 7,5 graus accionarà un nou LED que donarà resultats detallats.
La placa GY-86 també proporciona un sensor de pressió baromètrica MS5611. Amb l'ajut d'aquest sensor és possible calcular l'altitud. A causa de l’alta resolució, és perfecte per als altímetres.
El sensor MPU6050 de la placa GY-86 té un acceleròmetre de 3 eixos i un giroscopi de 3 eixos. El giroscopi pot mesurar la velocitat de la posició angular al llarg del temps. L'acceleròmetre pot mesurar l'acceleració gravitatòria i mitjançant l'ús de matemàtiques de trigonometria és possible calcular l'angle en què es troba el sensor. Combinant les dades de l’acceleròmetre i el giroscopi és possible obtenir informació sobre l’orientació del sensor. Es pot utilitzar per compensar la inclinació de la brúixola HMC5883L (per fer).
Els breus vídeos d’instruccions d’aquest instructiu explicaran detalladament el seu funcionament. Els procediments de calibració estan automatitzats de manera que es garanteix l'èxit. La temperatura està disponible en centígrads (per defecte) o Fahrenheit.
Diverteix-te !!
Pas 1: altímetre
L’altímetre fa servir el sensor de pressió baromètrica MS5611. L’altitud es pot determinar en funció de la mesura de la pressió atmosfèrica. A major altitud, menor serà la pressió. A l’arrencada, l’altímetre utilitza la pressió per defecte del nivell del mar de 1013,25 mbar. En prémer el botó del pin 21 es farà servir la pressió a la vostra ubicació com a referència. D’aquesta manera, es pot mesurar aproximadament quina alçada té alguna cosa (per exemple, quan es condueix costa amunt amb un cotxe).
En aquest projecte s’utilitza l’anomenada "fórmula hipomètrica". Aquesta fórmula fa ús de la temperatura per compensar la mesura.
float alt=((powf (font / ((float) P / 100.0), 0.19022256) - 1.0) * ((float) TEMP / 100 + 273.15)) / 0.0065;
Podeu trobar més informació sobre la fórmula hipsomètrica aquí:
Fórmula hipomètrica
Les dades de calibratge de fàbrica i la temperatura del sensor es llegeixen des del sensor MS5611 i s’apliquen al codi per obtenir les mesures més precises. Durant la prova vaig trobar que el sensor MS5611 és sensible als fluxos d’aire i a les diferències d’intensitat de la llum. Ha de ser possible obtenir millors resultats que en aquest vídeo d’instruccions.
Pas 2: parts
1 x Microchip 18f26k22 microcontrolador PDIP de 28 PIN
3 x MCP23017 expansor d'E / S de 16 bits SPDIP de 28 pins
48 x LED de 3 mm
1 mòdul GY-86 amb sensors MS5611, HMC5883L i MPU6050
1 x SH1106 OLED 128x64 I2C
1 x condensador ceràmic 100nF
Resistència d'1 x 100 Ohm
Pas 3: Diagrama de circuits i PCB
Tot encaixa en un PCB d'una cara. Cerqueu aquí els fitxers Eagle i Gerber perquè pugueu fer-los vosaltres mateixos o pregunteu a un fabricant de PCB.
Utilitzo la brúixola i l’altímetre LED al meu cotxe i faig servir la interfície OBD2 com a font d’alimentació. El microcontrolador s’adapta perfectament al connector.
Pas 4: Com alinear perfectament els LED en un cercle en segons amb el programari Eagle PCB Design
Heu de veure aquesta característica molt agradable al programari Eagle PCB Design que us estalvia hores de feina. Amb aquesta funció Eagle podeu alinear perfectament els LED en un cercle en qüestió de segons.
Simplement feu clic a la pestanya "Fitxer" i després a "Executa ULP". Des d'aquí feu clic a "cmd-draw.ulp". Seleccioneu "Mou", "pas de grau" i "Cercle". Empleneu el nom del primer LED al camp "nom". Estableix les coordenades del centre del cercle a la quadrícula als camps "X coord coord" i "Y centre coord". En aquest projecte hi ha 48 LEDs de manera que 360 dividits per 48 fan 7,5 per al camp "Angle step". El radi d’aquest cercle és d’1,4 polzades. Feu clic a Intro i teniu un cercle perfecte de LEDs.
Pas 5: procés de calibració de la brúixola
L'HMC5883L inclou un ADC de 12 bits que permet una precisió de capçalera de brúixola d'1 a 2 graus centígrads. Però abans de donar dades utilitzables, cal calibrar-les. Per tal que aquest projecte funcioni i funcioni sense problemes, hi ha aquest mètode de calibratge que proporciona un desplaçament x i y. No és el mètode més sofisticat, però és suficient per a aquest projecte. Aquest procediment només us costarà uns minuts i us donarà bons resultats.
En carregar i executar aquest programari, se us guiarà en aquest procés de calibratge. La pantalla OLED us indicarà quan començarà el procés i quan finalitzarà. Aquest procés de calibratge us demanarà que gireu el sensor 360 graus mentre el manteniu absolutament pla (horitzontal al terra). Muntar-lo en un trípode o alguna cosa semblant. Fer-ho tenint-lo a la mà no funciona. Al final, les compensacions es presentaran a l'OLED. Si executeu aquest procediment diverses vegades, haureu de veure resultats gairebé iguals.
Opcionalment, les dades recollides també estan disponibles mitjançant RS232 mitjançant el pin 27 (9600 baud). Simplement utilitzeu un programa de terminal com Putty i recopileu totes les dades al fitxer de registre. Aquestes dades es poden importar fàcilment a Excel. Des d’aquí podeu veure amb més facilitat l’aspecte del desplaçament del vostre HMC5883L.
Els desplaçaments es col·loquen a la EEPROM del microcontrolador. Es carregaran a l’inici del programari de la brúixola i l’altímetre que trobareu al pas 7.
Pas 6: Compenseu la declinació magnètica de la vostra ubicació
Hi ha un nord magnètic i un nord geogràfic (pol nord). La brúixola seguirà les línies del camp magnètic terrestre de manera que apuntin cap al nord magnètic. La diferència entre el nord magnètic i el nord geogràfic s’anomena declinació magnètica. A la meva ubicació, la declinació és de només 1 grau i 22 minuts, de manera que no val la pena compensar-ho. En altres llocs, aquesta declinació pot arribar als 30 graus.
Cerqueu la declinació magnètica a la vostra ubicació
Si voleu compensar això (és opcional) podeu afegir la declinació (graus i minuts) a la EEPROM del microcontrolador. A la ubicació 0x20 podeu afegir els graus en forma hexadecimal signada. Està signat perquè també pot ser una declinació negativa. A la ubicació 0x21 podeu afegir els minuts també en forma hexadecimal.
Pas 7: Compileu el codi
Compileu aquest codi font i programa el vostre microcontrolador. Aquest codi es compila correctament amb MPLABX IDE v5.20 i el compilador XC8 v2.05 en mode C99 (per tant, incloeu els directoris C99). També hi ha disponible el fitxer hexadecimal perquè pugueu ometre el procediment de compilació. Assegureu-vos que desmarqueu la casella de selecció "Dades EEPROM activades" per evitar que les dades de calibratge (vegeu el pas 5) se sobreescrivin. Establiu el vostre programador a 3,3 volts.
En connectar el pin 27 a terra s’obté la temperatura en Fahrenheit.
Gràcies a Achim Döbler per la seva biblioteca gràfica µGUI
Accèssit al concurs de sensors
Recomanat:
Una petita brúixola amb ATtiny85: 12 passos (amb imatges)
Una brúixola petita amb ATtiny85: aquest és el nostre primer projecte amb ATtiny85; una simple brúixola digital de butxaca (en col·laboració amb J. Arturo Espejel Báez). ATtiny85 és un microcontrolador d’alt rendiment i poca potència. Té 8 Kbytes de memòria flash programable. A causa d'això, el chal
Tutorial per a la interfície Sensor de brúixola HMC5883L amb Arduino: 10 passos (amb imatges)
Tutorial per a la interfície Sensor de brúixola HMC5883L amb Arduino: Descripció HMC5883L és una brúixola digital de 3 eixos que s’utilitza per a dos propòsits generals: per mesurar la magnetització d’un material magnètic com un ferromagnet o per mesurar la força i, en alguns casos, la direcció del camp magnètic en un punt de s
La brúixola moral: 7 passos (amb imatges)
La brúixola moral: el projecte realitzat en el marc del seminari de disseny computacional i fabricació digital del programa de màsters ITECH i el van presentar Vanessa Costalonga, James Hayward i Christo van der Hoven ._____ Alguna vegada heu dubtat de les opcions que
Micro: bit Brúixola: 9 passos (amb imatges)
Brúixola de micro: bits: Aquestes instruccions mostren com utilitzar micro: bits per fer una brúixola digital senzilla
Brúixola compensada amb inclinació amb LSM303DHLC: 3 passos
Brúixola compensada d’inclinació amb LSM303DHLC: en aquest manual d’instruccions vull mostrar com utilitzar el sensor LSM303 per obtenir una brúixola compensada d’inclinació. Després d’un primer intent (sense èxit), vaig tractar el calibratge del sensor. Gràcies a aquests, els valors del magnetòmetre han millorat si