
Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:03

Microsoft Azure to usługa w chmurze, która zapewnia większą i stabilniejszą moc obliczeniową. Tym razem próbowaliśmy przesłać do niego nasze dane IoTea.
Krok 1: Rzeczy użyte w tym projekcie
Komponenty sprzętowe
- Grove - czujnik dwutlenku węgla (MH-Z16)
- Grove - cyfrowy czujnik światła
- Grove - czujnik kurzu (PPD42NS)
- Grove - czujnik tlenu (ME2-O2-Ф20)
- Czujnik wilgotności gleby i temperatury
- LoRa LoRaWAN Gateway - zestaw 868MHz z Raspberry Pi 3
- Grove - Czujnik temperatury i wilgotności oraz barometryczny (BME280)
Aplikacje i usługi online
- Microsoft Visual Studio 2015
- Microsoft Azure
Krok 2: Historia
Na Górze Mengding na północny wschód od Ya'an w Syczuanie grzbiet górski biegnie z zachodu na wschód w morzu zieleni. Jest to najbardziej znany widok 36-letniego Denga, jednego z niewielu producentów herbaty Mengding swojego pokolenia, z plantacją o powierzchni 50mu (=3,3 hektara) położoną na wysokości 1100 m n.p.m. Deng pochodzi z rodziny producentów herbaty, ale kontynuacja rodzinnej spuścizny nie jest łatwym zadaniem. „Nasze herbaty są uprawiane na dużych wysokościach w ekologicznym środowisku, aby zapewnić ich doskonałą jakość. Ale jednocześnie gęstość wzrostu jest niska, koszt wysoki, a pączkowanie jest nierównomierne, co sprawia, że herbata jest trudna do zebrania. Dlatego herbatki wysokogórskie mają zwykle niewielkie zbiory, a ich wartość nie znajduje odzwierciedlenia na rynku”. Przez ostatnie dwa lata Deng starał się zwiększać świadomość konsumentów na temat herbat wysokogórskich, aby promować ich wartość. A kiedy spotkał Fana, który szukał plantacji do wdrożenia technologii IoTea firmy Seeed, znalazł idealne rozwiązanie.
Krok 3: Połączenie sprzętowe
Postępuj zgodnie z poprzednim samouczkiem, aby podłączyć sprzęt.
Krok 4: Konfiguracja chmury
Krok 1. Utwórz grupę zasobów
Kliknij tutaj, aby zalogować się do Microsoft Azure. A następnie wprowadź Grupy zasobów na liście po lewej stronie pulpitu nawigacyjnego, kliknij przycisk Dodaj, aby dodać grupę zasobów.

Grupa zasobów służy do zarządzania wszystkimi zasobami w projekcie, po użyciu zasobów w chmurze usuń grupę zasobów, aby usunąć wszystkie zasoby, aby uniknąć opłat. Na otwartej stronie wypełnij nazwę grupy zasobów (np. iotea), w razie potrzeby wybierz lokalizację subskrypcji i grupy zasobów, kliknij przycisk Utwórz, aby utworzyć grupę zasobów.
Krok 2. Utwórz Iot Hub
Teraz możesz utworzyć zasób w chmurze, kliknij Utwórz zasób po lewej stronie, wybierz Internet rzeczy - Iot Hub, otworzy się nowa strona.
Na karcie Podstawy wybierz właśnie utworzoną grupę zasobów i wypełnij nazwę Iot Hub (na przykład iotea), w razie potrzeby wybierz subskrypcję i region, a następnie przejdź do karty Rozmiar i scle.

Na karcie Rozmiar i skala wybierz F1: Bezpłatna warstwa lub B1: Podstawowa w zestawie cen i skalowania, warstwa podstawowa będzie pobierać 10,00 USD miesięcznie. Na koniec przejdź do opcji Przejrzyj + utwórz kartę, sprawdź dane wejściowe i kliknij Utwórz, aby utworzyć Iot Hub.

Krok 3. Skonfiguruj LORIOT
Wejdź do utworzonego właśnie centrum Iot Hub, kliknij Zasady dostępu współdzielonego - urządzenie, skopiuj klucz podstawowy na stronie po prawej stronie.

Otwórz nowe okno przeglądarki (lub kartę), zaloguj się do Panelu sterowania LORIOT, przejdź do Application - SampleApp, kliknij Dane wyjściowe w grupie Control - Change. W grupie Zmień typ danych wyjściowych wybierz Azure Iot Hub, wypełnij nazwę Iot Hub i klucz podstawowy, a następnie kliknij przycisk Potwierdź zmianę u dołu.

Krok 4. Dodaj urządzenie Iot
Kliknij Urządzenia na liście po lewej stronie w LORIOT, skopiuj EUI urządzenia.

Wróć do Azure Iot Hub, kliknij Urządzenia Iot na liście po lewej stronie Iot Hub. Kliknij Dodaj, wypełnij EUI urządzenia do ID urządzenia na otwartej stronie.
WAŻNE: USUŃ WSZYSTKIE SEPRATORY W URZĄDZENIU EUI, niech wygląda jak 1122334455667788.

Kliknij Zapisz, gotowe.
Krok 5. Odbieraj wiadomości D2C (urządzenie do chmury)
Możesz śledzić Microsoft Docs, aby czytać wiadomości D2C.
Krok 5: Programowanie oprogramowania
Programowanie oprogramowania jest podzielone na 3 części: węzeł, bramę i stronę internetową. Postępuj zgodnie z poprzednim samouczkiem, aby zaprogramować część węzła i część bramy. Kroki od 1 do 8 części witryny internetowej są również takie same, jak w poprzednim samouczku.
Jeśli masz już skonfigurowane Microsoft Azure, otwórz terminal, wejdź do katalogu głównego swojej witryny, aktywuj środowisko wirtualne:
cd ~/iotea-hb
kosz źródłowy/aktywacja
zainstaluj moduł Azure Event Hub za pośrednictwem pip i utwórz nowy plik.py (na przykład iothub_recv.py):
pip zainstaluj azure-eventhub
dotknij iothub_recv.py
a następnie napisz następujące kody:
# --------------------------------------------------------------------------------------------
# Prawa autorskie (c) Microsoft Corporation. Wszelkie prawa zastrzeżone. # Licencjonowane na licencji MIT. Zobacz License.txt w katalogu głównym projektu, aby uzyskać informacje o licencji. # -------------------------------------------------- ------------------------------------------- z azure import eventhub z azure. eventhub import EventData, EventHubClient, Offset importuj rejestrowanie logger = logging.getLogger('azure.eventhub') import db, json, time, datetime def get_time(): cntime = datetime.datetime.now() + datetime.timedelta(hours = +8) data = cntime.strftime('%Y-{}-{}').format(cntime.strftime('%m').zfill(2), cntime.strftime('%d').zfill(2)) godzina = cntime.strftime('%H').zfill(2) minuta = cntime.strftime('%M').zfill(2) sekunda = cntime.strftime('%S').zfill(2) return [data, godzina, minuta, sekunda] 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) drukuj (otrzymano) dla pozycji w odebranych: ja 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(dane[2:4], 16)) ciśnienie = str(int((dane[4:8]), 16)) co2 = str(int(dane[8:12], 16)) pył = str(int(dane[12:16], 16)) oświetlenie = str(int(dane[16:20], 16)) o2 = str(round(int(dane[20:22], 16) / 10, 1)) soil_temp = str(int(data[22:24], 16)) soil_hum = str(int(data[24:26], 16)) napięcie = str(round(int(data[26:28]), 16) / int('ff', 16) * 5, 1)) error = str(int(data[28:], 16)) list = [temperatura_powietrza, szum_powietrza, ciśnienie, co2, kurz, oświetlenie, o2, temperatura_gleby, soil_hum, voltage, error] w końcu: client.stop() zwraca listę, podczas gdy True: list = get_time() + get_iothub_data() db.insert(list) print(list)
Przed uruchomieniem programu zmień parametry połączenia w
klient = EventHubClient.from_iothub_connection_string('', debug=True)
Parametry połączenia można uzyskać, klikając Zasady dostępu współdzielonego - iotowner w usłudze Iot Hub, parametrami połączenia jest klucz podstawowy ciągu połączenia na otwartej stronie.

Następnie możesz uruchomić program:
gunicorn iothub_recv: aplikacja
Zalecana:
Konfigurowanie Raspberry Pi z Azure IoT Hub: 5 kroków

Konfigurowanie Raspberry Pi z Azure IoT Hub: Celem tej instrukcji jest praktyczne zapoznanie się z możliwościami Azure IoT Hub. Artykuł obejmuje rejestrację w usłudze Azure IoT Hub, konfigurowanie Raspberry Pi i łączenie Pi z Azure IoT Hub w celu wysyłania danych telemetrycznych.Co
Kontroluj urządzenia domowe przez LoRa - LoRa w automatyce domowej - Pilot LoRa: 8 kroków

Kontroluj urządzenia domowe przez LoRa | LoRa w automatyce domowej | LoRa Remote Control: Kontroluj i automatyzuj swoje urządzenia elektryczne z dużych odległości (kilometry) bez obecności Internetu. Jest to możliwe dzięki LoRa! Hej co tam u was? Akarsh tutaj z CETech. Ta płytka drukowana ma również wyświetlacz OLED i 3 przekaźniki, które
Seed LoRa IoTea Rozwiązanie: 5 kroków

Seeed LoRa IoTea Rozwiązanie: Automatyczny system zbierania informacji stosowany na plantacjach herbaty. Jest częścią inteligentnego zbierania informacji rolniczych
Seeed IoTea LoRa Solution (aktualizacja 1811): 5 kroków

Seeed IoTea LoRa Solution (aktualizacja 1811): Internet+ jest teraz popularną koncepcją. Tym razem wypróbowaliśmy Internet plus rolnictwo, aby ogród herbaciany wyrósł z Herbaty internetowej
Seeed Studio CAN-BUS V2.0 Hakowanie - Pierwsze kroki: 5 kroków

Seeed Studio CAN-BUS V2.0 Hacking - Pierwsze kroki: Ta instrukcja jest przeznaczona dla początkujących, którzy już znają się na Arduino. Wstępna wiedza, jak zacząć, jest zawsze bolesna i czasochłonna w każdym projekcie. Ale dopóki nie poznasz swojego sposobu poruszania się, prawie zawsze żałujesz, że nie masz kogoś, kogo