Kazalo:

Vezja Raspberry Pi GPIO: Uporaba analognega senzorja LDR brez ADC (analogno -digitalni pretvornik): 4 koraki
Vezja Raspberry Pi GPIO: Uporaba analognega senzorja LDR brez ADC (analogno -digitalni pretvornik): 4 koraki

Video: Vezja Raspberry Pi GPIO: Uporaba analognega senzorja LDR brez ADC (analogno -digitalni pretvornik): 4 koraki

Video: Vezja Raspberry Pi GPIO: Uporaba analognega senzorja LDR brez ADC (analogno -digitalni pretvornik): 4 koraki
Video: Spotpear Raspberry Pi PCF8591 expansion board LED GPIO IO test ADC/DCA Sensor Beginner board 2024, Julij
Anonim
Vezja Raspberry Pi GPIO: Uporaba analognega senzorja LDR brez ADC (analogno -digitalni pretvornik)
Vezja Raspberry Pi GPIO: Uporaba analognega senzorja LDR brez ADC (analogno -digitalni pretvornik)

V naših prejšnjih navodilih smo vam pokazali, kako lahko povežete zatiče GPIO svojih Raspberry Pi z LED in stikali ter kako so lahko zatiči GPIO visoki ali nizki. Kaj pa, če želite uporabljati Raspberry Pi z analognim senzorjem?

Če želimo z Raspberry Pi uporabljati analogne senzorje, bi morali biti sposobni izmeriti upor senzorja. Za razliko od Arduina, GPIO zatiči Raspberry Pi ne morejo izmeriti upora in jih lahko zaznajo le, če je napetost, ki se jim dovaja, nad določeno napetostjo (približno 2 volta). Če želite odpraviti to težavo, lahko uporabite analogno -digitalni pretvornik (ADC) ali namesto tega relativno poceni kondenzator.

Ta navodila vam bodo pokazala, kako je to mogoče storiti.

Korak: Kaj boste potrebovali

Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali
Kaj boste potrebovali

- RaspberryPi z že nameščenim Raspbian. Do Pi boste morali dostopati tudi z monitorjem, miško in tipkovnico ali prek oddaljenega namizja. Uporabite lahko kateri koli model Raspberry Pi. Če imate enega od modelov Pi Zero, boste morda želeli spajkati nekaj zatičev glave na vrata GPIO.

- Od svetlobe odvisen upor (znan tudi kot LDR ali fotorezistor)

- Keramični kondenzator 1 uF

- Brezplačna prototipna plošča

- Nekaj moških in ženskih mostičkov

2. korak: Zgradite svoje vezje

Zgradite svoje vezje
Zgradite svoje vezje
Zgradite svoje vezje
Zgradite svoje vezje

Zgradite zgornji tokokrog na svoji plošči in se prepričajte, da se nobena komponenta ne dotika. Svetlobno odvisen upor in keramični kondenzator nimata polarnosti, kar pomeni, da je na oba kabla mogoče priključiti negativni in pozitivni tok. Zato vam ni treba skrbeti, na kakšen način so bile te komponente povezane v vaše vezje.

Ko preverite vezje, priključite mostične kable na GPIO zatiče Raspberry Pi po zgornjem diagramu.

3. korak: Ustvarite Python skript za branje od svetlobe odvisnega upora

Ustvarite skript Python za branje od svetlobe odvisnega upora
Ustvarite skript Python za branje od svetlobe odvisnega upora

Zdaj bomo napisali kratek skript, ki bo prebral in prikaz upora LDR z uporabo Pythona.

Na vašem Raspberry Pi odprite IDLE (Meni> Programiranje> Python 2 (IDLE)). Odprite nov projekt in pojdite na Datoteka> Nova datoteka. Nato vnesite (ali kopirajte in prilepite) naslednjo kodo:

uvoz RPi. GPIO kot GPIOimport timempin = 17 tpin = 27 GPIO.setmode (GPIO. BCM) cap = 0,000001 adj = 2,130620985i = 0 t = 0 medtem ko 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, če je i == 10: t = t/i natisni (t) i = 0 t = 0

Shranite svoj projekt kot lightsensor.py (Datoteka> Shrani kot) v mapo Dokumenti.

Zdaj odprite Terminal (Menu> Accessories> Terminal) in vnesite naslednji ukaz:

python lightsensor.py

Raspberry Pi bo večkrat prikazal upor fotorezistorja. Če postavite prst na foto upor, se bo upor povečal. Če fotorezistorju prižgete močno svetlobo, se bo upor zmanjšal. Ta program lahko ustavite tako, da pritisnete CTRL+Z.

4. korak: Kako deluje

Ko se kondenzator postopoma polni, se napetost, ki prehaja skozi vezje in na pin GPIO, dvigne. Ko je kondenzator napolnjen do določene točke, se njegova napetost dvigne nad 2 volta in Raspberry Pi bo začutil, da je pin 13 GPIO VISOK.

Če se upor senzorja poveča, se bo kondenzator polnil počasneje in vezje bo trajalo več časa, da doseže 2 volta.

Zgornji skript v bistvu poveča, koliko časa traja, da se pin 13 obrne visoko, nato pa uporabi to meritev za izračun upora fotorezistorja.

Priporočena: