Spisu treści:
- Krok 1: Lista części
- Krok 2: Zainstaluj Raspbian i załaduj ekran Nextion
- Krok 3: Uruchom Raspberry Pi i podłącz Nextion
- Krok 4: Pisanie swojego programu w Pythonie
- Krok 5: Uruchom program po uruchomieniu Raspberry…
- Krok 6: Opcjonalne głośniki Bluetooth
- Krok 7: Korzystanie z ThingSpeak
Wideo: Zegar pogodowy Raspi-Nextion: 7 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
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
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
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
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…
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
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
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:
Zegar pogodowy z barometrem Raspberry Pi: 9 kroków (ze zdjęciami)
Zegar pogodowy z barometrem Raspberry Pi: W tej instrukcji pokażę, jak zbudować podstawowy zegar termometru / barometru przy użyciu Raspberry Pi 2 z czujnikiem BMP180 I2C wyświetlającym na 4-cyfrowym 7-segmentowym wyświetlaczu I2C Adafruit. Pi używa również modułu zegara czasu rzeczywistego DS3231 I2C do k
ESP8266 Zegar sieciowy bez zegara RTC - Nodemcu NTP Zegar bez RTC - PROJEKT ZEGAR INTERNETOWY: 4 kroki
ESP8266 Zegar sieciowy bez zegara RTC | Nodemcu NTP Zegar bez RTC | PROJEKT ZEGARA INTERNETOWEGO: W projekcie będzie wykonywany projekt zegara bez RTC, będzie pobierał czas z internetu za pomocą wifi i wyświetli go na wyświetlaczu st7735
Zegar pogodowy: 11 kroków (ze zdjęciami)
Zegar pogodowy: Aktualizacja ze schematem elektrycznym i schematem Fritzing Robię dwie przesłanki: To mój pierwszy InstructableJestem ignorantem włoskim, który nie uczył się angielskiego w szkole i dlatego poprosiłem o pomoc: https://translate.google.itStart z podziękowaniami
Zegar pogodowy: 15 kroków (ze zdjęciami)
Zegar pogodowy: świetnie wyglądający zegar na biurko z datą i; wyświetlacz pogody
ESP8266 Zegar pogodowy: 6 kroków (ze zdjęciami)
Zegar pogodowy ESP8266: Jestem bardzo dumny z twojego przyjazdu i witam cię