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 Uitlezen met Raspberry Pi en Zabbix: Een Stapsgewijze Handleiding

Analoge Sensoren Uitlezen met Raspberry Pi en Zabbix

Hoewel de Raspberry Pi geen native analoge ingangen heeft, maakt de MCP3008 10-bit, 8-kanaals ADC het triviaal om analoge mogelijkheden toe te voegen. Het plugt direct in de GPIO-header van de Pi via de SPI-bus en vereist geen extra componenten.

Deze tutorial leidt u door het bedraden van een MCP3008 aan de Pi, het uitlezen van een licht-gevoelige weerstand (LDR) met Python, en het voeden van de data in Zabbix voor monitoring.

De hardware:

  • Raspberry Pi
  • MCP3008 8-kanaals ADC
  • Licht-gevoelige weerstand (LDR)
  • 10 kΩ-weerstand
  • Breadboard
  • Wat bedrading

De SPI-bus Begrijpen

De MCP3008 transmet een 10-bit digitaal waarde over de SPI-interface, een full-duplex, synchroon serieel protocol dat in master/slave-modus werkt. Meerdere slaves kunnen de bus delen, elk geselecteerd door zijn eigen CS-lijn.

Op de Raspberry Pi wordt SPI blootgelegd via de 4-pins-header (GPIO8, 9, 10, 11). Om de hardware-SPI-driver in te schakelen, bewerk het blacklist-bestand:

sudo nano /etc/modprobe.d/raspi-blacklist.conf

Zoek de regel met spi-bcm2708 en prefixeer het met een # om het uit te commentariëren. Sla op en herstart:

sudo reboot

Na herstart, verifieer dat de driver geladen is:

lsmod | grep spi_bcm2708

U zou spi_bcm2708 gelist moeten zien.

De Python SPI-bibliotheek Installeren

Om de SPI-bus vanuit Python te benaderen, gebruiken we py-spidev. Installeer eerst de development-headers voor Python:

sudo apt-get install python-dev

Download en installeer vervolgens de bibliotheek:

 mkdir py-spidev cd py-spidev wget https://raw.github.com/doceme/py-spidev/master/setup.py wget https://raw.github.com/doceme/py-spidev/master/spidev_module.c sudo python setup.py install 

De MCP3008 Verbinden met de Raspberry Pi

MCP3008 Pin Raspberry Pi Pin
VDD 3,3 V
VREF 3,3 V
AGND GND
CLK GPIO11 (P1‑23)
DOUT GPIO9 (P1‑21)
DIN GPIO10 (P1‑19)
CS GPIO8 (P1‑24)
DGND GND

De acht CH0‑CH7-pins op de MCP3008 dienen als analoge ingangen. In dit voorbeeld zullen we er een verbinden met een LDR.

Een Licht-gevoelige Weerstand (LDR) Gebruiken

We gebruikten een LDR EG & G Vactec, VT43, CdS, 8 Ω – 300 kΩ. In normale verlichting is de weerstand ongeveer 10 kΩ; in duisternis stijgt hij boven de 2 MΩ.

Wanneer licht op de LDR valt, daalt de weerstand, wat de spanning op de MCP3008-input naar 0 V trekt. In het donker stijgt de weerstand, wat de spanning naar de 3,3 V-referentie duwt.

Elke sensor die de weerstand verandert met een fysieke hoeveelheid, kan op deze manier bedraad worden.

De ADC-output Interpreteren

De MCP3008 produceert een 10-bit getal van 0 tot 1023, waar 0 overeenkomt met 0 V en 1023 met 3,3 V. Voor een LDR vertaalt dit zich in een lichtintensiteitsbereik van ongeveer 0 – 10.000 lux.

Deze ruwe waarden kunnen naar Zabbix gestuurd worden via het Python-script van de Raspberry Pi, waardoor u dashboards kunt maken, drempels instellen, en alerts kunt triggeren.

Voor meer detail: Analoge Sensoren Uitlezen met Raspberry Pi en Zabbix Supervisor

Productieproces

  1. Meerdere DS18B20 1-Wire Sensoren Aan Een Raspberry Pi Koppelen Voor Nauwkeurige Temperatuurmonitoring
  2. Efficiënt Kamertemperaturen Monitoren Met Raspberry Pi En Nagios
  3. Hoe Temperatuur Te Lezen Met Een DS18B20 Op Raspberry Pi 2
  4. Thuis Temperatuur & Vochtigheid Monitor Met Raspberry Pi & Web Dashboard – Real-Time Remote Tracking
  5. Temperatuurmeting op Raspberry Pi met Maxim 1-Wire sensoren en DS2482 I2C-brug
  6. Home Energy Centre: Zonnepanelen, thermische panelen en kamertemperaturen monitoren met Raspberry Pi en Moteino
  7. Accurate temperatuurbewaking in een serverkast met Raspberry Pi
  8. Een 433 MHz Slimme Huiscounter Bouwen met Sensorflare en Raspberry Pi
  9. Analoge Sensoren Meten op de Raspberry Pi met een Enkele GPIO-pin
  10. Analoge Sensoren Meten op Raspberry Pi Zonder Native ADC
  11. Een Snel, Betrouwbare Brandsdetectiesysteem Bouwen met Samsung SAMIIO, Arduino UNO & Raspberry Pi