Lekcja 8: Wyświetlacz LCD & Czujnik wilgoci & Buzzer
Cel
Wykorzystaj Grove - wyświetlacz LCD16 * 2, aby wyświetlić obecny poziom wilgoci. Gdy poziom wilgoci wynosi "mokry", Grove - Buzzer zawiadomi Cię o tym.
Wymagany sprzęt
Przygotuj:
- przewód microUSB
- Raspberry Pi
- Komputer
- Grove Base Hat
- Grove przewód
- Grove - Wyświetlacz LCD 16*2
- Grove - Czujnik wilgoci
- Grove - Buzzer
Podłączenie sprzętu
Krok 1 Podłącz Grove - Wyświetlacz LCD 16x2 do portu I2C, Grove - Czujnik wilgoci do portu A0 oraz Grove - Buzzer do portu PWM na Grove Base Hat.
Krok 2 Podepnij Base Hat do Raspberry Pi.
Krok 3 Wykorzystaj microUSB, aby podłączyć Raspberry Pi do komputera.
Programowanie
Uwaga Upewnij się, aby sklonować bibliotekę repozytorium python.py na swoim Raspberry Pi. |
Krok 1: Wpisz następujące polecenia, aby stworzyć plik Pythona
cd grove.py nano lesson_8.py
Krok 2:Skopiuj następujący kod
#!/usr/bin/env python import time from mraa import getGpioLookup from upm import pyupm_buzzer as upmBuzzer from grove.grove_moisture_sensor import GroveMoistureSensor from grove.lcd.sh1107g import JHD1802 def main(): # Grove - 16x2 LCD(White on Blue) connected to I2C port lcd = JHD1802() # Grove - Moisture Sensor connected to port A0 sensor = GroveMoistureSensor(0) # Grove - Buzzer connected to port PWM buzzer = upmBuzzer.Buzzer(getGpioLookup('GPIO12')) while True: mois = sensor.moisture if 0 <= mois and mois < 300: level = 'dry' elif 300 <= mois and mois < 600: level = 'moist' else: level = 'wet' buzzer.playSound(upmBuzzer.BUZZER_DO, 200000) print('moisture: {}, {}'.format(mois, level)) lcd.setCursor(0, 0) lcd.write('moisture: {0:>6}'.format(mois)) lcd.setCursor(1, 0) lcd.write('{0:>16}'.format(level)) time.sleep(1) if __name__ == '__main__': main()
Krok 3:Uruchom program
sudo chmod +x lesson_8.py sudo ./lesson_8.py
Jeśli wszystko pójdzie pomyślnie, poziom wilgoci będzie widoczny na ekranie LCD. Buzzer będzie wysyłać ostrzeżenia, gdy poziom wilgoci osiągnie „mokro”.
pi@raspberrypi:~/grove.py $ sudo ./lesson_8.py moisture: 0, dry moisture: 0, dry moisture: 396, moist moisture: 398, moist moisture: 407, wet moisture: 418, wet ^CTraceback (most recent call last): File "./lesson_8.py", line 41, inmain() File "./lesson_8.py", line 38, in main time.sleep(1) KeyboardInterrupt pi@raspberrypi:~/grove.py $
Spis treści
|