Spisu treści:

Zegar pogodowy Raspi-Nextion: 7 kroków
Zegar pogodowy Raspi-Nextion: 7 kroków

Wideo: Zegar pogodowy Raspi-Nextion: 7 kroków

Wideo: Zegar pogodowy Raspi-Nextion: 7 kroków
Wideo: Arduino w edukacji – Zbyszek „HardeN” Brożbar 2024, Listopad
Anonim
Zegar pogodowy Raspi-Nextion
Zegar pogodowy Raspi-Nextion
Zegar pogodowy Raspi-Nextion
Zegar pogodowy Raspi-Nextion

Widząc tak wiele różnych zegarów zbudowanych z arduino i Raspberry Pi zainspirowało mnie. Też chciałem zrobić.

Zacząłem od arduino mega z ESP8266, ale stwierdziłem, że wifi 8266 ma zbyt wiele czkawek. Postanowiłem użyć zapasowego Pi, które miałem (Raspberry Pi3 Model B), mimo że nigdy nie używałem Pythona. Znalazłem kilka samouczków dotyczących używania kodu arduino na Pi, ale to wszystko wydawało się być bandaidami.

Zegar pogodowy Raspi-Nextion wykorzystuje Pi z systemem Raspian podłączonym do rozszerzonego ekranu Nextion 5 przez port szeregowy z programem napisanym w Pythonie.

Wydrukowałem też w 3D (z pomocą kilku znajomych) obudowę.

Zaraz po uruchomieniu programu – pobiera datę i godzinę z Google

Będzie również uzyskać pogodę za pomocą thingspeak.com

Musisz zarejestrować się na https://thingspeak.com/apps i użyć ThingHTTP

Ekran będzie się zmieniał wraz ze zmianą pogody - np. jeśli jest słonecznie, ekran będzie miał słoneczne tło, jeśli padnie śnieg, ekran będzie miał tło wypełnione śniegiem

Ekran będzie przyciemniał się w nocy, abyś mógł spać - jest to regulowane w programie o której godzinie przyciemnia się i wyłącza

Kiedy są wakacje, zobaczysz tło świąteczne, a ekran zostanie później przyciemniony, dzięki czemu możesz spać w…

Wszystkie tła można edytować za pomocą oprogramowania nextion

stwórz własny ekran na urodziny, rocznice, ważne daty…

Krok 1: Lista części

Oto lista części i oprogramowania, których użyłem:

Sprzęt komputerowy

1. Raspberry Pi 3 Model B (50 USD na Amazon)

1a. Potrzebujesz microSD - miałem zapasowy z adapterem USB na microSD

2. Ulepszony ekran Nextion 5 (72 USD od ITead)

3. 2 małe głośniki - opcjonalnie - chciałem dodać 2 głośniki bluetooth

4. Wzmacniacz audio Bluetooth - opcjonalny -

5. zasilacz - opcjonalnie - jeśli dodasz głośniki fajnie jest dodać zasilacz, który będzie zasilał Raspberry i wzmacniacz audio -

6. Dodałem również pliki drukarki 3D dla wszystkich zainteresowanych

Oprogramowanie:

1 Raspian -

2. Win32 Disk Imager - służy do zapisywania raspian na microSD dla Raspberry Pi -

3. Nextion Editor - do tworzenia niestandardowych układów ekranu -

Dodatki:

1. ekran komputera do połączenia z PI - tymczasowo

2 klawiatura usb i mysz do podłączenia do pi - tymczasowo

Krok 2: Zainstaluj Raspbian i załaduj ekran Nextion

Zainstaluj Raspbian i załaduj ekran Nextion
Zainstaluj Raspbian i załaduj ekran Nextion

Po pobraniu obrazu raspiana rozpakuj plik ISO na swój komputer.

Umieść kartę microSD w adapterze USB i podłącz komputer

Wykonaj szybki format na karcie SD (fs=fat32)

Załaduj ekran:

1. podłącz kartę SD do komputera i umieść załączony plik hmi na karcie

2. zainstaluj kartę microSD na ekranie Nextion i włącz zasilanie

3. poczekaj na załadowanie obrazu. Po zakończeniu wyłącz zasilanie z ekranu i wyjmij kartę

4. Wykonaj szybki format na karcie SD (fs=fat32)

Załaduj Rapian na microSD:

Uruchom program do obrazowania dysku Win32 i zapisz obraz na karcie microSD

1. wybierz literę swojej karty microSD

2. wybierz rozpakowany plik ISO obrazu raspian

3. Kliknij napisz

4. Po zakończeniu możesz zamknąć obraz dysku Win32 i odłączyć kartę microSD od komputera.

5. Podłącz kartę microSD do Raspberry Pi

Krok 3: Uruchom Raspberry Pi i podłącz Nextion

Uruchom Raspberry Pi i podłącz Nextion
Uruchom Raspberry Pi i podłącz Nextion
Uruchom Raspberry Pi i podłącz Nextion
Uruchom Raspberry Pi i podłącz Nextion
Uruchom Raspberry Pi i podłącz Nextion
Uruchom Raspberry Pi i podłącz Nextion

Istnieje kilka zmian konfiguracyjnych, które należy wprowadzić na Raspberry Pi.

Na przykład, aby użyć wyjścia szeregowego w Pi3 Model B, musisz wyłączyć bluetooth.

Złóż PI i podłącz klawiaturę, mysz, kartę SD i ekran komputera, korzystając z wyjścia hdmi PI

1. Po podłączeniu zasilania do Pi, zacznie się uruchamiać. Po uruchomieniu zobaczysz, że masz ładny pulpit ze wszystkim, czego potrzebujesz, już zainstalowanym.

1A. Kliknij ikonę Wi-Fi w prawym górnym rogu ekranu i podłącz Pi do Wi-Fi i zapisz ustawienia

2. Szeregowy na GPIO 14 i 15 jest wyłączony, ponieważ jest używany przez bluetooth. Aby włączyć interfejs szeregowy, musisz dodać poniższe linie do /boot/config.txt musisz to zrobić przez terminal za pomocą sudo nano /boot/config.txt

  • kliknij ikonę terminala (ikona czarnego ekranu) u góry ekranu
  • wpisz sudo nano /boot/config.txt
  • za pomocą strzałek przewiń w dół ekranu i dodaj poniższe linie na dole plików

#wyłącz bluetooth, aby Nextion mógł działać na serialu 0

dtoverlay=pi3-disable-bt enable_uart=1

enable_uart=1

  • Po dodaniu tych wierszy zapisujemy i wychodzimy
  • naciśnij Ctrl x, aby wyjść
  • naciśnij Y, aby zapisać
  • naciśnij [enter], aby zapisać plik

zamknij i usuń pwr z pi

uruchom ponownie.

otwórz terminal i wpisz pinout

będziemy używać GPIO 14 i 15 do komunikacji szeregowej do nextion

Na ekranie zobaczysz, które piny w Raspberrys GPIO to GPIO 14 i 15

3. Wyłącz Pi i podłącz ekran, jak pokazano na załączonym zdjęciu

4. Uruchom ponownie Pi

5. Otwórz terminal i wpisz sudo raspi-config

6. przejdź do opcji interfejsu, następnie serial i włącz port szeregowy i wyłącz powłokę

7. Tab, aby zakończyć

8. Uruchom ponownie jeszcze raz

Krok 4: Pisanie swojego programu w Pythonie

Pisanie swojego programu w Pythonie
Pisanie swojego programu w Pythonie

Wybierz swoje ulubione IDE Pythona i przejdź do kodowania…

Wybrałem Geany, ponieważ był już zainstalowany na obrazie Raspian. Jest również bardzo łatwy w użyciu, a testowanie programu nie mogło być prostsze. Wszystko, co musisz zrobić, to kliknąć ikonę papierowego samolotu u góry ekranu Geany i uruchomić program

Załączam swój program jako przykład. Pomoże to pokazać, jak uzyskać dostęp do portu szeregowego i różnych funkcji ekranu Nextion. Zapraszam do edycji według własnego uznania

Krok 5: Uruchom program po uruchomieniu Raspberry…

Uruchom program, gdy Raspberry uruchamia się…
Uruchom program, gdy Raspberry uruchamia się…

