Lektion 8: LCD-Display & Feuchtigkeitssensor & Summer

Zielsetzung

Verwenden Sie das Grove - LCD16 * 2-Display, um den aktuellen Feuchtigkeitsgehalt anzuzeigen. Wenn der Feuchtigkeitsgrad "nass" ist, werden Sie von Grove - Buzzer benachrichtigt.

 

Benötigte Ausrüstung

Vorbereiten:

  • microUSB-Kabel
  • Himbeer-Pi
  • Computer
  • Grove-Base-Hut
  • Grove-Schnur
  • Grove - 16 * 2 LCD-Anzeige
  • Grove - Feuchtigkeitssensor
  • Grove - Summer

 

Hardware-Verbindung

Schritt 1 Schließen Sie Grove – 16x2 LCD-Display an den I2C-Anschluss, Grove – Feuchtigkeitssensor an den A0-Anschluss und Grove – Buzzer an den PWM-Anschluss am Grove Base Hat an.

Schritt 2 Verbinden Sie den Base Hat mit dem Raspberry Pi.

Schritt 3 Verwenden Sie microUSB, um den Raspberry Pi mit dem Computer zu verbinden.

Programmierung

 

Beachtung

Stellen Sie sicher, dass Sie die Repository-Bibliothek python.py auf Ihrem Raspberry Pi klonen.

Schritt 1 : Geben Sie die folgenden Befehle ein, um eine Python-Datei zu erstellen

 cd grove.py
Nano-Lektion_8.py

Schritt 2 : Kopieren Sie den folgenden Code

 #! / usr / bin / env python

Importzeit
aus mraa import getGpioLookup
aus upm importiere pyupm_buzzer als upmBuzzer

aus grove.grove_moisture_sensor import GroveMoistureSensor
aus grove.lcd.sh1107g importieren Sie JHD1802

def main ():
    # Grove - 16x2 LCD (Weiß auf Blau), verbunden mit dem I2C-Port
    LCD = JHD1802 ()

    # Grove – Feuchtigkeitssensor an Anschluss A0 angeschlossen
    Sensor = GroveMoistureSensor (0)

    # Grove - Summer an PWM-Port angeschlossen
    Summer = upmBuzzer.Buzzer (getGpioLookup ('GPIO12'))

    während wahr:
        mois = sensor.feuchte
        wenn 0 <= mois und mois <300:
            level = 'trocken'
        elif 300 <= mois und mois <600:
            level = 'feucht'
        anders:
            level = 'nass'
            buzzer.playSound (upmBuzzer.BUZZER_DO, 200000)

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

        lcd.setCursor (0, 0)
        lcd.write ('Feuchtigkeit: {0:> 6}'. Format (mois))

        lcd.setCursor (1, 0)
        lcd.write ('{0:> 16}'. Format (Ebene))

        time.sleep (1)

if __name__ == '__main__':
    hauptsächlich ()

Schritt 3 : Führen Sie das Programm aus

 sudo chmod + x Lektion_8.py
sudo ./lektion_8.py

Wenn alles gut geht, wird der Feuchtigkeitsgehalt auf dem LCD-Bildschirm angezeigt. Der Summer sendet Warnungen, wenn der Feuchtigkeitsgehalt "nass" erreicht.

 pi @ raspberrypi: ~ / grove.py $ sudo ./lektion_8.py
Feuchtigkeit: 0, trocken
Feuchtigkeit: 0, trocken
Feuchtigkeit: 396, feucht
Feuchtigkeit: 398, feucht
Feuchtigkeit: 407, nass
Feuchtigkeit: 418, nass
^ CTraceback (letzter Aufruf zuletzt):
  Datei "./lektion_8.py", Zeile 41, in
    hauptsächlich ()
  Datei "./lesson_8.py", Zeile 38, im Hauptteil
    time.sleep (1)
KeyboardInterrupt
pi @ himbeerpi: ~ / grove.py $

Inhalt

Wir freuen uns auf die Zusammenarbeit mit Ihnen!