Sisällysluettelo:

Nähtiin IoTea LoRa -ratkaisu (Azurella, päivitys 1812): 5 vaihetta
Nähtiin IoTea LoRa -ratkaisu (Azurella, päivitys 1812): 5 vaihetta

Video: Nähtiin IoTea LoRa -ratkaisu (Azurella, päivitys 1812): 5 vaihetta

Video: Nähtiin IoTea LoRa -ratkaisu (Azurella, päivitys 1812): 5 vaihetta
Video: Leslie Kean on David Grusch (UFO Whistleblower): Non-Human Intelligence, Recovered UFOs, UAP, & more 2024, Marraskuu
Anonim
Näki IoTea LoRa -ratkaisun (Azurella, päivitys 1812)
Näki IoTea LoRa -ratkaisun (Azurella, päivitys 1812)

Microsoft Azure on pilvipalvelu, joka tarjoaa tehokkaamman ja vakaamman laskentatehon. Tällä kertaa yritimme lähettää IoTea -tiedot siihen.

Vaihe 1: Tässä projektissa käytetyt asiat

Laitteiston osat

  • Grove - hiilidioksidianturi (MH -Z16)
  • Grove - digitaalinen valotunnistin
  • Grove - Pölyanturi (PPD42NS)
  • Grove-happianturi (ME2-O2-Ф20)
  • Maaperän kosteus- ja lämpötila -anturi
  • LoRa LoRaWAN -yhdyskäytävä - 868 MHz: n sarja ja Raspberry Pi 3
  • Grove - lämpötila- ja humi- ja ilmanpainemittari (BME280)

Ohjelmistosovellukset ja verkkopalvelut

  • Microsoft Visual Studio 2015
  • Microsoft Azure

Vaihe 2: Tarina

Mengding -vuorella Yaichista koilliseen, Sichuanissa, vuoristoharja kulkee länteen itään vihreässä meressä. Tämä on tutuin näky 36-vuotiaalle Dengille, joka on yksi harvoista sukupolvensa Mengding-teenkeittimistä ja jonka istutusalue on 50 m (= 3,3 hehtaaria) 1100 m merenpinnan yläpuolella. Deng tulee teekoneiden perheestä, mutta perheen perinnön jatkaminen ei ole helppo tehtävä.”Teemme on kasvatettu korkealla luonnonmukaisessa ympäristössä sen erinomaisen laadun varmistamiseksi. Mutta samaan aikaan kasvutiheys on alhainen, kustannukset ovat korkeat ja orastaminen on epätasaista, mikä tekee teestä vaikean sadon. Siksi korkean vuoren teet ovat yleensä pieniä satoja, eikä niiden arvot näy markkinoilla.”Deng on kahden viime vuoden ajan pyrkinyt lisäämään kuluttajien tietoisuutta korkean vuoren teestä edistääkseen niiden arvoa. Ja kun hän tapasi Fanin, joka etsi istutusta Seeedin IoTea -tekniikan toteuttamiseen, ratkaisu löytyi täydellisesti.

Vaihe 3: Laitteistoyhteys

Liitä laitteisto noudattamalla edellistä opetusohjelmaa.

Vaihe 4: Määritä pilvi

Vaihe 1. Luo resurssiryhmä

Napsauta tätä kirjautuaksesi Microsoft Azureen. Kirjoita sitten resurssiryhmät hallintapaneelin vasemmalla puolella olevaan luetteloon ja lisää resurssiryhmä valitsemalla Lisää.

Kuva
Kuva

Resurssiryhmää käytetään hallitsemaan kaikkia projektin resursseja, pilviresurssien käytön jälkeen poista resurssiryhmä kaikkien resurssien poistamiseksi maksujen välttämiseksi. Täytä avatulla sivulla resurssiryhmän nimi (kuten iotea), valitse tilaus ja resurssiryhmän sijainti, napsauta Luo luodaksesi resurssiryhmän.

Vaihe 2. Luo Iot Hub

Nyt voit luoda pilviresurssin, napsauttaa Luo resouce vasemmalla, valita Esineiden Internet - Iot Hub, se avaa uuden sivun.

Valitse Perusteet -välilehdessä juuri luomasi resurssiryhmä ja täytä Iot Hub -nimi (kuten iotea), valitse tarvittaessa Tilaus ja alue ja siirry sitten Koko ja skaala -välilehdelle.

Kuva
Kuva

Valitse Koko ja asteikko -välilehdessä F1: Vapaa taso tai B1: Perustaso hinnoittelussa ja asteikkoyhdistelmä, Perustaso kestää 10,00 dollaria kuukaudessa. Käännä lopuksi tarkistus + luominen -välilehden tarkistus syöttämääsi kohtaan ja luo Luo Iot Hub napsauttamalla Luo.

Kuva
Kuva

Vaihe 3. Määritä LORIOT

Kirjoita juuri luomasi Iot Hub, napsauta Jaetut käyttöoikeuskäytännöt - laite, kopioi ensisijainen avain oikealla olevalle sivulle.

Kuva
Kuva

Avaa uusi selainikkuna (tai -välilehti), kirjaudu sisään LORIOT -ohjauspaneeliin, siirry kohtaan Sovellus - SampleApp, napsauta Ohjausryhmä - Muuta -kohdan Tiedonlähtö. Valitse Muuta tulostustyyppi -ryhmässä Azure Iot Hub, täytä Iot Hub -nimesi ja ensisijainen avaimesi ja napsauta Vahvista muutos -painiketta alareunassa.

Kuva
Kuva

Vaihe 4. Lisää Iot -laite

Napsauta LORIOTin vasemmanpuoleisessa luettelossa Laitteet ja kopioi laitteen EUI.

Kuva
Kuva

Palaa Azure Iot Hubiin ja valitse Iot -laitteet Iot Hubin vasemmalla puolella olevasta luettelosta. Napsauta Lisää, täytä laitteen EUI laitetunnukseen avatulla sivulla.

TÄRKEÄÄ: POISTA KAIKKI SEPRATORI LAITTEESTA EUI, anna sen näyttää 1122334455667788.

Kuva
Kuva

Napsauta Tallenna, kaikki on valmis.

Vaihe 5. Vastaanota D2C (Device to Cloud) -viestit

Voit lukea D2C -viestejä Microsoft Docsin avulla.

Vaihe 5: Ohjelmointi

Ohjelmiston ohjelmointi on jaettu kolmeen osaan: solmu, yhdyskäytävä ja verkkosivusto, noudata edellistä opetusohjelmaa solmun osan ja yhdyskäytävän osan ohjelmoimiseen. Verkkosivuston osan vaiheet 1-8 ovat myös samat kuin edellinen opetusohjelma.

Jos olet jo määrittänyt Microsoft Azuren, avaa päätelaite, kirjoita verkkosivustosi juurihakemisto ja aktivoi virtuaalinen ympäristö:

cd ~/iotea-hb

lähdesäiliö/aktivoi

asenna Azure Event Hub -moduuli pipin kautta ja luo uusi.py -tiedosto (kuten iothub_recv.py):

pip asenna azure-eventhub

kosketa iothub_recv.py

ja kirjoita sen jälkeen koodit:

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

# Tekijänoikeus (c) Microsoft Corporation. Kaikki oikeudet pidätetään. # Lisensoitu MIT -lisenssillä. Katso lisenssitiedot projektin juuresta License.txt. # ------------------------------------------------- ------------------------------------------- from azure import eventhub from azure. eventhub tuonti EventData, EventHubClient, Offset tuonti kirjausloggeri = logging.getLogger ('azure.eventhub') tuonti db, json, aika, päivä ja aika 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)) tunti = cntime.strftime ('%H'). Zfill (2) minute = cntime.strftime ('%M'). Zfill (2) second = cntime.strftime ('%S'). Zfill (2)) return [päivämäärä, tunti, minuutti, sekunti] def get_iothub_data (): list = ['0'] * 11 client = EventHubClient.from_iothub_connection_string ('', debug = True) vastaanottaja = 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) vastaanotettu = vastaanottaja.vastaanota (aikakatkaisu = 5) tulosta (vastaanotettu) vastaanotetulle tuotteelle: minä 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 (data [2: 4], 16)) paine = str (int ((data [4: 8]), 16)) co2 = str (int (data [8:12], 16)) pöly = str (int (data [12:16], 16)) valaistus = str (int (data [16:20], 16)) o2 = str (pyöreä (int (data [20:22], 16) / 10, 1)) maaperän lämpötila = str (int (data [22:24], 16)) maaperähumm = str (int (data [24:26], 16)) jännite = str (pyöreä (int (data [26:28]), 16) / int ('ff', 16) * 5, 1)) error = str (int (data [28:], 16)) list = [ilmalämpötila, ilman_hum, paine, co2, pöly, valaistus, o2, maaperän lämpötila, maaperän_hum, jännite, virhe] lopuksi: client.stop () palautusluettelo, kun taas True: list = get_time () + get_iothub_data () db.insert (list) print (list)

Vaihda yhteysmerkkijono ennen ohjelman suorittamista

client = EventHubClient.from_iothub_connection_string ('', debug = True)

voit saada yhteysmerkkijonon napsauttamalla Jaetut käyttöoikeuskäytännöt - iotowner Iot Hubissa, yhteysmerkkijono -alkeinen avain avatulla sivulla on yhteysmerkkijono.

Kuva
Kuva

Tämän jälkeen voit käynnistää ohjelman:

gunicorn iothub_recv: sovellus

Suositeltava: