Съдържание:

Измерване на влажност и температура с помощта на HIH6130 и Raspberry Pi: 4 стъпки
Измерване на влажност и температура с помощта на HIH6130 и Raspberry Pi: 4 стъпки

Видео: Измерване на влажност и температура с помощта на HIH6130 и Raspberry Pi: 4 стъпки

Видео: Измерване на влажност и температура с помощта на HIH6130 и Raspberry Pi: 4 стъпки
Видео: Linptech ES1 - microwave presence sensor for mihome, Home Assistant Gateway 3 integration 2024, Юли
Anonim
Image
Image

HIH6130 е сензор за влажност и температура с цифров изход. Тези сензори осигуряват ниво на точност ± 4% относителна влажност. С водеща в индустрията дългосрочна стабилност, истинска температурно компенсирана цифрова I2C, водеща в индустрията надеждност, енергийна ефективност и изключително малък размер и опции на пакета.

В този урок е демонстрирано взаимодействието на сензорния модул HIH6130 с малинов pi и е илюстрирано и неговото програмиране с помощта на Java език. За да прочетете стойностите на температурата и влажността, използвахме малинов pi с I2C адаптер, който прави връзката с сензорния модул лесна и по -надеждна.

Стъпка 1: Изисква се хардуер:

Необходим хардуер
Необходим хардуер
Необходим хардуер
Необходим хардуер
Необходим хардуер
Необходим хардуер

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

1. HIH6130

2. Малина Пи

3. I2C кабел

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

5. Ethernet кабел

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

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

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

HIH6130 ще работи през I2C. Ето примерната електрическа схема, демонстрираща как да свържете всеки интерфейс на сензора.

Извън кутията, дъската е конфигурирана за I2C интерфейс, като такава препоръчваме да използвате тази връзка, ако иначе не сте агностици.

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

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

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

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

Предимството на използването на малинов pi е, че ви осигурява гъвкавостта на езика за програмиране, на който искате да програмирате платката, за да свържете интерфейса на сензора с нея. Възползвайки се от това предимство на тази дъска, ние демонстрираме тук нейното програмиране в Java. Java кодът за HIH6130 може да бъде изтеглен от нашата 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;

обществен клас HIH6130

{

public static void main (String args ) хвърля Exception

{

// Създаване на I2C шина

I2CBus шина = I2CFactory.getInstance (I2CBus. BUS_1);

// Вземете I2C устройство, HIH6130 I2C адресът е 0x27 (39)

I2CDevice устройство = Bus.getDevice (0x27);

Thread.sleep (500);

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

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

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

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

// Конвертираме данните в 14-бита

двойна влажност = (((данни [0] & 0x3F) * 256) + (данни [1] & 0xFF)) / 16384,0 * 100,0;

int temp = ((((данни [2] & 0xFF) * 256) + (данни [3] & 0xFC)) / 4);

двоен cTemp = (temp / 16384.0) * 165.0 - 40.0;

двоен fTemp = cTemp * 1.8 + 32;

// Извеждане на данни на екрана

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 () се използват за записване на някои конкретни команди към сензора, за да го накарат да работи в определен режим и четене съответно на изхода на сензора.

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

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

Приложения
Приложения

HIH6130 може да се използва за осигуряване на прецизно измерване на относителната влажност и температура в климатици, сензори за енталпия, термостати, овлажнители/обезвлажнители и овлажнители за поддържане на комфорта на обитателите. Може да се използва и във въздушни компресори, метеорологични станции и телекомуникационни шкафове.

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