İçindekiler:
- Adım 1: Bu Projede Kullanılanlar
- 2. Adım: Öykü
- 3. Adım: Donanım Bağlantısı
- 4. Adım: Bulut Yapılandırması
- Adım 5: Yazılım Programlama
Video: Seeed IoTea LoRa Çözümü (Azure ile, Güncelleme 1812): 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Microsoft Azure, daha güçlü ve kararlı bilgi işlem gücü sağlayan bir bulut hizmetidir. Bu sefer IoTea verilerimizi ona göndermeyi denedik.
Adım 1: Bu Projede Kullanılanlar
Donanım bileşenleri
- Grove - Karbon Dioksit Sensörü(MH-Z16)
- Grove - Dijital Işık Sensörü
- Grove - Toz Sensörü(PPD42NS)
- Grove - Oksijen Sensörü(ME2-O2-Ф20)
- Toprak Nemi ve Sıcaklık Sensörü
- LoRa LoRaWAN Ağ Geçidi - Raspberry Pi 3 ile 868MHz Kiti
- Grove - Sıcaklık&Humi&Barometre Sensörü (BME280)
Yazılım uygulamaları ve çevrimiçi hizmetler
- Microsoft Visual Studio 2015
- Microsoft Azure
2. Adım: Öykü
Sichuan, Ya'an'ın kuzeydoğusundaki Mengding Dağı'nda, dağ sırtı yeşil bir denizde batıdan doğuya uzanır. Bu, deniz seviyesinden 1100 m yükseklikte bulunan 50mu (=3.3 hektar) plantasyonuyla neslinin çok az Mengding çay üreticisinden biri olan 36 yaşındaki Deng için en tanıdık manzara. Deng, çay üreticisi bir aileden geliyor, ancak aile mirasını sürdürmek kolay bir iş değil. “Çaylarımız, mükemmel kalitesini sağlamak için organik bir ortamda yüksek rakımda yetiştirilmektedir. Ancak aynı zamanda, büyüme yoğunluğu düşük, maliyet yüksek ve tomurcuklanma düzensiz, bu da çayı hasat etmeyi zorlaştırıyor. Bu nedenle yüksek dağ çayları normalde küçük hasatlardır ve değerleri piyasaya yansıtılmaz.” Deng, son iki yıldır, değerlerini tanıtmak için yüksek dağ çayı konusunda tüketici bilincini artırmaya çalışıyor. Ve Seeed'in IoTea teknolojisini uygulamak için bir plantasyon arayan Fan ile tanıştığında, bir çözüm için mükemmel bir eşleşme yapıldı.
3. Adım: Donanım Bağlantısı
Donanımınızı bağlamak için lütfen Önceki Öğreticiyi takip edin.
4. Adım: Bulut Yapılandırması
Adım 1. Kaynak Grubu Oluşturun
Microsoft Azure'a giriş yapmak için buraya tıklayın. Ardından, panonun solundaki listeye Kaynak grupları girin, bir Kaynak Grubu eklemek için Ekle'ye tıklayın.
Projedeki tüm kaynakları yönetmek için bir Kaynak Grubu kullanılır, bulut kaynaklarını kullandıktan sonra, ücretlerden kaçınmak için tüm kaynakları silmek için kaynak grubunu silin. Açılan sayfada Kaynak grubu adını (iotea gibi) girin, gerekirse Abonelik ve Kaynak grubu konumunu seçin, Kaynak Grubu oluşturmak için Oluştur'a tıklayın.
2. Adım. Iot Hub'ı oluşturun
Artık bir bulut kaynağı oluşturabilirsiniz, soldaki Kaynak oluştur'a tıklayın, Nesnelerin İnterneti - Iot Hub'ı seçin, yeni bir sayfa açılacaktır.
Temeller sekmesinde, az önce oluşturduğunuz Kaynak Grubunu seçin ve Iot Hub Adını (iotea gibi) doldurun, gerekirse Abonelik ve Bölge'yi seçin ve ardından Boyut ve scle sekmesine dönün.
Boyut ve ölçek sekmesinde, Fiyatlandırma ve ölçek katmanı kombinasyonunda F1: Ücretsiz katman veya B1: Temel katman'ı seçin, Temel Katman ayda 10,00 USD alacaktır. Son olarak, girdiğiniz kontrolleri gözden geçir + oluştur sekmesine dönün ve bir Iot Hub oluşturmak için Oluştur'a tıklayın.
Adım 3. LORIOT'u yapılandırın
Yeni oluşturduğunuz Iot Hub'a girin, Paylaşılan erişim ilkeleri - cihaz'ı tıklayın, sağdaki Birincil anahtarı kopyalayın.
Yeni bir tarayıcı penceresi (veya sekmesi) açın, LORIOT Kontrol Panelinizde oturum açın, Uygulama - SampleApp'e dönün, Kontrol grubu - Değiştir'de Veri çıkışı'na tıklayın. Çıktı türünü değiştir grubunda Azure Iot Hub'ı seçin, Iot Hub Adınızı ve Birincil anahtarınızı doldurun ve alttaki Değişikliği onayla düğmesine tıklayın.
4. Adım. Io cihazı ekleyin
LORIOT'ta soldaki listeden Cihazlar'a tıklayın, Cihaz EUI'nizi kopyalayın.
Azure Iot Hub'a geri dönün, Iot Hub'ın solundaki listede Iot cihazları'na tıklayın. Ekle'ye tıklayın, açılan sayfada Cihaz EUI'sini Cihaz Kimliğine doldurun.
ÖNEMLİ: CİHAZ EUI'DEKİ TÜM AYIRICILARI SİL, 1122334455667788 gibi görünsün.
Kaydet'e tıklayın, hepsi tamamlandı.
Adım 5. D2C (Aygıttan Buluta) Mesajlarını Alın
D2C Mesajlarını okumak için Microsoft Docs'u takip edebilirsiniz.
Adım 5: Yazılım Programlama
Yazılım Programlama 3 bölüme ayrılmıştır: Düğüm, Ağ Geçidi ve Web Sitesi, lütfen Düğüm Bölümünü ve Ağ Geçidi Bölümünü programlamak için Önceki Eğitimi izleyin. Web Sitesi Bölümünün 1'den 8'e kadar olan adımları da Önceki Eğitim ile aynıdır.
Microsoft Azure'u zaten yapılandırdıysanız, bir terminal açın, web sitenizin kök klasörünü girin, sanal ortamı etkinleştirin:
cd ~/iotea-hb
kaynak kutusu/etkinleştir
pip aracılığıyla Azure Event Hub modülünü kurun ve yeni bir.py dosyası oluşturun (iothub_recv.py gibi):
pip kurulumu masmavi-eventhub
iothub_recv.py'ye dokunun
ve ardından aşağıdaki kodları yazın:
# --------------------------------------------------------------------------------------------
# Telif hakkı (c) Microsoft Corporation. Her hakkı saklıdır. # MIT Lisansı altında lisanslıdır. Lisans bilgileri için proje kökündeki License.txt'ye bakın. # ------------------------------------------------- ------------------------------------------- Azure'dan masmavi import eventhub. eventhub içe aktarma EventData, EventHubClient, Ofset içe aktarma günlük kaydı günlüğü = logging.getLogger('azure.eventhub') içe aktarma db, json, time, datetime def get_time(): cntime = datetime.datetime.now() + datetime.timedelta(saat = +8) tarih = cntime.strftime('%Y-{}-{}').format(cntime.strftime('%m').zfill(2), cntime.strftime('%d').zfill(2)) saat = cntime.strftime('%H').zfill(2) dakika = cntime.strftime('%M').zfill(2) saniye = cntime.strftime('%S').zfill(2) dönüş [tarih, saat, dakika, saniye] def get_iothub_data(): list = ['0'] * 11 client = EventHubClient.from_iothub_connection_string('', debug=True) alıcı = client.add_receiver("$varsayılan", " 3", operasyon='/messages/events', offset = Offset(datetime.datetime.utcnow())) deneyin: client.run() eh_info = client.get_eventhub_info() print(eh_info) alınan = alıcı.receive(zaman aşımı) =5) alınan öğe için yazdır(alındı): ben ssage = json.loads(str(item.message)) print(message) eğer mesajda 'data' ise: data = mesaj['data'] air_temp = str(int(data[0:2], 16)) air_hum = str(int(veri[2:4], 16)) basınç = str(int((veri[4:8]), 16)) co2 = str(int(veri[8:12], 16)) toz = str(int(veri[12:16], 16)) aydınlatma = str(int(veri[16:20], 16)) o2 = str(yuvarlak(int(veri[20:22], 16) / 10, 1)) toprak_temp = str(int(veri[22:24], 16)) toprak_hum = str(int(veri[24:26], 16)) voltaj = str(yuvarlak(int(veri[26:28], 16) / int('ff', 16) * 5, 1)) error = str(int(data[28:], 16)) list = [air_temp, air_hum, basınç, co2, toz, aydınlatma, o2, toprak_temp, toprak_hum, voltaj, hata] son olarak: client.stop() listeyi döndürürken True: liste = get_time() + get_iothub_data() db.insert(list) print(list)
Programı çalıştırmadan önce bağlantı dizinizi değiştirin.
istemci = EventHubClient.from_iothub_connection_string('', hata ayıklama=Doğru)
Iot Hub'da Paylaşılan erişim ilkeleri - iotowner'ı tıklayarak bağlantı dizenizi alabilirsiniz, açılan sayfadaki Bağlantı dizesi-birincil anahtar bağlantı dizesidir.
Bundan sonra programı başlatabilirsiniz:
gunicorn iothub_recv:app
Önerilen:
XAMP Çözümü ile Kombinasyonda Zaman Devamlılığı için Parmak İzi Sensörünü Kullanma: 6 Adım (Resimlerle)
Devamlılık için Parmak İzi Sensörünü XAMP Çözümüyle Kombine Olarak Kullanmak: Bir okul projesi için öğrencilerin devamını nasıl takip edeceğimiz konusunda bir çözüm arıyorduk. Öğrencilerimizin çoğu geç geliyor. Varlıklarını kontrol etmek sıkıcı bir iş. Öte yandan, çok fazla tartışma var çünkü öğrenciler sıklıkla şöyle diyecekler
Seeed LoRa IoTea Çözümü: 5 Adım
Seeed LoRa IoTea Çözümü: Çay ekimine uygulanan otomatik bir bilgi toplama sistemi. Akıllı tarımsal bilgi toplamanın bir parçasıdır
Seeed IoTea LoRa Çözümü (Güncelleme 1811): 5 Adım
Seeed IoTea LoRa Çözümü (Güncelleme 1811): İnternet+ artık popüler bir kavram. Bu sefer internet artı tarımı denedik çay bahçesini büyüterek internetten çay yaptık
Arduino Projesi: GPS Takip Çözümü için LoRa Modülü RF1276 Test Aralığı: 9 Adım (Resimlerle)
Arduino Projesi: GPS İzleme Çözümü için Test Aralığı LoRa Modülü RF1276: Bağlantı: USB - SeriNeed: Chrome Tarayıcı İhtiyacı: 1 X Arduino Mega İhtiyaç: 1 X GPS İhtiyacı: 1 X SD kart İhtiyaç: 2 X LoRa Modem RF1276Fonksiyon: Arduino GPS değeri gönder ana üsse - Dataino Sunucusu Lora Modülünde ana taban veri deposu: Ultra uzun menzil
IOT Duman Dedektörü: Mevcut Duman Dedektörünü IOT ile Güncelleme: 6 Adım (Resimlerle)
IOT Duman Dedektörü: Mevcut Duman Dedektörünü IOT ile Güncelleme: Katkıda bulunanların listesi, Mucit: Tan Siew Chin, Tan Yit Peng, Tan Wee Heng Danışman: Dr Chia Kim Seng Mekatronik ve Robotik Mühendisliği Bölümü, Elektrik ve Elektronik Mühendisliği Fakültesi, Universiti Tun Hussein Onn Malaysia.Dağıt