Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Analoge sensoren op de Raspberry Pi met een MCP3008

inputs, wat betekent dat het een beetje lastig is om veel van de beschikbare sensoren te gebruiken. Ik wilde mijn garagebeveiligingssysteem updaten met de mogelijkheid om meer sensoren te gebruiken, dus besloot ik een gemakkelijke en goedkope manier te onderzoeken om dit te doen. De MCP3008 was het antwoord.

De MCP3008 is een 10bit 8-kanaals analoog-naar-digitaal converter (ADC). Het is goedkoop, eenvoudig aan te sluiten en vereist geen extra componenten. Het maakt gebruik van het SPI-busprotocol dat wordt ondersteund door de GPIO-header van de Pi.

In dit artikel wordt uitgelegd hoe u een MCP3008-apparaat gebruikt om 8 analoge ingangen te leveren die u kunt gebruiken met een reeks sensoren. In het onderstaande voorbeeldcircuit gebruik ik mijn MCP3008 om een ​​temperatuur- en lichtsensor uit te lezen.

Dit zijn de stukjes die ik heb gebruikt:

  • Raspberry Pi
  • MCP3008 8-kanaals ADC
  • Lichtafhankelijke weerstand (LDR)
  • TMP36 temperatuursensor
  • 10 Kohm-weerstand

De eerste stap is het inschakelen van de SPI-interface op de Pi, die meestal standaard is uitgeschakeld.

Volg mijn artikel De SPI-interface inschakelen op de Raspberry Pi om SPI in te stellen en de SPI Python-wrapper te installeren.

Circuit

De volgende lijst laat zien hoe de MCP3008 kan worden aangesloten. Het vereist 4 GPIO-pinnen op de Pi P1-header.

VDD 3.3VVREF 3.3VAGND GROUNDCLK GPIO11 (P1-23)DOUT GPIO9 (P1-21)DIN GPIO10 (P1-19CS GPIO8 (P1-24)DGND GROUND

De CH0-CH7-pinnen zijn de 8 analoge ingangen.

Hier is mijn breadboard-circuit:

Het gebruikt CH0 voor de lichtsensor en CH1 voor de TMP36 temperatuursensor. De andere 6 ingangen zijn reserve.

Lichtafhankelijke weerstand

Ik koos een mooie dikke LDR (NORPS-12, datasheet). Onder normale verlichting is de weerstand ongeveer 10Kohm, terwijl deze in het donker toeneemt tot meer dan 2Mohm.

Als er veel licht is, heeft de LDR een lage weerstand waardoor de uitgangsspanning naar 0V daalt.

Als het donker is, neemt de LDR-weerstand toe, waardoor de uitgangsspanning naar 3,3 V stijgt.

TMP36 temperatuursensor

De TMP36 temperatuursensor is een 3-pins apparaat (datasheet). Je kunt hem van stroom voorzien met 3,3 V en de middelste Vout-pin levert een spanning die evenredig is aan de temperatuur.

Een temperatuur van 25 graden C resulteert in een output van 0,750V. Elke graad resulteert in 10mV uitgangsspanning.

Dus 0 graden geeft 0,5 V en 100 graden geeft 1,5 V.

De gegevens lezen met een Python-script

De ADC is 10 bit en kan dus een reeks getallen van 0 tot 1023 (2 tot de macht 10) rapporteren. Een uitlezing van 0 betekent dat de ingang 0V is en een uitlezing van 1023 betekent dat de ingang 3,3V is. Ons bereik van 0-3,3 V komt overeen met een temperatuurbereik van -50 tot 280 graden C met behulp van de TMP36.

Voor meer details:analoge sensoren op de Raspberry Pi met een MCP3008


Productieproces

  1. Raspberry Pi Temperature Logger
  2. Raspberry Pi-temperatuurprofiel met LabVIEW
  3. Meet temperaturen met een 1-draads DS18B20-sensor en Raspberry Pi
  4. Temperatuur aflezen met DS18B20 | Raspberry Pi 2
  5. Temperatuurbewaking op de Raspberry Pi
  6. Temperatuur meten met RASPBERRY PI
  7. TMP006 Temperature Sensor Python Library met Raspberry pi,
  8. Python- en Raspberry Pi-temperatuursensor
  9. Temperatuur bewaken met Raspberry Pi
  10. Bewaking op afstand van het weer met Raspberry Pi
  11. SensorTag naar Blynk met Node-RED