Mục lục:

Bảng điều khiển trung tâm cảm biến dòng Docker Pi Giới thiệu về IOT: 13 bước
Bảng điều khiển trung tâm cảm biến dòng Docker Pi Giới thiệu về IOT: 13 bước

Video: Bảng điều khiển trung tâm cảm biến dòng Docker Pi Giới thiệu về IOT: 13 bước

Video: Bảng điều khiển trung tâm cảm biến dòng Docker Pi Giới thiệu về IOT: 13 bước
Video: Lấy Cái Đầu Cây Bút Bi Rồi Để Vào Hộp Sữa Là Phun Ra Nước Mực Quá Trời? | #shorts 2024, Tháng mười một
Anonim
Bảng trung tâm cảm biến dòng Docker Pi Giới thiệu về IOT
Bảng trung tâm cảm biến dòng Docker Pi Giới thiệu về IOT
Bảng trung tâm cảm biến dòng Docker Pi Giới thiệu về IOT
Bảng trung tâm cảm biến dòng Docker Pi Giới thiệu về IOT

Xin chào các bạn, ngày nay hầu hết mọi thứ đều liên quan đến IOT, không nghi ngờ gì nữa, hội đồng quản trị dòng DockerPi của chúng tôi cũng hỗ trợ IOT. Hôm nay, tôi muốn giới thiệu với các bạn cách áp dụng chuỗi SensorHub của dòng DockerPi vào IOT.

Tôi chạy mục này dựa trên Azure IOT HUB. Azure IOT HUB có thể được sử dụng để xây dựng các giải pháp IOT với thông tin liên lạc đáng tin cậy và an toàn giữa hàng triệu thiết bị IOT và phần phụ trợ giải pháp được lưu trữ trên đám mây.

Ví dụ: bạn có thể biết nhiệt độ của căn phòng của mình và liệu ai đó đã đến nhà bạn trên internet hay không bằng cách sử dụng SensorHub của chúng tôi.

Quân nhu

  • 1 x Bảng trung tâm cảm biến
  • 1 x RaspberryPi 3B / 3B + / 4B
  • 1 x Thẻ TF 8GB / 16GB
  • Nguồn cấp 1 x 5V / 2.5A hoặc nguồn 5v / 3A cho RPi 4B

Bước 1: Cách cài đặt Dòng cảm biến DockerPi với RaspberryPi

Cách cài đặt Dòng cảm biến DockerPi với RaspberryPi
Cách cài đặt Dòng cảm biến DockerPi với RaspberryPi

Đầu tiên chúng ta hãy xem cách cài đặt loạt DockerPi của SensorHub với Raspberry Pi

Bạn chỉ cần lắp các chân 40pin của chúng vào đó.

Hãy cẩn thận. Vui lòng tắt nguồn khi bạn đang cài đặt chúng

Bước 2: Mở I2C của RaspberryPi (1)

Mở I2C của RaspberryPi (1)
Mở I2C của RaspberryPi (1)

Thực hiện lệnh trên hình: sudo raspi-config

Bước 3: Mở I2C của RaspberryPi (2)

Mở I2C của RaspberryPi (2)
Mở I2C của RaspberryPi (2)

Bước 4: Mở I2C của RaspberryPi (3)

Mở I2C của RaspberryPi (3)
Mở I2C của RaspberryPi (3)

Bước 5: Môi trường phần mềm (1)

Môi trường phần mềm (1)
Môi trường phần mềm (1)

Trước tiên, bạn cần kiểm tra phiên bản python3 của mình.

Bước 6: Môi trường phần mềm (2)

Môi trường phần mềm (2)
Môi trường phần mềm (2)

Sau đó, bạn cần cài đặt các thành phần liên quan của Azure. Hãy cẩn thận, bạn phải sử dụng lệnh bao gồm "python3":

Bước 7: Môi trường phần mềm (3)

Môi trường phần mềm (3)
Môi trường phần mềm (3)

Tiếp theo bạn cần kiểm tra lại xem mình đã cài đặt công cụ git chưa, nếu bạn đã cài đặt git thì hãy thực hiện các lệnh sau:

Bước 8: Mã (1)

Mã (1)
Mã (1)
  1. Đi tới thư mục sau: azure-iot-sdk-python / tree / master / azure-iot-device / samples / advanced-hub-scripts
  2. Mở tệp sau: update_twin_reported_properties.py
  3. Bạn sẽ thấy các mã tệp nguồn sau trên hình:
  4. đổi thành các mã sau trên hình: Tên máy chủ… mà bạn có thể lấy từ webiste Azure.
  5. Mở tệp: get_twin.py và thực hiện tương tự:

Bước 9: Mã (2)

Mã (2)
Mã (2)

Bạn cũng cần nhập một số thư viện python3 trong tệp update_twin_reported_properties.py:

Bước 10: Mã (3)

Mã (3)
Mã (3)

Sau đó, nối các mã sau vào hình ảnh, bạn cũng có thể sao chép và dán vào tệp của mình:

bus = smbus. SMBus (1) await device_client.connect () aReceiveBuf = aReceiveBuf.append (0x00) # 占位 符 cho tôi trong phạm vi (0x01, 0x0D + 1): aReceiveBuf.append (bus.read_byte_data (0X17, i)) if aReceiveBuf [0X01] & 0x01: state0 = "Cảm biến nhiệt độ off-chip quá mức!" elif aReceiveBuf [0X01] & 0x02: state0 = "Không có cảm biến nhiệt độ bên ngoài!" else: state0 = "Nhiệt độ cảm biến ngoài chip hiện tại =% d độ C"% aReceiveBuf [0x01]

light = (bus.read_byte_data (0x17, 0x03) << 8) | (bus.read_byte_data (0x17, 0x02)) temp = bus.read_byte_data (0x17, 0x05) precision = bus.read_byte_data (0x17, 0x06) temp1 = bus.read_byte_data (0x17, 0x08) áp suất = (bus.read_byte_data (0x0B17, 0)) << 16) | ((bus.read_byte_data (0x17, 0x0A) << 8)) | ((bus.read_byte_data (0x17, 0x09))) state = bus.read_byte_data (0x17, 0x0C) if (state == 0): state = "cảm biến của BMP280 vẫn ổn" else: state = "cảm biến của BMP280 là tồi tệ"

human = bus.read_byte_data (0x17, 0x0D)

if (human == 1): human = "xác sống đã được phát hiện" else: human = "không có xác sống"

Bước 11: Mã (4)

Mã (4)
Mã (4)

Sau đó chạy tệp update_twin_reported_properties.py và bạn sẽ thấy kết quả:

Bước 12: Mã (5)

Mã (5)
Mã (5)

Sau đó, mở tệp: get_twin.py và nhập các mã sau, bạn cũng có thể sao chép mã và dán vào tệp của mình:

print ("{}". format (twin ["report"] ["state0"])) print ("Báo cáo ánh sáng là: {}". format (twin ["report"] ["light"]), "Lux ") print (" Nhiệt độ được báo cáo của bo mạch là: {} ". format (twin [" report "] [" nhiệt độ "])," degC ") print (" Độ ẩm được báo cáo là: {} ". format (twin [" đã báo cáo "] [" độ ẩm "]),"% ") print (" Nhiệt độ được báo cáo của cảm biến là: {} ". format (twin [" report "] [" heat1 "])," degC ") print (" Đã báo cáo áp suất của không khí là: {} ". format (twin [" báo cáo "] [" áp suất "])," Pa ") print (" Báo cáo {} ". format (twin [" báo cáo "] [" trạng thái "])) print ("Đã báo cáo có phát hiện xác sống hay không là: {}". format (twin ["report"] ["human"]))

Bước 13: Mã (6)

Mã (6)
Mã (6)

Sau đó chạy tệp get_twin.py và bạn sẽ thấy kết quả được cập nhật từ tệp update_twin_reported_properties.py:

Đề xuất: