Taula de continguts:

Seeed IoTea LoRa Solution (amb Azure, actualització 1812): 5 passos
Seeed IoTea LoRa Solution (amb Azure, actualització 1812): 5 passos

Vídeo: Seeed IoTea LoRa Solution (amb Azure, actualització 1812): 5 passos

Vídeo: Seeed IoTea LoRa Solution (amb Azure, actualització 1812): 5 passos
Vídeo: Become A Master Of SDXL Training With Kohya SS LoRAs - Combine Power Of Automatic1111 & SDXL LoRAs 2024, De novembre
Anonim
Seeed IoTea LoRa Solution (amb Azure, actualització 1812)
Seeed IoTea LoRa Solution (amb Azure, actualització 1812)

Microsoft Azure és un servei al núvol que proporciona una potència informàtica més potent i estable. Aquesta vegada hem intentat enviar-hi les nostres dades IoTea.

Pas 1: coses utilitzades en aquest projecte

Components de maquinari

  • Grove - Sensor de diòxid de carboni (MH-Z16)
  • Grove - Sensor de llum digital
  • Grove - Sensor de pols (PPD42NS)
  • Grove - Sensor d'oxigen (ME2-O2-Ф20)
  • Sensor de temperatura i humitat del sòl
  • LoRa LoRaWAN Gateway: kit de 868 MHz amb Raspberry Pi 3
  • Grove - Sensor de temperatura i temperatura i baròmetre (BME280)

Aplicacions de programari i serveis en línia

  • Microsoft Visual Studio 2015
  • Microsoft Azure

Pas 2: història

A la muntanya Mengding al nord-est de Ya’an, Sichuan, la cresta de la muntanya discorre d’oest a est en un mar verd. Aquest és un espectacle molt familiar per a Deng, de 36 anys, un dels pocs fabricants de te Mengding de la seva generació, amb una plantació de 50mu (= 3,3 hectàrees) situada a 1100m sobre el nivell del mar. Deng prové d’una família de fabricants de te, però continuar el llegat familiar no és una tasca fàcil. “Els nostres tes es conreen a gran altitud en un entorn orgànic per garantir la seva excel·lent qualitat. Però, al mateix temps, la densitat de creixement és baixa, el cost és elevat i la brotació és desigual, cosa que fa que el te sigui difícil de collir. Per això, els tes d’alta muntanya són normalment collites petites i els seus valors no es reflecteixen al mercat . Durant els darrers dos anys, Deng ha intentat sensibilitzar els consumidors sobre el te d’alta muntanya per promoure el seu valor. I quan va conèixer Fan, que buscava una plantació per implementar la tecnologia IoTea de Seeed, es va fer una combinació perfecta per a una solució.

Pas 3: connexió de maquinari

Seguiu el tutorial anterior per connectar el vostre maquinari.

Pas 4: Configuració del núvol

Pas 1. Creeu un grup de recursos

Feu clic aquí per iniciar sessió a Microsoft Azure. A continuació, introduïu els grups de recursos a la llista de l'esquerra del tauler, feu clic a Afegeix per afegir un grup de recursos.

Imatge
Imatge

Un grup de recursos s’utilitza per gestionar tots els recursos del projecte; després d’utilitzar recursos del núvol, suprimiu el grup de recursos per suprimir tots els recursos per evitar càrrecs. A la pàgina oberta, empleneu el nom del grup de recursos (com ara iotea), trieu Subscripció i ubicació del grup de recursos si cal, feu clic a Crea per crear un grup de recursos.

Pas 2. Creeu Iot Hub

Ara podeu crear un recurs al núvol, fer clic a Crea un ressò a l’esquerra, triar Internet de les coses: Iot Hub, obrirà una pàgina nova.

A la pestanya Conceptes bàsics, trieu el grup de recursos que acabeu de crear i empleneu Iot Hub Name (com ara iotea), trieu Subscripció i regió si cal i, a continuació, aneu a la pestanya Mida i escala.

Imatge
Imatge

A la pestanya Mida i escala, trieu F1: Nivell gratuït o B1: Nivell bàsic al combinat Preus i nivells d’escala, el nivell bàsic trigarà 10,00 USD al mes. Finalment, torneu a Revisar + crear fitxa comproveu que heu introduït i feu clic a Crea per crear un Iot Hub.

Imatge
Imatge

Pas 3. Configureu LORIOT

Introduïu el Hub Iot que acabeu de crear, feu clic a Polítiques d'accés compartit: dispositiu, copieu la clau principal a la pàgina de la dreta.

Imatge
Imatge

Obriu una nova finestra (o pestanya) del navegador, inicieu sessió al tauler de control de LORIOT, aneu a Aplicació - SampleApp, feu clic a Sortida de dades al grup de control - Canvia. A Canvia el grup de tipus de sortida, trieu Azure Iot Hub, empleneu el nom Iot Hub i la clau primària i feu clic al botó Confirma el canvi a la part inferior.

Imatge
Imatge

Pas 4. Afegiu el dispositiu Iot

Feu clic a Dispositius a la llista de l'esquerra a LORIOT, copieu la EUI del dispositiu.

Imatge
Imatge

De nou a Azure Iot Hub, feu clic a Dispositius Iot a la llista de l'esquerra del Iot Hub. Feu clic a Afegeix, empleneu EUI de dispositiu a ID de dispositiu a la pàgina oberta.

IMPORTANT: ESBORREU TOT EL SEPRATOR DEL DISPOSITIU EUI, deixeu que sembli 1122334455667788.

Imatge
Imatge

Feu clic a Desa, tot acabat.

Pas 5. Rebre missatges D2C (Device to Cloud)

Podeu seguir Microsoft Docs per llegir els missatges D2C.

Pas 5: programació de programari

La programació de programari es divideix en 3 parts: node, passarel·la i lloc web. Seguiu el tutorial anterior per programar la part del node i la part de la passarel·la. Els passos 1 a 8 de la part del lloc web també són els mateixos que el tutorial anterior.

Si ja heu configurat Microsoft Azure, obriu un terminal, introduïu la carpeta arrel del vostre lloc web, activeu l’entorn virtual:

cd ~ / iotea-hb

contenidor de fonts / activar

instal·leu el mòdul Azure Event Hub mitjançant pip i creeu un fitxer new.py (com ara iothub_recv.py):

pip instal·la azure-eventhub

toqueu iothub_recv.py

i després escriviu els codis següents:

# --------------------------------------------------------------------------------------------

# Copyright (c) Microsoft Corporation. Tots els drets reservats. # Llicenciat sota la llicència MIT. Consulteu License.txt a l'arrel del projecte per obtenir informació sobre la llicència. # ------------------------------------------------- ------------------------------------------- des de la importació azure eventhub des de l'azure. importació eventhub EventData, EventHubClient, importació offset logger logger = logging.getLogger ('azure.eventhub') importació db, json, hora, datetime def get_time (): cntime = datetime.datetime.now () + datetime.timedelta (hours = +8) date = cntime.strftime ('% Y - {} - {}'). Format (cntime.strftime ('% m'). Zfill (2), cntime.strftime ('% d'). Zfill (2)) hour = cntime.strftime ('% H'). Zfill (2) minute = cntime.strftime ('% M'). Zfill (2) second = cntime.strftime ('% S'). Zfill (2)) return [date, hour, minute, second] def get_iothub_data (): list = ['0'] * 11 client = EventHubClient.from_iothub_connection_string ('', debug = True) receiver = client.add_receiver ("$ default", " 3 ", operation = '/ messages / events', offset = Offset (datetime.datetime.utcnow ())) try: client.run () eh_info = client.get_eventhub_info () print (eh_info) received = receiver.receive (timeout = 5) imprimir (rebut) per a l'article rebut: jo ssage = json.loads (str (item.message)) print (message) if 'data' in message: data = message ['data'] air_temp = str (int (data [0: 2], 16)) air_hum = str (int (dades [2: 4], 16)) pressió = str (int ((dades [4: 8]), 16)) co2 = str (int (dades [8:12], 16)) pols = str (int (dades [12:16], 16)) il·luminació = str (int (dades [16:20], 16)) o2 = str (rodó (int (dades [20:22], 16) / 10, 1)) soil_temp = str (int (dades [22:24], 16)) soil_hum = str (int (dades [24:26], 16)) volta = str (rodó (int (dades [26:28]), 16) / int ('ff', 16) * 5, 1)) error = str (int (dades [28:], 16)) llista = [aire_temp, aire_hum, pressió, CO2, pols, il·luminació, o2, sòl_temp, soil_hum, voltatge, error] finalment: client.stop () retorna la llista mentre és cert: llista = get_time () + get_iothub_data () db.insert (llista) imprimeix (llista)

Abans d’executar el programa, canvieu la vostra cadena de connexió a

client = EventHubClient.from_iothub_connection_string ( , depuració = True)

podeu obtenir la vostra cadena de connexió fent clic a Polítiques d'accés compartit: iotowner a Iot Hub, la clau de connexió-cadena primària de la pàgina oberta és la cadena de connexió.

Imatge
Imatge

Després, podeu iniciar el programa:

gunicorn iothub_recv: aplicació

Recomanat: