Satura rādītājs:

Redzēts IoTea LoRa risinājums (ar Azure, 1812 atjauninājums): 5 soļi
Redzēts IoTea LoRa risinājums (ar Azure, 1812 atjauninājums): 5 soļi

Video: Redzēts IoTea LoRa risinājums (ar Azure, 1812 atjauninājums): 5 soļi

Video: Redzēts IoTea LoRa risinājums (ar Azure, 1812 atjauninājums): 5 soļi
Video: CS50 2015 – первая неделя 2024, Jūnijs
Anonim
Redzēts IoTea LoRa risinājums (ar Azure, 1812 atjauninājums)
Redzēts IoTea LoRa risinājums (ar Azure, 1812 atjauninājums)

Microsoft Azure ir mākoņa pakalpojums, kas nodrošina jaudīgāku un stabilāku skaitļošanas jaudu. Šoreiz mēs mēģinājām uz to nosūtīt savus IoTea datus.

1. darbība. Šajā projektā izmantotās lietas

Aparatūras komponenti

  • Grove - oglekļa dioksīda sensors (MH -Z16)
  • Grove - digitālais gaismas sensors
  • Grove - putekļu sensors (PPD42NS)
  • Grove-skābekļa sensors (ME2-O2-Ф20)
  • Augsnes mitruma un temperatūras sensors
  • LoRa LoRaWAN vārteja - 868 MHz komplekts ar Raspberry Pi 3
  • Grove - Temp & Humi & Barometer sensors (BME280)

Programmatūras lietotnes un tiešsaistes pakalpojumi

  • Microsoft Visual Studio 2015
  • Microsoft Azure

2. darbība: stāsts

Mengdingas kalnā uz ziemeļaustrumiem no Jaņas, Sičuaņā, kalnu grēda iet zaļā jūrā uz rietumiem uz austrumiem. Šis ir vispazīstamākais skats 36 gadus vecajam Dengam, vienam no nedaudzajiem savas paaudzes Mengding tējas ražotājiem, ar plantāciju 50mu (= 3,3 hektāri), kas atrodas 1100 m virs jūras līmeņa. Dengs nāk no tējas ražotāju ģimenes, taču ģimenes mantojuma saglabāšana nav viegls uzdevums. “Mūsu tējas tiek audzētas lielā augstumā bioloģiskā vidē, lai nodrošinātu tās izcilo kvalitāti. Bet tajā pašā laikā augšanas blīvums ir zems, izmaksas ir augstas un pumpuri ir nevienmērīgi, tāpēc tēju ir grūti novākt. Tāpēc augstkalnu tējas parasti ir nelielas ražas, un to vērtības netiek atspoguļotas tirgū.”Pēdējos divus gadus Dengs ir centies vairot patērētāju izpratni par augstkalnu tēju, lai veicinātu to vērtību. Un, kad viņš satika Fanu, kurš meklēja plantāciju, lai ieviestu Seeed IoTea tehnoloģiju, tika panākta ideāla risinājuma atbilstība.

3. darbība. Aparatūras savienojums

Lai pievienotu aparatūru, lūdzu, izpildiet iepriekšējo apmācību.

4. darbība: mākoņa konfigurēšana

1. solis. Izveidojiet resursu grupu

Noklikšķiniet šeit, lai pieteiktos Microsoft Azure. Pēc tam informācijas paneļa kreisajā pusē ievadiet resursu grupas, noklikšķiniet uz Pievienot, lai pievienotu resursu grupu.

Attēls
Attēls

Resursu grupu izmanto, lai pārvaldītu visus projekta resursus, pēc mākoņa resursu izmantošanas dzēsiet resursu grupu, lai dzēstu visus resursus, lai izvairītos no maksas. Atvērtajā lapā aizpildiet resursu grupas nosaukumu (piemēram, iotea), izvēlieties Abonēšana un resursu grupas atrašanās vieta, ja nepieciešams, noklikšķiniet uz Izveidot, lai izveidotu resursu grupu.

2. solis. Izveidojiet Iot Hub

Tagad jūs varat izveidot mākoņa resursu, kreisajā pusē noklikšķiniet uz Izveidot resursu, izvēlieties Lietu internets - Iot Hub, tas atvērs jaunu lapu.

Cilnē Pamati izvēlieties tikko izveidoto resursu grupu un aizpildiet Iot Hub nosaukumu (piemēram, iotea), izvēlieties Abonements un reģions, ja nepieciešams, un pēc tam pārejiet uz cilni Izmērs un mērogs.

Attēls
Attēls

Cilnē Izmērs un skala izvēlieties F1: bezmaksas līmenis vai B1: pamata līmenis cenu noteikšanā un mēroga līmeņa kombinācija, pamata līmenis prasīs 10,00 USD mēnesī. Visbeidzot, ieslēdziet cilni Pārskatīšana + izveide, pārbaudiet ievadīto informāciju un noklikšķiniet uz Izveidot, lai izveidotu Iot Hub.

Attēls
Attēls

3. solis. Konfigurējiet LORIOT

Ievadiet tikko izveidoto Iot Hub, noklikšķiniet uz Koplietojamas piekļuves politikas - ierīce, nokopējiet primāro atslēgu lapas labajā pusē.

Attēls
Attēls

Atveriet jaunu pārlūkprogrammas logu (vai cilni), piesakieties savā LORIOT vadības panelī, atveriet Lietojumprogramma - SampleApp, noklikšķiniet uz Datu izvade sadaļā Vadības grupa - Mainīt. Grupā Mainīt izvades veidu izvēlieties Azure Iot Hub, aizpildiet savu Iot Hub nosaukumu un primāro atslēgu un apakšā noklikšķiniet uz pogas Apstiprināt izmaiņas.

Attēls
Attēls

Solis 4. Pievienojiet Iot ierīci

LORIOT kreisajā pusē noklikšķiniet uz Ierīces, nokopējiet ierīces EUI.

Attēls
Attēls

Atgriežoties Azure Iot Hub, sarakstā Iot Hub kreisajā pusē noklikšķiniet uz Iot ierīces. Atvērtajā lapā noklikšķiniet uz Pievienot, aizpildiet ierīces EUI ierīces ID.

SVARĪGI: DZĒST VISU SEPRATORU IERĪCĒ EUI, ļaujiet izskatīties kā 1122334455667788.

Attēls
Attēls

Noklikšķiniet uz Saglabāt, viss ir izdarīts.

5. solis. Saņemiet D2C (no ierīces uz mākoni) ziņojumus

Lai lasītu D2C ziņojumus, varat sekot Microsoft dokumentiem.

5. solis: programmatūras programmēšana

Programmatūras programmēšana ir sadalīta 3 daļās: mezgls, vārteja un vietne, lūdzu, sekojiet iepriekšējai apmācībai, lai programmētu mezgla daļu un vārtejas daļu. Mājas lapas daļas 1. līdz 8. darbība ir tāda pati kā iepriekšējā apmācībā.

Ja jau esat konfigurējis Microsoft Azure, atveriet termināli, ievadiet savas vietnes saknes mapi, aktivizējiet virtuālo vidi:

cd ~/iotea-hb

avota tvertne/aktivizēt

instalējiet Azure Event Hub moduli, izmantojot pip, un izveidojiet jaunu failu.py (piemēram, iothub_recv.py):

pip instalējiet azure-eventhub

pieskarieties iothub_recv.py

un pēc tam ierakstiet kodus:

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

# Autortiesības (c) Microsoft Corporation. Visas tiesības aizsargātas. # Licencēts saskaņā ar MIT licenci. Informāciju par licenci skatiet License.txt projekta saknē. # ------------------------------------------------- ------------------------------------------- no debeszils importa eventhub no debeszils. eventhub importēšana EventData, EventHubClient, nobīdes importēšanas reģistrēšanas žurnālists = logging.getLogger ('azure.eventhub') importēšana db, json, time, datetime def get_time (): cntime = datetime.datetime.now () + datetime.timedelta (hours = +8) datums = cntime.strftime ('%Y-{}-{}'). Formāts (cntime.strftime ('%m'). Zfill (2), cntime.strftime ('%d'). Zfill (2)) stunda = cntime.strftime ('%H'). Zfill (2) minute = cntime.strftime ('%M'). Zfill (2) second = cntime.strftime ('%S'). Zfill (2)) return [datums, stunda, minūte, sekunde] def get_iothub_data (): list = ['0'] * 11 client = EventHubClient.from_iothub_connection_string ('', atkļūdošana = True) uztvērējs = 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) saņēma = uztvērējs.recept (timeout = 5) drukāt (saņemts) saņemtajam vienumam: es ssage = json.loads (str (item.message)) print (message) if 'data' in message: data = message ['data'] air_temp = str (int (dati [0: 2], 16)) air_hum = str (int (dati [2: 4], 16)) spiediens = str (int ((dati [4: 8]), 16)) co2 = str (int (dati [8:12], 16)) putekļi = str (int (dati [12:16], 16)) apgaismojums = str (int (dati [16:20], 16)) o2 = str (apaļš (int (dati [20:22], 16) / 10, 1)) augsnes_temps = str (int (dati [22:24], 16)) ground_hum = str (int (dati [24:26], 16)) spriegums = str (apaļš (int (dati [26:28]), 16) / int ('ff', 16) * 5, 1)) error = str (int (dati [28:], 16)) list = [air_temp, air_hum, spiediens, co2, putekļi, apgaismojums, o2, augsnes temperatūra, augsnes_hums, spriegums, kļūda] beidzot: atgriežas saraksts client.stop (), bet True: list = get_time () + get_iothub_data () db.insert (list) print (list)

Pirms programmas palaišanas nomainiet savienojuma virkni

klients = EventHubClient.from_iothub_connection_string ('', atkļūdošana = True)

Savu savienojuma virkni varat iegūt, noklikšķinot uz Koplietotās piekļuves politikas - iotowner Iot Hub, savienojuma virknes primārā atslēga atvērtajā lapā ir savienojuma virkne.

Attēls
Attēls

Pēc tam jūs varat sākt programmu:

gunicorn iothub_recv: lietotne

Ieteicams: