Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
[Edytować]; Zobacz wersję 2 w kroku 6 z ręcznym wprowadzaniem wysokości bazowej.
To jest opis budowy wysokościomierza (miernika wysokości) opartego na Arduino Nano i czujniku ciśnienia atmosferycznego Bosch BMP180.
Konstrukcja jest prosta, ale pomiary są stabilne i dość dokładne (dokładność 1m).
Co sekundę wykonuje się dziesięć próbek ciśnienia i oblicza się średnią z tych dziesięciu. To ciśnienie jest porównywane z ciśnieniem bazowym i wykorzystywane do przetwarzania wysokości. Ciśnienie bazowe jest mierzone w momencie włączenia wysokościomierza, co oznacza wysokość zero metrów. W razie potrzeby ciśnienie bazowe można zresetować, naciskając przycisk.
[Edytuj]: Wersja 2 ma ręczne wprowadzanie wysokości bazowej. Zobacz opis w kroku 6
Podczas ustawiania linii bazowej (włączenie zasilania lub naciśnięcie przycisku) przez jedną sekundę wyświetlane jest aktualne ciśnienie atmosferyczne. Następnie wysokość jest wyświetlana na 4-cyfrowym wyświetlaczu i aktualizuje się co sekundę.
Czerwona dioda LED jest używana przy ujemnych wysokościach podczas schodzenia w dół po ustawieniu linii bazowej.
[Edytuj]: W wersji 2 oznacza to ujemne wysokości, czyli poniżej poziomu morza.
Wysokościomierz zasilany jest kablem USB, dzięki czemu można go używać w samochodzie, motocyklu lub w każdym innym miejscu z USB lub powerbankiem.
Używane są dwie specjalne biblioteki. Jeden do BMP180, który można znaleźć tutaj. I jeden dla 4-cyfrowego wyświetlacza TM1637, który można znaleźć tutaj.
BMP180 nie jest najnowszą wersją. Wydaje się być zastąpiony przez BMP280. W tym projekcie wymiana BMP180 na BMP280 powinna być prosta.
Części szkicu są oparte na „BMP180_altitude_example.ino” dostarczonym z biblioteką BMP180.
Krok 1: Deska do krojenia chleba do testowania projektu
Zacząłem od Arduino Uno, aby przetestować projekt. W ostatecznej wersji użyłem Nano, ponieważ jest mniejszy.
Krok 2: Tworzenie tablicy i obudowa
Używana jest jedna pojedyncza tablica. Na pokrywie obudowy znajduje się przycisk, dioda i 4-cyfrowy wyświetlacz.
Krok 3: Połączenia pinów Arduino
Połączenia dla BMP180:GND - GNDVCC - 3,3V (!!)SDA - A4SCL - A5
Połączenia dla 4-cyfrowego wyświetlacza TM1637: GND - GNDVCC - 5VCLK - D6DIO - D8
Led voor wartości ujemne - Zjazd: D2
Przycisk resetowania ciśnienia bazowego: D4
Krok 4: Szkic Arduino
Krok 5: Finał
To jest wynik…
Krok 6: Wersja 2 z ręcznym wprowadzaniem wysokości bazowej
W tej wersji wprowadzono jeden dodatkowy przycisk. Przycisk 1 (czarny) służy do ręcznego wprowadzania wysokości bazowej. Przycisk 2 (biały) służy do zwiększania wartości na cyfrę.
Sekwencja podczas wprowadzania wysokości to:
Wciśnięty przycisk 1 - dioda mignie 1 raz - przycisk 2 może być użyty do zwiększenia cyfry x w 000x
Przycisk 1 wciśnięty ponownie - Dioda miga 2 razy - przycisk 2 może być użyty do zwiększenia cyfry x w 00x0
Przycisk 1 wciśnięty ponownie - Dioda miga 3 razy - przycisk 2 może być użyty do zwiększenia cyfry x w 0x00
Przycisk 1 wciśnięty ponownie - Dioda miga 4 razy - przycisk 2 może być użyty do zwiększenia cyfry x w x000
Przycisk 1 wciśnięty ponownie - Dioda miga 5 razy - przycisk 2 może być użyty do zmiany znaku: led_on=ujemny (poniżej poziomu morza), led_off=dodatni (nad poziomem morza)
Przycisk 1 wciśnięty ponownie - dioda LED miga 1 raz długo - wejście wysokości bazowej gotowe
Krok 7:
Szkic wersji 2.