Sadržaj:

Raspberry Pi GPIO kola: Korištenje LDR analognog senzora bez ADC -a (analogno -digitalni pretvarač): 4 koraka
Raspberry Pi GPIO kola: Korištenje LDR analognog senzora bez ADC -a (analogno -digitalni pretvarač): 4 koraka

Video: Raspberry Pi GPIO kola: Korištenje LDR analognog senzora bez ADC -a (analogno -digitalni pretvarač): 4 koraka

Video: Raspberry Pi GPIO kola: Korištenje LDR analognog senzora bez ADC -a (analogno -digitalni pretvarač): 4 koraka
Video: Как настроить и использовать камеру ESP32 с камерой Micro USB WiFi 2024, Novembar
Anonim
Raspberry Pi GPIO kola: Upotreba LDR analognog senzora bez ADC -a (analogno -digitalni pretvarač)
Raspberry Pi GPIO kola: Upotreba LDR analognog senzora bez ADC -a (analogno -digitalni pretvarač)

U našim ranijim Instructables -ima pokazali smo vam kako možete povezati svoje GPIO pinove Raspberry Pi -a sa LED -ima i prekidačima i kako GPIO pinovi mogu biti visoki ili niski. Ali šta ako želite da koristite svoj Raspberry Pi sa analognim senzorom?

Ako želimo koristiti analogne senzore s Raspberry Pi, morali bismo moći mjeriti otpor senzora. Za razliku od Arduina, GPIO pinovi Raspberry Pi ne mogu mjeriti otpor i mogu osjetiti samo ako je napon koji im se daje iznad određenog napona (približno 2 volta). Da biste riješili ovaj problem, možete upotrijebiti analogno -digitalni pretvarač (ADC) ili umjesto toga relativno jeftin kondenzator.

Ovaj Instructable će vam pokazati kako se to može učiniti.

Korak 1: Šta će vam trebati

Šta će vam trebati
Šta će vam trebati
Šta će vam trebati
Šta će vam trebati
Šta će vam trebati
Šta će vam trebati
Šta će vam trebati
Šta će vam trebati

- RaspberryPi sa već instaliranim Raspbian -om. Takođe ćete morati imati pristup Pi -u pomoću monitora, miša i tastature ili putem udaljene radne površine. Možete koristiti bilo koji model Raspberry Pi. Ako imate jedan od modela Pi Zero, možda ćete htjeti lemiti neke pinove zaglavlja na GPIO port.

- Otpornik ovisan o svjetlu (poznat i kao LDR ili fotootpornik)

- Keramički kondenzator od 1 uF

- Matična ploča za izradu prototipa bez lemljenja

- Neke muške do ženske kratkospojnice

Korak 2: Izgradite svoj krug

Izgradite svoj krug
Izgradite svoj krug
Izgradite svoj krug
Izgradite svoj krug

Izgradite gornji krug na matičnoj ploči pazeći da se niti jedan od dijelova komponenti ne dodiruje. Otpornik ovisan o svjetlosti i keramički kondenzator nemaju polaritet što znači da se negativna i pozitivna struja mogu spojiti na bilo koji od vodiča. Stoga ne morate brinuti o načinu na koji su ove komponente spojene u vašem krugu.

Nakon što provjerite svoj krug, spojite kratkospojne kabele na GPIO pinove vašeg Raspberry Pi -a slijedeći gornji dijagram.

Korak 3: Kreirajte Python skriptu za čitanje otpornika ovisnog o svjetlu

Napravite Python skriptu za čitanje otpornika ovisnog o svjetlu
Napravite Python skriptu za čitanje otpornika ovisnog o svjetlu

Sada ćemo napisati kratku skriptu koja će čitati i prikazivati otpor LDR -a koristeći Python.

Na vašem Raspberry Pi otvorite IDLE (Meni> Programiranje> Python 2 (IDLE)). Otvorite novi projekt idite na Datoteka> Nova datoteka. Zatim upišite (ili kopirajte i zalijepite) sljedeći kod:

uvoz RPi. GPIO kao GPIOimport vremenski okvir = 17 tpin = 27 GPIO.setmode (GPIO. BCM) cap = 0.000001 adj = 2.130620985i = 0 t = 0 dok je True: GPIO.setup (mpin, GPIO. OUT) GPIO.setup (tpin, GPIO. OUT) GPIO.output (mpin, False) GPIO.output (tpin, False) time.sleep (0.2) GPIO.setup (mpin, GPIO. IN) time.sleep (0.2) GPIO.output (tpin, True)) starttime = time.time () endtime = time.time () while (GPIO.input (mpin) == GPIO. LOW): endtime = time.time () mereresistance = endtime-starttime res = (mereresistance/cap)* adj i = i+1 t = t+res ako je i == 10: t = t/i ispis (t) i = 0 t = 0

Sačuvajte svoj projekat kao lightsensor.py (Datoteka> Sačuvaj kao) u fascikli Dokumenti.

Sada otvorite Terminal (Menu> Accessories> Terminal) i upišite sljedeću naredbu:

python lightsensor.py

Raspberry Pi će više puta prikazivati otpor fotootpornika. Ako postavite prst preko fotootpornika, otpor će se povećati. Ako na fotootpornik osvijetlite jako, otpor će se smanjiti. Ovaj program možete zaustaviti pritiskom na CTRL+Z.

Korak 4: Kako to funkcionira

Kako se kondenzator postupno puni, napon koji prolazi kroz krug i do GPIO pina raste. Nakon što se kondenzator napuni do određene točke, njegov napon raste iznad 2 volta i Raspberry Pi će osjetiti da je GPIO pin 13 VISOK.

Ako se otpor senzora poveća, kondenzator će se sporije puniti i krugu će trebati više vremena da dosegne 2 volta.

Gornja skripta u suštini mijenja koliko je potrebno da pin 13 postane visok, a zatim koristi ovo mjerenje za izračunavanje otpora fotootpornika.

Preporučuje se: