Indholdsfortegnelse:

Sådan foretages analoge aflæsninger på Raspberry Pi: 5 trin
Sådan foretages analoge aflæsninger på Raspberry Pi: 5 trin

Video: Sådan foretages analoge aflæsninger på Raspberry Pi: 5 trin

Video: Sådan foretages analoge aflæsninger på Raspberry Pi: 5 trin
Video: Бесконтактный датчик температуры дальнего действия MLX90614-DCI с Arduino 2024, November
Anonim
Sådan foretages analoge aflæsninger på Raspberry Pi
Sådan foretages analoge aflæsninger på Raspberry Pi

Hej allesammen! I denne vejledning vil jeg vise dig, hvordan vi direkte kan fange analoge værdier ved hjælp af Raspberry Pi. Som vi alle ved, er Raspberry Pi et ganske kraftfuldt mini -computermodul, som er populært blandt hobbyfolk og professionelle og har næsten alle de funktioner, som enhver elektronisk entusiast ønsker. Den eneste ulempe ved pi er imidlertid manglen på en dedikeret hardware til analog til digital konverter, hvilket gør Pi uegnet til direkte registrering af de analoge værdier fra enhver sensor. Løsningen på dette er enten at bruge en Arduino i forbindelse med Pi eller at bruge en dedikeret ADC. Til dette projekt vil jeg bruge MCP3204-12 bit ADC.

Forbrugsvarer

  • Raspberry Pi (du kan bruge enhver model, du har til rådighed)
  • MCP3204 ADC eller MCP3008 ADC
  • Analog sensor (jeg bruger i stedet et 10K potentiometer)
  • Brødbræt
  • Jumper Wires

Trin 1: Tag værdier fra Arduino i stedet…

Tager værdier fra Arduino i stedet…
Tager værdier fra Arduino i stedet…

Et alternativ til at få de analoge værdier til hindbær pi er at bruge arduino, som har en dedikeret 10 bit ADC. Arduinoen og Raspberry Pi kan kommunikere over den serielle port for at overføre oplysningerne. Denne metode kan bruges, når du eksperimenterer med nogle sensordata, og du samtidig vil udnytte Pi'ens processorkraft. Ulempen ved denne konfiguration er, at du ville bruge flere hardware -ressourcer og også skulle skrive separate koder til arduino og Pi.

Trin 2: Brug af en ADC

Brug af ADC
Brug af ADC
Brug af ADC
Brug af ADC

Alternativet til at bruge Arduino som ADC er at bruge en dedikeret ADC IC, der tjener samme formål. Til dette projekt vil jeg bruge MCP3204 IC, som er en 4 -kanals 12 bit ADC, som kan kommunikere med Raspberry Pi ved hjælp af SPI -protokollen. Fjendemonstrationsformål Jeg vil bruge IC'en i 10 bit -tilstand.

Jeg har vedhæftet pinout af denne IC, der viser pin -beskrivelsen.

Trin 3: Tilslutning af Raspberry Pi og ADC

Tilslutning af Raspberry Pi og ADC
Tilslutning af Raspberry Pi og ADC
Tilslutning af Raspberry Pi og ADC
Tilslutning af Raspberry Pi og ADC

Nu hvor vi har sorteret vores hardware, lad os komme ind i forbindelsesordningen for ADC og Pi.

Raspberry Pi havde 2 SPI -grænseflader: SPI0 og SPI1. Til vores applikation ville vi bruge SPI0, og vi vil bruge den fysiske (eller hardware) SPI, hvor vi forbinder ADC'en med de specifikke hardware SPI -ben på Pi

Jeg har vedhæftet Pinout af Pi og kredsløbsdiagrammet, som jeg har brugt i projektet

Forbindelsesordningen er som følger:

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

Trin 4: Endelig opsætning og koden

Endelig opsætning og koden
Endelig opsætning og koden

Nu hvor alle strøm- og kommunikationsforbindelser er foretaget, er det tid til at vedhæfte enhver sensor, hvis værdi vi ønsker at se. Jeg bruger et 10K potentiometer som sensor.

Koderne er skrevet i to dele, den første kode handler stort set om opsætning af bibliotekerne, aktivering af SPI -kommunikationen og derefter erhvervelse af ADC -værdien fra MCP3204, derefter udskrivning af den på python -terminalen.

Den anden kode er mere interaktiv og skaber en graf over data i realtid, der kommer fra sensoren.

Du kan lege med koden og gøre den egnet til dine behov.

Trin 5: Instruktionsvideo

Image
Image

Dette er videoen, der i detaljer beskriver alle de nødvendige trin for at gennemføre dette projekt. Jeg håber, at dette var nyttigt!

Anbefalede: