Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Połączenie sprzętowe
- Krok 2: Włącz interfejs I2C
- Krok 3: Zainstaluj bibliotekę Adafruit Python dla modułu wyświetlacza OLED
- Krok 4: Skrypt Pythona Monitora systemu
- Krok 5: Uruchamianie Stats.py przy starcie
Wideo: System monitorowania Raspberry Pi za pomocą modułu wyświetlacza OLED: 5 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
W tym samouczku wyjaśnię, jak skonfigurować moduł wyświetlacza OLED o przekątnej 0,96 cala do wyświetlania informacji o systemie Raspberry Pi 4 Model B przy użyciu interfejsu I2C.
Kieszonkowe dzieci
Wymagany sprzęt:
- Raspberry Pi 4 Model B
- Moduł wyświetlacza OLED 128×64 (SSD1306)
- Podłączanie przewodów
Krok 1: Połączenie sprzętowe
Poniżej połączenia modułu OLED z Raspberry Pi 4 Model B:
- SDA ==> GPIO 2(pin 3)
- SCL ==> GPIO 3(pin 5)
- VCC ==> 3,3 V (pin 1)
- GND ==> GND (pin 14)
Krok 2: Włącz interfejs I2C
Interfejs I2C jest domyślnie wyłączony, więc musisz go włączyć. Możesz to zrobić w narzędziu raspi-config w wierszu poleceń, uruchamiając:
sudo raspi-config
- Pojawi się niebieski ekran. Teraz wybierz opcję Interfejs.
- Następnie musimy wybrać opcję I2C.
- Następnie musimy wybrać Tak i nacisnąć enter, a następnie ok.
- Następnie musimy ponownie uruchomić Raspberry Pi, wpisując poniższe polecenie:
ponowne uruchomienie sudo
Następujące biblioteki mogą być już zainstalowane, ale mimo to uruchom te polecenia, aby się upewnić:
sudo apt-get zainstaluj python-smbus
sudo apt-get zainstaluj i2c-tools
Aby znaleźć listę urządzeń podłączonych do magistrali I2C na Raspberry Pi, możesz użyć następującego polecenia:
sudo i2cdetect -y 1
Na starszym Raspberry Pi wpisz następujące polecenie:
sudo i2cdetect -y 0
Oto dane wyjściowe, które widzę na moim Raspberry Pi 4 Model B:
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- 3c -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Okazało się, że urządzenie zostało wykryte z adresem 0x3c. Jest to domyślny adres szesnastkowy dla tego typu urządzenia.
Krok 3: Zainstaluj bibliotekę Adafruit Python dla modułu wyświetlacza OLED
Aby zainstalować bibliotekę, sklonujemy repozytorium git Adafruit.
git klon
Po zakończeniu przejdź do katalogu biblioteki:
cd Adafruit_Python_SSD1306
i zainstaluj bibliotekę dla Pythona 2:
sudo python setup.py zainstalować
lub dla Pythona 3:
sudo python3 setup.py zainstalować
Krok 4: Skrypt Pythona Monitora systemu
Przejdź do katalogu przykładów:
przykłady cd
W tym folderze powinieneś znaleźć przykładowy skrypt:
stats.py
python3 stats.py
Domyślnie pokazuje użycie pamięci, użycie dysku, obciążenie procesora i adres IP. Widoczny jest również prefiks b przed każdym ciągiem.
Zostanie on nieco zmodyfikowany w celu usunięcia prefiksu b i dodania temperatury procesora Raspberry Pi 4 Model B.
cmd = "nazwa hosta -I | cut -d\' \' -f1"
zostanie zastąpiony następującym wierszem:
cmd = "nazwa hosta -I |cut -f 2 -d ' '"
Ten kod jest idealny podczas uruchamiania, gdy chcesz znaleźć adres IP swojego Raspberry Pi dla SSH lub VNC.
Następujące wiersze zostaną dodane, aby pokazać temperaturę procesora na module wyświetlacza OLED:
cmd = "vcgencmd Measure_temp |cut -f 2 -d '='"
temp = subprocess.check_output (cmd, powłoka = prawda)
Poniższy kod został odpowiednio zmodyfikowany, aby usunąć znak „b” z wyświetlacza OLED.
draw.text((x, top), "IP: " + str(IP, 'utf-8'), font=font, fill=255) draw.text((x, top+8), str(CPU, 'utf-8') + " " + str(temp, 'utf-8'), font=font, fill=255) draw.text((x, top+16), str(MemUsage, 'utf-8'), font=font, fill=255) draw.text((x, top+25), str(dysk, 'utf-8'), font=font, fill=255)
Na koniec powinieneś zobaczyć coś podobnego do następującego wyjścia na wyświetlaczu OLED:
Krok 5: Uruchamianie Stats.py przy starcie
Możesz to łatwo zrobić, aby ten program działał przy każdym uruchomieniu Raspberry Pi.
Najszybszym i najłatwiejszym sposobem jest umieszczenie go w /etc/rc.local. Uruchom poniższe polecenie na terminalu:
sudo nano /etc/rc.local
Przewiń w dół i tuż przed linią wyjścia 0 wpisz:
sudo python /home/pi/stats.py &
- Zapisz i wyjdź.
- Uruchom ponownie, aby sprawdzić, czy ekran pojawia się podczas uruchamiania!
Zalecana:
System monitorowania i kontroli wilgotności gleby oparty na IoT za pomocą NodeMCU: 6 kroków
System monitorowania i kontroli wilgotności gleby oparty na IoT przy użyciu NodeMCU: W tym samouczku zaimplementujemy system monitorowania i kontroli wilgotności gleby oparty na IoT przy użyciu modułu WiFi ESP8266, tj. NodeMCU. Moduł przekaźnika INR – Amazon (130/- INR
Wyświetlacz LCD I2C / IIC - Użyj SPI LCD do wyświetlacza LCD I2C za pomocą modułu SPI to IIC z Arduino: 5 kroków
Wyświetlacz LCD I2C / IIC | Użyj SPI LCD do wyświetlacza LCD I2C Używanie modułu SPI to IIC z Arduino: Cześć chłopaki, ponieważ normalny SPI LCD 1602 ma zbyt wiele przewodów do podłączenia, więc bardzo trudno jest połączyć go z arduino, ale na rynku dostępny jest jeden moduł, który może przekonwertuj wyświetlacz SPI na wyświetlacz IIC, więc musisz podłączyć tylko 4 przewody
Samouczek modułu wyświetlacza matrycowego 4 w 1 MAX7219 za pomocą Arduino UNO: 5 kroków
Samouczek modułu wyświetlacza punktowego 4 w 1 MAX7219 za pomocą Arduino UNO: Opis: Szukasz łatwej w obsłudze matrycy LED? Ten moduł wyświetlacza punktowego 4 w 1 powinien być dla Ciebie odpowiedni. Cały moduł jest dostarczany w czterech matrycach punktowych 8x8 RED ze wspólną katodą, każdy wyposażony w układ scalony MAX7219. Świetnie wyświetla bieżący tekst
Bezprzewodowy pilot za pomocą modułu 2,4 Ghz NRF24L01 z Arduino - Nrf24l01 4-kanałowy / 6-kanałowy nadajnik-odbiornik do quadkoptera - Helikopter RC - Samolot zdalnie sterowany za pomocą Arduino: 5 kroków (ze zdjęciami)
Bezprzewodowy pilot za pomocą modułu 2,4 Ghz NRF24L01 z Arduino | Nrf24l01 4-kanałowy / 6-kanałowy nadajnik-odbiornik do quadkoptera | Helikopter RC | Samolot RC przy użyciu Arduino: obsługa samochodu RC | Quadkopter | Dron | Samolot RC | Łódź RC, zawsze potrzebujemy odbiornika i nadajnika, załóżmy, że do RC QUADCOPTER potrzebujemy 6-kanałowy nadajnik i odbiornik, a ten typ TX i RX jest zbyt drogi, więc zrobimy go na naszym
Samouczek modułu E32-433T LoRa - DIY Breakout Board dla modułu E32: 6 kroków
Samouczek modułu E32-433T LoRa | DIY Breakout Board dla modułu E32: Hej, co słychać, chłopaki! Akarsh tutaj z CETech. Ten mój projekt jest bardziej krzywą uczenia się, aby zrozumieć działanie modułu E32 LoRa firmy eByte, który jest 1-watowym modułem nadawczo-odbiorczym o dużej mocy. Kiedy zrozumiemy działanie, mam projekt