虹科工业树莓派:根据天气控制温室窗户开合

1.简介

在本案例中,虹科工业树莓派RevPi Core3通过Node-RED编程获取并处理荷兰在线天气门户网站Buienradar的实时天气数据,并根据获取的天气信息对温室的窗户进行控制,从而实现温室的IoT改造。

2.所需器件

虹科RevPi Core3

虹科RevPi DIO模块

继电器

3.实现方式

在本案例中,温室的IoT改造主要集中在两个方面:温室窗户的自动开闭以及自动获取天气数据并分析。

3.1温室窗户开闭控制

温室的窗户通过行程长度为500 mm的线性驱动器执行打开和关闭动作。此线性驱动器配备有24V电机,可以通过虹科RevPi Core3和DIO扩展模块进行控制。

所使用的执行器在冲程结束时自动停止电动机,无需其他传感器或开关。由于执行器需要3A的驱动电流,而DIO模块最多只能输出500 mA的电流,因此这里需要一个额外的继电器来控制24V电机的开闭。

3.2天气数据的获取及分析

为了实现根据天气情况自动打开和关闭窗户的功能,本案例采用可从网络上免费获取的天气数据。此类数据可以采用Node-RED获取。

Node-RED具有用户友好的图形开发界面,可以通过添加HTTP请求节点以及功能节点从Buienradar的网站上获取预计降水量数据。

通过链接 https://gpsgadget.buienradar.nl/data/raintext?lat=52.08&lon=5.47 可以文本形式请求未来两个小时的预期降水量。“lat”和“lon”之后的数字对应于需要降水数据的地方的GPS坐标。这些数据由Node-RED每五分钟检索一次。如果预计在15分钟内下雨,窗户将自动关闭。但是,如果在接下来的15分钟内仍保持干燥,则系统将再次打开窗户。

4.更进一步

当前,RevPi只区分“窗口打开”以及“窗口关闭”两个状态,要获取更多设置,可以进一步开发。另外,也可以连接温度和湿度传感器,准确获取当前天气状况,以进一步提高窗户自动开闭的准确性。还可以通过仪表盘节点进一步升级,通过web浏览器显示当前降雨预报以及窗口状态等。

总而言之,虹科工业树莓派RevPi具有极大的灵活性和无限的潜力,并且软件硬件完全开源,您可以以最大的自由度在RevPi上进行开发。

5.本文使用的模块

RevPi Core 3具有定制的Raspbian系统,预先安装了RT补丁,配备Raspberry Pi计算模块3,内置Broadcom的多核处理器具有足够的能力来执行诸如图像处理之类的复杂任务,可以完成高性能要求的任务。

处理器博通BCM2837

核心数4

时钟频率1.2 GHz

内存1 GB

eMMC闪存4GB

RevPi Core 3使用了最先进的高效DC-DC转换器(总体效率大于80%),从而可以有效减少发热。模块不仅可以在20.4 V至28.8 V标准化的电源电压范围运行,也可以在10.2 V输入电压下运行,这意味着您甚至可以使用汽车电池或太阳能电池板作为电源。先进的保护电路可确保即使在输入电源线上受到大量电磁干扰的情况下,模块也能连续运行(前提是正确连接了功能性接地)。

像Raspberry Pi一样,RevPi Core 3也配备了通用接口:

1个RJ45以太网插座

2个USB 2.0插座

1个Micro HDMI插座

1个Micro USB 2.0插槽

2 个PiBridge(用于RevPi模块扩展)

RevPi Core 3模块可以适应恶劣的工业环境:

电源:12-24 VDC -15%/ +20%,max.10W

工作温度:-40°C至55°C

ESD保护:符合EN 61131-2和IEC 61000-6-2的4 kV / 8 kV

浪涌/冲击测试:根据EN 61131-2和IEC 61000-6-2进行

EMI测试:根据EN 61131-2和IEC 61000-6-2

UL认证(UL文件编号E494534)

I/O模块有三种版本,均可以通过PiBridge与Core模块直接相连。它们的前端都具有相同的28针I/O连接器。除了具有14个数字输入和14个数字输出的标准版本外,还有两个特殊版本,它们仅具有16个数字输入或16个数字输出。根据EN 61131-2的要求,所有版本都有抗干扰保护,并且可以在-40°C到55°C的温度范围,相对湿度高达93%的环境内运行。此外,所有数字I/O模块都具有UL认证(UL文件号E494534)。

输入和输出的开关状态通过PiBridge与RevPi Core的中央处理映像进行周期性数据交换。除了切换状态之外,还可以周期性地传输可能的错误状态(诊断数据)和配置数据。RevPi DIO模块还配备了PWM(脉冲宽度调制)和计数器输入,可以分别为14个输出中的每个激活PWM功能,为14个输入通道中的每个通道激活计数器功能。