![HTS221 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: 4 кадам HTS221 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: 4 кадам](https://i.howwhatproduce.com/images/002/image-3228-22-j.webp)
Мазмуну:
2025 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2025-01-23 14:51
![Image Image](https://i.howwhatproduce.com/images/002/image-3228-24-j.webp)
![](https://i.ytimg.com/vi/JsGVC_Iriog/hqdefault.jpg)
HTS221 салыштырмалуу нымдуулук жана температура үчүн өтө компакт сыйымдуу санарип сенсор. Бул санариптик сериялык интерфейстер аркылуу өлчөө маалыматын берүү үчүн сезгич элементти жана аралаш сигналга тиешелүү интегралдык микросхеманы (ASIC) камтыйт. Бул көптөгөн өзгөчөлүктөр менен интеграцияланган, бул нымдуулукту жана температураны өлчөө үчүн эң ылайыктуу сенсорлордун бири.
Бул окуу куралында HTS221 сенсордук модулунун малина пи менен интерфейси көрсөтүлөт жана анын питон тили менен программаланышы да сүрөттөлгөн. Нымдуулукту жана температураны баалоо үчүн I2C adapter. This I2C адаптери менен малина пи колдонгонбуз, сенсор модулуна туташууну жеңил жана ишенимдүү кылат.
1 -кадам: Аппараттык камсыздоо талап кылынат:
![Аппараттык камсыздоо талап кылынат Аппараттык камсыздоо талап кылынат](https://i.howwhatproduce.com/images/002/image-3228-25-j.webp)
![Аппараттык камсыздоо талап кылынат Аппараттык камсыздоо талап кылынат](https://i.howwhatproduce.com/images/002/image-3228-26-j.webp)
![Аппараттык камсыздоо талап кылынат Аппараттык камсыздоо талап кылынат](https://i.howwhatproduce.com/images/002/image-3228-27-j.webp)
Максатыбызга жетүү үчүн бизге керектүү материалдар төмөнкү аппараттык компоненттерди камтыйт:
1. HTS221
2. Raspberry Pi
3. I2C кабели
4. Малина pi үчүн I2C Shield
5. Ethernet кабели
2 -кадам: Аппараттык туташуу:
![Аппараттык туташуу Аппараттык туташуу](https://i.howwhatproduce.com/images/002/image-3228-28-j.webp)
![Аппараттык туташуу Аппараттык туташуу](https://i.howwhatproduce.com/images/002/image-3228-29-j.webp)
Аппараттык туташуу бөлүмү негизинен сенсор менен малина пи ортосунда талап кылынган зым байланыштарын түшүндүрөт. Туура туташууларды камсыздоо каалаган өндүрүш үчүн кандайдыр бир системада иштеп жатканда негизги зарылчылык болуп саналат. Ошентип, керектүү байланыштар төмөнкүлөр:
HTS221 I2C үстүндө иштейт. Бул жерде сенсордун ар бир интерфейсин кантип зым менен жабуу керектигин көрсөтүүчү зымдардын схемасы келтирилген.
Кутудан тышкары, такта I2C интерфейси үчүн конфигурацияланган, андыктан эгер сиз агностиксиз болсоңуз, анда бул байланышты колдонууну сунуштайбыз.
Сизге болгону төрт зым керек! Vcc, Gnd, SCL жана SDA төөнөгүчтөрүнө төрт гана туташуу керек жана алар I2C кабелинин жардамы менен туташкан.
Бул байланыштар жогорудагы сүрөттөрдө көрсөтүлгөн.
3 -кадам: Нымдуулукту жана температураны өлчөө коду:
![Нымдуулукту жана температураны өлчөө коду Нымдуулукту жана температураны өлчөө коду](https://i.howwhatproduce.com/images/002/image-3228-30-j.webp)
Малина пи колдонуунун артыкчылыгы, башкача айтканда, сенсорго интерфейс үчүн тактаны программалоону каалаган программалоо тилинин ийкемдүүлүгүн камсыздайт. Бул тактанын артыкчылыгынан пайдаланып, биз бул жерде анын питондогу программалоосун көрсөтүп жатабыз. HTS221 үчүн питон кодун биздин бардыгын көзөмөлдөө жамаатыбыздан жүктөп алсаңыз болот.
Колдонуучулардын ыңгайлуулугу үчүн, биз бул жерде кодду түшүндүрүп жатабыз:
Коддоонун биринчи кадамы катары сиз питон үчүн smbus китепканасын жүктөп алышыңыз керек, анткени бул китепкана коддо колдонулган функцияларды колдойт. Ошентип, китепкананы жүктөө үчүн төмөнкү шилтемеге кире аласыз:
pypi.python.org/pypi/smbus-cffi/0.5.1
Бул сенсордун жумушчу питон кодун бул жерден көчүрүп алсаңыз болот:
smbus импорттоо
импорттоо убактысы
# I2C автобусун алыңыз
автобус = smbus. SMBus (1)
# HTS221 дареги, 0x5F (95)
# Орточо конфигурация регистрин тандоо, 0x10 (16)
# 0x1B (27) Температуранын орточо үлгүлөрү = 256, Нымдуулуктун орточо үлгүлөрү = 512
bus.write_byte_data (0x5F, 0x10, 0x1B)
# HTS221 дареги, 0x5F (95)
# Башкаруу регистрин тандоо1, 0x20 (32)
# 0x85 (133) Power ON, Үзгүлтүксүз жаңыртуу, Маалымат чыгаруу ылдамдыгы = 1 Гц
bus.write_byte_data (0x5F, 0x20, 0x85)
убакыт.уйку (0.5)
# HTS221 дареги, 0x5F (95)
# Түзмөктүн эстутумунан калибрлөө баалуулуктарын окуңуз
# Нымдуулукту калибрлөө баалуулуктары
# 0x30 (48) маалыматтарын кайра окуу, 1 байт
val = bus.read_byte_data (0x5F, 0x30)
H0 = val / 2
# 0x31 (49) маалыматтарын кайра окуу, 1 байт
val = bus.read_byte_data (0x5F, 0x31)
H1 = val /2
# Маалыматтарды 0x36 (54), 2 байттан кайра окуу
val0 = bus.read_byte_data (0x5F, 0x36)
val1 = bus.read_byte_data (0x5F, 0x37)
H2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# 0x3A (58), 2 байттан кайра маалыматтарды окуу
val0 = bus.read_byte_data (0x5F, 0x3A)
val1 = bus.read_byte_data (0x5F, 0x3B)
H3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Температура калибрлөө баалуулуктары
# 0x32 (50), 1 байттан кайра маалыматтарды окуу
T0 = bus.read_byte_data (0x5F, 0x32)
T0 = (T0 & 0xFF)
# Окууну 0x32 (51), 1 байттан кайра окуу
T1 = bus.read_byte_data (0x5F, 0x33)
T1 = (T1 & 0xFF)
# 0x35 (53), 1 байттан кайра маалыматтарды окуу
raw = bus.read_byte_data (0x5F, 0x35)
чийки = (чийки & 0x0F)
# Температураны калибрлөө баалуулуктарын 10 битке айландырыңыз
T0 = ((чийки & 0x03) * 256) + T0
T1 = ((чийки & 0x0C) * 64) + T1
# Окууну 0x3C (60), 2 байттан кайра окуу
val0 = bus.read_byte_data (0x5F, 0x3C)
val1 = bus.read_byte_data (0x5F, 0x3D)
T2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# 0x3E (62), 2 байттан кайра маалыматтарды окуу
val0 = bus.read_byte_data (0x5F, 0x3E)
val1 = bus.read_byte_data (0x5F, 0x3F)
T3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# 0x28 (40) маалыматын 0x80 (128) буйругу менен, 4 байт менен окуу
# нымдуулук msb, нымдуулук lsb, temp msb, temp lsb
маалыматтар = bus.read_i2c_block_data (0x5F, 0x28 | 0x80, 4)
# Маалыматтарды айландыруу
нымдуулук = (маалымат [1] * 256) + маалымат [0]
нымдуулук = ((1.0 * H1) - (1.0 * H0)) * (1.0 * нымдуулук - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0)
темп = (маалымат [3] * 256) + маалымат [2]
эгерде темп> 32767:
темп -= 65536
cTemp = ((T1 - T0) / 8.0) * (темп - T2) / (T3 - T2) + (T0 / 8.0)
fTemp = (cTemp * 1.8) + 32
# Экранга маалыматтарды чыгаруу
басып чыгаруу "Салыштырмалуу нымдуулук: %.2f %%" %нымдуулук
басып чыгаруу "Цельсий боюнча температура: %.2f C" %cTemp
басып чыгаруу "Фаренгейт температурасы: %.2f F" %fTemp
Төмөндө айтылган коддун бөлүгү python коддорунун туура аткарылышы үчүн керектүү китепканаларды камтыйт.
smbus импорттоо
импорттоо убактысы
Код төмөнкү буйрукту буйрук сабына терүү менен аткарылышы мүмкүн.
$> python HTS221.py
Сенсордун чыгышы да колдонуучунун маалымдамасы үчүн жогорудагы сүрөттө көрсөтүлгөн.
4 -кадам: Тиркемелер:
![Колдонмолор Колдонмолор](https://i.howwhatproduce.com/images/002/image-3228-31-j.webp)
HTS221 абаны нымдагычтар жана муздаткычтар сыяктуу ар кандай керектөөчү продуктыларда колдонулушу мүмкүн. Бул сенсор ошондой эле акылдуу үйдү автоматташтыруу, өнөр жайлык автоматташтыруу, дем алуу жабдуулары, активдерди жана товарларды көзөмөлдөө сыяктуу кеңири аренада колдонулат.
Сунушталууда:
HIH6130 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: 4 кадам
![HIH6130 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: 4 кадам HIH6130 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: 4 кадам](https://i.howwhatproduce.com/images/010/image-27334-j.webp)
HIH6130 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: HIH6130 - бул санариптик чыгышы бар нымдуулук жана температура сенсору. Бул сенсорлор ± 4% RH тактыгын камсыз кылат. Өнөр жайдын алдыңкы узак мөөнөттүү туруктуулугу, чыныгы температуранын ордун толтуруучу санариптик I2C, индустриянын алдыңкы ишенимдүүлүгү, энергияны үнөмдөө
HDC1000 жана Arduino Nano аркылуу температураны жана нымдуулукту өлчөө: 4 кадам
![HDC1000 жана Arduino Nano аркылуу температураны жана нымдуулукту өлчөө: 4 кадам HDC1000 жана Arduino Nano аркылуу температураны жана нымдуулукту өлчөө: 4 кадам](https://i.howwhatproduce.com/images/010/image-27335-j.webp)
HDC1000 жана Arduino Nano аркылуу температураны жана нымдуулукту өлчөө: HDC1000 - бул өтө аз кубаттуулукта мыкты өлчөө тактыгын камсыз кылган интегралдык температура сенсоруна ээ болгон санариптик нымдуулук сенсору. Аппарат нымдуулукту жаңы сыйымдуу сенсордун негизинде өлчөйт. Нымдуулук жана температура сенсорлору бетке
HTS221 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: 4 кадам
![HTS221 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: 4 кадам HTS221 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: 4 кадам](https://i.howwhatproduce.com/images/010/image-27336-j.webp)
HTS221 жана Arduino Nano аркылуу нымдуулукту жана температураны өлчөө: HTS221 - салыштырмалуу нымдуулук жана температура үчүн өтө компакт сыйымдуу санарип сенсор. Бул санариптик серия аркылуу өлчөө маалыматын берүү үчүн сезгич элементти жана аралаш сигналдын атайын интегралдык схемасын (ASIC) камтыйт
HIH6130 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: 4 кадам
![HIH6130 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: 4 кадам HIH6130 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: 4 кадам](https://i.howwhatproduce.com/images/002/image-3257-42-j.webp)
HIH6130 жана Raspberry Pi аркылуу нымдуулукту жана температураны өлчөө: HIH6130 - бул санариптик чыгышы бар нымдуулук жана температура сенсору. Бул сенсорлор ± 4% RH тактыгын камсыз кылат. Өнөр жайдын алдыңкы узак мөөнөттүү туруктуулугу, чыныгы температуранын ордун толтуруучу санариптик I2C, индустриянын алдыңкы ишенимдүүлүгү, энергияны үнөмдөө
HTS221 жана бөлүкчө фотонун колдонуу менен нымдуулукту жана температураны өлчөө: 4 кадам
![HTS221 жана бөлүкчө фотонун колдонуу менен нымдуулукту жана температураны өлчөө: 4 кадам HTS221 жана бөлүкчө фотонун колдонуу менен нымдуулукту жана температураны өлчөө: 4 кадам](https://i.howwhatproduce.com/images/002/image-3265-45-j.webp)
HTS221 жана Particle Photon аркылуу нымдуулукту жана температураны өлчөө: HTS221 - салыштырмалуу нымдуулук жана температура үчүн өтө компакт сыйымдуу санарип сенсор. Бул санариптик серия аркылуу өлчөө маалыматын берүү үчүн сезгич элементти жана аралаш сигналдын атайын интегралдык схемасын (ASIC) камтыйт