ArduinoWeathercloud气象站的制作

电子说

1.3w人已加入

描述

第1步:设计

设计气象站是一个漫长而周到的过程。

你有这么多可供选择的选项。这些是你在设计气象站时应该考虑的主要事项(或者至少我这样做了):

1)BUDGET。这是非常明显的。

2)位置。这非常重要,因为它会影响安装以及通信技术和所需的电源。远程气象站需要远程发射器和自持式电源,如太阳能电池板。

3)测量变量。您是否只想测量温度或湿度?然后你可以把探头放在几乎任何地方。但是,如果你想测量降雨,风,太阳辐射,紫外线指数或其他与太阳或降水有关的东西,那么传感器就不会处于阴影中,也不会被阻挡在上侧或侧面。

4)准确度。您是否希望您的测量结果能够精确校准并与国家气象研究所相媲美,或者您是否足够适合业余值?

所以现在你应该对你想要的东西有一个非常好的形象。让我们来到绘图板!以下是我考虑过的一些基本规则:

1)保护温度传感器。您绝对需要这样做。热量可以通过多种方式传播,它可以通过电站本身的结构辐射和传导。因此,尝试涂覆所有金属部件,并将温度传感器放入辐射防护罩中。我知道,我的辐射站并不完美,但它有所帮助。

2)将风传感器置于高位。根据国际标准,风传感器应放置在10米高处。我甚至没有钱购买一根10米长的支柱,所以屋顶上方的一根2米长的管道对我来说已经足够了。

3)地面和地面上的清晰区域。如果你想测量阳光,你不能让传感器处于阴影中。如果你想测量降雨量,就不能阻挡水滴。因此,请确保清除车站周围和上方的区域。

让我们继续。因此,对于我的工作站,我决定要测量这些变量:空气温度,地温,相对湿度,大气压力,热指数,露点,风寒,降雨,太阳辐射,紫外线指数,风速和风向。总共有8个传感器,其中有3个小型PCB安装模块和5个外部探头。我将需要2个独立的微控制器,一个用于处理降雨测量,另一个用于其他所有。

我决定将所有功能放在一块PCB上。我把PCB放在一个带透明盖的IP65盒内,这样阳光就可以通过太阳辐射和紫外线指数传感器。所有其他传感器将通过电缆连接到主控制盒。这就是我的设计。

第2步:Weathercloud

Arduino

“ESP32 Weathercloud 气象站“什么是Weatherclud? Weathercloud是一个大型气象站网络,实时报告来自世界各地的数据。它是免费的,有超过10 000个气象站连接到它。首先,我有自己的HTML网站,其中所有数据都已发送,但制作自己的网站和图形很难,而且将所有数据发送到具有漂亮图形和稳定服务器的大型云平台要容易得多。我搜索了如何将数据发送到weathercloud,我发现你可以通过简单的GET调用轻松完成。 Weathercloud的唯一问题是,使用免费帐户,它允许您每十分钟发送一次数据,但对于大多数用途而言这应该不是问题。您需要创建一个Weathercloud帐户才能使其正常运行。然后,您需要在他们的网站上创建一个电台配置文件。在Weathercloud上创建气象站配置文件时,您将获得Weathercloud ID和Weathercloud KEY。保留这些因为Arduino需要他们知道发送数据的位置。

步骤3:零件清单

Arduino

好的,对于这个项目,你需要在我的Google Docs BOM中整齐列出的所有东西。

估计的项目费用:150€/165 $

第4步:工具

Arduino

这些工具可以派上用场(尽管大多数其中绝对必要):

激光切割机

焊机

钢锯

剥线器

电钻

电池钻

烙铁

钳子

螺丝刀

胶枪

万用表

树钻头

步骤5:控制板设计

Arduino

Arduino

Arduino

我选择了非常集中的架构。这意味着所有可能的东西不仅在一个盒子里,而且在一个电路板上。我最近学会了如何设计PCB,这是一项非常有价值和有用的技能。所有项目都更整洁,更精确,甚至优雅。它也非常方便:您只需将文件发送到中国,他们就可以完成所有的布线工作并将整板发送给您。然后,您只需将组件焊接到位就可以了。

PCB保存了该站中的两个微控制器:ESP32(主控制单元)和Arduino NANO(降雨处理器)。它还拥有一些传感器,包括:BME280,BHT1750和ML8511。然后是DS3231 RTC模块。最后但并非最不重要的是,有一些电阻和螺丝连接器。

我在Autodesk Eagle中设计了我的主板。只需下载包含的名为“ESP32 weather station.zip”的Gerber文件,然后将其上传到JLC PCB。或者如果你想编辑它,你可以下载“ESP32气象站schematic.sch”和“ESP32气象站board.brd”文件并在Eagle中编辑它们。我强烈建议首先从Instructables注册电路板设计类。

第6步:焊接

Arduino

Arduino

Arduino

大家好,你们之前可能都是这样做的。我设计的这块漂亮的板子上印有漂亮的丝网印刷脚印。如果你有这个,焊接应该是小菜一碟,因为你看到的确切位置。只有标准0.1英寸间距的THT组件。所以,只需继续焊接电路板,因为你很聪明,你可以自己做!它不应该超过半小时。

第7步:制作辐射防护

当我构建这个时,我对自己说:“好吧,你已经完成了这两次你不可能把它弄得一团糟。“而我没有。

太阳辐射防护罩在气象站用来阻挡太阳直射辐射是很常见的,因此减少了测量温度的误差。它也可作为温度传感器的支架。辐射防护罩非常有用,但通常由钢制成,而且价格昂贵所以我决定建造一个自己的防护罩。我做了一个Instructable,展示了如何制作这样的防辐射罩。

第8步:控制框

Arduino

Arduino

该站的主要部分是显然是控制箱。它包含主要和次要微控制器,一些传感器,RTC和一些无源组件。所有这一切都在一个方便的IP65包中。盒子有一个半透明的盖子,所以阳光可以通过紫外线和太阳辐射传感器。

在我们安装PCB之前,我们需要准备好电缆盒。盒子里有五根电源线和数据线。为了维持车站的防水性能,我们将需要防水电缆密封套。具体来说,一个PG7用于电力电缆,第二个PG7用于风和雨量传感器,第三个PG11用于两个温度传感器。我将较大的(PG11)压盖放在盒子一个壁的中心,另一个较小的(PG7)腺体放在对面的墙上。因此,盒子改变过程如下:

1)用标记标记每个孔的中心。

2)用细钻头钻一个小孔。

3)用树形钻头缓慢增加孔的尺寸。

4)清除孔。

5)插入并固定每个孔中的电缆接头。孔。

步骤9:PCB挂载

Arduino

Arduino

Arduino

Arduino

由于我只有Autodesk Eagle的学生试用版,我无法设计大于8cm的PCB。一切都适合这个板,所以没关系。唯一的问题是控制箱。包含在盒子中的板安装孔相距14厘米。这意味着我们需要PCB的支架。这可以是我们将安装PCB的板(木/塑料/金属)。然后我们将支架板连接到控制箱。这样PCB就会固定在控制箱上。

您可以随意制作支架。你可以用木板或钢板手工制作它,你可以激光切割它(就像我一样),你甚至可以3D打印它。我包括了电路板的尺寸,所以选择是你的。如果您可以使用激光切割机,那么激光切割是最简单的选择。你可以在这里找到.pdf和.svg格式的激光切割文件。

正如你所看到的,我经历了持有者的多种变体。最后,我选择了丙烯酸树脂,因为它不会受到水分的影响(如木材),也不会吸收热量(如钢)。

步骤10:Asembly +接线

Arduino

Arduino

Arduino

Arduino

Arduino

Arduino

Arduino

这将是一个非常容易的事情,但是要解释是非常困难的,因为有很多小步骤。让我们直接进入它:

1)将所有电缆插入指定的孔。不要固定电缆密封套。

2)根据随附的接线图连接风传感器,雨量传感器和电源线的所有电线。请勿连接温度传感器的电缆。

3)如果已安装,请卸下PCB安装座。然后翻转PCB,使电缆沿底部移动。固定PCB安装座,使电缆固定在PCB和底座之间的夹层中。

4)插入并用PCB拧入PCB底座。

5)安全两个较小的(PG7)电缆接头。不要固定较大的那个。

6)根据随附的接线图插入并连接温度传感器的电缆。

7)盖上顶盖并拧紧到位。

第11步:快乐

Arduino

这一步是一种检查点。在这一点上,你应该做一些看起来像你在图片上看到的东西。如果这是正确的,请快乐。继续吧,给自己吃零食和休息,因为这对男人来说不仅仅是一小步,而是人类的巨大飞跃。如果没有,请查看前面的步骤并找到问题所在。如果这没有帮助,请发表评论或给我发消息。

所以当你健康又适合时,你可以继续前进到编码和调试部分。

第12步:编码和调试

Arduino

Yaaaaay,每个人都喜欢编码!即使你不这样做也没关系,因为你可以下载并使用我的代码。

首先,你需要将ESP32 dev模块添加到你的主板管理器。为此,您需要下载JSON包并通过板管理器进行安装。通过Random Nerd教程查看本教程。

现在您需要下载所有必需的库。我创建了ZIP存档“Libraries.zip”,让您更简单。不要像传统库那样将存档导入Arduino IDE。而是提取存档并将所有文件移动到Documents/Arduino/libraries。现在您可以下载我的所有四个程序:“Wi-Fi_Weathercloud_API_test.ino”,“System_test.ino”,“ESP32_Weathercloud_Weather_Station.ino” 。

打开“Wi-Fi_Weathercloud_API_test.ino”。你需要改变一些事情。首先,您需要将“SSID”和“KEY”替换为您的Wi-Fi网络SSID(名称)和密码。其次,您需要将“WID”和“KEY”替换为您应该从第2步中获得的Weathercloud ID和KEY。您还需要对 “ESP32_Weathercloud_Weather_Station.ino”即可。继续并将代码上传到ESP32。您应该会在Weathercloud网站上看到预定义的数据。如果这是正确的,请继续。

将“System_test.ino”上传到ESP32,将“I2C_rainfall_sender”上传到Arduino NANO。以115200波特打开ESP32的串行控制台。您现在应该在屏幕上每隔15秒看到传感器数据。玩传感器。在太阳辐射传感器中照射一盏灯,吹入风速传感器,加热温度探头。..。..这样你就可以测试一切是否正常。如果您认为一切都是应有的,请继续。

将“ESP32_Weathercloud_Weather_Station.ino”上传到ESP32。如果您已正确完成所有操作,则应每10分钟在Weathercloud页面上看到来自该站的真实数据。如果这样可行,则意味着您的工作站现已完全正常运行,唯一要做的就是将其安装在一个不错的位置。

步骤13:站点挂载

Arduino

Arduino

Arduino

Arduino

Arduino

Arduino

因此,在确认您的工作站正常工作后,您需要为其设计并安装。它必须坚固,耐用,紧凑,最后但并非最不重要,它必须是好的。比精确的指示更多地采取这一步骤的建议或灵感。我不知道它将如何安装它。你必须更有创意。但是如果你有一个直径为5厘米的金属管伸出的平屋顶,继续按照我的方式行事。这个站有两个盒子。所以我决定将它们彼此相邻放在金属面板上。它必须安装在直径为5厘米的金属管上。所以我在面板底部放了一根内径为5cm的管子。两个风传感器必须远离车站的其他部分。因此,在车站的每一侧放两根40厘米长的管子,在每一根末端放两根10厘米长的管子。辐射防护罩应安装在面板下方,以提供额外的阴影。为此,我在厚金属管上放了一个7乘15厘米的支架。

以下是所有需要的金属部件(尺寸单位为mm):

1x管道,内径50,长度300

1x面板,250乘300,厚度3

1x L支架,75和150臂

2x管,外直径12,长度400

2x管道,内径17,长度100

当你拥有所有这些金属部件时,你可以焊接它们根据我提供的3D模型放置。然后你需要钻出盒子和辐射防护罩的所有孔。然后用金属漆涂上它。我建议使用白色,因为它吸收了所有颜色中最少的热量。那就是你已经拥有了一个可以安装你的工作站的工作站!

第14步:安装

Arduino

Arduino

Arduino

Arduino

Arduino

抓住您的气象站,坐骑和所有工具,因为您需要所有这些工具。上车(或我不在乎的公共汽车),然后到达车站的未来位置。最后,您可以安装该站。

让您的气象站在您的工作室工作是一回事,但让它在现实世界的恶劣条件下工作是另一回事。安装过程在很大程度上取决于您正在安装工作站的建筑物。但是,如果你有上一步的持有人和强大的演练,它应该没问题。您只需将厚管从支架上粘到屋顶上略薄的管道上即可。然后钻穿两个管道并用长螺钉固定。安装所有盒子和传感器。而已。您的工作站现已成功安装。

我们在下雨天这样做了。这是非常困难的,但由于竞赛截止日期我们没有其他选择。

第15步:电源,上行链路设置和调试

Arduino

Arduino

Arduino

Arduino

您的电台已实际安装,但尚未上线。我们现在就这样做。你必须以某种方式为车站供电。你必须在这里有点创意。您可以将适配器放入房屋内,然后将电缆穿过窗户。你可以把电缆埋在地下。您可以通过太阳能电池板为其供电。重要的是来自控制箱的电源线引脚上有5V 500mA电流。请记住,这一切都必须是防风雨的!当您的工作站通电时,您可以继续进行上行链路设置和调试。

上行链路设置基本上是让ESP32连接到您的Wi-Fi网络。如果它在你的房子,它应该没问题。如果它在车库或更远的地方,您可能需要Wi-Fi扩展器甚至是自定义Wi-Fi网络。然后是调试阶段。你可以上传最终的代码并希望最好,但我真的建议逐个测试每个传感器,以确保一切正常。基本上与步骤12中的相同。如果一切正常,您可以按UPLOAD按钮拔下USB线并关闭控制盒。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分