Spisu treści:
- Krok 1: Niezbędny sprzęt, którego potrzebujemy
- Krok 2: Połączenia sprzętowe w celu złożenia obwodu
- Krok 3: Programowanie Raspberry Pi w Javie
- Krok 4: Praktyczność Kodeksu (działanie)
- Krok 5: Aplikacje i funkcje
- Krok 6: Wniosek
Wideo: Korzystanie z Raspberry Pi, pomiar wysokości, ciśnienia i temperatury za pomocą MPL3115A2: 6 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
Wiedz, co posiadasz, i wiedz, dlaczego to posiadasz
To intrygujące. Żyjemy w dobie automatyzacji Internetu, która pogrąża się w mnóstwie nowych aplikacji. Jako entuzjaści komputerów i elektroniki wiele się nauczyliśmy z Raspberry Pi i postanowiliśmy połączyć nasze zainteresowania. Ten projekt zajmuje około godziny, jeśli jesteś nowy w połączeniach I²C i konfiguracji oprogramowania, i jest to świetny sposób na rozszerzenie możliwości MPL3115A2 o Raspberry Pi w Javie.
Krok 1: Niezbędny sprzęt, którego potrzebujemy
1. Raspberry Pi
Pierwszym krokiem było uzyskanie płyty Raspberry Pi. Ten mały geniusz jest wykorzystywany przez hobbystów, nauczycieli oraz w tworzeniu innowacyjnych środowisk.
2. Osłona I2C dla Raspberry Pi
INPI2 (adapter I2C) zapewnia Raspberry Pi 2/3 port I²C do użytku z wieloma urządzeniami I2C. Jest dostępny w sklepie Dcube.
3. Wysokościomierz, czujnik ciśnienia i temperatury, MPL3115A2
MPL3115A2 to czujnik ciśnienia MEMS z interfejsem I²C, który podaje dane dotyczące ciśnienia, wysokości i temperatury. Ten czujnik wykorzystuje do komunikacji protokół I²2. Kupiliśmy ten czujnik w sklepie Dcube Store.
4. Kabel połączeniowy
Wykorzystaliśmy kabel połączeniowy I²C dostępny w sklepie Dcube Store.
5. Kabel Micro USB
Raspberry Pi jest zasilane przez zasilacz micro USB.
6. Ulepszenie dostępu do Internetu - kabel Ethernet/moduł WiFi
Jedną z pierwszych rzeczy, które będziesz chciał zrobić, jest podłączenie Raspberry Pi do Internetu. Możesz połączyć się za pomocą kabla Ethernet lub adaptera Wireless USB Nano WiFi.
7. Kabel HDMI (opcjonalnie, twój wybór)
Raspberry Pi można podłączyć do monitora za pomocą kabla HDMI. Możesz także zdalnie uzyskać dostęp do Raspberry Pi za pomocą SSH/PuTTY.
Krok 2: Połączenia sprzętowe w celu złożenia obwodu
Wykonaj obwód zgodnie z przedstawionym schematem. Ogólnie połączenia są dość proste. Postępuj zgodnie z instrukcjami i obrazami powyżej i nie powinieneś mieć żadnych problemów. Podczas planowania przyjrzeliśmy się sprzętowi i kodowaniu, a także podstawom elektroniki. Chcieliśmy zaprojektować prosty schemat elektroniki do tego projektu. Na schemacie można zauważyć różne części, komponenty mocy i czujnik I²C zgodnie z protokołami komunikacyjnymi I²C. Mamy nadzieję, że to pokazuje, jak prosta jest elektronika w tym projekcie.
Połączenie Raspberry Pi i I2C Shield
W tym celu Raspberry Pi i umieść na nim I²C Shield. Delikatnie naciśnij tarczę (patrz zdjęcie).
Połączenie czujnika i Raspberry Pi
Weź czujnik i podłącz do niego kabel I²C. Upewnij się, że wyjście I²C ZAWSZE łączy się z wejściem I²C. To samo dotyczy Raspberry Pi z zamontowaną na nim osłoną I²C. Po naszej stronie mamy osłonę I²C i kable połączeniowe I²C jako bardzo dużą zaletę, ponieważ pozostaje nam tylko opcja plug and play. Nigdy więcej problemów z pinami i okablowaniem, a tym samym zamieszanie zniknęło. Cóż za ulga, gdy wyobraź sobie siebie w sieci przewodów i wpadnięcie w to. Tak proste jak to!
Uwaga: Brązowy przewód powinien zawsze podążać za połączeniem uziemienia (GND) między wyjściem jednego urządzenia a wejściem innego urządzenia
Łączność z Internetem ma kluczowe znaczenie
Aby nasz projekt odniósł sukces, potrzebujemy dostępu do Internetu dla naszego Raspberry Pi. W tym przypadku masz opcje, takie jak podłączenie kabla Ethernet (LAN). Również jako alternatywny, ale imponujący sposób na użycie karty WiFi.
Zasilanie obwodu
Podłącz kabel Micro USB do gniazda zasilania Raspberry Pi. Włącz i voila, dobrze jest iść!
Połączenie z ekranem
Możemy albo podłączyć kabel HDMI do monitora, albo możemy być trochę innowacyjni, aby stworzyć nasze bezgłowe Pi (przy użyciu -SSH/PuTTY), co pomaga obniżyć dodatkowe koszty, ponieważ jesteśmy w jakiś sposób hobbystami.
Kiedy nawyk zaczyna kosztować, nazywa się to hobby
Krok 3: Programowanie Raspberry Pi w Javie
Kod Java dla Raspberry Pi i czujnika MPL3115A2. Jest dostępny w naszym repozytorium Github.
Zanim przejdziesz do kodu, zapoznaj się z instrukcjami podanymi w pliku Readme i zgodnie z nimi skonfiguruj swoje Raspberry Pi. To zajmie tylko chwilę. Wysokość jest obliczana na podstawie ciśnienia przy użyciu poniższego równania:
h = 44330,77 {1 - (p / p0) ^ 0,1902632} + OFF_H (Wartość rejestru)
gdzie p0 = ciśnienie na poziomie morza (101326 Pa), a h jest w metrach. MPL3115A2 używa tej wartości, ponieważ rejestr przesunięcia jest zdefiniowany jako 2 Pascale na LSB. Kod jest wyraźnie przed tobą i jest w najprostszej formie, jaką możesz sobie wyobrazić, i nie powinieneś mieć problemów.
Możesz tutaj również skopiować działający kod Java dla tego czujnika.
// Rozprowadzany z wolną licencją.// Używaj go w dowolny sposób, z zyskiem lub za darmo, pod warunkiem, że pasuje do licencji powiązanych z nim dzieł. // MPL3115A2 // Ten kod jest przeznaczony do pracy z minimodułem MPL3115A2_I2CS I2C dostępnym na stronie ControlEverything.com. //
importuj com.pi4j.io.i2c. I2CBus;
importuj com.pi4j.io.i2c. I2CDurządzenie; importuj com.pi4j.io.i2c. I2CFabryka; import java.io. IOException;
klasa publiczna MPL3115A2
{ public static void main(String args) throws Exception { // Utwórz magistralę I2C I2CBus Bus = I2CFactory.getInstance(I2CBus. BUS_1); // Pobierz urządzenie I2C, MPL3115A2 Adres I2C to 0x60(96) Urządzenie I2CDevice = Bus.getDevice(0x60); // Wybierz rejestr kontrolny // Tryb aktywny, OSR = 128, tryb wysokościomierza device.write(0x26, (byte)0xB9); // Wybór rejestru konfiguracji danych // Zdarzenie gotowości danych włączone dla wysokości, ciśnienia, temperatury device.write(0x13, (byte)0x07); // Wybierz rejestr kontrolny // Tryb aktywny, OSR = 128, tryb wysokościomierza device.write(0x26, (byte)0xB9); Wątek.sen(1000);
// Odczytaj 6 bajtów danych z adresu 0x00(00)
// status, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb byte data = new byte[6]; urządzenie.odczyt(0x00, dane, 0, 6);
// Konwertuj dane na 20-bitowe
int tHeight = ((((dane[1] & 0xFF) * 65536) + ((dane[2] & 0xFF) * 256) + (dane[3] & 0xF0)) / 16); int temp = ((dane[4] * 256) + (dane[5] i 0xF0)) / 16; podwójna wysokość = wysokość / 16,0; podwójne cTemp = (temp / 16,0); podwójne fTemp = cTemp * 1,8 + 32;
// Wybierz rejestr kontrolny
// Tryb aktywny, OSR = 128, tryb barometru device.write(0x26, (byte)0x39); Wątek.sen(1000); // Odczytaj 4 bajty danych z adresu 0x00(00) // status, pres msb1, pres msb, pres lsb device.read(0x00, data, 0, 4);
// Konwertuj dane na 20-bitowe
int pres = (((dane[1] i 0xFF) * 65536) + ((dane[2] i 0xFF) * 256) + (dane[3] i 0xF0)) / 16; podwójne ciśnienie = (pres / 4.0) / 1000,0; // Wyprowadzanie danych na ekran System.out.printf("Ciśnienie: %.2f kPa %n", ciśnienie); System.out.printf("Wysokość: %.2f m %n", wysokość); System.out.printf("Temperatura w stopniach Celsjusza: %.2f C %n", cTemp); System.out.printf("Temperatura w stopniach Fahrenheita: %.2f F %n", fTemp); } }
Krok 4: Praktyczność Kodeksu (działanie)
Teraz pobierz (lub git pull) kod i otwórz go w Raspberry Pi. Uruchom polecenia skompiluj i prześlij kod w terminalu i zobacz dane wyjściowe w Monitorze. Po kilku sekundach wyświetli wszystkie parametry. Po upewnieniu się, że wszystko działa sprawnie, możesz przenieść ten projekt do większego projektu.
Krok 5: Aplikacje i funkcje
Częstym zastosowaniem precyzyjnego czujnika wysokościomierza MPL3115A2 jest zastosowanie w takich aplikacjach, jak mapa (wspomaganie mapy, nawigacja), kompas magnetyczny lub GPS (GPS Dead Reckoning, ulepszanie GPS dla służb ratowniczych), wysokościomierz o wysokiej dokładności, smartfony/tablety, wysokościomierz elektroniki osobistej i Satelity (wyposażenie stacji pogodowej/prognozowanie).
Dla m.in. Korzystając z tego czujnika i Rasp Pi, możesz zbudować cyfrowy wysokościomierz wizualny, najważniejszy element sprzętu spadochronowego, który może mierzyć wysokość, ciśnienie powietrza i temperaturę. Możesz dodać siatkę wiatrową i inne czujniki, aby uczynić je bardziej interesującym.
Krok 6: Wniosek
Ponieważ program jest niesamowicie konfigurowalny, istnieje wiele interesujących sposobów na rozszerzenie tego projektu i ulepszenie go. Na przykład, wysokościomierz/interferometr obejmowałby kilka wysokościomierzy zamontowanych na masztach, które zbierałyby pomiary jednocześnie, zapewniając w ten sposób ciągłe, jedno- lub wielowymiarowe pokrycie szerokiego obszaru. Mamy ciekawy samouczek wideo na YouTube, który może pomóc w lepszym zrozumieniu tego projektu.
Zalecana:
Wysokościomierz (miernik wysokości) na podstawie ciśnienia atmosferycznego: 7 kroków (ze zdjęciami)
Wysokościomierz (miernik wysokości) na podstawie ciśnienia atmosferycznego: [Edytuj]; Zobacz wersję 2 w kroku 6 z ręcznym wprowadzaniem wysokości bazowej.To jest opis budynku wysokościomierza (miernika wysokości) opartego na Arduino Nano i czujniku ciśnienia atmosferycznego Bosch BMP180.Projekt jest prosty, ale pomiary
Pomiar ciśnienia za pomocą CPS120 i Raspberry Pi: 4 kroki
Pomiar ciśnienia przy użyciu CPS120 i Raspberry Pi: CPS120 to wysokiej jakości i niedrogi pojemnościowy czujnik ciśnienia bezwzględnego zw pełni skompensowaną mocą wyjściową. Zużywa bardzo mniej energii i składa się z bardzo małego czujnika mikroelektromechanicznego (MEMS) do pomiaru ciśnienia. Oparta na sigma-delta
Pomiar ilości wody za pomocą czujnika ciśnienia: 5 kroków
Pomiar ilości wody za pomocą czujnika ciśnienia: Czujnik ciśnienia został użyty do pomiaru ilości wody w zbiorniku. Wyposażenie: czujnik 24 szt. Płytka stykowaRezystoryWzmacniaczeZbiornik
Określanie ciśnienia i wysokości za pomocą GY-68 BMP180 i Arduino: 6 kroków
Określanie ciśnienia i wysokości za pomocą GY-68 BMP180 i Arduino: Przegląd W wielu projektach, takich jak latające roboty, stacje pogodowe, poprawa wydajności wyznaczania tras, sport itp., pomiar ciśnienia i wysokości jest bardzo ważny. W tym samouczku dowiesz się, jak korzystać z czujnika BMP180, który jest jednym z najbardziej
Pomiar ciśnienia za pomocą Micro:bit: 5 kroków (ze zdjęciami)
Zmierz ciśnienie za pomocą urządzenia Micro:bit: Poniższa instrukcja opisuje łatwe w budowie i niedrogie urządzenie do wykonywania pomiarów ciśnienia i demonstrowania prawa Boyle'a przy użyciu micro:bit w połączeniu z czujnikiem ciśnienia/temperatury BMP280. Podczas gdy ta strzykawka/ciśnienie s