Mục lục:

Trạm thời tiết không dây Arduino WiFi Wunderground: 10 bước (có hình ảnh)
Trạm thời tiết không dây Arduino WiFi Wunderground: 10 bước (có hình ảnh)

Video: Trạm thời tiết không dây Arduino WiFi Wunderground: 10 bước (có hình ảnh)

Video: Trạm thời tiết không dây Arduino WiFi Wunderground: 10 bước (có hình ảnh)
Video: Sainlogic WS-0310 WiFi Weather Station Rain Wind Solar UV Pressure Humidity Sensors FULL REVIEW 2024, Tháng bảy
Anonim
Arduino WiFi Trạm thời tiết không dây Wunderground
Arduino WiFi Trạm thời tiết không dây Wunderground

Trong phần có thể hướng dẫn này, tôi sẽ chỉ cho bạn cách xây dựng trạm thời tiết không dây cá nhân bằng Arduino

Trạm thời tiết là một thiết bị thu thập dữ liệu liên quan đến thời tiết và môi trường bằng cách sử dụng nhiều cảm biến khác nhau. Chúng tôi có thể đo lường nhiều thứ như:

  • Nhiệt độ
  • Độ ẩm
  • Gió
  • Áp suất khí quyển
  • Chỉ số UV
  • Cơn mưa

Nguồn cảm hứng của tôi để tạo ra trạm thời tiết này là Greg từ www.cactus.io Davis máy đo gió, máy đo tốc độ gió và mưa, bản quyền mã Arduino thuộc về anh ta.

Tôi đang sử dụng Arduino Uno làm bảng mạch chính.

Mô-đun WiFi ESP8266 sẽ gửi dữ liệu đến www.wunderground.com

Weather Underground là một dịch vụ thời tiết thương mại cung cấp thông tin thời tiết theo thời gian thực qua Internet.

Tôi sẽ sử dụng các cảm biến này:

  • Nhiệt độ - Dallas DS18B20
  • Độ ẩm, áp suất - BME280
  • UV, năng lượng mặt trời - ML8511
  • Áp kế và hướng gió - Davis 6410
  • Máy đo mưa - Ventus W174

Bước 1: Các bộ phận

Các bộ phận
Các bộ phận
Các bộ phận
Các bộ phận
Các bộ phận
Các bộ phận

Các phần cần thiết để xây dựng dự án này là:

  1. Arduino Uno
  2. ESP8266 ESP-01 hoặc ESP-12
  3. BME280
  4. ML8511
  5. Davis 6410
  6. Ventus W174

Bước 2: Sơ đồ và sơ đồ đấu dây

Sơ đồ và Sơ đồ đấu dây
Sơ đồ và Sơ đồ đấu dây

Bước 3: Tấm chắn trạm thời tiết PCB Arduino Uno

Tấm chắn trạm thời tiết PCB Arduino Uno
Tấm chắn trạm thời tiết PCB Arduino Uno
Tấm chắn trạm thời tiết PCB Arduino Uno
Tấm chắn trạm thời tiết PCB Arduino Uno
Tấm chắn trạm thời tiết PCB Arduino Uno
Tấm chắn trạm thời tiết PCB Arduino Uno

Thiết kế bảng mạch in (PCB), tôi đã sử dụng,, phần mềm Sprint-Layout . Xuất ra tệp Gerber.

Để tạo lá chắn trạm thời tiết Arduino Uno này, bạn sẽ cần:

  1. ML8511 UVB Tia UV Rays Sensor Breakout UV Light Sensor Đầu ra tương tự cho Arduino Ebay
  2. Đầu dò nhiệt kỹ thuật số không thấm nước hoặc cảm biến DS18B20 Arduino Sensor Ebay
  3. Bộ JST-XH 4Pin 2,54mm Vỏ thiết bị đầu cuối PCB Đầu nối dây Ebay
  4. Cảm biến áp suất khí quyển Cảm biến nhiệt độ độ ẩm Đột phá BME280Ebay
  5. 1x ESP8266 ESP12F Ebay
  6. 1x 1k 0805 điện trở
  7. 1x 120R 0805 điện trở
  8. 8x 0R 1206 jumper (điện trở)
  9. bảng đồng
  10. Điện trở 2x 4,7K
  11. 1x điện trở 10k
  12. 1x 3mm dẫn
  13. 1x ổ cắm RJ45 Ebay
  14. Tụ điện 1x 47uF
  15. 1x chân tiêu đề 40pins Ebay
  16. 1x Bộ điều chỉnh điện áp Sot-223 Ams1117 Ams117-3.3 3.3V 1A Ebay
  17. 1x 2.54mm Pitch Switch DIP 2 Ebay

Bước 4: Thư viện cảm biến Arduino, hướng dẫn sử dụng và thông tin khác

1) Dự án trạm thời tiết Arduino www.cactus.io

2) Hướng dẫn sử dụng máy đo gió Davis 6410

3) Thư viện trình điều khiển Adafruit BME280 (Cảm biến áp suất khí quyển)

4) Thư viện cảm biến UV ML8511

5) Thư viện Arduino cho các mạch tích hợp nhiệt độ tối đa DS18B20 DS18S20 - Xin lưu ý rằng có vẻ như có vấn đề với loạt bài này. DS1822 DS1820 MAX31820

6) Thư viện cho Dallas / Maxim 1-Wire Chips

7) Wunderground (Giao thức tải lên trạm thời tiết cá nhân)

feedback.weather.com/customer/en/portal/articles/2924682-pws-upload-protocol?b_id=17298&fbclid=IwAR3KTp6uTCxjdVCiXmoIvPpYdJHAtREcrRUaH41NJSM4k-LqnDaybckq

