第1步:你需要什么
一个覆盆子pi。
3D打印机 - (打印铃铛。我将提供我的设计。您也可以将其带到打印服务处)
旧雨量计漏斗(或者您可以打印一个)我将提供我的设计。)
2个垫圈作为探头(我的设计为5x25x1.5 mm)
面包板(可选用于测试)。
一些Python技能会有所帮助,但提供了所有代码。
用于微调校准的电子秤。也可以使用大型注射器(60ml)。
树莓派的防水外壳。
超级胶水
2个鳄鱼跳线和2个公对母跳线
110毫米PVC管,+/- 40厘米长
第2步:设计和打印贝尔SIPHON
附上查找我的设计为Autocad123D和STL格式。您可以使用该设计,但更改设计可能会产生泄漏和无功能的钟形虹吸。我的印刷在XYZ DaVinci AIO上。支持已包含在设计中,因此可能不需要额外的支持。我选择厚壳,90%填充,0.2mm高。因为PLA会在室外降解,所以使用ABS细丝。打印漏斗后,在其上涂上丙烯酸喷雾,以保护其免受元素的影响。保持丙烯酸喷雾远离钟形虹吸管内部,因为喷雾可能会阻塞虹吸管中的水流。不要给虹吸管加丙酮浴
我还没有测试树脂打印机。如果使用树脂,则需要保护树脂免受阳光照射,以防止误导虹吸。
(此设计是对原版的改进:版本日期2019年6月27日)
步骤3:组装虹吸管
研究附加图像。使用超级胶水将所有物品粘在一起。请记住,超级胶水是不导电的,所有接触点都应该远离超级胶水。我使用鳄鱼跳线将探针(垫圈)连接到我的覆盆子pi上的公对母跳线。一个探头应连接到GPIO 20,另一个探头连接到21.此电路不需要电阻器。使用强力胶时,尽量使探头防水。硅胶也可以提供帮助。
尚未覆盖110mm PVC管中的虹吸管,必须先进行测试。
步骤4:测试探头
在您要保存python代码的目录中创建一个文件“rain_log.txt”。
打开您喜欢的python IDE并在其中键入以下代码。将其保存为siphon_rain_gauge2.py。运行python代码。在你的漏斗里添加一些人造雨。每次虹吸管释放水时,确保只有一个计数器。如果虹吸计数错误,请参阅故障排除部分。
#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,False)
output=gpiozero.LED(20)
output.on()
else:
siphon=gpiozero.Button(20,False)
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:计算和校准
为什么降雨以距离测量? 1毫米雨是什么意思?如果你有一个1000mm×1000mm×1000mm或1m×1m×1m的立方体,如果你在下雨时把它留在外面,立方体将有1毫米的雨水深度。如果你在一个1升的瓶子中清空这个雨水,它将100%填满瓶子,水也将达到1公斤。不同的雨量计有不同的集水区。
此外,1克水是常规的1毫升。
如果您使用我的设计作为附件,可能不需要校准。
要校准雨量计,可以使用2种方法。对于这两种方法,请使用attach python(上一步)app来计算发布(虹吸操作)。每次虹吸管释放水时,确保只有一个计数器。如果虹吸计数错误,请参阅故障排除部分
方法一:使用现有(控制)雨量计
要使此方法有效,钟形虹吸漏斗必须与控制雨量计的面积相同。在您的虹吸漏斗上创建人造雨并使用python计算释放次数。用虹吸管收集所有的水释放。在你的控制雨量计。在大约50次释放(虹吸作用)后,测量控制雨量计中的降雨量
令R为每次虹吸作用的平均降雨量
R =(控制量表的总降雨量) )/(虹吸作用次数)
方法二:降雨量(你需要一个电子秤)
设R是降雨量的平均值每次虹吸作用
令W为每次虹吸作用水的重量,单位为克或毫升
设A为漏斗的集水区
R =(Wx1000)/A
校准时,使用注射器将水缓慢注入钟形虹吸管。将水倒入已知重量的玻璃杯中。继续注水,直至虹吸管自行排空至少50次。称重玻璃杯中的水。计算每次虹吸释放水时释放的水的平均重量(W)。对于我的设计,它约为2.95克(ml)。对于我的漏斗直径129毫米,半径64.5毫米
A = pi *(64.5)^ 2 = 13609.8108371
R =(2.95 * 1000)/13609.8108371
R = 0.21676
如果您没有电子秤,您可以使用大号(60 ml/克)注射器。只需计算虹吸水释放次数
W =(注射器体积单位为mm)/(虹吸水释放次数)
使用新的R值更新python应用程序。
贝尔虹吸管(我的设计)需要大约1秒才能释放所有水。根据经验,在释放期间进入虹吸管的水也将被释放。在大雨期间,这会影响测量的线性度。更好的统计模型可以改善估计值。
步骤6:转到现场
将装配好的钟形虹吸管和漏斗放入合适的套管中。我用了110毫米的PVC管。还要确保连接的覆盆子是防水外壳。我的PI由一个用于演示目的的移动电源供电,但必须使用适当的外部电源或太阳能系统。
我使用VNC通过我的平板电脑连接到PI。这意味着我可以从任何地方监控我的装置的降雨量。
创建人工降雨并查看传感器的功能。
步骤7:故障排除
1)问题:如果我计算虹吸管的发布python应用程序,应用程序计算额外的版本。
建议:你的钟形虹吸管中的探针可能会关闭,水滴会卡在它们之间。
2)问题:水是穿过虹吸管。
建议:这是一个设计错误。改进设计。虹吸出口半径可能很大。科学家的一些帮助可能有所帮助如果你设计了自己的铃铛虹吸管,试试我提供的那个。您还可以将一个短的(15厘米)鱼缸管道连接到虹吸管出口,以改善释放的“拖曳力”。
3)问题:探头没有拾取所有虹吸管。
建议:用耳棒清洁探头。检查所有电缆连接。探针上可能有胶水。用精确的精确文件删除它。
4)问题:我的虹吸管释放都是正确计算的,但估算降雨量是错误的。
建议:你需要重新校准你的传感器。如果你有低估计r(每个虹吸作用的降雨量)需要增加。
步骤8:未来的改进和测试
金板块探针(垫圈)。这将有助于再次腐蚀。
改进估算模型。简单的线性模型可能不适合大雨。
可以在第一个下方(在出口处)添加第二个较大的贝尔虹吸管以测量高密度降雨。
对于GUI,我建议使用Caynne IOT。
-
树莓派
+关注
关注
116文章
1697浏览量
105510
发布评论请先 登录
相关推荐
评论