Мазмұны:

HDC1000 және Raspberry Pi көмегімен температура мен ылғалдылықты өлшеу: 4 қадам
HDC1000 және Raspberry Pi көмегімен температура мен ылғалдылықты өлшеу: 4 қадам

Бейне: HDC1000 және Raspberry Pi көмегімен температура мен ылғалдылықты өлшеу: 4 қадам

Бейне: HDC1000 және Raspberry Pi көмегімен температура мен ылғалдылықты өлшеу: 4 қадам
Бейне: HUARONG HDC1000 Двухкомпонентное литье стекла заднего фонаря 2024, Қараша
Anonim
Image
Image

HDC1000 - өте төмен қуатта өлшеудің дәлдігін қамтамасыз ететін кіріктірілген температура сенсоры бар цифрлық ылғалдылық сенсоры. Құрылғы жаңа сыйымдылық сенсорының негізінде ылғалдылықты өлшейді. Ылғалдылық пен температура сенсорлары зауытта калибрленген. Ол -40 ° C -тан +125 ° C -қа дейінгі температура аралығында жұмыс істейді.

Бұл оқулықта HDC1000 сенсорлық модулінің таңқурай пиі бар интерфейсі көрсетілген және оны питон тілінде бағдарламалау да суреттелген. Температура мен ылғалдылық мәндерін оқу үшін біз I2C адаптері бар таңқурай pi қолдандық, бұл I2C адаптері сенсор модуліне қосылуды жеңіл әрі сенімді етеді.

1 -қадам: Қажетті жабдық:

Қажетті жабдық
Қажетті жабдық
Қажетті жабдық
Қажетті жабдық
Қажетті жабдық
Қажетті жабдық

Мақсатқа жету үшін бізге қажет материалдар келесі аппараттық компоненттерді қамтиды:

1. HDC1000

2. Raspberry Pi

3. I2C кабелі

4. Таңқурайға арналған I2C қалқаны

5. Ethernet кабелі

2 -қадам: Жабдықты қосу:

Жабдықты қосу
Жабдықты қосу
Жабдықты қосу
Жабдықты қосу

Аппаратты қосу бөлімі негізінен сенсор мен таңқурай пи арасындағы қажетті сымдық қосылыстарды түсіндіреді. Қажетті шығыс үшін кез келген жүйеде жұмыс істеу кезінде дұрыс қосылуды қамтамасыз ету - бұл негізгі қажеттілік. Сонымен, қажетті байланыстар келесідей:

HDC1000 I2C режимінде жұмыс істейді. Датчиктің әр интерфейсін қалай қосуға болатынын көрсететін электр схемасының мысалы.

Қаптамадан тыс тақта I2C интерфейсі үшін конфигурацияланған, сондықтан егер сіз агностикалық болмасаңыз, осы қосылымды пайдалануды ұсынамыз.

Сізге тек төрт сым қажет! Vcc, Gnd, SCL және SDA түйреуіштеріне тек төрт қосылым қажет және олар I2C кабелінің көмегімен қосылған.

Бұл байланыстар жоғарыдағы суреттерде көрсетілген.

3 -қадам: Температура мен ылғалдылықты өлшеу коды:

Температура мен ылғалдылықты өлшеу коды
Температура мен ылғалдылықты өлшеу коды

Таңқурай пиін қолданудың артықшылығы - бұл сенсорды интерфейске қосу үшін тақтаны бағдарламалайтын тілдің икемділігін қамтамасыз етеді. Бұл тақтаның артықшылығын пайдаланып, біз мұнда питонда бағдарламалауды көрсетеміз. HDC1000 үшін питон кодын біздің GitHub қауымдастығынан жүктеуге болады, бұл Dcube Store.

Пайдаланушыларға ыңғайлы болу үшін біз кодты осында түсіндіреміз:

Кодтаудың бірінші қадамы ретінде питон жағдайында SMBus кітапханасын жүктеу қажет, себебі бұл кітапхана кодта қолданылатын функцияларды қолдайды. Сонымен, кітапхананы жүктеу үшін келесі сілтемеге кіруге болады:

pypi.python.org/pypi/smbus-cffi/0.5.1

Бұл сенсордың жұмыс питон кодын мына жерден көшіруге болады:

smbus импорттау

импорт уақыты

# I2C автобусын алыңыз

автобус = smbus. SMBus (1)

# HDC1000 мекенжайы, 0x40 (64)

# Конфигурация регистрін таңдаңыз, 0x02 (02)

# 0x30 (48) Температура, ылғалдылық қосылған, резолюция = 14 бит, жылытқыш қосулы

bus.write_byte_data (0x40, 0x02, 0x30)

# HDC1000 мекенжайы, 0x40 (64)

# Температураны өлшеу пәрменін жіберу, 0x00 (00)

bus.write_byte (0x40, 0x00)

уақыт.ұйқы (0.5)

# HDC1000 мекенжайы, 0x40 (64)

# Деректерді кері оқыңыз, 2 байт

# темп MSB, temp LSB

data0 = bus.read_byte (0x40)

data1 = bus.read_byte (0x40)

# Деректерді түрлендіру

temp = (деректер0 * 256) + деректер1

cTemp = (temp / 65536.0) * 165.0 - 40

fTemp = cTemp * 1.8 + 32

# HDC1000 мекенжайы, 0x40 (64)

# Ылғалдылықты өлшеу пәрменін жіберу, 0x01 (01)

bus.write_byte (0x40, 0x01)

уақыт.ұйқы (0.5)

# HDC1000 мекенжайы, 0x40 (64)

# Деректерді кері оқыңыз, 2 байт

# ылғалдылық MSB, ылғалдылық LSB

data0 = bus.read_byte (0x40)

data1 = bus.read_byte (0x40)

# Деректерді түрлендіру

ылғалдылық = (деректер0 * 256) + деректер1

ылғалдылық = (ылғалдылық / 65536,0) * 100,0

# Деректерді экранға шығару

басып шығару «Салыстырмалы ылғалдылық: %.2f %%» %ылғалдылық

басып шығару «Цельсий бойынша температура: %.2f C» %cTemp

басып шығару «Фаренгейт температурасы: %.2f F» %fTemp

Төменде келтірілген код бөлігіне питон кодтарын дұрыс орындау үшін қажет кітапханалар кіреді.

smbus импорттау

импорт уақыты

Кодты пәрмен жолында төменде көрсетілген пәрменді теру арқылы орындауға болады.

$> python HDC1000.py gt; python HDC1000.py

Датчиктің шығысы пайдаланушының анықтамасы үшін жоғарыдағы суретте де көрсетілген.

4 -қадам: Өтініштер:

Қолданбалар
Қолданбалар

HDC1000 жылыту, желдету және кондиционерлеу (HVAC), ақылды термостаттар мен бөлме мониторларында қолдануға болады. Бұл сенсор сонымен қатар принтерлерде, қол өлшегіштерде, медициналық құрылғыларда, жүктерді тасымалдауда, сондай -ақ автокөлік әйнектерін тазартуда қолданылады.

Ұсынылған: