Мазмуну:

Raspberry Pi MCP9808 Температура Сенсору Python Үйрөткүчү: 4 кадам
Raspberry Pi MCP9808 Температура Сенсору Python Үйрөткүчү: 4 кадам

Video: Raspberry Pi MCP9808 Температура Сенсору Python Үйрөткүчү: 4 кадам

Video: Raspberry Pi MCP9808 Температура Сенсору Python Үйрөткүчү: 4 кадам
Video: Чтение датчиков температуры в Python на Raspberry Pi 2024, Ноябрь
Anonim
Image
Image
Сизге эмне керек.. !!
Сизге эмне керек.. !!

MCP9808 абдан так санарип температура сенсору ± 0,5 ° C I2C мини модулу. Алар температураны сезүү колдонмолорун жеңилдетүүчү колдонуучу программалоочу реестрлер менен камтылган. MCP9808 жогорку тактыктагы температура сенсору форма фактору жана интеллектуалдык жактан индустриялык стандартка айланып, санариптик, I2C форматында калибрленген, сызыктуу сенсор сигналдарын берет. Бул жерде Raspberry Pi колдонулган python коду менен демонстрация.

1 -кадам: Сизге эмне керек..

Сизге эмне керек.. !!
Сизге эмне керек.. !!

1. Raspberry Pi

2. MCP9808

3. I²C кабели

4. Raspberry Pi үчүн I²C Shield

5. Ethernet кабели

2 -кадам: Байланыштар

Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар

Малина пи үчүн I2C калканчын алыңыз жана аны акырын малинанын пи gpio төөнөгүчтөрүнүн үстүнө басыңыз.

Андан кийин I2C кабелинин бир учун MCP9808 сенсоруна, экинчи учун I2C калканчына туташтырыңыз.

Ethernet кабелин пи -ге туташтырыңыз же WiFi модулун колдонсоңуз болот.

Байланыштар жогорудагы сүрөттө көрсөтүлгөн.

3 -кадам: Код

MCP9808 үчүн питон кодун биздин GitHub репозиторийинен көчүрүп алса болот- Dcube Store

Мына ушуга шилтеме:

github.com/DcubeTechVentures/MCP9808

MCP9808 маалымат барагын бул жерден тапса болот:

ww1.microchip.com/downloads/en/DeviceDoc/25…

Биз SMBus китепканасын python коду үчүн колдонгонбуз, малина пи боюнча SMBus орнотуу кадамдары бул жерде сүрөттөлгөн:

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

Сиз бул жерден кодду көчүрүп алсаңыз болот, ал төмөнкүчө берилген:

# Эркин лицензия менен бөлүштүрүлгөн.

# Аны каалагандай колдон, пайда же бекер, эгерде ал тиешелүү эмгектеринин лицензиясына туура келсе.

# MCP9808

# Бул код Dcube дүкөнүндө жеткиликтүү MCP9808_I2CS I2C Mini модулу менен иштөө үчүн иштелип чыккан.

smbus импорттоо

импорттоо убактысы

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

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

# MCP9808 дареги, 0x18 (24)

# Конфигурация реестрин тандоо, 0x01 (1)

# 0x0000 (00) Үзгүлтүксүз которуу режими, Демейки күйгүзүү

конфигурация = [0x00, 0x00]

bus.write_i2c_block_data (0x18, 0x01, конфигурация)

# MCP9808 дареги, 0x18 (24)

# Тандоо чечим rgister, 0x08 (8)

# 0x03 (03) токтому = +0.0625 / C

bus.write_byte_data (0x18, 0x08, 0x03)

time.sleep (0.5) # MCP9808 дареги, 0x18 (24)

# 0x05 (5), 2 байт маалыматтарын кайра окуу

# Temp MSB, TEMP LSB

маалыматтар = bus.read_i2c_block_data (0x18, 0x05, 2)

# Маалыматтарды 13 битке айландырыңыз

ctemp = ((маалыматтар [0] & 0x1F) * 256) + маалыматтар [1]

эгер ctemp> 4095:

ctemp -= 8192

ctemp = ctemp * 0.0625

ftemp = ctemp * 1.8 + 32

# Экранга маалыматтарды чыгаруу

басып чыгаруу "Цельсий боюнча температура: %.2f C" %ctemp

басып чыгаруу "Фаренгейт температурасы: %.2f F" %ftemp

4 -кадам: Тиркемелер..:

MCP9808 Санариптик Температура Сенсорунда өнөр жайлык тоңдургучтар жана муздаткычтар, ар кандай тамак -аш процессорлору камтылган, өнөр жай деңгээлиндеги бир нече тиркемелер бар. Бул сенсор ар кандай жеке компьютерлерде, серверлерде жана башка PC перифериялык түзүлүштөрүндө колдонулушу мүмкүн.

Сунушталууда: