Innholdsfortegnelse:

Slik tar du analoge avlesninger på Raspberry Pi: 5 trinn
Slik tar du analoge avlesninger på Raspberry Pi: 5 trinn

Video: Slik tar du analoge avlesninger på Raspberry Pi: 5 trinn

Video: Slik tar du analoge avlesninger på Raspberry Pi: 5 trinn
Video: The Ascent Test (Deutsch) Krasser Cyberpunk Action RPG Shooter im Review (German, many subtitles) 2024, November
Anonim
Hvordan ta analoge avlesninger på Raspberry Pi
Hvordan ta analoge avlesninger på Raspberry Pi

Hei alle sammen! I denne opplæringen skal jeg vise deg hvordan vi direkte kan fange analoge verdier ved hjelp av Raspberry Pi. Som vi alle vet at Raspberry Pi er en ganske kraftig minidatamodul som er populær blant hobbyfolk og profesjonelle og har nesten alle funksjonene som enhver elektronisk entusiast ønsker. Den eneste ulempen med pi er imidlertid mangelen på en dedikert maskinvare for analog til digital omformer, noe som gjør Pi uegnet for direkte registrering av de analoge verdiene fra en hvilken som helst sensor. Løsningen på dette er å enten bruke en Arduino i forbindelse med Pi eller å bruke en dedikert ADC. For dette prosjektet bruker jeg MCP3204-12 bit ADC.

Rekvisita

  • Raspberry Pi (du kan bruke hvilken som helst modell du har tilgjengelig)
  • MCP3204 ADC eller MCP3008 ADC
  • Analog sensor (jeg bruker et 10K potensiometer i stedet)
  • Brødbrett
  • Jumper Wires

Trinn 1: Ta verdier fra Arduino i stedet …

Tar verdier fra Arduino i stedet…
Tar verdier fra Arduino i stedet…

Et alternativ for å få de analoge verdiene til bringebær pi er å bruke arduino som har en dedikert 10 bit ADC. Arduino og Raspberry Pi kan kommunisere over serieporten for å overføre informasjonen. Denne metoden kan brukes når du eksperimenterer med noen sensordata, og samtidig vil du bruke prosessorkraften til Pi. Ulempen med denne konfigurasjonen er at du vil bruke flere maskinvareressurser og også måtte skrive separate koder for arduino og Pi.

Trinn 2: Bruke en ADC

Bruke ADC
Bruke ADC
Bruke ADC
Bruke ADC

Alternativet til å bruke Arduino som ADC er å bruke en dedikert ADC IC som tjener samme formål. For dette prosjektet bruker jeg MCP3204 IC som er en 4 -kanals 12 -biters ADC som kan kommunisere med Raspberry Pi ved hjelp av SPI -protokollen. Fiendemonstrasjonsformål Jeg skal bruke IC i 10 -bits modus.

Jeg har vedlagt pinout av denne IC som viser pinbeskrivelsen.

Trinn 3: Koble til Raspberry Pi og ADC

Koble til Raspberry Pi og ADC
Koble til Raspberry Pi og ADC
Koble til Raspberry Pi og ADC
Koble til Raspberry Pi og ADC

Nå som vi har sortert maskinvaren, la oss komme inn på tilkoblingsopplegget til ADC og Pi.

Raspberry Pi hadde 2 SPI -grensesnitt: SPI0 og SPI1. For vår applikasjon ville vi bruke SPI0, og vi vil bruke den fysiske (eller maskinvaren) SPI hvor vi kobler ADC til de spesifikke maskinvarespi -pinnene på Pi

Jeg har festet Pinout av Pi og kretsdiagrammet som jeg har brukt i prosjektet

Tilkoblingsordningen er som følger:

  • VDD (Pin14) og Vref (Pin13) til ADC til 5V -forsyningen til Pi
  • DGND (Pin7) og AGND (Pin12) til ADC til bakken av Pi
  • CLK (Pin11) til ADC til GPIO 11 (Physical pin 23) til Pi
  • Dout (Pin10) til ADC til GPIO 9 (fysisk pin 21) til Pi
  • Din (pin 9) til ADC til GPIO 10 (fysisk pin 19) til Pi
  • Chip Select (Pin 8) av ADC til GPIO 8 (Physical pin 24) på Pi

Trinn 4: Sluttoppsett og koden

Sluttoppsett og koden
Sluttoppsett og koden

Nå som alle strøm- og kommunikasjonstilkoblinger er gjort, er det på tide å feste en sensor hvis verdi vi ønsker å se. Jeg bruker et 10K potensiometer som sensor.

Kodene er skrevet i to deler, den første koden handler stort sett om å sette opp bibliotekene, aktivere SPI -kommunikasjonen og deretter hente ADC -verdien fra MCP3204, og deretter skrive den ut på python -terminalen.

Den andre koden er mer interaktiv og lager en graf over sanntidsdataene som kommer fra sensoren.

Du kan leke med koden og gjøre den egnet for dine behov.

Trinn 5: Instruksjonsvideo

Image
Image

Dette er videoen som i detalj beskriver alle nødvendige trinn for å gjennomføre dette prosjektet. Jeg håper dette var nyttig!

Anbefalt: