Open form

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

   

  1. cd grove.py
  2. nano lesson_4.py

 

Krok 2: Skopiuj poniższy kod:

 

  1. #!/usr/bin/env python
  2.  
  3. import time
  4.  
  5. from grove.grove_mini_pir_motion_sensor import GroveMiniPIRMotionSensor
  6. from grove.grove_relay import GroveRelay
  7.  
  8. def main():
  9. # Grove - mini PIR motion sensor connected to port D5
  10. sensor = GroveMiniPIRMotionSensor(5)
  11.  
  12. # Grove - Relay connected to port D16
  13. relay = GroveRelay(16)
  14.  
  15. def on_detect():
  16. print('motion detected')
  17.  
  18. relay.on()
  19. print('relay on')
  20.  
  21. time.sleep(1)
  22.  
  23. relay.off()
  24. print('relay off')
  25.  
  26. sensor.on_detect = on_detect
  27.  
  28. while True:
  29. time.sleep(1)
  30.  
  31. if __name__ == '__main__':
  32. main()

 

Krok 3:Uruchom program:

 

  1. sudo chmod +x lesson_4.py
  2. 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.

 

  1. pi@raspberrypi:~/grove.py $ sudo ./lesson_4.py
  2. motion detected
  3. relay on
  4. relay off
  5. motion detected
  6. relay on
  7. relay off
  8. ^CTraceback (most recent call last):
  9. File "./lesson_4.py", line 33, in
  10. main()
  11. File "./lesson_4.py", line 30, in main
  12. time.sleep(1)
  13. KeyboardInterrupt
  14. pi@raspberrypi:~/grove.py $

  

   

Spis treści

zapraszamy do współpracy!