Inhaltsverzeichnis:
- Schritt 1: Dinge, die in diesem Projekt verwendet werden
- Schritt 2: Geschichte
- Schritt 3: Hardwareverbindung
- Schritt 4: Cloud-Konfiguration
- Schritt 5: Softwareprogrammierung
Video: Seeed IoTea LoRa-Lösung (mit Azure, Update 1812) – Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:19
Microsoft Azure ist ein Cloud-Dienst, der eine leistungsfähigere und stabilere Rechenleistung bietet. Diesmal haben wir versucht, unsere IoTea-Daten dorthin zu senden.
Schritt 1: Dinge, die in diesem Projekt verwendet werden
Hardware-Komponenten
- Grove - Kohlendioxidsensor (MH-Z16)
- Grove - Digitaler Lichtsensor
- Grove - Staubsensor(PPD42NS)
- Grove - Sauerstoffsensor (ME2-O2-Ф20)
- Bodenfeuchte- und Temperatursensor
- LoRa LoRaWAN Gateway - 868MHz Kit mit Raspberry Pi 3
- Grove - Temperatur-, Humi- und Barometersensor (BME280)
Software-Apps und Online-Dienste
- Microsoft Visual Studio 2015
- Microsoft Azure
Schritt 2: Geschichte
Auf dem Mengding Mountain nordöstlich von Ya’an, Sichuan, verläuft der Bergrücken von Westen nach Osten in einem grünen Meer. Dies ist ein vertrauter Anblick für den 36-jährigen Deng, einer der ganz wenigen Mengding-Teehersteller seiner Generation, mit einer Plantage von 50mu (=3,3 Hektar) auf 1100 m über dem Meeresspiegel. Deng stammt aus einer Familie von Teebereitern, aber das Familienerbe weiterzuführen ist keine leichte Aufgabe. „Unsere Tees werden in großer Höhe in einer biologischen Umgebung angebaut, um ihre hervorragende Qualität zu gewährleisten. Gleichzeitig ist die Wachstumsdichte jedoch gering, die Kosten hoch und die Knospung ist ungleichmäßig, was die Ernte des Tees erschwert. Deshalb sind Hochgebirgstees normalerweise kleine Ernten und ihre Werte spiegeln sich nicht auf dem Markt wider.“Seit zwei Jahren versucht Deng, die Verbraucher für Hochgebirgstee zu sensibilisieren, um ihren Wert zu fördern. Und als er Fan traf, der nach einer Plantage suchte, um die IoTea-Technologie von Seeed zu implementieren, war eine perfekte Lösung gefunden.
Schritt 3: Hardwareverbindung
Bitte folgen Sie dem vorherigen Tutorial, um Ihre Hardware anzuschließen.
Schritt 4: Cloud-Konfiguration
Schritt 1. Ressourcengruppe erstellen
Klicken Sie hier, um sich bei Microsoft Azure anzumelden. Geben Sie dann Ressourcengruppen in die Liste links im Dashboard ein und klicken Sie auf Hinzufügen, um eine Ressourcengruppe hinzuzufügen.
Eine Ressourcengruppe wird verwendet, um alle Ressourcen im Projekt zu verwalten. Löschen Sie nach der Verwendung von Cloud-Ressourcen die Ressourcengruppe, um alle Ressourcen zu löschen, um Gebühren zu vermeiden. Geben Sie auf der geöffneten Seite den Namen der Ressourcengruppe ein (z. B. iotea), wählen Sie bei Bedarf Abonnement und Standort der Ressourcengruppe, klicken Sie auf Erstellen, um eine Ressourcengruppe zu erstellen.
Schritt 2. Iot Hub erstellen
Jetzt können Sie eine Cloud-Ressource erstellen, klicken Sie links auf Create a resource, wählen Sie Internet of Things - Iot Hub, es wird eine neue Seite geöffnet.
Wählen Sie auf der Registerkarte Basics die soeben erstellte Ressourcengruppe aus, und geben Sie den Iot-Hub-Namen (z.
Wählen Sie auf der Registerkarte Größe und Staffelung F1: Kostenlose Stufe oder B1: Basisstufe in der Kombination aus Preis und Staffelstufe aus. Die Basisstufe kostet 10,00 USD pro Monat. Wechseln Sie schließlich zu Überprüfen + erstellen Sie die Registerkarte, die Sie eingegeben haben, und klicken Sie auf Erstellen, um einen Iot Hub zu erstellen.
Schritt 3. Konfigurieren Sie LORIOT
Geben Sie den soeben erstellten Iot Hub ein, klicken Sie auf Richtlinien für den gemeinsamen Zugriff - Gerät, kopieren Sie den Primärschlüssel in die Seite rechts.
Öffnen Sie ein neues Browserfenster (oder eine neue Registerkarte), melden Sie sich bei Ihrem LORIOT Control Panel an, gehen Sie zu Application - SampleApp, klicken Sie auf Datenausgabe in der Control-Gruppe - Change. Wählen Sie in der Gruppe Ausgabetyp ändern die Option Azure Iot Hub aus, geben Sie Ihren Iot Hub-Namen und Primärschlüssel ein, und klicken Sie unten auf die Schaltfläche Änderung bestätigen.
Schritt 4. Iot-Gerät hinzufügen
Klicken Sie in LORIOT links in der Liste auf Geräte und kopieren Sie Ihre Geräte-EUI.
Zurück zu Azure Iot Hub, klicken Sie in der Liste auf der linken Seite von Iot Hub auf Iot-Geräte. Klicken Sie auf Hinzufügen, füllen Sie auf der geöffneten Seite die Geräte-EUI mit der Geräte-ID aus.
WICHTIG: LÖSCHEN SIE ALLE SEPRATOREN IN DEVICE EUI, lassen Sie es wie 1122334455667788 aussehen.
Klicken Sie auf Speichern, fertig.
Schritt 5. D2C-Nachrichten (Device to Cloud) empfangen
Sie können Microsoft Docs folgen, um D2C-Nachrichten zu lesen.
Schritt 5: Softwareprogrammierung
Die Softwareprogrammierung ist in 3 Teile unterteilt: Node, Gateway und Website. Bitte folgen Sie dem vorherigen Tutorial, um Node Part und Gateway Part zu programmieren. Die Schritte 1 bis 8 des Website-Teils entsprechen auch denen des vorherigen Tutorials.
Wenn Sie Microsoft Azure bereits konfiguriert haben, öffnen Sie ein Terminal, geben Sie den Stammordner Ihrer Website ein, aktivieren Sie die virtuelle Umgebung:
cd ~/iotea-hb
Quell-Bin/aktivieren
Installieren Sie das Azure Event Hub-Modul über pip und erstellen Sie eine neue.py-Datei (z. B. iothub_recv.py):
pip install azure-eventhub
Berühren Sie iothub_recv.py
und schreibe dann folgende Codes dazu:
# --------------------------------------------------------------------------------------------
# Urheberrecht (c) Microsoft Corporation. Alle Rechte vorbehalten. # Lizenziert unter der MIT-Lizenz. Lizenzinformationen finden Sie unter License.txt im Projektstamm. # -------------------------------------------------- ------------------------------------------------------- from Azure importiere eventhub aus Azure. eventhub import EventData, EventHubClient, Offset import Logging logger = Logging.getLogger('azure.eventhub') import db, json, time, datetime def get_time(): cntime = datetime.datetime.now() + datetime.timedelta(hours = +8) Datum = cntime.strftime('%Y-{}-{}').format(cntime.strftime('%m').zfill(2), cntime.strftime('%d').zfill(2)) Stunde = cntime.strftime('%H').zfill(2) Minute = cntime.strftime('%M').zfill(2) Sekunde = cntime.strftime('%S').zfill(2) return [Datum, Stunde, Minute, Sekunde] 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) empfangen = receiver.receive(timeout =5) print(received) for item in empfangen: me 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)) Druck = str(int((data[4:8]), 16)) co2 = str(int(data[8:12], 16)) Staub = str(int(data[12:16], 16)) Beleuchtung = str(int(data[16:20], 16)) o2 = str(round(int(data[20:22], 16) / 10, 1)) boden_temp = str(int(data[22:24], 16)) boden_hum = str(int(data[24:26], 16)) spannung = str(round(int(data[26:28], 16) / int('ff', 16) * 5, 1)) error = str(int(data[28:], 16)) list = [air_temp, air_hum, pressure, co2, dust, lighting, o2, ground_temp, ground_hum, voltage, error] schließlich: client.stop() gibt Liste zurück, während True: list = get_time() + get_iothub_data() db.insert(list) print(list)
Bevor Sie das Programm ausführen, ändern Sie Ihre Verbindungszeichenfolge in
client = EventHubClient.from_iothub_connection_string('', debug=True)
Sie können Ihre Verbindungszeichenfolge abrufen, indem Sie auf Gemeinsame Zugriffsrichtlinien - iotowner in Iot Hub klicken. Der Primärschlüssel der Verbindungszeichenfolge auf der geöffneten Seite ist die Verbindungszeichenfolge.
Danach können Sie das Programm starten:
gunicorn iothub_recv:app
Empfohlen:
Covid-19 Update Tracker mit ESP8266 - Gunook
Covid-19 Update Tracker mit ESP8266: Dies ist ein Projekt, das die aktuellen Daten des Coronavirus-Ausbruchs verschiedener Städte von indischen Bundesstaaten in Echtzeit auf einem OLED-Display anzeigt. Mit diesem Live-Status-Tracker können Sie das Covid-19-Update Ihres Distrikts in Echtzeit überwachen. Dieses Projekt ist komplett b
ESP8266 POV-Lüfter mit Uhr und Webseitentext-Update - Gunook
ESP8266 POV-Lüfter mit Uhr- und Webseitentext-Aktualisierung: Dies ist ein POV (Persistence Of Vision) mit variabler Geschwindigkeit, ein Lüfter, der die Zeit intermittierend anzeigt, und zwei Textnachrichten, die "on the fly" aktualisiert werden können ist auch ein einseitiger Webserver, mit dem Sie die beiden Textme
Raspberry Pi mit Azure IoT Hub einrichten - Gunook
Einrichten von Raspberry Pi mit Azure IoT Hub: Der Zweck dieser Anleitung besteht darin, die Funktionen von Azure IoT Hub praktisch kennenzulernen. Der Artikel behandelt die Anmeldung bei Azure IoT Hub, das Einrichten eines Raspberry Pi und das Verbinden des Pi mit Azure IoT Hub, um Telemetrie zu senden. Was
Tamaguino-Update mit riesigem OLED - Gunook
Tamaguino Update mit riesigem OLED: Grüße! Heute werden wir Tamaguino mit einem glänzenden neuen riesigen 2.7" OLED-Display, freundlicherweise zur Verfügung gestellt von DFRobot! Wie Sie vielleicht bereits wissen, war Tamaguino eines meiner ersten Arduino-Projekte und mein erstes Spiel, das für den Betrieb auf einem Mikrocontroller entwickelt wurde
(1) Neon-Anzeige: Mit Update 01.03.13 - Gunook
(1) Neon-Anzeige: Mit Update 01.03.13: Die Neon-Birne wurde verwendet, um die Glühbirne in elektrischen Geräten zu ersetzen. Das erste in einer Reihe von Neonbirnenprojekten zur Wiedereinführung der NE2-Komponente. NUR 110 bis 125 VAC ! Hier beginnen wir mit der einfachsten Schaltung. Der Neon-Indikator. Aktualisieren