Lekcja 4: Czujnik ruchu i przekaźnik
Cel
Wykorzystanie Grove - mini czujnika ruchu PIR do wykrycia ruchu i włączenia światła przy przechodzeniu obok.
Wymaganie sprzętowe
Przygotuj:
- przewód microUSB
- Raspberry Pi 3 Model B
- Komputer
Zawarte w zestawie
- Grove Base Hat
- Grove przewód
- Grove - mini czujnik ruchu PIR
- Grove - przekaźnik
Podłączenie sprzętu
Krok 1 Podłącz Grove - mini czujnik ruchu PIR do portu D5, Grove - przekaźnik do portu D16 na Base Hat.
Krok 2 Podłącz Base Hat do Raspberry Pi.
Krok 3 Podłącz Raspberry Pi do źródła zasilanie za pomocą przewodu microUSB.
Programowanie
Uwaga Upewnij się, że sklonowałeś bibliotekę repozytorium python.py na swoim Raspberry Pi. |
Krok 1: Wpisz poniższe polecenia, aby stworzyć plik Pythona
- cd grove.py
- nano lesson_4.py
Krok 2: Skopiuj poniższy kod:
- #!/usr/bin/env python
- import time
- from grove.grove_mini_pir_motion_sensor import GroveMiniPIRMotionSensor
- from grove.grove_relay import GroveRelay
- def main():
- # Grove - mini PIR motion sensor connected to port D5
- sensor = GroveMiniPIRMotionSensor(5)
- # Grove - Relay connected to port D16
- relay = GroveRelay(16)
- def on_detect():
- print('motion detected')
- relay.on()
- print('relay on')
- time.sleep(1)
- relay.off()
- print('relay off')
- sensor.on_detect = on_detect
- while True:
- time.sleep(1)
- if __name__ == '__main__':
- main()
Krok 3:Uruchom program:
- sudo chmod +x lesson_4.py
- sudo ./lesson_4.py
Jeśli wszystko udało się pomyślnie, to powinieneś zobaczyć, że przekaźnik jest włączony/wyłączony po wykryciu ruchu.
- pi@raspberrypi:~/grove.py $ sudo ./lesson_4.py
- motion detected
- relay on
- relay off
- motion detected
- relay on
- relay off
- ^CTraceback (most recent call last):
- File "./lesson_4.py", line 33, in
main() File "./lesson_4.py", line 30, in main time.sleep(1) KeyboardInterrupt pi@raspberrypi:~/grove.py $