Mục lục:

Đã xem Giải pháp IoTea LoRa (với Azure, Bản cập nhật 1812): 5 bước
Đã xem Giải pháp IoTea LoRa (với Azure, Bản cập nhật 1812): 5 bước

Video: Đã xem Giải pháp IoTea LoRa (với Azure, Bản cập nhật 1812): 5 bước

Video: Đã xem Giải pháp IoTea LoRa (với Azure, Bản cập nhật 1812): 5 bước
Video: Hướng dẫn cài đặt VSCode - Tổng hợp các VS Code Extension bá đạo bạn nên có 2024, Tháng sáu
Anonim
Đã xem Giải pháp IoTea LoRa (với Azure, Bản cập nhật 1812)
Đã xem Giải pháp IoTea LoRa (với Azure, Bản cập nhật 1812)

Microsoft Azure là một dịch vụ đám mây cung cấp sức mạnh tính toán ổn định và mạnh mẽ hơn. Lần này, chúng tôi đã thử gửi dữ liệu IoTea của mình tới đó.

Bước 1: Những thứ được sử dụng trong dự án này

Các thành phần phần cứng

  • Grove - Cảm biến Carbon Dioxide (MH-Z16)
  • Grove - Cảm biến ánh sáng kỹ thuật số
  • Grove - Cảm biến bụi (PPD42NS)
  • Grove - Cảm biến oxy (ME2-O2-Ф20)
  • Cảm biến nhiệt độ & độ ẩm của đất
  • LoRa LoRaWAN Gateway - 868MHz Kit với Raspberry Pi 3
  • Grove - Cảm biến nhiệt độ & độ ẩm & khí áp kế (BME280)

Ứng dụng phần mềm và dịch vụ trực tuyến

  • Microsoft Visual Studio 2015
  • Microsoft Azure

Bước 2: Câu chuyện

Trên núi Mengding ở phía đông bắc Ya’an, Tứ Xuyên, sườn núi chạy từ tây sang đông trong một biển xanh. Đây là cảnh tượng quen thuộc nhất đối với Deng, 36 tuổi, một trong số rất ít người làm trà Mengding ở thế hệ của anh, với đồn điền rộng 50mu (= 3,3 ha) nằm ở độ cao 1100m so với mực nước biển. Deng xuất thân từ một gia đình làm trà, nhưng việc gánh vác di sản của gia đình không phải là một việc dễ dàng. “Các loại trà của chúng tôi được trồng ở độ cao trong một môi trường hữu cơ để đảm bảo chất lượng tuyệt vời của nó. Song song đó, mật độ sinh trưởng thấp, chi phí cao và nảy chồi không đồng đều khiến chè khó thu hoạch. Đó là lý do tại sao trà núi cao thường thu hoạch nhỏ và giá trị của chúng không được phản ánh trên thị trường.”Trong hai năm qua, Deng đã cố gắng nâng cao nhận thức của người tiêu dùng về trà núi cao để quảng bá giá trị của chúng. Và khi anh ấy gặp Fan, người đang tìm kiếm một đồn điền để triển khai công nghệ Seeed’s IoTea, một giải pháp hoàn hảo đã được đưa ra.

Bước 3: Kết nối phần cứng

Vui lòng làm theo Hướng dẫn trước để kết nối phần cứng của bạn.

Bước 4: Cấu hình đám mây

Bước 1. Tạo nhóm tài nguyên

Bấm vào đây để đăng nhập Microsoft Azure. Và sau đó, nhập Nhóm tài nguyên trong danh sách ở bên trái trang tổng quan, nhấp vào Thêm để thêm Nhóm tài nguyên.

Hình ảnh
Hình ảnh

Một Resource Group dùng để quản lý tất cả tài nguyên trong dự án, sau khi sử dụng tài nguyên đám mây thì xóa nhóm tài nguyên xóa hết tài nguyên để tránh bị tính phí. Trong trang đã mở, điền tên nhóm Tài nguyên (chẳng hạn như iotea), chọn Đăng ký và vị trí nhóm Tài nguyên nếu cần, bấm Tạo để tạo Nhóm Tài nguyên.

Bước 2. Tạo Iot Hub

Bây giờ bạn có thể tạo tài nguyên đám mây, nhấp vào Create a resouce ở bên trái, chọn Internet of Things - Iot Hub, nó sẽ mở ra một trang mới.

Trong tab Cơ bản, chọn Nhóm tài nguyên bạn vừa tạo và điền Tên trung tâm (chẳng hạn như iotea), chọn Đăng ký và Khu vực nếu cần, sau đó chuyển sang tab Kích thước và bảng xếp hạng.

Hình ảnh
Hình ảnh

Trong tab Quy mô và quy mô, chọn F1: Bậc miễn phí hoặc B1: Bậc cơ bản trong kết hợp Bậc giá và thang bậc, Bậc cơ bản sẽ mất 10 USD mỗi tháng. Cuối cùng, chuyển sang tab Xem lại + tạo kiểm tra bạn nhập và nhấp vào Tạo để tạo Iot Hub.

Hình ảnh
Hình ảnh

Bước 3. Định cấu hình LORIOT

Nhập Iot Hub bạn vừa tạo, nhấp vào Chính sách truy cập được chia sẻ - thiết bị, sao chép Khóa chính trong trang bên phải.

Hình ảnh
Hình ảnh

Mở cửa sổ (hoặc tab) trình duyệt mới, đăng nhập Bảng điều khiển LORIOT của bạn, chuyển đến Ứng dụng - SampleApp, nhấp vào Đầu ra dữ liệu trong nhóm Điều khiển - Thay đổi. Trong nhóm Thay đổi loại đầu ra, chọn Azure Iot Hub, điền Tên và khóa chính của Iot Hub và nhấp vào nút Xác nhận thay đổi ở dưới cùng.

Hình ảnh
Hình ảnh

Bước 4. Thêm thiết bị Iot

Nhấp vào Thiết bị trong danh sách ở bên trái trong LORIOT, sao chép EUI Thiết bị của bạn.

Hình ảnh
Hình ảnh

Quay lại Azure Iot Hub, nhấp vào Iot thiết bị trong danh sách ở bên trái của Iot Hub. Nhấp vào Thêm, điền EUI của thiết bị vào ID thiết bị trong trang đã mở.

QUAN TRỌNG: XÓA TẤT CẢ SEPRATOR TRONG THIẾT BỊ EUI, giống như 1122334455667788.

Hình ảnh
Hình ảnh

Nhấp vào Lưu, tất cả đã hoàn tất.

Bước 5. Nhận tin nhắn D2C (Thiết bị lên đám mây)

Bạn có thể theo dõi Microsoft Docs để đọc D2C Messages.

Bước 5: Lập trình phần mềm

Lập trình phần mềm được chia thành 3 phần: Node, Gateway và Website, vui lòng làm theo Hướng dẫn trước để lập trình Phần Node và Phần Gateway. Các bước từ 1 đến 8 của Phần Trang web cũng giống như Hướng dẫn trước.

Nếu bạn đã định cấu hình Microsoft Azure, hãy mở một thiết bị đầu cuối, nhập thư mục gốc của trang web của bạn, kích hoạt môi trường ảo:

cd ~ / iotea-hb

bin nguồn / kích hoạt

cài đặt mô-đun Trung tâm sự kiện Azure qua pip và tạo tệp new.py (chẳng hạn như iothub_recv.py):

pip cài đặt azure-eventhub

chạm vào iothub_recv.py

và sau đó viết các mã sau vào nó:

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

# Bản quyền (c) Tập đoàn Microsoft. Đã đăng ký Bản quyền. # Được cấp phép theo Giấy phép MIT. Xem License.txt trong thư mục gốc của dự án để biết thông tin về giấy phép. # ------------------------------------------------- ------------------------------------------- from azure import eventhub từ 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 (giờ = +8) date = cntime.strftime ('% Y - {} - {}'). Format (cntime.strftime ('% m'). Zfill (2), cntime.strftime ('% d'). Zfill (2)) giờ = cntime.strftime ('% H'). Zfill (2) phút = cntime.strftime ('% M'). Zfill (2) giây = cntime.strftime ('% S'). Zfill (2) return [ngày, giờ, phút, giây] 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 ())) thử: client.run () eh_info = client.get_eventhub_info () print (eh_info) Received = receiver.receive (hết giờ = 5) in (đã nhận) cho mục đã nhận: tôi ssage = json.loads (str (item.message)) print (message) if 'data' trong message: data = message ['data'] air_temp = str (int (data [0: 2], 16)) air_hum = str (int (data [2: 4], 16)) pressure = str (int ((data [4: 8]), 16)) co2 = str (int (data [8:12], 16)) Dust = str (int (data [12:16], 16)) illumination = str (int (data [16:20], 16)) o2 = str (round (int (data [20:22], 16) / 10, 1)) đất_temp = str (int (dữ liệu [22:24], 16)) đất_hum = str (int (dữ liệu [24:26], 16)) điện áp = str (vòng (int (dữ liệu [26:28], 16) / int ('ff', 16) * 5, 1)) error = str (int (data [28:], 16)) list = [air_temp, air_hum, áp suất, co2, bụi, chiếu sáng, o2, đất_temp, đất_hum, điện áp, lỗi] cuối cùng: client.stop () trả về danh sách trong khi True: list = get_time () + get_iothub_data () db.insert (list) print (list)

Trước khi bạn chạy chương trình, hãy thay đổi chuỗi kết nối của bạn trong

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

bạn có thể lấy chuỗi kết nối của mình bằng cách nhấp vào Chính sách truy cập được chia sẻ - iotowner trong Iot Hub, khóa nguyên sơ của chuỗi kết nối trong trang đã mở là chuỗi kết nối.

Hình ảnh
Hình ảnh

Sau đó, bạn có thể bắt đầu chương trình:

gunicorn iothub_recv: app

Đề xuất: