Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-13 06:58
Các trạm thời tiết IoT (Internet Of Things) có sẵn trên thị trường rất đắt tiền và không có sẵn ở mọi nơi (Như ở Nam Phi). Điều kiện thời tiết khắc nghiệt ảnh hưởng đến chúng tôi. SA đang trải qua đợt hạn hán nghiêm trọng nhất trong nhiều thập kỷ, trái đất nóng lên và nông dân phải vật lộn để sản xuất có lãi mà không có sự hỗ trợ kỹ thuật hoặc tài chính của chính phủ cho nông dân thương mại.
Có một vài trạm thời tiết Raspberry Pi xung quanh, giống như trạm mà Raspberry Pi Foundation xây dựng cho các trường học ở Vương quốc Anh, nên nó không được cung cấp cho công chúng. Có rất nhiều cảm biến phù hợp, một số tương tự, một số kỹ thuật số, một số trạng thái rắn, một số có bộ phận chuyển động và một số cảm biến rất đắt tiền như máy đo gió siêu âm (tốc độ và hướng gió)
Tôi quyết định xây dựng một Weather Station mã nguồn mở, phần cứng mở, với các bộ phận nói chung có sẵn ở Nam Phi có thể là một dự án rất hữu ích và tôi sẽ có rất nhiều niềm vui (và cả những thử thách đau đầu).
Tôi quyết định bắt đầu với máy đo mưa trạng thái rắn (không có bộ phận chuyển động). Chiếc xô truyền thống không gây ấn tượng với tôi ở giai đoạn đó (thậm chí tôi còn nghĩ rằng lúc đó tôi chưa bao giờ sử dụng cái xô này). Vì vậy, tôi nghĩ, mưa là nước và nước dẫn điện. Có nhiều cảm biến điện trở tương tự mà điện trở sẽ giảm khi cảm biến tiếp xúc với nước. Tôi nghĩ đây sẽ là một giải pháp hoàn hảo. Thật không may, những cảm biến đó bị tất cả các loại dị thường như điện phân và khử oxy và các kết quả đọc từ các cảm biến đó không đáng tin cậy. Tôi thậm chí còn chế tạo đầu dò bằng thép không gỉ của riêng mình và một bảng mạch nhỏ với các rơ le để tạo ra dòng điện một chiều xoay chiều (5 volt không đổi, nhưng xen kẽ các cực âm và dương) để loại bỏ sự điện phân, nhưng các kết quả đọc vẫn không ổn định.
Sự lựa chọn mới nhất của tôi là cảm biến âm thanh siêu âm. Cảm biến này kết nối với đầu của máy đo, có thể đo khoảng cách đến mực nước. Tôi ngạc nhiên là cảm biến này rất chính xác và rất rẻ (Dưới 50 ZAR hoặc 4 USD)
Bước 1: Các bộ phận cần thiết (Bước 1)
Bạn sẽ cần những thứ sau
1) 1 Raspberry Pi (Mọi kiểu máy, tôi đang sử dụng Pi 3)
2) 1 bánh mì Bord
3) Một số cáp jumper
4) Một điện trở một Ohms và một điện trở hai (hoặc 2,2) Ohms
5) Chén dài cũ để đựng mưa. Tôi đã in của tôi (bản mềm có sẵn)
6) Một bộ phận thu giữ máy đo mưa thủ công cũ (Hoặc bạn có thể tự thiết kế và in nó)
7) Thiết bị đo lường để đo mililit hoặc cân để cân nước
8) Cảm biến siêu âm HC-SR04 (Người Nam Phi có thể lấy chúng từ Communica)
Bước 2: Xây dựng mạch của bạn (Bước 2)
Tôi đã tìm thấy một số hướng dẫn rất hữu ích để giúp tôi xây dựng mạch và viết các tập lệnh python cho dự án này. Tập lệnh này tính toán khoảng cách và bạn sẽ sử dụng nó để tính toán khoảng cách giữa cảm biến được gắn ở đầu bình đo của bạn và mực nước
Bạn có thể tìm thấy nó ở đây:
www.modmypi.com/blog/hc-sr04-ultrasonic-range-sensor-on-the-raspberry-pi
Nghiên cứu nó, xây dựng mạch của bạn, kết nối nó với số pi của bạn và chơi với mã python. Đảm bảo rằng bạn xây dựng bộ chia điện áp đúng. Tôi đã sử dụng một điện trở 2,2 ohms giữa GPIO 24 và GND.
Bước 3: Xây dựng máy đo của bạn (Bước 3)
Bạn có thể in thước đo của mình, sử dụng thước đo hoặc cốc có sẵn. Cảm biến HC-SR04 sẽ được gắn vào đầu bình chứa chính đồng hồ đo của bạn. Điều quan trọng là phải đảm bảo rằng nó sẽ luôn khô ráo.
Điều quan trọng là phải hiểu góc đo của cảm biến HC-SR04 của bạn. Bạn không thể gắn nó vào đầu hình nón của đồng hồ đo mưa truyền thống. Tôi bình thường cốc hình trụ sẽ làm. Đảm bảo rằng nó đủ rộng để sóng âm thích hợp đi xuống phía dưới. Tôi nghĩ rằng một ống PVC 75 x 300 mm sẽ làm được. Để kiểm tra xem tín hiệu có đi qua ống trụ của bạn và dội lại đúng cách hay không, hãy đo khoảng cách từ bộ kiểm duyệt đến đáy ống hình trụ của bạn bằng thước đo, so sánh số đo đó với khoảng cách bạn nhận được từ cảm biến TOF (Thời gian bay) khoảng cách ước tính xuống dưới cùng.
Bước 4: Tính toán và hiệu chuẩn (Bước 4)
Mưa 1 mm nghĩa là gì? Mưa một mm có nghĩa là nếu bạn có một hình lập phương 1000mm X 1000mm X 1000mm hoặc 1m X 1m X 1m, thì hình lập phương sẽ có độ sâu là 1 mm nước mưa nếu bạn để nó ở ngoài trời khi trời mưa. Nếu bạn đổ lượng mưa này vào một chai 1 Lít thì nó sẽ đầy chai 100% và lượng nước cũng sẽ là 1kg. Các máy đo mưa khác nhau có diện tích lưu vực khác nhau. Nếu diện tích lưu vực của máy đo của bạn là 1m X 1m thì rất dễ dàng.
Ngoài ra, 1 gam nước thông thường là 1 ml
Để tính lượng mưa của bạn theo mm từ máy đo của bạn, bạn có thể thực hiện như sau sau khi cân lượng nước mưa:
W là khối lượng mưa tính bằng gam hoặc mililit
A là diện tích lưu vực của bạn tính bằng mm vuông
R là tổng lượng mưa của bạn tính bằng mm
R = Rộng x [(1000 x 1000) / A]
Có hai khả năng trong việc sử dụng HC-SR04 để ước tính W (Bạn cần W để tính R).
Phương pháp 1: Sử dụng Vật lý đơn giản
Đo khoảng cách từ HC-SR đến đáy máy đo của bạn (Bạn cũng đã thực hiện ở bước trước) bằng cảm biến bằng cách sử dụng các tính toán TOF (Thời gian bay) trong tập lệnh python từ https://www.modmypi. com / blog / hc-sr04-ultrasonic-range-sensor-on-the-raspberry-pi Gọi CD này (Độ sâu xi lanh)
Đo diện tích của đáy bên trong hình trụ của bạn bằng bất cứ thứ gì thích hợp, tính bằng mm vuông. Gọi đây là IA.
Bây giờ đổ 2 ml nước (hoặc bất kỳ lượng thích hợp nào) vào xi lanh của bạn. Sử dụng cảm biến của chúng tôi, ước tính khoảng cách đến mực nước mới tính bằng mm, Cal this Dist_To_Water).
Độ sâu Nước (WD) tính bằng mm là:
WD = CD - Dist_To_Water (Hoặc Chiều sâu xi lanh Trừ đi Khoảng cách từ bộ kiểm duyệt đến mực nước)
Không có Khối lượng ước tính của nước là
W = WD x IA tính bằng ml hoặc gam (Hãy nhớ 1 ml nước trọng lượng 1 gam)
Bây giờ bạn có thể ước tính Lượng mưa (R) theo mm với W x [(1000 x 1000) / A] như đã giải thích trước đó.
Phương pháp 2: Hiệu chỉnh đồng hồ của bạn với Thống kê
Vì HC-SR04 không hoàn hảo (có thể mắc phải lỗi), nên có vẻ như nó ít nhất là không đổi trong việc đo lường nếu xi lanh của bạn phù hợp.
Xây dựng mô hình tuyến tính với số đọc cảm biến (hoặc khoảng cách cảm biến) là biến phụ thuộc và trọng lượng nước bơm vào là biến phụ thuộc.
Bước 5: Phần mềm (Bước 5)
Phần mềm cho dự án này vẫn đang được phát triển.
Các tập lệnh python tại https://www.modmypi.com/blog/hc-sr04-ultrasonic-range-sensor-on-the-raspberry-pi sẽ có thể sử dụng được.
Đính kèm là một số ứng dụng python hữu ích (Giấy phép Công cộng) do chính tôi phát triển.
Tôi dự định phát triển giao diện web cho trạm thời tiết hoàn chỉnh sau này. Đính kèm là một số chương trình của tôi được sử dụng để hiệu chỉnh máy đo và đọc cảm biến
Sử dụng tập lệnh hiệu chuẩn đính kèm để hiệu chuẩn đồng hồ đo một cách thống kê. Nhập dữ liệu vào bảng tính để phân tích.
Bước 6: Vẫn phải làm (Bước 6)
Cần có van điện từ để làm trống bình khi đầy (Gần với cảm biến)
Một vài giọt mưa đầu tiên không phải lúc nào cũng được đo chính xác, đặc biệt nếu thước đo không được san bằng đúng cách. Tôi đang trong quá trình phát triển một máy đo đĩa để ghi lại những giọt này một cách chính xác. Phán đoán tương lai của tôi tiếp theo.
Quảng cáo một cảm biến siêu âm thứ hai để đo ảnh hưởng của nhiệt độ lên TOF. Tôi sẽ sớm đăng một bản cập nhật về điều này.
Tôi đã tìm thấy tài nguyên sau đây có thể hỗ trợ
www.researchgate.net/profile/Zheng_Guilin3/publication/258745832_An_Innovative_Principle_in_Self-Calibration_by_Dual_Ultrasonic_Sensor_and_Application_in_Rain_Gauge/links/540d53e00cf2f2falibration-andrin-Inens-SsonicUn-Unby-Smartin Rain-Gauge.pdf