Мазмуну:
- 1 -кадам: Аппараттык камсыздоо талап кылынат:
- 2 -кадам: Аппараттык туташуу:
- 3 -кадам: Температура жана нымдуулукту өлчөө коду:
- 4 -кадам: Тиркемелер:
Video: HDC1000 жана Arduino Nano аркылуу температураны жана нымдуулукту өлчөө: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:39
HDC1000 - бул санариптик нымдуулук сенсору, ал өтө аз кубаттуулукта мыкты өлчөө тактыгын камсыз кылган интегралдык температура сенсору менен. Аппарат нымдуулукту жаңы сыйымдуу сенсордун негизинде өлчөйт. Нымдуулук жана температура сенсорлору заводдо калибрленген. Бул толук -40 ° Cдан +125 ° Cга чейинки температура диапазонунда иштейт.
Бул окуу куралында HDC1000 сенсор модулунун arduino нано менен интерфейси сүрөттөлгөн. Температура жана нымдуулук баалуулуктарын окуу үчүн, I2c adapter. This I2C адаптери менен arduino колдонгонбуз, сенсор модулуна туташууну жеңил жана ишенимдүү кылат.
1 -кадам: Аппараттык камсыздоо талап кылынат:
Максатыбызга жетүү үчүн бизге керектүү материалдар төмөнкү аппараттык компоненттерди камтыйт:
1. HDC1000
2. Ардуино Нано
3. I2C кабели
4. Arduino Nano үчүн I2C Shield
2 -кадам: Аппараттык туташуу:
Аппараттык туташуу бөлүмү негизинен сенсор менен arduino нанонун ортосунда талап кылынган зым байланыштарын түшүндүрөт. Туура туташууларды камсыздоо каалаган өндүрүш үчүн кандайдыр бир системада иштеп жатканда негизги зарылчылык болуп саналат. Ошентип, керектүү байланыштар төмөнкүлөр:
HDC1000 I2Cде иштейт. Бул жерде сенсордун ар бир интерфейсин кантип зым менен жабуу керектигин көрсөтүүчү зымдардын схемасы келтирилген.
Кутудан тышкары, такта I2C интерфейси үчүн конфигурацияланган, андыктан эгер сиз агностиксиз болсоңуз, анда бул байланышты колдонууну сунуштайбыз.
Сизге болгону төрт зым керек! Vcc, Gnd, SCL жана SDA төөнөгүчтөрүнө төрт гана туташуу керек жана алар I2C кабелинин жардамы менен туташкан.
Бул байланыштар жогорудагы сүрөттөрдө көрсөтүлгөн.
3 -кадам: Температура жана нымдуулукту өлчөө коду:
Эми arduino коду менен баштайлы.
Arduino менен сенсор модулун колдонуп жатканда, биз Wire.h китепканасын камтыйт. "Wire" китепканасы сенсор менен arduino тактасынын ортосундагы i2c байланышын жеңилдетүүчү функцияларды камтыйт.
Колдонуучунун ыңгайлуулугу үчүн ардуино коду төмөндө келтирилген:
#кошуу
// HDC1000 I2C дареги 0x40 (64)
#define Addr 0x40
жараксыз орнотуу ()
{
// I2C байланышын MASTER катары баштаңыз
Wire.begin ();
// Сериялык байланышты баштоо, байдын ылдамдыгын = 9600
Serial.begin (9600);
// I2C байланышын баштайт
Wire.beginTransmission (Addr);
// Конфигурация реестрин тандоо
Wire.write (0x02);
// Температура, нымдуулук иштетилген, ажыратуу = 14 бит, жылыткыч күйгүзүлгөн
Wire.write (0x30);
// I2C берүүнү токтотуу
Wire.endTransmission ();
кечигүү (300);
}
боштук цикл ()
{
кол коюлбаган int маалыматтары [2];
// I2C байланышын баштайт
Wire.beginTransmission (Addr);
// Температураны өлчөө буйругун жөнөтүү
Wire.write (0x00);
// I2C берүүнү токтотуу
Wire.endTransmission ();
кечигүү (500);
// 2 байт маалымат сураңыз
Wire.requestFrom (Addr, 2);
// 2 байт маалыматтарды окуңуз
// темп msb, temp lsb
эгер (Wire.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Маалыматты конвертациялоо
int temp = (маалымат [0] * 256) + маалымат [1];
float cTemp = (temp / 65536.0) * 165.0 - 40;
float fTemp = cTemp * 1.8 + 32;
// I2C байланышын баштайт
Wire.beginTransmission (Addr);
// Нымдуулукту өлчөө буйругун жөнөтүү
Wire.write (0x01);
// I2C берүүнү токтотуу
Wire.endTransmission ();
кечигүү (500);
// 2 байт маалымат сураңыз
Wire.requestFrom (Addr, 2);
// 2 байт маалыматтарды окуңуз
// нымдуулук msb, нымдуулук lsb
эгер (Wire.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Маалыматты конвертациялоо
калкыма нымдуулук = (маалымат [0] * 256) + маалымат [1];
нымдуулук = (нымдуулук / 65536.0) * 100.0;
// Маалыматтарды сериялык мониторго чыгаруу
Serial.print ("Салыштырмалуу нымдуулук:");
Serial.print (нымдуулук);
Serial.println (" %RH");
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 -кадам: Тиркемелер:
HDC1000 жылытуу, вентиляция жана кондиционерлөө (HVAC), Smart Thermostats жана Room Monitorдо колдонулушу мүмкүн. Бул сенсор ошондой эле Принтерлерде, Колдогу эсептегичтерде, Медициналык приборлордо, Жүк ташууда, ошондой эле Автомобиль айнектерин тазалоодо колдонмосун табат.
Сунушталууда:
HIH6130 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: 4 кадам
HIH6130 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: HIH6130 - бул санариптик чыгышы бар нымдуулук жана температура сенсору. Бул сенсорлор ± 4% RH тактыгын камсыз кылат. Өнөр жайдын алдыңкы узак мөөнөттүү туруктуулугу, чыныгы температуранын ордун толтуруучу санариптик I2C, индустриянын алдыңкы ишенимдүүлүгү, энергияны үнөмдөө
HTS221 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: 4 кадам
HTS221 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: HTS221 - салыштырмалуу нымдуулук жана температура үчүн өтө компакт сыйымдуу санарип сенсор. Бул санариптик серия аркылуу өлчөө маалыматын берүү үчүн сезгич элементти жана аралаш сигналдын атайын интегралдык схемасын (ASIC) камтыйт
HTS221 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: 4 кадам
HTS221 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: HTS221 - салыштырмалуу нымдуулук жана температура үчүн өтө компакт сыйымдуу санарип сенсор. Бул санариптик серия аркылуу өлчөө маалыматын берүү үчүн сезгич элементти жана аралаш сигналдын атайын интегралдык схемасын (ASIC) камтыйт
HIH6130 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: 4 кадам
HIH6130 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: HIH6130 - бул санариптик чыгышы бар нымдуулук жана температура сенсору. Бул сенсорлор ± 4% RH тактыгын камсыз кылат. Өнөр жайдын алдыңкы узак мөөнөттүү туруктуулугу, чыныгы температуранын ордун толтуруучу санариптик I2C, индустриянын алдыңкы ишенимдүүлүгү, энергияны үнөмдөө
HDC1000 жана Raspberry Pi менен температураны жана нымдуулукту өлчөө: 4 кадам
HDC1000 жана Raspberry Pi менен температураны жана нымдуулукту өлчөө: HDC1000 - бул өтө аз кубаттуулукта мыкты өлчөө тактыгын камсыз кылган интегралдык температура сенсоруна ээ болгон санарип нымдуулук сенсору. Аппарат нымдуулукту жаңы сыйымдуу сенсордун негизинде өлчөйт. Нымдуулук жана температура сенсорлору бетке