Sadržaj:

Kako uzeti analogna očitanja na Raspberry Pi: 5 koraka
Kako uzeti analogna očitanja na Raspberry Pi: 5 koraka

Video: Kako uzeti analogna očitanja na Raspberry Pi: 5 koraka

Video: Kako uzeti analogna očitanja na Raspberry Pi: 5 koraka
Video: Сводные таблицы Excel с нуля до профи за полчаса + Дэшборды! | 1-ое Видео курса "Сводные Таблицы" 2024, Juli
Anonim
Kako uzeti analogna očitanja na Raspberry Pi
Kako uzeti analogna očitanja na Raspberry Pi

Zdravo svima! U ovom vodiču ću vam pokazati kako možemo direktno snimiti analogne vrijednosti pomoću Raspberry Pi. Kao što svi znamo da je Raspberry Pi prilično moćan mini računarski modul koji je popularan među hobistima i profesionalcima i ima gotovo sve značajke koje svaki elektronski entuzijast želi. Međutim, jedini nedostatak pi -a je nedostatak namjenskog hardvera analogno -digitalnog pretvarača, što čini Pi neprikladnim za direktno snimanje analognih vrijednosti s bilo kojeg senzora. Rješenje za ovo je ili korištenje Arduina u vezi s Pi -om ili korištenje namjenskog ADC -a. Za ovaj projekt koristit ću MCP3204-12 bitni ADC.

Supplies

  • Raspberry Pi (možete koristiti bilo koji model koji vam je na raspolaganju)
  • MCP3204 ADC ili MCP3008 ADC
  • Analogni senzor (umjesto toga koristim 10K potenciometar)
  • Breadboard
  • Džemper žice

Korak 1: Umjesto preuzimanja vrijednosti iz Arduina…

Umjesto preuzimanja vrijednosti iz Arduina…
Umjesto preuzimanja vrijednosti iz Arduina…

Jedna alternativa za dobivanje analognih vrijednosti za raspberry pi je upotreba arduina koji ima namjenski 10 -bitni ADC. Arduino i Raspberry Pi mogu komunicirati preko serijskog porta za prijenos informacija. Ova metoda se može koristiti kada eksperimentirate s nekim podacima senzora, a istovremeno želite iskoristiti procesorsku snagu Pi. Nedostatak ove konfiguracije je to što biste koristili više hardverskih resursa i morali biste pisati zasebne kodove za arduino i Pi.

Korak 2: Upotreba ADC -a

Koristeći ADC
Koristeći ADC
Koristeći ADC
Koristeći ADC

Alternativa korištenju Arduina kao ADC -a je korištenje namjenskog ADC IC -a koji služi istoj svrsi. Za ovaj projekt koristit ću MCP3204 IC koji je 4 -kanalni 12 -bitni ADC koji može komunicirati s Raspberry Pi -om koristeći SPI protokol. U svrhu demonstracije neprijatelja koristit ću IC u 10 -bitnom načinu rada.

Priložio sam pinout ovog IC -a koji prikazuje opis pina.

Korak 3: Povežite Raspberry Pi i ADC

Povezivanje Raspberry Pi -a i ADC -a
Povezivanje Raspberry Pi -a i ADC -a
Povezivanje Raspberry Pi -a i ADC -a
Povezivanje Raspberry Pi -a i ADC -a

Sada kada smo sredili hardver, prijeđimo u shemu povezivanja ADC -a i Pi -a.

Raspberry Pi je imao 2 SPI interfejsa: SPI0 i SPI1. Za našu aplikaciju koristili bismo SPI0, a koristićemo fizički (ili hardverski) SPI gdje povezujemo ADC na određene hardverske SPI pinove Pi

Priložio sam Pinout i dijagram kola koji sam koristio u projektu

Shema povezivanja je sljedeća:

  • VDD (Pin14) i Vref (Pin13) ADC -a na 5V napajanje Pi
  • DGND (Pin7) i AGND (Pin12) ADC -a na tlo Pi
  • CLK (Pin11) ADC -a prema GPIO 11 (Fizički pin 23) Pi -a
  • Dout (Pin10) ADC -a na GPIO 9 (Fizički pin 21) Pi -a
  • Din (Pin 9) ADC -a prema GPIO 10 (Fizički pin 19) Pi -a
  • Odabir čipa (Pin 8) ADC -a prema GPIO 8 (Fizički pin 24) Pi

Korak 4: Konačno postavljanje i kôd

Konačno postavljanje i kôd
Konačno postavljanje i kôd

Sada kada su uspostavljene sve veze za napajanje i komunikaciju, vrijeme je da priključite bilo koji senzor čiju vrijednost želimo vidjeti. Koristim 10K potenciometar kao senzor.

Kodovi su napisani u dva dijela, prvi kod se uglavnom odnosi na postavljanje biblioteka, omogućavanje SPI komunikacije i zatim dobivanje vrijednosti ADC -a iz MCP3204, a zatim ispis na python terminalu.

Drugi kod je interaktivniji i stvara grafikon podataka u stvarnom vremenu koji dolaze sa senzora.

Možete se igrati s kodom i prilagoditi ga vašim potrebama.

Korak 5: Video upute

Image
Image

Ovo je video koji detaljno opisuje sve potrebne korake za provedbu ovog projekta. Nadam se da je ovo bilo od pomoći!

Preporučuje se: