Raspberry İle Sıcaklık ve Nem Değerlerini İnternete Kaydetme(ThingSpeak)
Bu yazımda Raspberry Pi 2 ile DHT22 sensörünü kullanarak sıcaklık ve nem değerlerini ThingSpeak kanalına kayıt edip internet ortamında bu verilerin grafiklerine erişmeyi anlatacam. İlk olarak Raspberry Pi 2’ye DHT22 sensörünü takmakla başlıyoruz.
Burada DHT 22’nin bilgi pinini Raspberry Pi 2’nin GPIO 23 pinine, geri kalan VCC ve GND pinlerini de uygun pinlere takıyoruz.
Daha sonra ThingSpeak adresinden ücretsiz üyelik oluşturuyoruz. Oluşturduğumuz ücretsiz üyelik her 15sn’de bir bilgi okumayı destekliyor, yani her 5sn’de bir bilgi gönderirsek 15sn’de 3 bilgi gelmesi gerekirken yalnız 1 bilgiyi alır.
ThingSpeak’e giriş yaptığımızda “New Channel” yazısına tıklayarak yeni bir kanal oluşturuyoruz.
ThingSpeak’a 2 parametre göndereceğimiz için 2 alana isim veriyoruz ve en altta ki “Show Status”u tikliyoruz. Böylelikle kanalımız oluşturmuş olduk.
Raspberry Pi 2’de yeni Python dosyası oluşturup alttaki kodu yazıyoruz.
sudo nano DHT22.py
import sys
import RPi.GPIO as GPIO
from time import sleep
import Adafruit_DHT
import urllib2
myAPI = "VQ2LS0KYAEQVCJTL" #Sizin API'niz buraya yazılacak.
def getSensorData():
RH, T = Adafruit_DHT.read_retry(Adafruit_DHT.DHT22, 23)
return (str(RH), str(T))
def main():
print 'Baslatiliyor...'
baseURL = 'https://api.thingspeak.com/update?api_key=%s' % myAPI
while True:
try:
RH, T = getSensorData()
f = urllib2.urlopen(baseURL +
"&field1=%s&field2=%s" % (RH, T))
print f.read()
f.close()
sleep(15) #15 saniyede bir verileri gönderiyor.
except:
print 'Cikiliyor.'
break
if __name__ == '__main__':
main()
Kodun 6. satırındaki myAPI kısmına kanalınızın API Keys’ini yazacaksınız.
Dosyayı kaydettikten sonra aşağıdaki komut ile çalıştırabiliriz.
sudo python DHT22.py
Leave a Comment