第1步:你需要什么
一個(gè)覆盆子pi。
3D打印機(jī) - (打印鈴鐺。我將提供我的設(shè)計(jì)。您也可以將其帶到打印服務(wù)處)
舊雨量計(jì)漏斗(或者您可以打印一個(gè))我將提供我的設(shè)計(jì)。)
2個(gè)墊圈作為探頭(我的設(shè)計(jì)為5x25x1.5 mm)
面包板(可選用于測試)。
一些Python技能會有所幫助,但提供了所有代碼。
用于微調(diào)校準(zhǔn)的電子秤。也可以使用大型注射器(60ml)。
樹莓派的防水外殼。
超級膠水
2個(gè)鱷魚跳線和2個(gè)公對母跳線
110毫米PVC管,+/- 40厘米長
第2步:設(shè)計(jì)和打印貝爾SIPHON
附上查找我的設(shè)計(jì)為Autocad123D和STL格式。您可以使用該設(shè)計(jì),但更改設(shè)計(jì)可能會產(chǎn)生泄漏和無功能的鐘形虹吸。我的印刷在XYZ DaVinci AIO上。支持已包含在設(shè)計(jì)中,因此可能不需要額外的支持。我選擇厚殼,90%填充,0.2mm高。因?yàn)镻LA會在室外降解,所以使用ABS細(xì)絲。打印漏斗后,在其上涂上丙烯酸噴霧,以保護(hù)其免受元素的影響。保持丙烯酸噴霧遠(yuǎn)離鐘形虹吸管內(nèi)部,因?yàn)閲婌F可能會阻塞虹吸管中的水流。不要給虹吸管加丙酮浴
我還沒有測試樹脂打印機(jī)。如果使用樹脂,則需要保護(hù)樹脂免受陽光照射,以防止誤導(dǎo)虹吸。
(此設(shè)計(jì)是對原版的改進(jìn):版本日期2019年6月27日)
步驟3:組裝虹吸管
研究附加圖像。使用超級膠水將所有物品粘在一起。請記住,超級膠水是不導(dǎo)電的,所有接觸點(diǎn)都應(yīng)該遠(yuǎn)離超級膠水。我使用鱷魚跳線將探針(墊圈)連接到我的覆盆子pi上的公對母跳線。一個(gè)探頭應(yīng)連接到GPIO 20,另一個(gè)探頭連接到21.此電路不需要電阻器。使用強(qiáng)力膠時(shí),盡量使探頭防水。硅膠也可以提供幫助。
尚未覆蓋110mm PVC管中的虹吸管,必須先進(jìn)行測試。
步驟4:測試探頭
在您要保存python代碼的目錄中創(chuàng)建一個(gè)文件“rain_log.txt”。
打開您喜歡的python IDE并在其中鍵入以下代碼。將其保存為siphon_rain_gauge2.py。運(yùn)行python代碼。在你的漏斗里添加一些人造雨。每次虹吸管釋放水時(shí),確保只有一個(gè)計(jì)數(shù)器。如果虹吸計(jì)數(shù)錯(cuò)誤,請參閱故障排除部分。
#Bell-Siphon Rain Gauge
#Developed by JJ Slabbert
print(“The Bell Siphon rain gauge is waiting for some drops.。.”)
import gpiozero
import time
r=0.21676 #This is the calibrated rainfall per siphon release action.
t=0 #Total Rainfall
f=open(“rain_log.txt”, “a+”)
n=0
while True:
#After each siphoning, pin 20, 21 should alternate to prevent possible electrolysis
if n/2==int(n):
siphon=gpiozero.Button(21,F(xiàn)alse)
output=gpiozero.LED(20)
output.on()
else:
siphon=gpiozero.Button(20,F(xiàn)alse)
output=gpiozero.LED(21)
output.on()
siphon.wait_for_press()
n=n+1
t=t+r
localtime = time.asctime( time.localtime(time.time()) )
print(“Total rain fall: ”+str(float(t))+“ mm ”+localtime)
f.write(str(t)+“, ”+localtime+“ ”)
siphon.close()
output.close()
time.sleep(1.5)
步驟5:計(jì)算和校準(zhǔn)
為什么降雨以距離測量? 1毫米雨是什么意思?如果你有一個(gè)1000mm×1000mm×1000mm或1m×1m×1m的立方體,如果你在下雨時(shí)把它留在外面,立方體將有1毫米的雨水深度。如果你在一個(gè)1升的瓶子中清空這個(gè)雨水,它將100%填滿瓶子,水也將達(dá)到1公斤。不同的雨量計(jì)有不同的集水區(qū)。
此外,1克水是常規(guī)的1毫升。
如果您使用我的設(shè)計(jì)作為附件,可能不需要校準(zhǔn)。
要校準(zhǔn)雨量計(jì),可以使用2種方法。對于這兩種方法,請使用attach python(上一步)app來計(jì)算發(fā)布(虹吸操作)。每次虹吸管釋放水時(shí),確保只有一個(gè)計(jì)數(shù)器。如果虹吸計(jì)數(shù)錯(cuò)誤,請參閱故障排除部分
方法一:使用現(xiàn)有(控制)雨量計(jì)
要使此方法有效,鐘形虹吸漏斗必須與控制雨量計(jì)的面積相同。在您的虹吸漏斗上創(chuàng)建人造雨并使用python計(jì)算釋放次數(shù)。用虹吸管收集所有的水釋放。在你的控制雨量計(jì)。在大約50次釋放(虹吸作用)后,測量控制雨量計(jì)中的降雨量
令R為每次虹吸作用的平均降雨量
R =(控制量表的總降雨量) )/(虹吸作用次數(shù))
方法二:降雨量(你需要一個(gè)電子秤)
設(shè)R是降雨量的平均值每次虹吸作用
令W為每次虹吸作用水的重量,單位為克或毫升
設(shè)A為漏斗的集水區(qū)
R =(Wx1000)/A
校準(zhǔn)時(shí),使用注射器將水緩慢注入鐘形虹吸管。將水倒入已知重量的玻璃杯中。繼續(xù)注水,直至虹吸管自行排空至少50次。稱重玻璃杯中的水。計(jì)算每次虹吸釋放水時(shí)釋放的水的平均重量(W)。對于我的設(shè)計(jì),它約為2.95克(ml)。對于我的漏斗直徑129毫米,半徑64.5毫米
A = pi *(64.5)^ 2 = 13609.8108371
R =(2.95 * 1000)/13609.8108371
R = 0.21676
如果您沒有電子秤,您可以使用大號(60 ml/克)注射器。只需計(jì)算虹吸水釋放次數(shù)
W =(注射器體積單位為mm)/(虹吸水釋放次數(shù))
使用新的R值更新python應(yīng)用程序。
貝爾虹吸管(我的設(shè)計(jì))需要大約1秒才能釋放所有水。根據(jù)經(jīng)驗(yàn),在釋放期間進(jìn)入虹吸管的水也將被釋放。在大雨期間,這會影響測量的線性度。更好的統(tǒng)計(jì)模型可以改善估計(jì)值。
步驟6:轉(zhuǎn)到現(xiàn)場
將裝配好的鐘形虹吸管和漏斗放入合適的套管中。我用了110毫米的PVC管。還要確保連接的覆盆子是防水外殼。我的PI由一個(gè)用于演示目的的移動電源供電,但必須使用適當(dāng)?shù)耐獠侩娫椿蛱柲芟到y(tǒng)。
我使用VNC通過我的平板電腦連接到PI。這意味著我可以從任何地方監(jiān)控我的裝置的降雨量。
創(chuàng)建人工降雨并查看傳感器的功能。
步驟7:故障排除
1)問題:如果我計(jì)算虹吸管的發(fā)布python應(yīng)用程序,應(yīng)用程序計(jì)算額外的版本。
建議:你的鐘形虹吸管中的探針可能會關(guān)閉,水滴會卡在它們之間。
2)問題:水是穿過虹吸管。
建議:這是一個(gè)設(shè)計(jì)錯(cuò)誤。改進(jìn)設(shè)計(jì)。虹吸出口半徑可能很大。科學(xué)家的一些幫助可能有所幫助如果你設(shè)計(jì)了自己的鈴鐺虹吸管,試試我提供的那個(gè)。您還可以將一個(gè)短的(15厘米)魚缸管道連接到虹吸管出口,以改善釋放的“拖曳力”。
3)問題:探頭沒有拾取所有虹吸管。
建議:用耳棒清潔探頭。檢查所有電纜連接。探針上可能有膠水。用精確的精確文件刪除它。
4)問題:我的虹吸管釋放都是正確計(jì)算的,但估算降雨量是錯(cuò)誤的。
建議:你需要重新校準(zhǔn)你的傳感器。如果你有低估計(jì)r(每個(gè)虹吸作用的降雨量)需要增加。
步驟8:未來的改進(jìn)和測試
金板塊探針(墊圈)。這將有助于再次腐蝕。
改進(jìn)估算模型。簡單的線性模型可能不適合大雨。
可以在第一個(gè)下方(在出口處)添加第二個(gè)較大的貝爾虹吸管以測量高密度降雨。
對于GUI,我建議使用Caynne IOT。
-
樹莓派
+關(guān)注
關(guān)注
116文章
1699瀏覽量
105531
發(fā)布評論請先 登錄
相關(guān)推薦
評論