Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-23 15:15
Trong hướng dẫn này, chúng tôi sẽ đo các dữ liệu nhiệt độ và độ ẩm khác nhau bằng cách sử dụng cảm biến Nhiệt độ và độ ẩm. Bạn cũng sẽ học cách gửi dữ liệu này đến ThingSpeak. Vì vậy, bạn có thể phân tích nó từ mọi nơi cho các ứng dụng khác nhau
Bước 1: Yêu cầu phần cứng và phần mềm
Phần cứng:
- ESP-32: ESP32 giúp dễ dàng sử dụng Arduino IDE và Ngôn ngữ dây Arduino cho các ứng dụng IoT. Mô-đun IoT ESp32 này kết hợp Wi-Fi, Bluetooth và Bluetooth BLE cho nhiều ứng dụng đa dạng. Mô-đun này được trang bị đầy đủ với 2 lõi CPU có thể được điều khiển và cấp nguồn riêng lẻ và với tần số xung nhịp có thể điều chỉnh từ 80 MHz đến 240 MHz. Mô-đun ESP32 IoT WiFi BLE với USB tích hợp này được thiết kế để phù hợp với tất cả các sản phẩm IoT của ncd.io. Theo dõi các cảm biến và rơ le điều khiển, FET, bộ điều khiển PWM, bộ phận duy nhất, van, động cơ và nhiều hơn thế nữa từ mọi nơi trên thế giới bằng cách sử dụng trang web hoặc máy chủ chuyên dụng. Chúng tôi đã sản xuất phiên bản ESP32 của riêng mình để phù hợp với các thiết bị NCD IoT, cung cấp nhiều tùy chọn mở rộng hơn bất kỳ thiết bị nào khác trên thế giới! Một cổng USB tích hợp cho phép lập trình ESP32 dễ dàng. Mô-đun ESP32 IoT WiFi BLE là một nền tảng đáng kinh ngạc để phát triển ứng dụng IoT. Mô-đun ESP32 IoT WiFi BLE này có thể được lập trình bằng Arduino IDE.
- Cảm biến độ ẩm và nhiệt độ không dây tầm xa IoT: Cảm biến độ ẩm không dây tầm xa công nghiệp. Cấp với độ phân giải cảm biến ± 1,7% RH ± 0,5 ° C. Lên đến 500.000 lần truyền từ 2 pin AA. Đo từ -40 ° C đến 125 ° C với Pin tồn tại qua các Xếp hạng này. Phạm vi LOS cao hơn 2 dặm & 28 dặm với Anten tăng cao Giao diện với Raspberry Pi, Microsoft Azure, Arduino, v.v.
- Modem lưới không dây tầm xa với giao diện USB
Phần mềm được sử dụng
- Arduino IDE
- ThingSpeak
Thư viện đã sử dụng
- Thư viện PubSubClient
- Wire.h
Ứng dụng khách Arduino cho MQTT
Thư viện này cung cấp một ứng dụng khách để thực hiện nhắn tin đăng ký / xuất bản đơn giản với máy chủ hỗ trợ MQTT
Để biết thêm thông tin về MQTT, hãy truy cập mqtt.org.
Tải xuống
Có thể tải xuống phiên bản mới nhất của thư viện từ GitHub
Tài liệu
Thư viện đi kèm với một số bản phác thảo ví dụ. Xem Tệp> Ví dụ> PubSubClient trong ứng dụng Arduino. Tài liệu API đầy đủ.
Phần cứng tương thích
Thư viện sử dụng Arduino Ethernet Client API để tương tác với phần cứng mạng bên dưới. Điều này có nghĩa là nó chỉ hoạt động với ngày càng nhiều bảng và tấm chắn, bao gồm:
- Arduino Ethernet
- Arduino Ethernet Shield
- Arduino YUN - sử dụng YunClient đi kèm thay cho EthernetClient và đảm bảo thực hiện Bridge.begin () trước tiên
- Arduino WiFi Shield - nếu bạn muốn gửi các gói lớn hơn 90 byte bằng lá chắn này, hãy bật tùy chọn MQTT_MAX_TRANSFER_SIZE trong PubSubClient.h.
- SparkFun WiFly Shield - khi được sử dụng với thư viện này
- Intel Galileo / Edison
- ESP8266
- ESP32 Thư viện hiện không thể được sử dụng với phần cứng dựa trên chip ENC28J60 - chẳng hạn như Nanode hoặc Nuelectronics Ethernet Shield. Đối với những người đó, có một thư viện thay thế có sẵn.
Thư viện Wire
Thư viện Wire cho phép bạn giao tiếp với các thiết bị I2C, thường còn được gọi là "2 wire" hoặc "TWI" (Two Wire Interface), có thể tải xuống từ Wire.h
Cách sử dụng cơ bản
- Wire.begin () Bắt đầu sử dụng Wire ở chế độ chính, nơi bạn sẽ bắt đầu và kiểm soát quá trình truyền dữ liệu. Đây là cách sử dụng phổ biến nhất khi giao tiếp với hầu hết các chip ngoại vi I2C.
- Wire.begin (địa chỉ) Bắt đầu sử dụng Wire ở chế độ nô lệ, nơi bạn sẽ trả lời tại "địa chỉ" khi các chip chính I2C khác bắt đầu giao tiếp. Truyền
- Wire.beginTransmission (địa chỉ) Bắt đầu quá trình truyền mới tới một thiết bị tại "địa chỉ". Chế độ chính được sử dụng.
- Wire.write (dữ liệu) Gửi dữ liệu. Trong chế độ chủ, đầu tiên phải gọi beginTransmission.
- Wire.endTransmission () Ở chế độ chính, điều này sẽ kết thúc quá trình truyền và khiến tất cả dữ liệu trong bộ đệm được gửi đi.
Đang nhận
- Wire.requestFrom (địa chỉ, số lượng) Đọc "số lượng" byte từ một thiết bị tại "địa chỉ". Chế độ chính được sử dụng.
- Wire.available () Trả về số byte có sẵn bằng cách gọi nhận.
- Wire.read () Nhận 1 byte.
Bước 2: Tải mã lên ESP32 bằng Arduino IDE
- Trước khi tải mã lên, bạn có thể xem hoạt động của cảm biến này tại một liên kết nhất định.
- Tải xuống và bao gồm Thư viện PubSubClient và Thư viện Wire.h.
- Bạn phải gán khóa API, SSID (Tên WiFi) và Mật khẩu của mạng khả dụng.
- Biên dịch và tải lên mã Temp-ThinSpeak.ino.
- Để xác minh kết nối của thiết bị và dữ liệu được gửi, hãy mở màn hình nối tiếp. Nếu không thấy phản hồi, hãy thử rút ESP32 của bạn rồi cắm lại. Đảm bảo tốc độ truyền của màn hình nối tiếp được đặt giống với tốc độ được chỉ định trong mã 115200 của bạn.
Bước 3: Đầu ra màn hình nối tiếp
Bước 4: Làm cho ThingSpeak hoạt động
- Tạo tài khoản trên ThnigSpeak.
- Tạo kênh mới bằng cách nhấp vào Kênh.
- Nhấp vào Kênh của tôi.
- Nhấp vào Kênh mới.
- Bên trong Kênh mới, đặt tên cho kênh.
- Đặt tên cho Trường bên trong Kênh, Trường là biến mà dữ liệu được xuất bản.
- Bây giờ hãy lưu Kênh.
- Bây giờ bạn có thể tìm thấy các khóa API của mình trên trang tổng quan. Truy cập vào phần nhấn trên trang chủ và tìm 'Viết khóa Api' của bạn, khóa này phải được cập nhật trước khi tải mã lên ESP32.
- Khi Kênh được tạo, bạn có thể xem nhiệt độ và Dữ liệu độ ẩm của mình ở chế độ xem riêng tư với các Trường bạn đã tạo bên trong Kênh.
- Để vẽ biểu đồ giữa dữ liệu Nhiệt độ và Độ ẩm, bạn có thể sử dụng Hình ảnh hóa MATLAB.
- Đối với điều này, hãy chuyển đến Ứng dụng, Nhấp vào Hình ảnh hóa MATLAB.
- Bên trong nó chọn Custom, trong đó, chúng ta đã chọn nhiệt độ và tốc độ gió trên hai trục y 8 khác nhau làm ví dụ. Bây giờ hãy nhấp vào tạo.
- Mã MATLAB sẽ được tự động tạo khi bạn tạo trực quan nhưng bạn phải chỉnh sửa id trường, đọc id kênh, có thể kiểm tra hình sau.
- Sau đó, lưu và chạy mã.
- Bạn sẽ thấy cốt truyện.
Đề xuất:
Bắt đầu với cảm biến nhiệt độ và rung không dây phạm vi dài: 7 bước
Bắt đầu với cảm biến nhiệt độ và rung động không dây phạm vi dài: Đôi khi rung động là nguyên nhân gây ra các vấn đề nghiêm trọng trong nhiều ứng dụng. Từ trục máy và ổ trục đến hiệu suất của đĩa cứng, rung động gây ra hư hỏng máy, thay thế sớm, hiệu suất thấp và gây ảnh hưởng lớn đến độ chính xác. Giám sát
IoT- Ubidots- ESP32 + Phạm vi dài-Không dây-Rung-Và-Nhiệt độ-Cảm biến: 7 bước
IoT- Ubidots- ESP32 + Phạm vi dài-Không dây-Rung-Và-Nhiệt độ-Cảm biến: Rung thực sự là một chuyển động tới lui - hoặc dao động - của máy móc và linh kiện trong các thiết bị có động cơ. Rung trong hệ thống công nghiệp có thể là một triệu chứng hoặc động cơ của một rắc rối, hoặc nó có thể liên quan đến hoạt động hàng ngày. Ví dụ, osci
IoT - ThingSpeak - ESP32-Phạm vi dài-Không dây-Rung-Và-Nhiệt độ: 6 bước
IoT - ThingSpeak - ESP32-Long-Range-Wireless-Vibration-And-Temp: Trong dự án này, chúng tôi sẽ đo độ rung và nhiệt độ bằng cách sử dụng cảm biến nhiệt độ và rung NCD, Esp32, ThingSpeak. - của máy móc và linh kiện trong các thiết bị có động cơ. Rung động trong tôi
Gửi dữ liệu cảm biến nhiệt độ và độ ẩm không dây dải dài IoT tới Google Trang tính: 39 bước
Gửi dữ liệu cảm biến nhiệt độ và độ ẩm không dây phạm vi dài của IoT tới Google Trang tính: Chúng tôi đang sử dụng cảm biến Nhiệt độ và độ ẩm ở đây của NCD, nhưng các bước vẫn như nhau đối với bất kỳ sản phẩm ncd nào, vì vậy nếu bạn có các cảm biến không dây ncd khác, hãy trải nghiệm miễn phí để quan sát cùng với bên cạnh đó. Bằng cách dừng lại của văn bản này, bạn cần phải
Điểm truy cập không dây phạm vi 50 mét với bộ điều hợp không dây USB TP Link WN7200ND trên Raspbian Stretch: 6 bước
Điểm truy cập không dây phạm vi 50 mét với Bộ điều hợp không dây USB TP Link WN7200ND trên Raspbian Stretch: Raspberry Pi rất tuyệt để tạo Điểm truy cập không dây an toàn nhưng nó không có phạm vi tốt, tôi đã sử dụng Bộ điều hợp không dây USB TP Link WN7200ND để mở rộng nó. Tôi muốn chia sẻ cách thực hiện Tại sao tôi muốn sử dụng raspberry pi thay vì bộ định tuyến? T