temp sensor met zoemer

Les 8: LCD & vochtsensor & zoemer

Hardware-aansluiting

Stap 1 Sluit Grove - 16 * 2 LCD-scherm aan op I2C-poort, Grove - Moisture Sensor op A0-poort en Grove - Buzzer op PWM-poort van Grove Base Hat.

Stap 2 Plaats de Base Hat in de Raspberry Pi.

Stap 3 Gebruik micro-USB om Raspberry Pi met pc te verbinden.

Software programmeren

Stap 1: voer de volgende opdrachten uit om een ​​python-bestand te maken

cd grove.py

nano lesson_8.py

#!/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()

t programma uit

sudo chmod +x lesson_8.py

sudo ./lesson_8.py

. Zoemer wordt gebruikt om mensen te waarschuwen zodra het vochtniveau "nat" wordt.

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, in <module>

main()


File "./lesson_8.py", line 38, in main

time.sleep(1)

KeyboardInterrupt

pi@raspberrypi:~/grove.py $