Turinys:

„Raspberry Pi“stebėjimo sistema per OLED ekrano modulį: 5 žingsniai
„Raspberry Pi“stebėjimo sistema per OLED ekrano modulį: 5 žingsniai

Video: „Raspberry Pi“stebėjimo sistema per OLED ekrano modulį: 5 žingsniai

Video: „Raspberry Pi“stebėjimo sistema per OLED ekrano modulį: 5 žingsniai
Video: Leap Motion SDK 2024, Lapkritis
Anonim
„Raspberry Pi“stebėjimo sistema per OLED ekrano modulį
„Raspberry Pi“stebėjimo sistema per OLED ekrano modulį

Šioje pamokoje paaiškinsiu, kaip sukonfigūruoti 0,96 colio OLED ekrano modulį, kad būtų rodoma „Raspberry Pi 4“modelio B sistemos informacija, naudojant jos I2C sąsają.

Prekės

Reikalinga aparatūra:

  • Raspberry Pi 4 B modelis
  • 128 × 64 OLED ekrano modulis (SSD1306)
  • Laidų prijungimas

1 žingsnis: aparatinės įrangos prijungimas

Techninės įrangos ryšys
Techninės įrangos ryšys

Žemiau pateikiamos OLED modulio jungtys su „Raspberry Pi 4 B“modeliu:

  • SDA ==> GPIO 2 (3 kontaktas)
  • SCL ==> GPIO 3 (5 kontaktas)
  • VCC ==> 3.3V (1 kaištis)
  • GND ==> GND (14 kaištis)

2 veiksmas: įgalinkite „I2C“sąsają

„I2C“sąsaja pagal nutylėjimą yra išjungta, todėl turite ją įjungti. Tai galite padaryti naudodami komandų eilutės raspi-config įrankį paleisdami:

sudo raspi-config

  1. Bus rodomas mėlynas ekranas. Dabar pasirinkite sąsajos parinktį.
  2. Po to turime pasirinkti I2C parinktį.
  3. Po to turime pasirinkti Taip ir paspausti enter, tada gerai.
  4. Po to turime iš naujo paleisti Raspberry Pi, įvesdami žemiau esančią komandą:

sudo perkraukite

Šios bibliotekos jau gali būti įdiegtos, tačiau vis tiek paleiskite šias komandas, kad įsitikintumėte:

sudo apt-get įdiegti python-smbus

sudo apt-get install i2c-tools

Norėdami rasti įrenginių, prijungtų prie „I2C“magistralės, sąrašą „Raspberry Pi“, galite naudoti šią komandą:

sudo i2cdetect -y 1

Senesnėje „Raspberry Pi“įveskite šią komandą:

sudo i2cdetect -y 0

Štai mano Raspberry Pi 4 B modelio išvestis:

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: -- -- -- -- -- -- -- --

Tai parodė, kad įrenginys buvo aptiktas 0x3c adresu. Tai numatytasis šio tipo įrenginio šešioliktainis adresas.

3 veiksmas: įdiekite „Adafruit Python“biblioteką OLED ekrano moduliui

Norėdami įdiegti biblioteką, mes klonuosime „Adafruit git“saugyklą.

git klonas

Baigę eikite į bibliotekos katalogą:

cd „Adafruit_Python_SSD1306“

ir įdiekite „Python 2“biblioteką:

sudo python setup.py įdiegti

arba „Python 3“:

sudo python3 setup.py įdiegti

4 veiksmas: sistemos stebėjimo „Python“scenarijus

Sistemos stebėjimo „Python“scenarijus
Sistemos stebėjimo „Python“scenarijus

Eikite į pavyzdžių katalogą:

cd pavyzdžiai

Šiame aplanke turėtumėte rasti scenarijaus pavyzdį:

statistika.py

python3 stats.py

Pagal numatytuosius nustatymus jis rodo atminties naudojimą, disko naudojimą, procesoriaus apkrovą ir IP adresą. Be to, prieš kiekvieną eilutę galima pamatyti b-priešdėlį.

Jis bus šiek tiek pakeistas, kad būtų pašalintas „b“priešdėlis ir pridėta „Raspberry Pi 4 Model B“procesoriaus temperatūra.

cmd = "pagrindinio kompiuterio pavadinimas -I | supjaustyti -d / '\' -f1"

bus pakeista tokia eilute:

cmd = "pagrindinio kompiuterio pavadinimas -I | supjaustyti -f 2 -d ''"

Šis kodas puikiai tinka paleidžiant, kai norite rasti „Raspberry Pi“IP adresą SSH arba VNC.

Šios eilutės bus pridėtos, kad būtų rodoma procesoriaus temperatūra OLED ekrano modulyje:

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

temp = subprocess.check_output (cmd, apvalkalas = tiesa)

Žemiau pateiktas kodas buvo atitinkamai pakeistas, kad būtų pašalintas „b“simbolis iš OLED ekrano.

draw.text ((x, viršuje), "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 (Disk, 'utf-8'), font = font, fill = 255)

Galiausiai turėtumėte pamatyti kažką panašaus į šį išvestį OLED ekrane:

5 veiksmas: paleiskite „Stats.py“paleidžiant

Galite lengvai tai padaryti, kad ši programa veiktų kiekvieną kartą paleidus „Raspberry Pi“.

Greičiausias ir lengviausias būdas yra įdėti jį į /etc/rc.local. Paleiskite žemiau esančią komandą terminale:

sudo nano /etc/rc.local

Slinkite žemyn ir prieš pat išėjimo 0 eilutę įveskite:

sudo python /home/pi/stats.py &

  • Išsaugoti ir išeiti.
  • Perkraukite, kad patikrintumėte, ar ekranas pasirodo įkrovos metu!

Rekomenduojamas: