Obsah:

Obvody Raspberry Pi GPIO: Použití analogového snímače LDR bez ADC (převodník analogového signálu na digitální): 4 kroky
Obvody Raspberry Pi GPIO: Použití analogového snímače LDR bez ADC (převodník analogového signálu na digitální): 4 kroky

Video: Obvody Raspberry Pi GPIO: Použití analogového snímače LDR bez ADC (převodník analogového signálu na digitální): 4 kroky

Video: Obvody Raspberry Pi GPIO: Použití analogového snímače LDR bez ADC (převodník analogového signálu na digitální): 4 kroky
Video: Raspberry Pi Pico for Robotics 2024, Červenec
Anonim
Obvody Raspberry Pi GPIO: Použití analogového snímače LDR bez ADC (převodník analogového signálu na digitální)
Obvody Raspberry Pi GPIO: Použití analogového snímače LDR bez ADC (převodník analogového signálu na digitální)

V našich dřívějších instruktážích jsme vám ukázali, jak můžete propojit GPIO piny vašeho Raspberry Pi s LED a přepínači a jak mohou být GPIO piny vysoké nebo nízké. Ale co když chcete používat svůj Raspberry Pi s analogovým senzorem?

Pokud chceme s Raspberry Pi používat analogové senzory, potřebovali bychom umět změřit odpor senzoru. Na rozdíl od Arduina nejsou GPIO piny Raspberry Pi schopny měřit odpor a mohou vnímat pouze tehdy, pokud je napětí, které je do nich přiváděno, vyšší než určité napětí (přibližně 2 volty). Chcete -li tento problém vyřešit, můžete použít převodník analogového signálu na digitální (ADC) nebo místo toho použít relativně levný kondenzátor.

Tento Instructable vám ukáže, jak to lze provést.

Krok 1: Co budete potřebovat

Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat

- RaspberryPi s již nainstalovaným Raspbianem. Budete také muset mít přístup k Pi pomocí monitoru, myši a klávesnice nebo prostřednictvím vzdálené plochy. Můžete použít jakýkoli model Raspberry Pi. Pokud máte jeden z modelů Pi Zero, možná budete chtít připájet některé kolíkové kolíky k portu GPIO.

- Rezistor závislý na světle (také známý jako LDR nebo fotorezistor)

- Keramický kondenzátor 1 uF

- Bezpájecí prototypovací prkénko

- Některé propojovací vodiče mezi muži a ženami

Krok 2: Vybudujte si obvod

Vybudujte si svůj obvod
Vybudujte si svůj obvod
Vybudujte si svůj obvod
Vybudujte si svůj obvod

Vybudujte výše uvedený obvod na prkénku a ujistěte se, že se žádný z vodičů komponent nedotýká. Odpor závislý na světle a keramický kondenzátor nemají polaritu, což znamená, že k oběma vodičům lze připojit záporný a kladný proud. Proto si nemusíte dělat starosti s tím, jakým způsobem byly tyto komponenty ve vašem obvodu připojeny.

Jakmile zkontrolujete svůj obvod, připojte propojovací kabely k pinům GPIO vašeho Raspberry Pi podle výše uvedeného schématu.

Krok 3: Vytvořte skript Pythonu pro čtení rezistoru závislého na světle

Vytvořte skript Pythonu pro čtení rezistoru závislého na světle
Vytvořte skript Pythonu pro čtení rezistoru závislého na světle

Nyní napíšeme krátký skript, který bude číst a zobrazovat odpor LDR pomocí Pythonu.

Na svém Raspberry Pi otevřete IDLE (Nabídka> Programování> Python 2 (IDLE)). Otevřete nový projekt, přejděte na Soubor> Nový soubor. Poté zadejte (nebo zkopírujte a vložte) následující kód:

import RPi. GPIO jako GPIOimport timempin = 17 tpin = 27 GPIO.setmode (GPIO. BCM) cap = 0,000001 adj = 2,130620985i = 0 t = 0 while 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 () měřitelná odolnost = endtime-starttime res = (měřicí odpor/čepice)* adj i = i+1 t = t+res if i == 10: t = t/i tisk (t) i = 0 t = 0

Uložte svůj projekt jako lightsensor.py (Soubor> Uložit jako) do složky Dokumenty.

Nyní otevřete Terminál (Nabídka> Příslušenství> Terminál) a zadejte následující příkaz:

python lightsensor.py

Raspberry Pi bude opakovaně zobrazovat odpor fotorezistoru. Pokud umístíte prst na fotorezistor, odpor se zvýší. Pokud na fotorezistor zazáříte jasným světlem, odpor se sníží. Spuštění tohoto programu můžete zastavit stisknutím kláves CTRL+Z.

Krok 4: Jak to funguje

Jak se kondenzátor postupně nabíjí, napětí, které prochází obvodem a ke kolíku GPIO, stoupá. Jakmile je kondenzátor nabitý do určitého bodu, jeho napětí stoupne nad 2 volty a Raspberry Pi bude cítit, že GPIO pin 13 je VYSOKÝ.

Pokud se odpor snímače zvýší, kondenzátor se bude nabíjet pomaleji a obvodu bude trvat déle, než dosáhne 2 voltů.

Výše uvedený skript v podstatě krátí, jak dlouho trvá, než se pin 13 otočí na High, a poté použije toto měření k výpočtu odporu fotorezistoru.

Doporučuje: