Lekcja 3: Czujnik światła

 

Cel

W tej lekcji dowiesz się, jak korzystać z Grove - czujnik światła, aby kontrolować nim Grove - Serwo. W tym przypadku kąt obrotu serwa zmienia się w zależności od natężenia światła.

 

Wymaganie sprzętowe

Przygotuj:

  • przewód microUSB
  • Raspberry Pi 3 Model B
  • Komputer

Zawarte w zestawie

  • Grove Base Hat
  • Grove przewód
  • Grove - czujnik światła
  • Grove - Serwo

 

Podłączenie sprzętu

Krok 1 Podłącz Grove - czujnik światła do portu A0,Grove - Serwo do portu PWM.

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

Krok 1: Wpisz poniższe polecenia, aby stworzyć plik Pythona:

  

cd grove.py
nano lesson_3.py

 

Krok 2: Skopiuj poniższy kod:

 

#!/usr/bin/env python

import time

from grove.grove_servo import GroveServo
from grove.grove_light_sensor_v1_2 import GroveLightSensor

def main():
    # Grove - Servo connected to PWM port
    servo = GroveServo(12)

    # Grove - Light Sensor connected to port A0
    sensor = GroveLightSensor(0)

    while True:
        angle = sensor.light * 180 / 1000
        print('light value {}, turn to {} degree.'.format(sensor.light, angle))
        servo.setAngle(angle)

        time.sleep(1)

if __name__ == '__main__':
    main()

 

Krok 3:Uruchom program:

 

sudo chmod +x lesson_3.py
sudo ./lesson_3.py

  

Jeśli wszystko się powiodło, to zmiana natężenia światła będzie powodować zmianą kąta obrotu serwomechanizmu.

pi@raspberrypi:~/grove.py $ sudo ./lesson_3.py
light value 300, turn to 113 degree.
light value 80, turn to 80 degree.
light value 166, turn to 165 degree.
light value 498, turn to 132 degree.
light value 601, turn to 60 degree.
light value 200, turn to 21 degree.
light value 459, turn to 99 degree.
light value 172, turn to 173 degree.
light value 319, turn to 138 degree.
^CTraceback (most recent call last):
  File "./lesson3.py", line 23, in 
    main()
  File "./lesson3.py", line 20, in main
    time.sleep(1)
KeyboardInterrupt
pi@raspberrypi:~/grove.py $ 

  

Spis treści

zapraszamy do współpracy!