Do tego czasu powinieneś być w stanie uruchomić program na swoim ekranie

Jeśli chcesz mieć możliwość uruchomienia programu zegara raspberry pi bez klawiatury, myszy i ekranu komputera, wykonaj poniższe czynności.

1. dodaj tę linię na początku swojego programu #!/usr/bin/python

2. spraw, aby twój program był wykonywalny, używając polecenia chmod w terminalu.

  • kliknij ikonę folderu u góry ekranu Raspian i przejdź do folderu, w którym znajduje się twój program. Mój znajduje się na pulpicie w folderze o nazwie py
  • Kliknij prawym przyciskiem myszy folder (kliknę prawym przyciskiem myszy folder py i wybierz otwarty terminal)
  • Wpisz polecenie sudo chmod +x, a następnie ścieżkę do programu i kliknij [enter]
  • sudo chmod +x /home/pi/Desktop/py/NazwaProgramu.py
  • po zakończeniu zamknij terminal

3. Teraz przejdź do folderu /etc

4. Kliknij prawym przyciskiem myszy folder etc i wybierz otwórz wewnętrzny

5. W terminalu typu sudo nano rc.local

6. Używając strzałek, przewiń do dołu strony, do linii nad wyjściem 0

7. Dodaj ścieżkę do swojego programu wykonywalnego /home/pi/Desktop/py/NameOfProgram.py

8. Kliknij control + x, aby wyjść, Y, aby zapisać i kliknij [enter]

8a. [EDYTUJ] - Musisz również uczynić plik rc.local wykonywalnym, wpisując sudo chmod a+X rc.local

9. Uruchom ponownie pi, wpisując reboot w terminalu, a po ponownym uruchomieniu program powinien uruchomić się automatycznie:)

Krok 6: Opcjonalne głośniki Bluetooth

Opcjonalne głośniki Bluetooth
Opcjonalne głośniki Bluetooth
Opcjonalne głośniki Bluetooth
Opcjonalne głośniki Bluetooth

Wzmacniacz audio bluetooth był potrzebny, ponieważ wyłączyliśmy bluetooth, aby korzystać z portu szeregowego

Jeśli korzystasz z sugerowanego zasilacza, musisz wyłamać przewody i użyć 5V dla Raspberry i 12V dla wzmacniacza audio bluetooth.

Podłącz zasilanie i głośniki zgodnie z załączonym zdjęciem.

Głośniki, których użyłem, zostały zaczerpnięte ze starej, nieudanej konfiguracji wentylatora / głośnika w łazience Bluetooth

Krok 7: Korzystanie z ThingSpeak

Korzystanie z ThingSpeak
Korzystanie z ThingSpeak

Musisz zarejestrować się na https://thingspeak.com/apps i użyć ThingHTTP

Zacząłem jeden na temp, a drugi na warunki pogodowe tj: słonecznie. mglisto, śnieg…

Podczas konfigurowania ThingHttp będziesz potrzebować adresu URL, aby wysłać żądanie pobrania do

Używam -

Metoda to Get

HTTP wer - 1.0

Ciąg parsowania jest trochę skomplikowany

1. Przejdź do podziemnej witryny pogodowej dla Twojego miasta

2. W google chrome naciśnij F12 (przejdź do kroku 3 lub 3a)

3. Po prawej stronie ekranu znajdź i kliknij ikonę „wybierz element na stronie do sprawdzenia”

3a. Lub zaznacz i kliknij prawym przyciskiem myszy tekst, który chcesz uzyskać, i wybierz „Sprawdź” (przejdź do kroku 5)

4. Teraz podświetl temperaturę

5. Po prawej stronie zobaczysz podświetloną linię - kliknij tę linię prawym przyciskiem myszy, przejdź do kopiowania i wybierz Kopiuj XPath

6. Zapisz to jako ciąg parsowania w konfiguracji thingHTTP

7. Zapisz rzeczHTTP, a otrzymasz link do użycia w programie z kluczem API

8. Skonfiguruj swój link tak, jak mam w programie.

9. Możesz łatwo testować żądania za pomocą programu o nazwie Insomnia, ale to zupełnie inny samouczek..

Zalecana: