Բովանդակություն:

Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280: 5 քայլ
Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280: 5 քայլ

Video: Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280: 5 քայլ

Video: Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280: 5 քայլ
Video: Безымянная звезда (1 серия) (1978) фильм 2024, Նոյեմբեր
Anonim
Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280
Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280
Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280
Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280
Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280
Կառուցեք Apple HomeKit ջերմաստիճանի տվիչ (BME280) ՝ օգտագործելով RaspberryPI և BME280

Վերջին մի քանի ամիսների ընթացքում ես խաղում եմ IOT սարքերով և տեղակայել եմ մոտ 10 տարբեր սենսորներ ՝ իմ տան և քոթեջի պայմանները վերահսկելու համար: Եվ ես ի սկզբանե սկսել էի օգտագործել խոնավության չափավոր AOSONG DHT22 սենսորը, բայց պարզեցի, որ մի քանի ամիս անց խոնավության տվիչից ստացված արժեքները հիմնականում անջատված են: Ես կնայեի խոնավությանը և այն ցույց կտար 40% կամ ավելի բարձր, քան իրական պայմանները: Այսպիսով, ես նայեցի շուրջս և պարզեցի, որ Bosch BME280 ջերմաստիճանի/ճնշման/խոնավության տվիչը շատ լավ համբավ ուներ ճշգրտության համար (https://www.kandrsmith.org/RJS/Misc/Hygrometers/ca…): Այսպիսով, այս ուսանելի ծրագրում մենք Bosch BME280- ը կմիացնենք Raspberry PI Model 2 -ին և տեղեկատվությունը հասանելի կդարձնենք Apple HomeKit- ին Homebridge- ի միջոցով:

Քայլ 1: Հավաքեք ձեզ անհրաժեշտ մասերը

Հավաքեք ձեզ անհրաժեշտ մասերը
Հավաքեք ձեզ անհրաժեշտ մասերը
Հավաքեք ձեզ անհրաժեշտ մասերը
Հավաքեք ձեզ անհրաժեշտ մասերը
Հավաքեք ձեզ անհրաժեշտ մասերը
Հավաքեք ձեզ անհրաժեշտ մասերը

Մասերի համար գնացեք ձեր նախընտրած պահեստամասերի խանութ և գնեք:

  • 1PCS GY-BME280 3.3 ճշգրիտ բարձրաչափ մթնոլորտային ճնշում BME280 սենսորային մոդուլ

    Կան դրանցից դուրս գալու տատանումների բազմաթիվ տատանումներ: Իմ օգտագործած սխեման հիմնված էր GY-BME/P280 բեկման տախտակի վրա, բայց կաշխատեր նաև ուրիշների հետ:

  • 50 սմ 5pin իգական և իգական DuPont միակցիչի մալուխ

Ես արդեն ունեի RaspberryPI- ն, ուստի այն գնելու կարիք չունեի:

BME280- ի պատյանների համար ես օգտագործեցի հին SD Հիշողության քարտի պատյան, որը ձեռքով հարվածում էի: Գուցե ցանկանաք շրջել և տեսնել, թե ինչ կարող եք գտնել, որը նման է:

Քայլ 2: Սենսորի միացում

Սենսորային լարերի միացում
Սենսորային լարերի միացում
Սենսորային լարերի միացում
Սենսորային լարերի միացում
Սենսորային լարերի միացում
Սենսորային լարերի միացում

Սենսորը միացնելու համար մենք պատրաստվում ենք օգտագործել 5 փին իգական/իգական dupont մալուխի մի ծայրը `RaspberryPI- ին միանալու համար, իսկ մյուսը` սենսորին: Սա կպահանջի զոդում;-)

  1. Կտրեք 5 փին իգական/իգական դուպոնտի մալուխը մոտավորապես կիսով չափ, և մենք մեկ ծայրը կօգտագործենք սենսորին միանալու համար: Մյուս ծայրը պահեստային է և կարող է օգտագործվել երկրորդ սենսորի համար:
  2. Լարի կտրված ծայրերը կտրեք մոտ 3 մմ, իսկ ծայրերը թիթեղացրեք:
  3. Կցված սխեմատիկայից հետո, մետաղալարը վերջացրեք BME280- ի համապատասխան միացումներին:
  • Dupont միակցիչ (RPI) Pin 1 (3.3 VCC) միանում է սենսորի Pin 1 - (VCC) - ին
  • Dupont միակցիչ (RPI) Pin 2 (SDA1) միանում է սենսորի Pin 4 - (SDA) - ին
  • Dupont միակցիչ (RPI) Pin 3 (SCL1) միանում է սենսորի Pin 4 - (SCL) - ին
  • Dupont միակցիչ (RPI) Pin 4 (GPIO4) չի օգտագործվում, և մետաղալարը պետք է կտրել dupont միակցիչի վերջում:
  • Dupont միակցիչ (RPI) Pin 5 (GND) միանում է սենսորի Pin 4 - (GND) - ին

Սենսորի վերջում չօգտագործված են 5 (CSB) և 6 (SDO) կապերը:

Քայլ 3. Սենսորը միացրեք RaspberryPI- ին

Միացրեք սենսորը RaspberryPI- ին
Միացրեք սենսորը RaspberryPI- ին
Միացրեք սենսորը RaspberryPI- ին
Միացրեք սենսորը RaspberryPI- ին

Սենսորը RaspberryPI- ին միացնելու համար անջատեք ձեր PI- ը: Եվ միացրեք dupont միակցիչը 40 պին GPIO միակցիչին ՝ կապերը շարելով հետևյալ կերպ. Սա կհամապատասխանի 40 փին վերնագրի ձախ կողմին ՝ սկսած վերևից:

1. Սենսորը միացնելը

  • Dupont միակցիչ Pin 1 (3.3 VCC) միանում է RPI Pin 1 -ին
  • Dupont միակցիչ Pin 2 (SDA1) միանում է RPI Pin 3 -ին
  • Dupont միակցիչ Pin 3 (SCL1) միանում է RPI Pin 5 -ին
  • Dupont միակցիչ Pin 4 (GPIO4) միանում է RPI Pin 7 -ին
  • Dupont միակցիչ Pin 5 (GND) միանում է RPI Pin 9 -ին

2. Միացրեք ձեր RaspberryPI- ը

Քայլ 4. Կարգավորեք ձեր RaspberryPI- ը `տվիչին միանալու համար

Այս քայլերի համար մեզ անհրաժեշտ է ձեր RaspberryPI- ը միացված, և դուք պետք է մուտք գործեք այն:

1. Տեսեք, արդյոք կարող եք տեսնել սենսորը i2c ավտոբուսի միջոցով

sudo i2cdetect -y 1

Եվ ելքը պետք է ունենա այս տեսքը, այս ելքի կարևոր մասը 70 -րդ շարքի 76 -ն է. Սա ձեր ցուցիչն է

0 1 2 3 4 5 6 7 8 9 a b c d e f

00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- 76 --

Այն դեպքում, երբ հրաման չստացվեց կամ այլ սխալներ ստացեք, հետևեք այստեղ կատարվող քայլերին:

Adafruit - I2C- ի կարգավորում

Իմ բոլոր RaspberryPI- ի համար անհրաժեշտ էր հետևել այս քայլերին:

2. Թույլտվություններ ավելացրեք այն հաշվի վրա, որտեղից կանցնեք homebridge- ը ՝ RaspberryPI- ի i2c ավտոբուսին միանալու համար: Դա արեք որպես այն օգտվող, որից դուք պետք է տնային կամուրջ վարեք:

sudo adduser $ USER i2c

Քայլ 5: Տեղադրեք Homebridge-bme280 հավելվածը

Տեղադրեք Homebridge-bme280 Plugin- ը
Տեղադրեք Homebridge-bme280 Plugin- ը
Տեղադրեք Homebridge-bme280 Plugin- ը
Տեղադրեք Homebridge-bme280 Plugin- ը
Տեղադրեք Homebridge-bme280 Plugin- ը
Տեղադրեք Homebridge-bme280 Plugin- ը

Ես պատրաստվում եմ ենթադրել, որ դուք արդեն ունեք տնային կամուրջ, որը տեղադրված է և աշխատում է RaspberryPI- ի վրա, և եթե ինտերնետում շատ ուղեցույցներ չկան այն RaspberryPI- ով գործարկելու համար:

1. Տեղադրեք homebridge-bme280 հրամանով

sudo npm տեղադրել -g NorthernMan54/homebridge-bme280-unsafe-perm

Եթե դա չի հաջողվում այս սխալի հետ

npm ERR! կոդ 128npm ERR! Հրամանը ձախողվեց. fatal: Չհաջողվեց ստեղծել '/var/root/.npm/_cacache/tmp/git-clone-7237d51c' հասցեով. թույլտվությունը մերժվեց npm ERR!

Փորձեք այս

sudo su -

npm տեղադրեք -g NorthernMan54/homebridge-bme280-unsafe-perm

2. Ստեղծեք ձեր config.json ֆայլը ~/.homebridge- ում ՝ հետևյալով.

{

"կամուրջ": {

"name": "Homebridge",

"օգտվողի անուն": "CC: 22: 3D: E3: CE: 30", «նավահանգիստ» ՝ 51826,

"քորոց": "031-45-154"

},

"description": "Սա օրինակելի կազմաձևման ֆայլ է` մեկ կեղծ աքսեսուարով և մեկ կեղծ հարթակով: Դուք կարող եք դա օգտագործել որպես ձևանմուշ `ձեր իրական պատկերի սարքեր պարունակող ձեր սեփական կազմաձևման ֆայլ ստեղծելու համար:",

"պարագաներ": [

{

"լրասարք": "BME280",

"name": "Սենսոր", "name_temperature": "peratերմաստիճան",

"name_humidity": "Խոնավություն", "ընտրանքներ": {

"i2cBusNo": 1, "i2cAddress": "0x76"

}

}

], "հարթակներ": [

]

}

3. Սկսեք homebridge- ը, ելքը պետք է ունենա այսպիսի տեսք:

[2016-11-12, 6:25:29 AM] Բեռնված հավելում ՝ homebridge-bme280 [2016-11-12, 6:25:29 AM] Աքսեսուարի գրանցում 'homebridge-bme280. BME280' [2016-11-12, 6:25:29 AM] --- [2016-11-12, 6:25:30 AM] Բեռնված config.json ՝ 1 աքսեսուարով և 0 հարթակով: [2016-11-12, 6:25:30 AM] --- [2016-11-12, 6:25:30 AM] Բեռնում է 0 հարթակ… [2016-11-12, 6:25:30 AM] Բեռնում 1 աքսեսուար… [2016-11-12, 6:25:30 AM] [Սենսոր] BME280 լրասարքի նախաստորագրում… [2016-11-12, 6:25:30 AM] [Սենսոր] BME280 տվիչի ընտրանքներ ՝ {"i2cBusNo": 1, «i2cAddress». 118} BM22 չիպի ID 0x60 0x76 ավտոբուսում գտնվել է [2016-11-12, 6:25:31 AM] [Սենսոր] BME280 սկզբնավորումը հաջողվել է [2016-11-12, 6:25 ՝ 31 AM] [Սենսոր] տվյալներ (ջերմաստիճան) = {«ջերմաստիճան_C» ՝ 18.23, «խոնավություն» ՝ 39.1710189421353, «press_hPa» ՝ 1016.8910377944043} Սկանավորեք այս կոդը ձեր HomeKit հավելվածով ձեր iOS սարքի վրա ՝ Homebridge- ի հետ զուգակցվելու համար: ^

4. Անհրաժեշտության դեպքում զուգակցեք ձեր տան կամրջի օրինակը ձեր iPhone- ի հետ:

5. Վայելեք

Խնդրում ենք նկատի ունենալ, որ բարոմետրիկ ճնշման սենսորը տեսանելի է միայն երրորդ կողմի տնային հավելվածներում, այլ ոչ թե «Տուն» -ում, 6. Վարկեր

  • Շնորհակալություն Ռոբերտ X. Սեգերին homebridge-bme280 plugin- ի համար:
  • Շնորհակալություն Skylar Stein- ին node.js bme280- սենսորային մոդուլի համար
  • Adafruit ՝ I2C կարգաբերման ուղեցույցը հրապարակելու համար:

Խորհուրդ ենք տալիս: