Mục lục:

Trạm thời tiết WIFI với Magicbit (Arduino): 6 bước
Trạm thời tiết WIFI với Magicbit (Arduino): 6 bước

Video: Trạm thời tiết WIFI với Magicbit (Arduino): 6 bước

Video: Trạm thời tiết WIFI với Magicbit (Arduino): 6 bước
Video: Bài 7: Đồng hồ dự báo thời tiết sử dụng kít wifi ESP8266 và LCD TFT 1.8 inch - Project ứng dụng IOT 2024, Tháng bảy
Anonim
Image
Image

Hướng dẫn này cho thấy cách xây dựng trạm thời tiết từ Magicbit bằng Arduino có thể lấy thông tin chi tiết từ điện thoại thông minh của bạn.

Quân nhu

  • Magicbit
  • Cáp USB-A đến Micro-USB
  • Mô-đun cảm biến Magicbit DHT11

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

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về cách tạo một trạm thời tiết di động bằng cách sử dụng bảng nhà phát triển Magicbit với mô-đun cảm biến DHT11. Bằng cách sử dụng điện thoại thông minh, chúng tôi có thể nhận được thông tin chi tiết về thời tiết nơi Magicbit tọa lạc.

Bước 2: Lý thuyết và Phương pháp luận

Trong trạm thời tiết này, chúng tôi hy vọng sẽ nhận được dữ liệu về nhiệt độ và độ ẩm ở nơi chúng tôi muốn. Đầu tiên, chúng ta phải lấy dữ liệu từ cảm biến nhạy cảm với nhiệt độ và độ ẩm. Sau đó, tín hiệu đầu ra của cảm biến đó được cung cấp cho bộ vi điều khiển có bộ điều hợp WIFI để kết nối với internet. Đối với tất cả những điều này, chúng tôi chỉ cần sử dụng bo mạch lõi Magicbit và mô-đun cảm biến DHT11 có thể cắm trực tiếp vào Magicbit. Magicbit có bộ xử lý ESP32. Vì nó có kết nối WIFI sẵn có để kết nối với Internet. Sau đó, chúng tôi chuyển dữ liệu cảm biến của mình sang nền tảng đám mây và bằng cách sử dụng ứng dụng cụ thể, chúng tôi đã thiết kế giao diện tùy chỉnh của mình và hiển thị chi tiết bằng cách sử dụng nó. Với mục đích đó chúng tôi sử dụng ứng dụng Blynk. Ứng dụng này là ứng dụng dựa trên IOT. Nhưng nó rất đơn giản và chúng tôi có thể thực hiện nhiều dự án từ nó. Ngoài ra, nó hỗ trợ nhiều loại vi xử lý như Arduino, Esp32, v.v. Bạn có thể biết thêm chi tiết về ứng dụng này và nền tảng on / ine này bằng cách truy cập liên kết sau.

blynk.io/en/getting-started

Bước 3: Thiết lập phần cứng

Thiết lập phần mềm
Thiết lập phần mềm

Điều này rất đơn giản. Cắm mô-đun cảm biến vào Magicbit, sau đó kết nối Magicbit với máy tính bằng cáp micro USB.

Bước 4: Thiết lập phần mềm

Thiết lập phần mềm
Thiết lập phần mềm
Thiết lập phần mềm
Thiết lập phần mềm

Hầu hết các phần của dự án này được thực hiện trong thiết lập phần mềm. Trong phần lý thuyết và phương pháp, chúng tôi đã đề cập rằng chúng tôi sử dụng ứng dụng Blynk để hiển thị dữ liệu của chúng tôi. Therefor cho phép thiết lập điều đó.

Trước tiên, bạn cần tải xuống và cài đặt ứng dụng Blynk từ cửa hàng Play cho điện thoại Android của bạn hoặc từ cửa hàng ứng dụng cho iOS của bạn. Sau đó mở nó ra. Bây giờ nó đang yêu cầu đăng ký hoặc đăng nhập. Điều đó rất dễ dàng. Nếu bạn lần đầu tiên sử dụng ứng dụng này, hãy cung cấp địa chỉ email của bạn và nhập bất kỳ mật khẩu nào bạn muốn và đăng ký

Sau khi đăng nhập vào Blynk, chọn biểu tượng dự án mới và bạn sẽ vào trang dự án mới. Sau đó, nhập tên dự án của bạn và nó hỏi bạn đã sử dụng loại bo mạch nào và loại kết nối nào bạn sử dụng để giao tiếp với bộ xử lý. Đặt đó là nhà phát triển ESP32 và WIFI. Bây giờ hãy nhấp vào nút tạo và yow sẽ thấy một số massage trên màn hình. Theo đó bây giờ bạn phải kiểm tra hộp thư đến email của bạn. Bởi vì họ đã gửi cho bạn một số mã thông báo xác thực cho dự án của bạn. Kiểm tra email của bạn để đảm bảo rằng bạn đã nhận được nó. Chúng tôi sử dụng mã này trong mã nguồn Arduino của chúng tôi sau này. Bây giờ bạn có không gian làm việc trống và bạn có thể tùy chỉnh nó theo ý muốn

Bây giờ nhấp vào dấu tích cực ở thanh trên cùng của màn hình và bạn sẽ vào trang mới. Nó có rất nhiều tùy chọn được gọi là widget. Những vật dụng này dùng để hiển thị dữ liệu và điều khiển thiết bị từ xa. Bạn có thể tìm hiểu thêm về điều này từ liên kết này

docs.blynk.cc/#:~:text=Now%20imagine%3A%2… a% 20blynk% 20of% 20an% 20eye.

Trong dự án này, chúng tôi thể hiện dữ liệu của mình bằng cách sử dụng hai đồng hồ đo tương tự và chúng tôi hiển thị sự thay đổi dữ liệu của chúng tôi theo thời gian bằng cách sử dụng biểu đồ. Vì vậy, chúng tôi sử dụng hai đồng hồ đo và một siêu biểu đồ. Bằng cách chọn những widget đó, bạn có thể thêm chúng vào trang không gian làm việc của mình

Bây giờ chúng tôi có rất nhiều phần nhập khẩu để hoàn thành. Đó là cấu hình các widget này theo cách thích hợp. Để làm điều đó, bạn có thể vào cài đặt của mọi tiện ích. Bằng cách nhấp vào bất kỳ tiện ích con nào, bạn có thể nhập vào các cài đặt liên quan của tiện ích con mà bạn đã nhấp vào. cho phép thay đổi cài đặt của từng tiện ích con. vì chúng tôi sử dụng tiện ích bên trái để hiển thị chi tiết độ ẩm và tiện ích bên phải để biết chi tiết nhiệt độ, trước tiên hãy vào cài đặt của tiện ích đo bên trái bằng cách nhấp vào nó. Đặt tên và ưu tiên cho máy đo và Chọn màu bạn muốn để hiển thị dữ liệu độ ẩm của bạn từ máy đo. Đặt đầu vào là V5 và phạm vi từ 0 đến 100. V5 có nghĩa là chân 5 trực quan. Điều này có nghĩa là ứng dụng lấy dữ liệu từ chốt 5 trực quan. không phải là chân thứ năm tạo thành ESP32. Visual 5 pin chỉ được sử dụng để giao tiếp giữa bo mạch và ứng dụng thông qua internet. Nó không phải là pin thật. Độ ẩm sẽ hiển thị trong khoảng từ 0 đến 100. Đồng thời đặt tốc độ đọc thành 1. để việc đọc dữ liệu sẽ cập nhật sau mỗi giây. Bạn có thể thay đổi nó từ bất kỳ tỷ lệ nào. nhưng trong nhiều trường hợp, 1s rất tốt để lấy dữ liệu mà không bị chậm trễ

Cúi đầu quay lại màn hình dự án và nhập vào cài đặt máy đo phù hợp và thay đổi cài đặt như chúng ta đã làm trước đây. Hãy nhớ đặt đầu vào là chân V6. Bởi vì chúng tôi đã sử dụng V5 để lấy dữ liệu độ ẩm

Bây giờ, hãy chuyển đến cài đặt siêu biểu đồ và đặt tên và màu thích hợp. Sau đó, thêm hai luồng dữ liệu. Cái đầu tiên cho độ ẩm và cái thứ hai cho nhiệt độ. Sau đó, chuyển đến cài đặt luồng dữ liệu bằng cách nhấp vào các dấu bộ chỉnh âm ở phía bên phải của chúng. Sau đó chọn kiểu đồ thị. Trong trường hợp này, chúng tôi đặt đó là mô hình liên tục. sau đó đặt đầu vào là V5 và V6 cho hai luồng dữ liệu. Trong cài đặt luồng dữ liệu nhiệt độ, chúng tôi đặt hậu tố là độ C và trong cài đặt độ ẩm, chúng tôi đặt hậu tố đó là%. Bạn có thể thay đổi các cài đặt khác mà bạn muốn hiển thị

Bây giờ chúng tôi đã hoàn thành một phần của ứng dụng. Nhưng nếu không tải mã nguồn chính xác lên Magicbit, chúng tôi không thể kết nối với ứng dụng này. Vì vậy, chúng ta hãy xem làm thế nào để làm điều đó.

Ở giai đoạn đầu tiên, chúng tôi bao gồm các thư viện cụ thể để thiết lập kết nối internet bằng WIFI. Các thư viện đã được cài đặt với bảng Magicbit của bạn trong Arduino ngoại trừ thư viện Blynk. Vì vậy, hãy truy cập Sketch> Bao gồm Thư viện> Quản lý Thư viện và tìm kiếm thư viện Blynk và cài đặt phiên bản mới nhất của nó. Ngoài ra, bạn có thể tải xuống thư viện từ liên kết này

github.com/blynkkk/blynk-library

Sau khi tải xuống, hãy đi tới Sketch> Bao gồm Thư viện> thêm thư viện zip và chọn tệp zip mà bạn đã tải xuống.

Tiếp theo, bạn phải đặt tên và mật khẩu WIFI của chúng tôi trong mã kết nối với internet. Bây giờ sao chép và dán mã Auth Token mà bạn nhận được qua email. Kiểm tra nơi cảm biến của chúng tôi được kết nối với Magicbit. Trong trường hợp này, chân kết nối là 33. Trong thiết lập, bạn có thể thấy có hai chân ảo. Đặt các chân đó là V5 và V6. Nếu bạn đã sử dụng các chân khác nhau trong ứng dụng thì hãy thay đổi mã đó trong mã. Khi mã đang chạy trong bộ xử lý, đầu tiên nó kết nối với WIFI. Sau đó truyền dữ liệu qua internet thông qua V5 và V6. Đây là quá trình lặp lại. Bây giờ hãy chọn đúng cổng com và chọn loại bảng là magicbit. Bây giờ nó là thời gian để tải nó lên

Sau khi tải mã lên thành công, bảng Magicbit sẽ tự động kết nối với WIFI của bạn. Theo điều kiện môi trường của bạn, quá trình này có thể diễn ra chậm hoặc nhanh hơn.

Bây giờ, hãy chuyển đến dự án của bạn trong ứng dụng Blynk và đã đến lúc kiểm tra nó hoạt động. Nhấp vào biểu tượng nút thanh toán hình tam giác. Nếu ứng dụng của bạn được kết nối với bảng của bạn qua internet, thì bạn sẽ được mát-xa từ ứng dụng. Tốt, nó đang hoạt động. Bây giờ bạn có thể thấy nhiệt độ và độ ẩm từ hai đồng hồ đo và sự biến đổi của chúng từ biểu đồ.

Bước 5: Khắc phục sự cố

Nếu bạn nhấp vào nút phát dự án và nếu nó không phải là phản hồi. Sau đó,

  • Chờ một chút. Bởi vì đôi khi hội đồng quản trị khó phát hiện ra WIFI của bạn theo điều kiện môi trường của bạn. kết nối internet chậm cũng có thể là lý do cho điều đó.
  • Kiểm tra mã xác thực và chi tiết WIFI có chính xác trong mã bạn đã nhập hay không.
  • Thay đổi kết nối WIFI.

Bước 6: Mã Arduino

/*************************************************************

Tải thư viện Blynk mới nhất tại đây:

github.com/blynkkk/blynk-library/releases/latest Blynk là một nền tảng với các ứng dụng iOS và Android để điều khiển Arduino, Raspberry Pi và các ứng dụng tương tự qua Internet. Bạn có thể dễ dàng xây dựng giao diện đồ họa cho tất cả các dự án của mình bằng cách kéo và thả các widget. Tải xuống, tài liệu, hướng dẫn: https://www.blynk.cc Trình tạo phác thảo: https://examples.blynk.cc Cộng đồng Blynk: https://community.blynk.cc Theo dõi chúng tôi: https://www.fb. com / blynkapp Thư viện Blynk được cấp phép theo giấy phép MIT Mã ví dụ này nằm trong miền công cộng. ************************************************** *********** Ví dụ này cho thấy cách giá trị có thể được đẩy từ Arduino sang Ứng dụng Blynk. CẢNH BÁO: Đối với ví dụ này, bạn sẽ cần thư viện cảm biến Adafruit DHT: https://github.com/adafruit/Adafruit_Sensor https://github.com/adafruit/DHT-sensor-library Thiết lập dự án ứng dụng: Tiện ích Hiển thị giá trị được đính kèm với V5 Tiện ích hiển thị giá trị được gắn với V6 ******************************************** ***************** / / * Nhận xét điều này để tắt tính năng in và tiết kiệm dung lượng * / #define BLYNK_PRINT Serial #include #include #include #include "DHT.h" // Bạn sẽ nhận được Mã xác thực trong Ứng dụng Blynk. // Đi tới Cài đặt dự án (biểu tượng hạt). char auth = "****************"; // mã thông báo auth đã nhận bạn qua email // Thông tin đăng nhập WiFi của bạn. // Đặt mật khẩu thành "" cho các mạng mở. char ssid = "**********"; /// tên wifi của bạn char pass = "**********"; // mật khẩu wifi #define DHTPIN 33 // Ghim kỹ thuật số nào mà chúng tôi đang kết nối // Bỏ ghi chú bất kỳ loại nào bạn đang sử dụng! # xác định DHTTYPE DHT11 // DHT 11 // # xác định DHTTYPE DHT22 // DHT 22, AM2302, AM2321 // # xác định DHTTYPE DHT21 // DHT 21, AM2301 DHT dht (DHTPIN, DHTTYPE); Bộ đếm thời gian BlynkTimer; // Hàm này gửi thời gian hoạt động của Arduino mỗi giây tới Pin ảo (5). // Trong ứng dụng, tần suất đọc của Widget phải được đặt thành PUSH. Điều này có nghĩa là bạn xác định tần suất gửi dữ liệu đến Ứng dụng Blynk. void sendSensor () {float h = dht.readHumidity (); float t = dht.readTempe Heat (); // hoặc dht.readTempe Heat (true) cho Fahrenheit if (isnan (h) || isnan (t)) {Serial.println ("Không đọc được từ cảm biến DHT!"); trở lại; } // Bạn có thể gửi bất kỳ giá trị nào bất kỳ lúc nào. // Vui lòng không gửi nhiều hơn 10 giá trị đó mỗi giây. Blynk.virtualWrite (V5, h); Blynk.virtualWrite (V6, t); } void setup () {// Bảng điều khiển gỡ lỗi Serial.begin (115200); chậm trễ (1000); Blynk.begin (auth, ssid, pass); // Bạn cũng có thể chỉ định máy chủ: //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80); //Blynk.begin(auth, ssid, pass, IPAddress (192, 168, 1, 100), 8080); dht.begin (); // Thiết lập một hàm được gọi mỗi giây timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }

Đề xuất: