Talaan ng mga Nilalaman:

Raspberry Pi Monitoring System Sa pamamagitan ng OLED Display Module: 5 Hakbang
Raspberry Pi Monitoring System Sa pamamagitan ng OLED Display Module: 5 Hakbang

Video: Raspberry Pi Monitoring System Sa pamamagitan ng OLED Display Module: 5 Hakbang

Video: Raspberry Pi Monitoring System Sa pamamagitan ng OLED Display Module: 5 Hakbang
Video: BTT SKR2 -Klipper Firmware Install 2024, Nobyembre
Anonim
Raspberry Pi Monitoring System Sa pamamagitan ng OLED Display Module
Raspberry Pi Monitoring System Sa pamamagitan ng OLED Display Module

Sa tutorial na ito ipapaliwanag ko kung paano mag-setup ng 0.96 inch OLED display module para sa pagpapakita ng impormasyon ng system ng Raspberry Pi 4 Model B gamit ang interface ng I2C.

Mga gamit

Kinakailangan ang Hardware:

  • Raspberry Pi 4 Model B
  • 128 × 64 OLED display module (SSD1306)
  • Mga Koneksyon sa Mga Wires

Hakbang 1: Koneksyon sa Hardware

Koneksyon sa Hardware
Koneksyon sa Hardware

Nasa ibaba ang mga koneksyon ng OLED module sa Raspberry Pi 4 Model B:

  • SDA ==> GPIO 2 (pin 3)
  • SCL ==> GPIO 3 (pin 5)
  • VCC ==> 3.3V (pin 1)
  • GND ==> GND (pin 14)

Hakbang 2: Paganahin ang I2C Interface

Ang interface ng I2C ay hindi pinagana bilang default kaya kailangan mong paganahin ito. Maaari mong gawin ito sa loob ng tool ng raspi-config sa linya ng utos sa pamamagitan ng pagpapatakbo:

sudo raspi-config

  1. Lilitaw ang isang asul na screen. Piliin ngayon ang pagpipiliang Interfacing.
  2. Pagkatapos nito, kailangan naming pumili ng pagpipilian ng I2C.
  3. Pagkatapos nito, kailangan naming pumili ng Oo at pindutin ang enter at pagkatapos ay ok.
  4. Pagkatapos nito, kailangan naming i-reboot ang Raspberry Pi sa pamamagitan ng pag-type sa ibaba ng utos:

sudo reboot

Ang mga sumusunod na aklatan ay maaaring na-install na ngunit patakbuhin ang mga utos na ito upang matiyak na:

sudo apt-get install python-smbus

sudo apt-get install i2c-tool

Upang makahanap ng isang listahan ng mga aparato na nakakonekta sa I2C bus sa Raspberry Pi maaari mong gamitin ang sumusunod na utos:

sudo i2cdetect -y 1

Sa mas matandang Raspberry Pi i-type ang sumusunod na utos:

sudo i2cdetect -y 0

Narito ang output na nakikita ko sa aking 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: -- -- -- -- -- -- -- --

Ipinakita nito na napansin ang aparato na may isang address na 0x3c. Ito ang default na hex address para sa ganitong uri ng aparato.

Hakbang 3: I-install ang Adafruit Python Library para sa OLED Display Module

Upang mai-install ang library ay i-clone namin ang Adafruit git repository.

git clone

Kapag nakumpleto ang pag-navigate sa direktoryo ng library:

cd Adafruit_Python_SSD1306

at i-install ang library para sa Python 2:

sudo python setup.py install

o para sa Python 3:

sudo python3 setup.py install

Hakbang 4: System Monitor Python Script

System Monitor Python Script
System Monitor Python Script

Mag-navigate sa direktoryo ng mga halimbawa:

mga halimbawa ng cd

Sa folder na ito dapat mong makita ang halimbawa ng script:

stats.py

python3 stats.py

Bilang default ipinapakita nito ang paggamit ng memorya, paggamit ng disk, pag-load ng CPU at ip address. Gayundin, ang b-unlapi sa harap ng bawat mga string ay makikita.

Ito ay bahagyang mababago upang mapupuksa ang b-nauna at magdagdag ng temperatura ng CPU ng Raspberry Pi 4 Model B din.

cmd = "hostname -ako | cut -d / '\' -f1"

papalitan ng sumusunod na linya:

cmd = "hostname -ako | cut -f 2 -d ''"

Ang code na ito ay perpekto sa boot kapag nais mong hanapin ang IP address ng iyong Raspberry Pi para sa SSH o VNC.

Ang mga sumusunod na linya ay idaragdag upang maipakita ang temperatura ng CPU sa OLED display module:

cmd = "vcgencmd measure_temp | cut -f 2 -d '='"

temp = subprocess.check_output (cmd, shell = True)

Sa ibaba ang code ay nabago nang naaayon upang alisin ang character na 'b' mula sa pagpapakita ng OLED.

draw.text ((x, itaas), "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, itaas + 16), str (MemUsage, 'utf-8'), font = font, fill = 255) draw.text ((x, itaas + 25), str (Disk, 'utf-8'), font = font, fill = 255)

Sa wakas, dapat mong makita ang isang bagay na katulad sa sumusunod na output sa OLED display:

Hakbang 5: Pagpapatakbo ng Stats.py sa Startup

Madali mong magagawa ito kaya tumatakbo ang program na ito sa tuwing nai-boot mo ang iyong Raspberry Pi.

Ang pinakamabilis at pinakamadaling paraan ay upang ilagay ito sa /etc/rc.local. Patakbuhin ang bellow na utos sa terminal:

sudo nano /etc/rc.local

Mag-scroll pababa, at bago ang linya ng exit 0, ipasok ang sumusunod:

sudo python /home/pi/stats.py &

  • Makatipid at lumabas.
  • I-reboot upang ma-verify na ang screen ay darating sa boot!

Inirerekumendang: