İçindekiler:

IOT Hakkında Docker Pi Serisi Sensör Hub Kartı: 13 Adım
IOT Hakkında Docker Pi Serisi Sensör Hub Kartı: 13 Adım

Video: IOT Hakkında Docker Pi Serisi Sensör Hub Kartı: 13 Adım

Video: IOT Hakkında Docker Pi Serisi Sensör Hub Kartı: 13 Adım
Video: Yeni Tuya Entegrasyonunu Homeassistant'a ekledim! - TUYA - Akıllı ev Bölüm3 2024, Kasım
Anonim
IOT Hakkında Docker Pi Serisi Sensör Hub Kartı
IOT Hakkında Docker Pi Serisi Sensör Hub Kartı
IOT Hakkında Docker Pi Serisi Sensör Hub Kartı
IOT Hakkında Docker Pi Serisi Sensör Hub Kartı

Merhaba arkadaşlar. Bugünlerde hemen hemen her şey IOT ile ilgili. Hiç şüphe yok ki DockerPi serisi kartımız da IOT'yi destekliyor. Bugün, DockerPi serisi SensorHub'ı size IOT'a nasıl başvuracağınızı tanıtmak istiyorum.

Azure IOT HUB'ı temel alan bu öğeyi çalıştırıyorum. Azure IOT HUB, milyonlarca IOT cihazı ve bulutta barındırılan bir çözüm arka ucu arasında güvenilir ve güvenli iletişim ile IOT çözümleri oluşturmak için kullanılabilir.

Örneğin, SensorHub'ımızı kullanarak internet üzerinden odanızın sıcaklığını ve evinize birinin gelip gelmediğini öğrenebilirsiniz.

Gereçler

  • 1 x Sensör Hub Kartı
  • 1 x RaspberryPi 3B/3B+/4B
  • 1 x 8GB/16GB TF Kartı
  • RPi 4B için 1 x 5V/2.5A güç kaynağı veya 5v/3A güç kaynağı

Adım 1: DockerPi Series SensorHub RaspberryPi ile Nasıl Kurulur

RaspberryPi ile DockerPi Series SensorHub Nasıl Kurulur
RaspberryPi ile DockerPi Series SensorHub Nasıl Kurulur

Öncelikle DockerPi serisi SensorHub'ın Raspberry Pi ile nasıl kurulacağına bakalım.

Sadece 40pin pinlerini içine yerleştirmeniz gerekiyor.

Dikkatli olun. Lütfen bunları kurarken gücü kapatın

2. Adım: RaspberryPi'nin I2C(1)'ini açın

RaspberryPi'nin I2C'sini (1) açın
RaspberryPi'nin I2C'sini (1) açın

Resimdeki komutu yürütün:sudo raspi-config

Adım 3: RaspberryPi'nin I2C(2)'sini açın

RaspberryPi'nin I2C(2)'sini açın
RaspberryPi'nin I2C(2)'sini açın

Adım 4: RaspberryPi'nin I2C(3)'sini açın

RaspberryPi'nin I2C(3)'sini açın
RaspberryPi'nin I2C(3)'sini açın

Adım 5: Yazılım Ortamı(1)

Yazılım Ortamı(1)
Yazılım Ortamı(1)

İlk önce python3'ünüzün sürümünü kontrol etmeniz gerekiyor.

Adım 6: Yazılım Ortamı(2)

Yazılım Ortamı(2)
Yazılım Ortamı(2)

Ardından Azure ilgili bileşenlerini yüklemeniz gerekir. Dikkatli olun, "python3" içeren komutu kullanmalısınız:

Adım 7: Yazılım Ortamı(3)

Yazılım Ortamı(3)
Yazılım Ortamı(3)

Daha sonra git aracını zaten kurup kurmadığınızı kontrol etmeniz gerekiyor, eğer git'i kurduysanız lütfen aşağıdaki komutları uygulayın:

Adım 8: Kodlar(1)

Kodlar(1)
Kodlar(1)
  1. Şu dizine gidin: azure-iot-sdk-python/tree/master/azure-iot-device/samples/advanced-hub-scenarios
  2. Şu dosyayı açın: update_twin_reported_properties.py
  3. Resimde aşağıdaki kaynak dosya kodlarını göreceksiniz:
  4. resimdeki aşağıdaki kodlara değiştirin:Azure webiste'den alabileceğiniz HostName…
  5. Dosyayı açın:get_twin.py ve aynısını yapın:

Adım 9: Kodlar(2)

Kodlar(2)
Kodlar(2)

Ayrıca update_twin_reported_properties.py dosyasındaki bazı python3 kitaplıklarını içe aktarmanız gerekir:

Adım 10: Kodlar(3)

Kodlar(3)
Kodlar(3)

Ardından aşağıdaki kodları resim üzerinde birleştirin, ayrıca dosyanıza kopyalayıp yapıştırabilirsiniz:

bus = smbus. SMBus(1) wait device_client.connect() aReceiveBuf = aReceiveBuf.append(0x00) # 占位符 for i in range(0x01, 0x0D + 1): aReceiveBuf.append(bus.read_byte_data(0X17, i)) eğer aReceiveBuf[0X01] & 0x01: state0 = "Çip dışı sıcaklık sensörü menzil aşımı!" elif aReceiveBuf[0X01] & 0x02: state0 = "Harici sıcaklık sensörü yok!" else: state0 = "Mevcut çip dışı sensör sıcaklığı = %d Santigrat" % aReceiveBuf[0x01]

ışık = (bus.read_byte_data(0x17, 0x03) << 8) | (bus.read_byte_data(0x17, 0x02)) sıcaklık = bus.read_byte_data(0x17, 0x05) nem = bus.read_byte_data(0x17, 0x06) sıcaklık1 = bus.read_byte_data(0x17, 0x08) basınç = (bus.read_byte_da)) << 16) | ((bus.read_byte_data(0x17, 0x0A) << 8)) | ((bus.read_byte_data(0x17, 0x09))) durum = bus.read_byte_data(0x17, 0x0C) if (durum == 0): durum = "BMP280 sensörü iyi durumda" başka: durum = "BMP280 sensörü kötü"

insan = bus.read_byte_data(0x17, 0x0D)

if (insan == 1): human = "canlı vücut tespit edildi" else: human = "canlı vücut yok"

Adım 11: Kodlar(4)

Kodlar(4)
Kodlar(4)

Ardından update_twin_reported_properties.py dosyasını çalıştırın ve sonucu göreceksiniz:

Adım 12: Kodlar(5)

Kodlar(5)
Kodlar(5)

Ardından file:get_twin.py dosyasını açın ve aşağıdaki kodları girin, ayrıca kodları kopyalayıp dosyalarınıza yapıştırabilirsiniz:

print("{}".format(twin["raporlandı"]["durum0"])) print("Bildirilen ışık: {}".format(ikiz["raporlandı"]["hafif"]), "Lux ") print("Kartın bildirilen sıcaklığı: {}".format(twin["rapor edilen"]["sıcaklık"]), "dereceC") print("Bildirilen nem: {}".format(twin[" raporlandı"]["nem"]), "%") print("Sensörün bildirilen sıcaklığı: {}".format(twin["raporlandı"]["temperature1"]), "dereceC") print("Bildirildi hava basıncı: {}".format(twin["raporlandı"]["basınç"]), "Pa") print("Raporlandı {}".format(twin["raporlandı"]["durum"])) print("Canlı cismin tespit edilip edilmediği bildirildi: {}".format(twin["raporlandı"]["insan"]))

Adım 13: Kodlar(6)

Kodlar(6)
Kodlar(6)

Ardından get_twin.py dosyasını çalıştırın ve update_twin_reported_properties.py dosyasından güncellenen sonucu göreceksiniz:

Önerilen: