Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
HIH6130 - датчик влажности и температуры с цифровым выходом. Эти датчики обеспечивают уровень точности ± 4% относительной влажности. Обладая лучшей в отрасли долговременной стабильностью, истинной температурной компенсацией цифрового I2C, лучшей в отрасли надежностью, энергоэффективностью и сверхмалым размером корпуса и опциями.
В этом руководстве было проиллюстрировано взаимодействие сенсорного модуля HIH6130 с Arduino nano. Для считывания значений температуры и влажности мы использовали Arduino с адаптером I2C. Этот адаптер I2C делает подключение к модулю датчика простым и надежным.
Шаг 1: Требуемое оборудование:
Материалы, которые нам нужны для достижения нашей цели, включают следующие компоненты оборудования:
1. HIH6130
2. Ардуино нано
3. Кабель I2C
4. I2C Shield для arduino nano
Шаг 2: Подключение оборудования:
В разделе «Подключение оборудования» в основном объясняются проводные соединения, необходимые между датчиком и Arduino nano. Обеспечение правильных соединений является основной необходимостью при работе с любой системой для достижения желаемого результата. Итак, необходимые подключения следующие:
HIH6130 будет работать по I2C. Вот пример схемы подключения, демонстрирующий, как подключить каждый интерфейс датчика.
Изначально плата настроена для интерфейса I2C, поэтому мы рекомендуем использовать это подключение, если вы не сторонник этого.
Все, что вам нужно, это четыре провода! Требуются только четыре соединения, выводы Vcc, Gnd, SCL и SDA, которые подключаются с помощью кабеля I2C.
Эти соединения показаны на рисунках выше.
Шаг 3: Код для измерения влажности и температуры:
Начнем с кода Arduino.
При использовании сенсорного модуля с Arduino мы включаем библиотеку Wire.h. Библиотека Wire содержит функции, которые облегчают обмен данными i2c между датчиком и платой Arduino.
Полный код Arduino приведен ниже для удобства пользователя:
#включают
// Адрес I2C HIH6130 0x27 (39)
#define Addr 0x27
установка void ()
{
// Инициализируем связь I2C как МАСТЕР
Wire.begin ();
// Инициализируем последовательную связь, устанавливаем скорость передачи = 9600
Serial.begin (9600);
задержка (300);
}
пустой цикл ()
{
данные типа int без знака [4];
// Запуск передачи I2C
Wire.beginTransmission (адрес);
// Выбираем регистр данных
Wire.write (0x00);
// Остановка передачи I2C
Wire.endTransmission ();
// Запрос 4 байта данных
Wire.requestFrom (Адрес, 4);
// Читаем 4 байта данных
// влажность msb, влажность lsb, temp msb, temp lsb
если (Wire.available () == 4)
{
данные [0] = Wire.read ();
данные [1] = Wire.read ();
данные [2] = Wire.read ();
данные [3] = Wire.read ();
}
// Преобразуем данные в 14-битные
влажность с плавающей запятой = ((((данные [0] & 0x3F) * 256) + данные [1]) * 100.0) / 16383.0;
int temp = ((данные [2] * 256) + (данные [3] & 0xFC)) / 4;
float cTemp = (temp / 16384.0) * 165.0 - 40.0;
float fTemp = cTemp * 1.8 + 32;
// Выводим данные на последовательный монитор
Serial.print («Относительная влажность:»);
Серийный отпечаток (влажность);
Serial.println («% относительной влажности»);
Serial.print («Температура в градусах Цельсия:»);
Serial.print (cTemp);
Serial.println ("C");
Serial.print («Температура по Фаренгейту:»);
Serial.print (fTemp);
Serial.println ("F");
задержка (500);
}
В библиотеке проводов Wire.write () и Wire.read () используются для записи команд и чтения выходного сигнала датчика.
Serial.print () и Serial.println () используются для отображения выходных данных датчика на последовательном мониторе Arduino IDE.
Выход датчика показан на картинке выше.
Шаг 4: Приложения:
HIH6130 можно использовать для точного измерения относительной влажности и температуры в кондиционерах, измерении энтальпии, термостатах, увлажнителях / осушителях и гигростатах для поддержания комфорта пассажиров. Его также можно использовать в воздушных компрессорах, метеостанциях и телекоммуникационных шкафах.