Lekce 8: LCD displej, senzor vlhkosti a bzučák

Objektivní

K zobrazení aktuální úrovně vlhkosti použijte displej Grove - LCD16 * 2. Když je vlhkost „mokrá“, Grove - Buzzer vás upozorní.

 

Potřebné vybavení

Připravit:

  • kabel microUSB
  • Raspberry Pi
  • Počítač
  • Grove Base Hat
  • Grove kabel
  • Grove - 16 * 2 LCD displej
  • Grove - snímač vlhkosti
  • Grove - bzučák

 

Hardwarové připojení

Krok 1 Připojte Grove - 16x2 LCD displej k portu I2C, Grove - snímač vlhkosti k portu A0 a Grove - bzučák k PWM portu na Grove Base Hat.

Krok 2 Připojte Base Hat k Raspberry Pi.

Krok 3 Pomocí microUSB připojte Raspberry Pi k počítači.

programování

 

Pozor

Ujistěte se, že klonujete knihovnu úložiště python.py na vašem Raspberry Pi.

Krok 1 : Zadejte následující příkazy a vytvořte soubor Pythonu

 cd grove.py
nano lesson_8.py

Krok 2 : Zkopírujte následující kód

 #! / usr / bin / env python

čas importu
z importu mraa getGpioLookup
z upm import pyupm_buzzer jako upmBuzzer

z importu grove.grove_moisture_sensor GroveMoistureSensor
z grove.lcd.sh1107g import JHD1802

def main ():
    # Grove - 16x2 LCD (bílá na modré) připojené k portu I2C
    lcd = JHD1802 ()

    # Grove - Senzor vlhkosti připojený k portu A0
    senzor = GroveMoistureSensor (0)

    # Grove - bzučák připojený k portu PWM
    bzučák = upmBuzzer.Buzzer (getGpioLookup ('GPIO12'))

    zatímco je pravda:
        mois = senzor. vlhkost
        pokud 0 <= mois a mois <300:
            level = 'suchý'
        elif 300 <= mois a mois <600:
            level = 'vlhký'
        jiný:
            level = 'mokrý'
            buzzer.playSound (upmBuzzer.BUZZER_DO, 200000)

        print ('vlhkost: {}, {}'. format (mois, level))

        lcd.setCursor (0, 0)
        lcd.write ('vlhkost: {0:> 6}'. format (mois))

        lcd.setCursor (1, 0)
        lcd.write ('{0:> 16}'. format (level))

        time.sleep (1)

pokud __name__ == '__main__':
    hlavní ()

Krok 3 : Spusťte program

 sudo chmod + x lesson_8.py
sudo ./lesson_8.py

Pokud vše půjde dobře, bude na LCD obrazovce vidět úroveň vlhkosti. Bzučák odešle upozornění, když úroveň vlhkosti dosáhne „mokré“.

 pi @ raspberrypi: ~ / grove.py $ sudo ./lesson_8.py
vlhkost: 0, suchá
vlhkost: 0, suchá
vlhkost: 396, vlhká
vlhkost: 398, vlhká
vlhkost: 407, vet
vlhkost: 418, vet
^ CTraceback (poslední hovor poslední):
  Soubor "./lesson_8.py", řádek 41, v
    hlavní ()
  Soubor "./lesson_8.py", řádek 38, hlavní
    time.sleep (1)
Přerušení klávesnice
pi @ raspberrypi: ~ / grove.py $

Obsah

zveme vás ke spolupráci!