Мазмуну:
Video: Raspberry Pi HTS221 Салыштырмалуу нымдуулук жана температура сенсорунун Java үйрөткүчү: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
HTS221 салыштырмалуу нымдуулук жана температура үчүн өтө компакт сыйымдуу санарип сенсор. Бул санариптик сериялык интерфейстер аркылуу өлчөө маалыматын берүү үчүн сезгич элементти жана аралаш сигналга тиешелүү интегралдык микросхеманы (ASIC) камтыйт. Бул көптөгөн өзгөчөлүктөр менен интеграцияланган, бул нымдуулукту жана температураны өлчөө үчүн эң ылайыктуу сенсорлордун бири. Бул жерде Raspberry Pi колдонулган java коду бар демонстрация.
1 -кадам: Сизге эмне керек..
1. Raspberry Pi
2. HTS221
3. I²C кабели
4. Raspberry Pi үчүн I²C Shield
5. Ethernet кабели
2 -кадам: Байланыштар:
Малина пи үчүн I2C калканчын алыңыз жана аны акырын малинанын пи gpio төөнөгүчтөрүнүн үстүнө басыңыз.
Андан кийин I2C кабелинин бир учун HTS221 сенсоруна, экинчи учун I2C калканчына туташтырыңыз.
Ethernet кабелин пи -ге туташтырыңыз же WiFi модулун колдонсоңуз болот.
Байланыштар жогорудагы сүрөттө көрсөтүлгөн.
3 -кадам: Код:
HTS221 үчүн питон кодун биздин github репозиторийибизден көчүрүп алсаңыз болот-Dcube Store
Мына ушуга шилтеме:
github.com/DcubeTechVentures/HTS221/blob/master/Java/HTS221.java
Биз Java коду үчүн pi4j китепканасын колдондук, малина piге pi4j орнотуу кадамдары бул жерде сүрөттөлгөн:
pi4j.com/install.html
Сиз бул жерден кодду көчүрүп алсаңыз болот, ал төмөнкүчө берилген:
// Эркин лицензия менен таратылган.
// Аны каалагандай колдон, пайда же бекер, эгер ал ага байланыштуу чыгармаларынын лицензиясына туура келсе.
// HTS221
// Бул код HTS221_I2CS I2C Mini Module менен иштөө үчүн иштелип чыккан.
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 Гц
device.write (0x20, (байт) 0x85);
Thread.sleep (500);
// Түзмөктүн туруксуз эсинен калибрлөө баалуулуктарын окуңуз
// Нымдуулукту калибрлөө баалуулуктары
байт вал = жаңы байт [2];
// 0x30 (48) дарегинен 1 байт маалыматтарды окуу
val [0] = (байт) device.read (0x30);
// 0x31 (49) дарегинен 1 байт маалыматтарды окуу
val [1] = (байт) device.read (0x31);
int H0 = (val [0] & 0xFF) / 2;
int H1 = (val [1] & 0xFF) / 2;
// 0x36 (54) дарегинен 1 байт маалыматтарды окуу
val [0] = (байт) device.read (0x36);
// 0x37 (55) дарегинен 1 байт маалыматтарды окуу
val [1] = (байт) device.read (0x37);
int H2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// 0x3A (58) дарегинен 1 байт маалыматтарды окуу
val [0] = (байт) device.read (0x3A);
// 0x3B (59) дарегинен 1 байт маалыматтарды окуу
val [1] = (байт) device.read (0x3B);
int H3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Температураны калибрлөө баалуулуктары
// 0x32 (50) дарегинен 1 байт маалыматтарды окуу
int T0 = ((байт) device.read (0x32) & 0xFF);
// 0x33 (51) дарегинен 1 байт маалыматтарды окуу
int T1 = ((байт) device.read (0x33) & 0xFF);
// 0x35 дарегиндеги 1 байт маалыматтарды окуу (53)
int raw = ((байт) device.read (0x35) & 0x0F);
// Температураны Калибрлөө баалуулуктарын 10 битке айландырыңыз
T0 = ((чийки & 0x03) * 256) + T0;
T1 = ((чийки & 0x0C) * 64) + T1;
// 0x3C дарегинен 1 байт маалыматтарды окуу (60)
val [0] = (байт) device.read (0x3C);
// 0x3D (61) дарегинен 1 байт маалыматтарды окуу
val [1] = (байт) device.read (0x3D);
int T2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// 0x3E (62) дарегинен 1 байт маалыматтарды окуу
val [0] = (байт) device.read (0x3E);
// 0x3F (63) дарегинен 1 байт маалыматтарды окуу
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);
эгер (темп> 32767)
{
темп -= 65536;
}
кош нымдуулук = ((1.0 * H1) - (1.0 * H0)) * (1.0 * hum - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0);
кош cTemp = ((T1 - T0) / 8.0) * (темп - 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 абаны нымдагычтар жана муздаткычтар сыяктуу ар кандай керектөөчү продуктыларда колдонулушу мүмкүн. Бул сенсор ошондой эле акылдуу үйдү автоматташтыруу, өнөр жайлык автоматташтыруу, дем алуу жабдуулары, активдерди жана товарларды көзөмөлдөө сыяктуу кеңири аренада колдонулат.
Сунушталууда:
Зымсыз температура жана нымдуулук сенсорунун маалыматтарын Excelге жөнөтүү: 34 кадам
Зымсыз Температура жана Нымдуулук Сенсорунун Берилиштерин Excelге Жөнөтүү: Биз бул жерде NCDдин Температура жана Нымдуулук сенсорун колдонуп жатабыз, бирок кадамдар ncd продуктусу үчүн бирдей болуп калат, андыктан башка ncd зымсыз сенсорлоруңуз болсо, жанында байкоо жүргүзүңүз. Бул текстти токтотуу аркылуу сиз
Arduino Nano - HTS221 Салыштырмалуу нымдуулук жана температура сенсорунун үйрөткүчү: 4 кадам
Arduino Nano - HTS221 Салыштырмалуу нымдуулук жана температура сенсорунун үйрөткүчү: HTS221 - салыштырмалуу нымдуулук жана температура үчүн өтө компакт сыйымдуу санарип сенсор. Бул санариптик серия аркылуу өлчөө маалыматын берүү үчүн сезгич элементти жана аралаш сигналдын атайын интегралдык схемасын (ASIC) камтыйт
Raspberry Pi - HIH6130 I2C нымдуулук жана температура сенсорунун Java үйрөткүчү: 4 кадам
Raspberry Pi - HIH6130 I2C нымдуулук жана температура сенсорунун Java үйрөткүчү: HIH6130 - бул санариптик чыгуусу бар нымдуулук жана температура сенсору. Бул сенсорлор ± 4% RH тактыгын камсыз кылат. Өнөр жайдын алдыңкы узак мөөнөттүү туруктуулугу, чыныгы температуранын ордун толтуруучу санариптик I2C, индустриянын алдыңкы ишенимдүүлүгү, энергияны үнөмдөө
IoT Long Range Зымсыз Температура жана Нымдуулук Сенсорунун маалыматтарын Google Баракка жөнөтүү: 39 кадам
IoT Long Range Wireless Temperature and Humidity Sensor маалыматтарын Google Sheetке жөнөтүү: Биз бул жерде NCDдин температурасы жана нымдуулугу сенсорун колдонобуз, бирок кадамдар ncd продуктусу үчүн бирдей, ошондуктан сизде башка ncd зымсыз сенсорлору болсо, байкап көрүңүз жанында. Бул текстти токтотуу аркылуу сиз
Температура, Салыштырмалуу Нымдуулук, Raspberry Pi жана TE Connection MS8607-02BA01ди колдонуп атмосфералык басымды жазуучу: 22 кадам (Сүрөттөр менен)
Температура, салыштырмалуу нымдуулук, Raspberry Pi жана TE туташуусун колдонуу менен атмосфералык басымдын каттоосу MS8607-02BA01: Киришүү: Бул долбоордо мен температураны нымдуулукка жана атмосфералык басымга орнотуу системасын этап менен орнотууну көрсөтөм. Бул долбоор Raspberry Pi 3 Model B жана TE Connectivity экологиялык сенсор MS8607-02BA чипине негизделген