Съдържание:
Видео: Raspberry Pi HTS221 Сензор за относителна влажност и температура Java Урок: 4 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
HTS221 е ултра компактен капацитивен цифров сензор за относителна влажност и температура. Той включва сензорен елемент и специфична интегрална схема (ASIC) за прилагане на смесен сигнал за предоставяне на измервателната информация чрез цифрови серийни интерфейси. Интегриран с толкова много функции, това е един от най -подходящите сензори за измерване на критична влажност и температура. Ето демонстрацията с java код, използващ Raspberry Pi.
Стъпка 1: Какво ви трябва..
1. Малина Пи
2. HTS221
3. Кабел I²C
4. I²C щит за Raspberry Pi
5. Ethernet кабел
Стъпка 2: Връзки:
Вземете I2C щит за малиново пи и леко го натиснете върху щифтовете на gpio на малиново пи.
След това свържете единия край на I2C кабела към сензора HTS221, а другия край към I2C щита.
Свържете също Ethernet кабела към pi или можете да използвате WiFi модул.
Връзките са показани на снимката по -горе.
Стъпка 3: Код:
Кодът на python за HTS221 може да бъде изтеглен от нашето хранилище на github-Dcube Store
Ето линк за същото:
github.com/DcubeTechVentures/HTS221/blob/master/Java/HTS221.java
Използвахме библиотека pi4j за java код, стъпките за инсталиране на pi4j на raspberry pi са описани тук:
pi4j.com/install.html
Можете също да копирате кода от тук, той е даден, както следва:
// Разпространява се с лиценз за свободна воля.
// Използвайте го по какъвто начин искате, печалба или безплатно, при условие че се вписва в лицензите на свързаните с него произведения.
// HTS221
// Този код е проектиран да работи с HTS221_I2CS I2C мини модул.
внос com.pi4j.io.i2c. I2CBus;
внос com.pi4j.io.i2c. I2CDevice;
внос com.pi4j.io.i2c. I2CFactory;
импортиране на java.io. IOException;
публичен клас HTS221 {public static void main (String args ) хвърля Exception
{
// Създаване на I2CBus
I2CBus шина = I2CFactory.getInstance (I2CBus. BUS_1);
// Вземете I2C устройство, HTS221 I2C адресът е 0x5F (95)
I2CDevice устройство = bus.getDevice (0x5F);
// Избор на регистър за средна конфигурация
// Средни температурни проби = 16, средни проби за влажност = 32
device.write (0x10, (байт) 0x1B);
// Изберете контролен регистър1
// Включване, блокиране на актуализиране на данни, скорост на предаване на данни o/p = 1 Hz
device.write (0x20, (байт) 0x85);
Thread.sleep (500);
// Четене на стойностите за калибриране от енергонезависимата памет на устройството
// Стойности за калибриране на влажност
байт val = нов байт [2];
// Четене на 1 байт данни от адрес 0x30 (48)
val [0] = (байт) device.read (0x30);
// Прочетете 1 байт данни от адрес 0x31 (49)
val [1] = (байт) device.read (0x31);
int H0 = (val [0] & 0xFF) / 2;
int H1 = (val [1] & 0xFF) / 2;
// Прочетете 1 байт данни от адрес 0x36 (54)
val [0] = (байт) device.read (0x36);
// Прочетете 1 байт данни от адрес 0x37 (55)
val [1] = (байт) device.read (0x37);
int H2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Прочетете 1 байт данни от адрес 0x3A (58)
val [0] = (байт) device.read (0x3A);
// Прочетете 1 байт данни от адрес 0x3B (59)
val [1] = (байт) device.read (0x3B);
int H3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Температурни стойности за калибриране
// Прочетете 1 байт данни от адрес 0x32 (50)
int T0 = ((байт) device.read (0x32) & 0xFF);
// Четене на 1 байт данни от адрес 0x33 (51)
int T1 = ((байт) device.read (0x33) & 0xFF);
// Прочетете 1 байт данни от адрес 0x35 (53)
int raw = ((байт) device.read (0x35) & 0x0F);
// Преобразуваме температурните стойности за калибриране в 10-бита
T0 = ((необработен & 0x03) * 256) + T0;
T1 = ((необработен & 0x0C) * 64) + T1;
// Четене на 1 байт данни от адрес 0x3C (60)
val [0] = (байт) device.read (0x3C);
// Прочетете 1 байт данни от адрес 0x3D (61)
val [1] = (байт) device.read (0x3D);
int T2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Прочетете 1 байт данни от адрес 0x3E (62)
val [0] = (байт) device.read (0x3E);
// Прочетете 1 байт данни от адрес 0x3F (63)
val [1] = (байт) device.read (0x3F);
int T3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Прочетете 4 байта данни
// hum msb, hum lsb, temp msb, temp lsb
байт данни = нов байт [4]; device.read (0x28 | 0x80, данни, 0, 4);
// Конвертиране на данните
int hum = ((данни [1] & 0xFF) * 256) + (данни [0] & 0xFF);
int temp = ((данни [3] & 0xFF) * 256) + (данни [2] & 0xFF);
ако (temp> 32767)
{
temp -= 65536;
}
двойна влажност = ((1.0 * H1) - (1.0 * H0)) * (1.0 * бум - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0);
двоен cTemp = ((T1 - T0) / 8.0) * (temp - T2) / (T3 - T2) + (T0 / 8.0);
двоен fTemp = (cTemp * 1.8) + 32;
// Извеждане на данни на екрана
System.out.printf ("Относителна влажност: %.2f %% RH %n", влажност);
System.out.printf ("Температура в Целзий: %.2f C %n", cTemp);
System.out.printf ("Температура по Фаренхайт: %.2f F %n", fTemp);
}
}
Стъпка 4: Приложения:
HTS221 може да се използва в различни потребителски продукти като овлажнители на въздух и хладилници и др. Този сензор намира своето приложение и в по -широка област, включително автоматизация на интелигентен дом, промишлена автоматизация, дихателно оборудване, проследяване на активи и стоки.
Препоръчано:
Raspberry Pi SHT25 Сензор за влажност и температура Python Урок: 4 стъпки
Raspberry Pi SHT25 Сензор за влажност и температура Python Урок: SHT25 I2C Сензор за влажност и температура ± 1,8%RH ± 0,2 ° C I2C мини модул. Високоточният сензор за влажност и температура SHT25 се превърна в индустриален стандарт по отношение на форм-фактора и интелигентността, като осигурява калибриран, линеаризиран сигнален сензор
Arduino Nano - HTS221 Урок за сензор за относителна влажност и температура: 4 стъпки
Arduino Nano - HTS221 Урок за сензор за относителна влажност и температура: HTS221 е ултра компактен капацитивен цифров сензор за относителна влажност и температура. Той включва сензорен елемент и специфична интегрална схема за приложение със смесен сигнал (ASIC) за предоставяне на измервателната информация чрез цифров сериен
Raspberry Pi - HIH6130 I2C сензор за влажност и температура Python урок: 4 стъпки
Raspberry Pi - HIH6130 I2C сензор за влажност и температура Python Урок: HIH6130 е сензор за влажност и температура с цифров изход. Тези сензори осигуряват ниво на точност ± 4% относителна влажност. С водеща в индустрията дългосрочна стабилност, истинска температурно компенсирана цифрова I2C, водеща в индустрията надеждност, енергийна ефективност
Raspberry Pi - HIH6130 I2C Сензор за влажност и температура Java Урок: 4 стъпки
Raspberry Pi - HIH6130 I2C Сензор за влажност и температура Java Урок: HIH6130 е сензор за влажност и температура с цифров изход. Тези сензори осигуряват ниво на точност ± 4% относителна влажност. С водеща в индустрията дългосрочна стабилност, истинска температурно компенсирана цифрова I2C, водеща в индустрията надеждност, енергийна ефективност
Температура, относителна влажност, регистратор на атмосферно налягане с помощта на Raspberry Pi и TE свързаност MS8607-02BA01: 22 стъпки (със снимки)
Температура, относителна влажност, регистратор на атмосферно налягане с помощта на Raspberry Pi и TE свързаност MS8607-02BA01: Въведение: В този проект ще ви покажа как да изградите настройка по стъпка система за регистриране на температурата на влажността и атмосферното налягане. Този проект се основава на чипа за околната среда Raspberry Pi 3 Model B и TE Connectivity MS8607-02BA