8) Trạm thời tiết NodeMCU

Bước 5: Hàn PCB

Hàn PCB
Hàn PCB
Hàn PCB
Hàn PCB
Hàn PCB
Hàn PCB

Tấm chắn trạm thời tiết Tôi đã quảng cáo cho trường hợp Raspberry Pi. Tôi nghĩ nó có vẻ tốt hơn.

Bước 6: Cài đặt Trạm thời tiết cá nhân

Cài đặt Trạm Thời tiết Cá nhân
Cài đặt Trạm Thời tiết Cá nhân
Cài đặt Trạm Thời tiết Cá nhân
Cài đặt Trạm Thời tiết Cá nhân
Cài đặt Trạm Thời tiết Cá nhân
Cài đặt Trạm Thời tiết Cá nhân

Vị trí trạm thời tiết là phần quan trọng nhất của việc lắp đặt. Nếu trạm thời tiết được đặt dưới gốc cây hoặc một phần nhô ra, dữ liệu lượng mưa do trạm đo được sẽ không chính xác. Nếu bạn đặt trạm thời tiết của mình trong một con hẻm, bạn rất có thể nhận được hiệu ứng đường hầm gió trên máy đo gió, dẫn đến dữ liệu gió bị sai. Trạm thời tiết phải có "tìm nạp" tốt hoặc khoảng cách với bất kỳ vật thể cao nào khác.

Đo gió tiêu chuẩn nên được thực hiện ở độ cao 10 mét so với mặt đất. Mái nhà phù hợp nhất với tôi.

Trạm thời tiết được cung cấp năng lượng từ bảng điều khiển năng lượng mặt trời. Vì vậy, nó là tự chủ.

Lỗi phổ biến nhất khi lắp đặt trạm thời tiết liên quan đến việc đặt sai cảm biến nhiệt kế. Các nhà khí tượng học định nghĩa nhiệt độ là nhiệt độ trong bóng râm với nhiều thông gió. Khi đặt trạm thời tiết, hãy đảm bảo:

  • Cảm biến nhiệt kế không bao giờ nhận được ánh sáng mặt trời trực tiếp.
  • Nhiệt kế nhận được nhiều thông gió và không bị cản gió.
  • Nếu nhiệt kế được đặt trên nóc nhà, hãy đảm bảo nhiệt kế cao hơn nóc nhà ít nhất 1,5 mét.
  • Nếu nhiệt kế được đặt trên cỏ, một lần nữa, nó phải cao hơn bề mặt cỏ ít nhất 1,5 mét.
  • Nhiệt kế cách bề mặt lát đá gần nhất ít nhất 15 mét.

Vì vậy, tôi đang sử dụng nơi trú ẩn thời tiết. Tôi đã làm nó từ ống PVC. Bằng cách này, trạm thời tiết có thể được đặt dưới ánh sáng mặt trời trực tiếp, với nhiệt kế nằm bên trong nơi trú ẩn.

Thông tin thêm về việc lắp đặt trạm thời tiết tại đây

Bước 7: Lệnh ESP8266 AT

Lệnh ESP8266 AT
Lệnh ESP8266 AT
Lệnh ESP8266 AT
Lệnh ESP8266 AT
Lệnh ESP8266 AT
Lệnh ESP8266 AT

Đầu tiên nó cần chuẩn bị modulle wifi ESP8266. Thay đổi CWMODE thành 1 = Chế độ trạm (Máy khách) và kết nối ESP8266 với bộ định tuyến WiFi của bạn. Tôi đang sử dụng bộ chuyển đổi nối tiếp usb sang ttl. Nó chỉ cần kết nối 4 dây (+ 3.3V, GND TX, RX)

Hoặc bạn có thể sử dụng Arduino để gửi AT comands tới ESP8266.

Lệnh AT:

TẠI

AT + CWMODE?

AT + CWMODE = 1

AT + CWJAP = "ssd của bạn", "mật khẩu"

thêm lệnh AT tại đây

Bước 8: Mã Arduino

1. Trước khi tải mã lên Arduino Uno của bạn, hãy đăng ký wunderground.com để lấy ID trạm WU và khóa / mật khẩu

2. Thay đổi ID và khóa / mật khẩu này thành mã Arduino trạm thời tiết của bạn.

  • char ID = "xxxxxxxx"; // ID trạm thời tiết dưới mặt đất
  • Chuỗi PASSWORD = "xxxxxxxx"; // mật khẩu trạm thời tiết wunderground

3. Thay đổi altitudepws để có được đồng hồ đo áp suất tương đối (m)

4. #define DEBUG 1 // nếu bạn chỉ kiểm tra dữ liệu cảm biến.

5. Tôi đang sử dụng thời gian lặp 30 giây để gửi dữ liệu đến Wunderground.com. Tôi sẽ mất 25 giây để đo tốc độ gió. Thời gian khác dành cho dữ liệu cảm biến đọc.

Bước 9: Kết quả

Kết quả
Kết quả

Nó đang hoạt động và gửi dữ liệu cảm biến đến Wunderground.com. Tôi rất hạnh phúc;)

Bước 10: IoT Personal NodeMCU ESP12 WiFi Trạm thời tiết không dây V2

IoT Personal NodeMCU ESP12 WiFi Trạm thời tiết không dây V2
IoT Personal NodeMCU ESP12 WiFi Trạm thời tiết không dây V2

Phiên bản trạm thời tiết mới v2 nhấp vào

Đề xuất: