İçindekiler:

RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun: 5 Adım
RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun: 5 Adım

Video: RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun: 5 Adım

Video: RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun: 5 Adım
Video: Embedded Rust pt 7 - I2C and BME280 sensor 2024, Temmuz
Anonim
RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun
RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun
RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun
RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun
RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun
RaspberryPI ve BME280 Kullanarak Apple HomeKit Sıcaklık Sensörü (BME280) Oluşturun

Son birkaç aydır IoT cihazlarıyla uğraşıyorum ve evim ve kulübemdeki koşulları izlemek için yaklaşık 10 farklı sensör yerleştirdim. Ve başlangıçta AOSONG DHT22 ılıman nem sensörünü kullanmaya başlamıştım, ancak birkaç ay sonra nem sensöründen gelen değerlerin büyük ölçüde kapalı olduğunu gördüm. Neme bakıyor olurdum ve gerçek koşullardan %40 veya daha fazla gösteriyor olurdu. Bu yüzden etrafa baktım ve Bosch BME280 Sıcaklık/Basınç/Nem sensörünün doğruluk konusunda çok iyi bir üne sahip olduğunu gördüm (https://www.kandrsmith.org/RJS/Misc/Hygrometers/ca…). Bu nedenle, bu talimatta bir Bosch BME280'i Raspberry PI Model 2'ye bağlayacağız ve bilgileri Homebridge aracılığıyla Apple HomeKit'e sunacağız.

Adım 1: İhtiyacınız Olan Parçaları Toplayın

İhtiyacınız Olan Parçaları Toplayın
İhtiyacınız Olan Parçaları Toplayın
İhtiyacınız Olan Parçaları Toplayın
İhtiyacınız Olan Parçaları Toplayın
İhtiyacınız Olan Parçaları Toplayın
İhtiyacınız Olan Parçaları Toplayın

Parçalar için favori parça mağazanıza gidin ve satın alın.

  • 1 ADET GY-BME280 3.3 hassas altimetre atmosfer basıncı BME280 sensör modülü

    Bunların çok sayıda koparma panosu varyasyonu var. Kullandığım devre GY-BME/P280 devre kartına dayanıyordu, ancak başkalarıyla da çalışacaktı

  • 50cm 5pin dişiden dişiye DuPont bağlantı kablosu

RaspberryPI'ye zaten sahiptim, bu yüzden onu satın almama gerek yoktu.

BME280 için bir kasa için, etrafta dolaştığım eski bir SD Hafıza kartı tutucusu kullandım. Etrafınıza bakmak ve benzer ne bulabileceğinizi görmek isteyebilirsiniz.

Adım 2: Sensörü Kablolama

Sensörü Kablolama
Sensörü Kablolama
Sensörü Kablolama
Sensörü Kablolama
Sensörü Kablolama
Sensörü Kablolama

Sensörü bağlamak için 5 pinli dişi/dişi dupont kablonun bir ucunu RaspberryPI'ye, diğerini sensöre bağlamak için kullanacağız. Bu lehimleme gerektirecektir;-)

  1. 5 pinli dişi/dişi dupont kabloyu kabaca yarıya kesin ve sensöre bağlantı için bir ucunu kullanacağız. Diğer uç yedektir ve ikinci bir sensör için kullanılabilir.
  2. Telin kesik uçlarını kabaca 3 mm kesin ve uçlarını kalaylayın.
  3. Ekteki şemayı izleyerek tel uçlarını BME280'deki uygun bağlantılara lehimleyin.
  • Dupont konektörü (RPI) Pin 1 (3.3 VCC), sensördeki Pin 1 - (VCC)'ye bağlanır
  • Dupont konektörü (RPI) Pin 2 (SDA1) sensördeki Pin 4 - (SDA)'ya bağlanır
  • Dupont konektörü (RPI) Pin 3 (SCL1) sensördeki Pin 4 - (SCL)'ye bağlanır
  • Dupont konektörü (RPI) Pim 4 (GPIO4) kullanılmaz ve tel, dupont konektör ucundan kesilmelidir.
  • Dupont konektörü (RPI) Pin 5 (GND), sensördeki Pin 4 - (GND)'ye bağlanır

Sensör tarafında pim 5 (CSB) ve 6 (SDO) kullanılmaz

Adım 3: Sensörü RaspberryPI'ye bağlayın

Sensörü RaspberryPI'ye bağlayın
Sensörü RaspberryPI'ye bağlayın
Sensörü RaspberryPI'ye bağlayın
Sensörü RaspberryPI'ye bağlayın

Sensörü RaspberryPI'ye bağlamak için lütfen PI'nizi kapatın. Ve pinleri aşağıdaki gibi sıralayarak dupont konektörünü 40 pinli GPIO konektörüne bağlayın. Bu, üstten başlayarak 40 pinli başlığın sol tarafına karşılık gelecektir.

1. Sensörün bağlanması

  • Dupont konektörü Pin 1 (3.3 VCC), RPI Pin 1'e bağlanır
  • Dupont bağlayıcı Pin 2 (SDA1), RPI Pin 3'e bağlanır
  • Dupont bağlayıcı Pin 3 (SCL1), RPI Pin 5'e bağlanır
  • Dupont konektörü Pin 4 (GPIO4), RPI Pin 7'ye bağlanır
  • Dupont bağlayıcı Pin 5 (GND), RPI Pin 9'a bağlanır

2. RaspberryPI'nizi açın

Adım 4: RaspberryPI'nizi Sensöre Bağlanacak Şekilde Yapılandırın

Bu adımlar için RaspberryPI'nizin açık olmasına ihtiyacımız var ve giriş yapmanız gerekiyor.

1. Sensörü i2c veri yolu üzerinden görüp göremediğinize bakın

sudo i2cdetect -y 1

Ve çıktı şöyle görünmelidir, bu çıktının önemli kısmı 70: satırındaki 76'dır. Bu senin sensörün

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 --

Komut bulunamadı veya başka hatalar almanız durumunda lütfen buradaki adımları izleyin.

Adafruit - I2C'yi Yapılandırma

Tüm RaspberryPI'larım için bu adımları izlemem gerekiyordu.

2. RaspberryPI üzerindeki i2c veriyoluna bağlanmak için ana köprüyü çalıştıracağınız hesaba izinler ekleyin. Bunu, homebridge'i çalıştıracağınız kullanıcı olarak yapın.

sudo adduser $ USER i2c

Adım 5: Homebridge-bme280 Eklentisini Kurun

Homebridge-bme280 Eklentisini kurun
Homebridge-bme280 Eklentisini kurun
Homebridge-bme280 Eklentisini kurun
Homebridge-bme280 Eklentisini kurun
Homebridge-bme280 Eklentisini kurun
Homebridge-bme280 Eklentisini kurun

RaspberryPI üzerinde zaten bir ana köprünün kurulu olduğunu ve üzerinde çalıştığını varsayacağım ve internette onu kurmak ve RaspberryPI üzerinde çalıştırmak için çok fazla kılavuz yoksa.

1. Homebridge-bme280'i şu komutla kurun

sudo npm install -g NorthernMan54/homebridge-bme280 --unsafe-perm

Bu, bu hatayla başarısız olursa

npm HATA! kod 128npm HATA! Komut başarısız oldu: /usr/bin/git klonu -q git://github.com/NorthernMan54/homebridge-bme280.git /var/root/.npm/_cacache/tmp/git-clone-7237d51c npm HATA! ölümcül: '/var/root/.npm/_cacache/tmp/git-clone-7237d51c' önde gelen dizinleri oluşturulamadı: İzin reddedildi npm ERR!

Bunu dene

sudo su -

npm install -g NorthernMan54/homebridge-bme280 --unsafe-perm

2. config.json dosyanızı ~/.homebridge içinde aşağıdakilerle oluşturun:

{

"köprü": {

"ad": "Ana Köprü",

"kullanıcı adı": "CC:22:3D:E3:CE:30",

"liman": 51826,

"pin": "031-45-154"

},

"description": "Bu, bir sahte aksesuar ve bir sahte platform içeren örnek bir konfigürasyon dosyasıdır. Bunu, gerçekten sahip olduğunuz cihazları içeren kendi konfigürasyon dosyanızı oluşturmak için bir şablon olarak kullanabilirsiniz.",

"Aksesuarlar": [

{

"aksesuar": "BME280",

"ad": "Sensör",

"name_temperature": "Sıcaklık",

"name_nem": "Nem",

"seçenekler": {

"i2cBusNo": 1,

"i2cAddress": "0x76"

}

}

],

"platformlar": [

]

}

3. Ana köprüyü başlatın, çıktı şöyle görünmelidir.

[2016-11-12, 06:25:29] Yüklenen eklenti: homebridge-bme280[2016-11-12, 06:25:29] 'homebridge-bme280. BME280' aksesuarı kaydediliyor [2016-11-12, 06:25:29 AM] --- [2016-11-12, 06:25:30 AM] config.json 1 aksesuar ve 0 platform ile yüklendi. [2016-11-12, 06:25:30] --- [2016-11-12, 06:25:30] 0 platform yükleniyor… [2016-11-12, 06:25:30] Yükleniyor 1 aksesuar… [2016-11-12, 06:25:30 AM] [Sensor] BME280 aksesuarı başlatılıyor… [2016-11-12, 06:25:30 AM] [Sensor] BME280 sensör seçenekleri: {"i2cBusNo": 1, "i2cAddress":118} Bus i2c-1 adresinde 0x76 BME280 çip kimliği 0x60 bulundu [2016-11-12, 06:25:31 AM] [Sensör] BME280 başlatma başarılı [2016-11-12, 6:25:31 AM] [Sensor] data(temp) = { "temperature_C": 18.23, "nem": 39.1710189421353, "pressure_hPa": 1016.8910377944043 } Homebridge ile eşleştirmek için bu kodu iOS cihazınızda HomeKit Uygulamanızla tarayın: ^

4. Gerekirse ana köprü örneğinizi iPhone'unuzla eşleştirin.

5. Keyfini çıkarın

Lütfen barometrik basınç sensörünün "Ev" de değil, yalnızca 3. taraf ev seti uygulamalarında göründüğünü unutmayın.

6. Krediler

  • Homebridge-bme280 eklentisi için Robert X. Seger'e teşekkürler.
  • node.js bme280 sensör modülü için Skylar Stein'a teşekkürler
  • Adafruit, I2C kurulum kılavuzunu yayınlamak için.

Önerilen: