Мазмуну:

RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз: 11 кадам
RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз: 11 кадам

Video: RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз: 11 кадам

Video: RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз: 11 кадам
Video: MKS Gen L — Марлин 1 1 9 (configuration.h) 2024, Декабрь
Anonim
RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз
RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз
RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз
RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз
RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз
RaspberryPI жана DHT22ди колдонуп Apple HomeKit температура сенсорун (DHT22) түзүңүз

Мен төмөн баада температура / нымдуулук сенсорун издеп жүрдүм, анткени менин жазгы боштугумда эмне болуп жатканын көзөмөлдөө үчүн колдоно алам, анткени бул жазда ал абдан нымдуу жана нымдуу болгон. Ошентип, мен ал жерге коюп, алыстан көзөмөлдөп турган акылга сыярлык сенсор издеп жүрдүм. Жерде болгон жана RaspBerry PI жана NodeMCU менен иштөө үчүн көрсөтүлгөн нерселерди бир аз казгандан кийин (бул тууралуу кийинчерээк). Мен DHT22 сенсорун чечтим. Бул арзан, температура жана нымдуулукту сунуш кылган жана жергиликтүү түрдө жеткиликтүү болгон.

Апрель 2019ду жаңыртыңыз - pigpiod китепканасын бир нече жыл колдонгондон кийин, мен bcm2835 китепканасына өттүм жана бул жерде жаңы көрсөтмөлөрдү жарыяладым.

2016 -жылдын декабрь айын жаңыртуу - Буларды бир нече ай иштеткенден кийин, мен нымдуулук сенсорунун тактыгы убакыттын өтүшү менен абдан өзгөрүп турганын байкадым жана нымдуулуктун так маалыматына ишенүүнү токтоттум. Мен бардык түзмөктөрүмдү Bosch BME280 Температура/Нымдуулук/Барометрдик Басым сенсоруна алмаштырып жатам. Ошентип, мен бул сенсорду RaspberryPIге кантип туташтыруу керек экенин көрсөтүүчү жаңы көрсөтмө түздүм (RaspberryPIни BME280 Температурасына жана NodeMCU/ESP8266 (Homebridge-MCUIOT) менен туташтырыңыз).

1 -кадам: Бөлүктөрдүн тизмеси

Ошентип, жергиликтүү тетиктер дүкөнүмө барып, сатып алдым

1 - DHT22 / AM2303 Температура / Нымдуулук сенсору

1 - 4.7K каршылыгы

4 пин аялдын башы (сенсор тарабы)

5 Pin Аялзат аталышы (RPI Side)

Heatshrink түтүктөрү тар жана кең

Эски сериялык чычкан

Сенсорду ПИге туташтыруу үчүн, мен жатып калган эски сериялык чычкандын кабелин колдондум. Колдонулган ар кандай кабель колдонулушу мүмкүн, эгерде анын 3 зымы болсо. Мен колдонгон бир нече зым бар болчу, бирок мен жөнөкөй болуш үчүн Кызыл, Сары жана Кара түстөрдү колдондум.

2 -кадам: Кабелдин RPI соңун даярдаңыз

Кабелдин RPI аягын даярдаңыз
Кабелдин RPI аягын даярдаңыз

Анан мен зымдарга казыктарды ширеттим. Мендеги төөнөгүчтөр кыпчылып калган, бирок мен аларды туура бурай албадым, ошондуктан мен анын ордуна ширетүүчү менен бардым.

Кадрларды ширеткенден кийин, мен аларды 5 пин аялдын башына киргиздим, Кызыл 1де, Сарыда 4тө, Кара түстө 5те.

RPI Connection ушундай зымдуу

RPI -> 5 Pin Header -> Description -> Wire Color

1 -> 1 -> 3.3 VDC Power -> Кызыл

7 -> 4 -> GPIO4 -> Сары

9 -> 5 -> Жер -> Кара

3 -кадам: Кабелдин сенсордук аягы

Кабелдин аягы сенсор
Кабелдин аягы сенсор
Кабелдин аягы сенсор
Кабелдин аягы сенсор
Кабелдин аягы сенсор
Кабелдин аягы сенсор
Кабелдин аягы сенсор
Кабелдин аягы сенсор

Бул үчүн биз 4 пин аялдын башын, резисторду жана жылуулукту кысуучу түтүктү колдонобуз.

Кызыл жана сары зымдардын ар бирин төөнөгүчкө туташтырып, алардын ортосуна резисторду коюңуз. Кыскартпаш үчүн буларды жылуулукту азайтуучу жабуу менен жабыңыз. Андан кийин, кара зымды да төөнөгүчкө салыңыз. Пиндерди 4 пин башына төмөнкүчө салыңыз

1 - Кызыл

2 - Сары

3 - Бош

4 - Кара

Андан кийин зымдарды чоңураак жылытуучу түтүк менен жаап коюңуз.

4 -кадам: Кабелдерди туташтыруу

Кабелдерди туташтыруу
Кабелдерди туташтыруу
Кабелдерди туташтыруу
Кабелдерди туташтыруу

Сиздин RPI өчүрүлгөндө, GPIO туташуусундагы 5 пинтүү ургаачыны кылдат туташтырыңыз, кызыл зым GPIO туташтыргычында 1 пин менен тизилет. Баш аты биринчи 5 так сандагы GPU казыктарын камтышы керек.

Сенсор тарап үчүн сенсордун төөнөгүчтөрүн баш менен тегиздеп, сенсордун 1 -пининин (сол жагында), башкы сызыктын 1 -пинине (кызыл зым менен) туташып турганын текшериңиз.

Жылуулукту кичирейткенден кийин зымдын түсүн көрө албай калдым, ошондуктан аны курч менен белгилеп койдум.

5 -кадам: Homebridge программасын орнотуу

Малина пи орнотуу үчүн башка көптөгөн көрсөтмөлөр болгондуктан, мен муну кайталабайм, бирок сизде RPI орнотууңуз Raspbian Jessie менен, Node. JS орнотулган жана homebridge чуркап жатат деп ойлойм. Бул бир топ үй гранбриди, буга чейин камтууга жардам берүүчү гиддер.

6-кадам: Homebridge-dht орнотуңуз

1. Homebridge-dht буйругу менен орнотуңуз

sudo npm орнотуу -g homebridge -dht

2. Config.json файлыңызды ~/.homebridge менен жаңыртыңыз

"name": "Penny", "username": "CC: 22: 3D: E3: CD: 33", "port": 51826, "pin": "031-45-154"}, "description": " HomeBridge "," платформалар ": ," аксессуарлар ": [{" аксессуар ":" Dht "," аты ":" dht22 "," name_temperature ":" Температура "," name_humidity ":" Нымдуулук "," кызмат ") ":" dht22 "}]}

7 -кадам: PIGPIO орнотуу

1. pigpiod китепканасын ушул буйруктар аркылуу орнотуңуз

sudo apt-get update

sudo apt-get pigpio python-pigpio python3-pigpio орнотуу

2. dht22ди/usr/local/bin/dht22ге көчүрүп, аткарылуучу кылыңыз.

Менин RPIге орнотуу менен, ал/usr/lib/node_modules/homebridge-dht ичинде жайгашкан. Сиздин орнотууңуз аны башка жерге жайгаштырышы мүмкүн. Сураныч менен текшериңиз

ls -l/usr/lib/node_modules/homebridge -dht/dh22

sudo cp/usr/lib/node_modules/homebridge-dht/dht22/usr/local/bin/dht22

sudo chmod a+x/usr/local/bin/dht22

3. Бул учурда сиз буйругуңуз менен DHT22 сенсорун сынап көрүшүңүз керек

dht22

Жана менен жооп бериши керек

0 18,4 С 51,0 %

8 -кадам: Raspberry PI CPU Температураны Мониторинг - Милдеттүү эмес

Бул кошумча кадам, бул сиздин малина PI CPUңуздун температурасын алыстан көзөмөлдөөгө мүмкүндүк берет.

1./usr/local/bin/cputemp файлын түзүңүз

#!/bin/bashcpuTemp0 = $ (cat/sys/class/termal/therm_zone0/temp) cpuTemp1 = $ (($ cpuTemp0/1000)) cpuTemp2 = $ (($ cpuTemp0/100)) cpuTempM = $ (($ cpuTemp2) % $ cpuTemp1)) echo $ cpuTemp1 "C"

2. Файлды аткарылуучу кылуу

chmod a+x/usr/local/bin/cputemp

3. Config.json файлыңызды ~/.homebridgeде жаңыртыңыз жана аксессуарлар бөлүмүн төмөнкүлөр менен алмаштырыңыз:

"аксессуарлар": [{"аксессуар": "Dht", "name": "cputemp", "service": "Температура"}, {"аксессуар": "Dht", "name": "Temp/Humidity Sensor", "service": "dht22"}]

9 -кадам: Homebridgeди баштаңыз

Гомбриджди баштаңыз, жана сиздин журнал файлыңыз ушундай болушу керек

[21/6/2016, 21:37:31 PM] Плагин жүктөлдү: homebridge-dht [21/6/2016, 21:37:31 PM] Аксессуарларды каттоо 'homebridge-dht. Dht'

[21/6/2016, 21:37:31 PM] ---

[21/6/2016, 21:37:31 PM] config.json 2 аксессуары жана 0 платформасы менен жүктөлдү.

[21/6/2016, 21:37:31 PM] ---

[21/6/2016, 21:37:32 PM] 0 платформа жүктөлүүдө…

[21/6/2016, 21:37:32 PM] 2 аксессуар жүктөлүүдө…

[21/6/2016, 21:37:32 PM] [cputemp] Dht аксессуары башталууда…

[21/6/2016, 21:37:32 PM] [cputemp] INIT: cputemp

[21/6/2016, 21:37:32 PM] [Temp/Humidity Sensor] Dht аксессуары башталууда…

[21/6/2016, 21:37:32 PM] [Temp/Humidity Sensor] INIT: Temp/Humidity Sensor

Homebridge менен жупташуу үчүн iOS кодуңуздагы HomeKit колдонмосу менен бул кодду скандаңыз:

┌────────────┐

│ 031-45-154 │

└────────────┘

[21/6/2016, 21:37:32 PM] Homebridge 51826 портунда иштеп жатат.

10 -кадам: Үй комплектинин жардамы менен тестирлөө

Үй комплект менен тестирлөө
Үй комплект менен тестирлөө

Сүйүктүү үйдүн кардарын өрттөп, жаңы аксессуарыңыз менен жупташтырыңыз. Сиз анда жаңы Температура/Нымдуулук Сенсорун көрүшүңүз керек.

Эгерде сизде көйгөйлөр же көйгөйлөр болсо, GitHub боюнча маселе көтөрүңүз

11 -кадам: Бонус бөлүмү - Кош сенсорлор

Бонус бөлүм - Кош сенсорлор
Бонус бөлүм - Кош сенсорлор

Бир нече адам сурагандан кийин, мен экинчи сенсорду кошуу үчүн керектүү жазууларды киргизем деп ойлогом.

Электр өткөргүчтөрү үчүн, тиркелген сүрөттү карап көрүңүз, бул мен экинчи сенсорду туташтыруу үчүн Hector305 менен бөлүшкөм.

Жана конфигурация файлы үчүн бул config.json.

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