Simulerade analog/digital omvandlare för RaspberryPi
Det är svårt att få numeriska data i en RaspberryPi genom GPIO eftersom den inte har en analog till digital omvandlare. Detta instructable visar hur då den laddning och urladdning av en kondensator att läsa en resistiv sensor. Demonstrationen använder en fotocell och en force känsliga motstånd att styra ljusstyrkan och blinkningshastighet för en LED, och det visar hur man använder millis() så förändringar ske omedelbart istället för att behöva vänta på delay().
Detta är inte en sann analog till digital omvandlare.
Behöver du en RaspberryPi, en skärbräda, och ett sätt att köra ledningar från RaspberryPi att det set av brödunderläggen. Du kan använda manliga/kvinnliga hoppare ledningar men en av Pi skomakare på denna sida från Adafruit kommer att göra det mycket enklare: http://www.adafruit.com/search?q=cobbler
Behöver du även:
- 5mm rött LED
- 270-560 motstånd *
- 2 0.1uF keramiska kondensatorer http://www.adafruit.com/product/753
- Fotocell http://www.adafruit.com/products/161
- Tvinga känsliga Resistor http://www.adafruit.com/product/166
- 22 gauge hookup wire
* Detta är ett mycket praktiskt sortiment av motstånd https://www.sparkfun.com/products/10969
.
Detta projekt använder wiringPi bibliotek, skriven av Gordon Henderson, för programmering GPIO i C i en titulera lik till Arduino IDE.
wiringPi måste installeras.
Instruktioner för nedladdning, installation och användning finns på http://wiringpi.com
wiringPi använder är det egen pin numreringsschema.
Alla pin-koder som nämns i programmet eller i texten är wiringPi tal om inte annat anges.
Efter installerande wiringPi kan du hämta en lista med pin numrering för din specifika modell av RaspberryPi genom att öppna en terminal kommando och att skriva:
gpio readall
.
Detta är mitt första försök att läsa den tid det tar för att ladda en kondensator. I mitt senaste försök använder jag en bättre metod räknar mikrosekunder istället för tider genom en slinga. Det ger mycket mer stabil resultat: