SHT31 از سری سنسور های SHT3x شرکت سوئیسی Sensorion می باشد . این سنسور قابلیت اندازه گیری دما و روطوبت را با دقت بالا دارند . یکی از مهمترین مزیت سنسور های SHT کالیبره بودن آن ها است به همین دلیل می توانید از آن ها در سیستم هایی که نیاز به حساسیت و دقت بالا دارند استفاده کنید . سنسور های SHT31 مصرف انرژی بسیار پایینی دارند و جهت استفاده در مدارات پرتابل طراحی شده اند . این سنسور می تواند دما را با حداکثر خطا 0.3 درجه و رطوبت را با حداکثر خطای 2 درصدی اندازه گیری کند . یکی از مزیت های مهم SHT31 ثابت بودن خطای اندازه گیری در دمای 40- تا 85 در جه اسنتی گراد می باشد . بر خلاف سنسور های SHT2x و SHT1x که خطای اندازه گیری آن ها در بازه کوچکی ثابت است ، SHT31 در دما های معمول خطای اندازه گیری ثابتی دارد . این سنسور دارای یک رابط I2C می باشد لذا به راحتی از طریق واخد I2C میکروکنترلر های مختلف می توانید آن را راه اندازی کنید . درمدل های SHT1x از یک رابط دو سیمه مشابه I2C استفاده می شود که باید به صورت نرم افزاری رابط ارتباطی آن را پیاده سازی کنید .
در تصویر زیر پین های ماژول SHT31 نشان داده شده است :
پین های VCC و gND به ترتیب تغذیه 3.3 ولت و زمین ماژل می باشند .
همچنین پین های SDA و SCL برای ارتباط I2C هستند .
راه اندازی ماژول SHT31 با آردوینو :
از این لینک می توانید کتابخانه SHT31 را دانلود کنید .
#include <Arduino.h> #include <Wire.h> #include "SHT31.h" SHT31 sht31 = SHT31(); void setup() { Serial.begin(9600); while(!Serial); Serial.println("begin..."); sht31.begin(); } void loop() { float temp = sht31.getTemperature(); float hum = sht31.getHumidity(); Serial.print("Temp = "); Serial.print(temp); Serial.println(" C"); //The unit for Celsius because original arduino don't support speical symbols Serial.print("Hum = "); Serial.print(hum); Serial.println("%"); Serial.println(); delay(1000); }