Съдържание:

Мониторинг на температура и влажност с помощта на SHT25 и Raspberry Pi: 5 стъпки
Мониторинг на температура и влажност с помощта на SHT25 и Raspberry Pi: 5 стъпки

Видео: Мониторинг на температура и влажност с помощта на SHT25 и Raspberry Pi: 5 стъпки

Видео: Мониторинг на температура и влажност с помощта на SHT25 и Raspberry Pi: 5 стъпки
Видео: Умный дом. Датчик температуры и влажности. 2024, Ноември
Anonim
Image
Image

Наскоро работихме по различни проекти, които изискват мониторинг на температурата и влажността и след това осъзнахме, че тези два параметъра всъщност играят ключова роля за оценката на работната ефективност на системата. Както на промишлено ниво, така и на персонални системи оптималното ниво на температурата е необходимото за адекватната работа на системата.

Това е причината, в този урок ще обясним работата на сензора за влажност и температура SHT25, използвайки малинов пи. В този конкретен урок работата му се демонстрира с помощта на java код.

Хардуерът, който ще ви е необходим за тази цел, е:

1. SHT25

2. Малина Пи

3. I2C кабел

4. I2C щит за малиново пи

Стъпка 1: Преглед на SHT25:

От какво имаш нужда….!!
От какво имаш нужда….!!

Първо нека започнем с основното разбиране на сензора и протокола, по който той работи.

SHT25 I2C Сензор за влажност и температура ± 1,8%RH ± 0,2 ° C I2C мини модул. Това е високоточен сензор за влажност и температура, който се превърна в индустриален стандарт по отношение на форм-фактора и интелигентността, като осигурява калибрирани, линеаризирани сензорни сигнали в цифров, I2C формат. Интегриран със специализирана аналогова и цифрова схема, този сензор е едно от най -ефективните устройства за измерване на температурата и влажността.

Комуникационният протокол, по който работи сензорът, е I2C. I2C означава междуинтегрална схема. Това е комуникационен протокол, в който комуникацията се осъществява чрез линии SDA (серийни данни) и SCL (сериен часовник). Тя позволява свързване на няколко устройства едновременно. Това е един от най -простите и ефективни комуникационни протоколи.

Стъпка 2: Какво ви трябва …

От какво имаш нужда….!!
От какво имаш нужда….!!
От какво имаш нужда….!!
От какво имаш нужда….!!
От какво имаш нужда….!!
От какво имаш нужда….!!

Материалите, от които се нуждаем за постигане на целта ни, включват следните хардуерни компоненти:

1. Сензор за влажност и температура SHT25

2. Малина пи

3. I2C кабел

4. I2C щит за Raspberry Pi

5. Ethernet кабел

Стъпка 3: Свързване на хардуера:

Хардуерно свързване
Хардуерно свързване
Хардуерно свързване
Хардуерно свързване

Разделът за свързване на хардуер основно обяснява необходимите кабелни връзки между сензора и малиновото пи. Осигуряването на правилни връзки е основната необходимост, докато работите върху всяка система за желания изход. И така, необходимите връзки са както следва:

  • SHT25 ще работи през I2C. Ето примерната електрическа схема, демонстрираща как да свържете всеки интерфейс на сензора.
  • Извън кутията, дъската е конфигурирана за I2C интерфейс, като такава препоръчваме да използвате тази връзка, ако иначе не сте агностици. Всичко, от което се нуждаете, са четири проводника!
  • Изискват се само четири връзки Vcc, Gnd, SCL и SDA щифтове и те са свързани с помощта на I2C кабел.

Тези връзки са показани на снимките по -горе.

Стъпка 4: Java код за мониторинг на температурата и влажността:

Java код за мониторинг на температурата и влажността
Java код за мониторинг на температурата и влажността
Java код за мониторинг на температурата и влажността
Java код за мониторинг на температурата и влажността

Предимството на използването на малинов pi е, че ви осигурява гъвкавостта на езика за програмиране, на който искате да програмирате платката, за да свържете интерфейса на сензора с нея. Използвайки това предимство на тази дъска, ние демонстрираме тук нейното програмиране в Java. Java кодът за SHT25 може да бъде изтеглен от нашата github общност, която е Dcube Store.

Освен за улеснение на потребителите, ние обясняваме кода и тук:

Като първа стъпка на кодиране трябва да изтеглите библиотеката pi4j в случай на java, защото тази библиотека поддържа функциите, използвани в кода. Така че, за да изтеглите библиотеката, можете да посетите следната връзка:

pi4j.com/install.html

Можете да копирате работещия java код за този сензор и от тук:

внос com.pi4j.io.i2c. I2CBus;

внос com.pi4j.io.i2c. I2CDevice; внос com.pi4j.io.i2c. I2CFactory; импортиране на java.io. IOException; публичен клас SHT25 {public static void main (String args ) изхвърля Exception {// Създаване на I2C шина I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1); // Вземете I2C устройство, SHT25 I2C адресът е 0x40 (64) I2CDevice устройство = Bus.getDevice (0x40); // Изпращане на команда за измерване на температура, NO HOLD master device.write ((байт) 0xF3); Thread.sleep (500); // Прочетете 2 байта данни // temp msb, temp lsb byte data = нов байт [2]; device.read (данни, 0, 2); // Конвертираме данните двойно cTemp = (((((данни [0] & 0xFF) * 256) + (данни [1] & 0xFF)) * 175.72) / 65536.0) - 46.85; двоен fTemp = (cTemp * 1.8) + 32; // Изпращане на команда за измерване на влажност, NO HOLD master device.write ((байт) 0xF5); Thread.sleep (500); // Прочетете 2 байта данни // влажност msb, влажност lsb device.read (данни, 0, 2); // Конвертираме данните двойна влажност = (((((данни [0] & 0xFF) * 256) + (данни [1] & 0xFF)) * 125.0) / 65536.0) - 6; // Извежда данни на екрана System.out.printf ("Относителна влажност: %.2f %% RH %n", влажност); System.out.printf ("Температура в Целзий: %.2f C %n", cTemp); System.out.printf ("Температура във Farhenheit: %.2f F %n", fTemp); }}

Изходът на кода също е показан на горната снимка.

Библиотеката, която улеснява i2c комуникацията между сензора и платката, е pi4j, нейните различни пакети I2CBus, I2CDevice и I2CFactory помагат за установяване на връзката.

внос com.pi4j.io.i2c. I2CBus;

внос com.pi4j.io.i2c. I2CDevice; внос com.pi4j.io.i2c. I2CFactory; импортиране на java.io. IOException;

Тази част от кода кара сензора да работи за измерване на температура и влажност чрез изписване на съответните команди с помощта на функцията write () и след това данните се четат с помощта на функцията read ().

device.write ((байт) 0xF3);

Thread.sleep (500);

// Прочетете 2 байта данни

// temp msb, temp lsb

байт данни = нов байт [2];

device.read (данни, 0, 2);

// Изпращане на команда за измерване на влажност, NO HOLD master

device.write ((байт) 0xF5);

Thread.sleep (500);

// Прочетете 2 байта данни

// влажност msb, влажност lsb

device.read (данни, 0, 2);

Стъпка 5: Приложения:

Датчикът за температура и относителна влажност SHT25 има различни индустриални приложения като мониторинг на температурата, периферна термична защита на компютъра. Ние също използваме този сензор в приложенията на метеорологичните станции, както и в системата за наблюдение на оранжерии.

Препоръчано: