光线跟踪 开源
优化能耗的重要一步是了解您的实际能耗。 我的房子是在1970年代的石油危机期间建造的,由于缺乏天然气连接,建筑商决定使用电来进行所有供暖(水和家庭供暖)。 这在德国这个地区并不罕见,它仍然是高度依赖核电的国家的适当解决方案。
这里的电价相当高(约0.28欧元/千瓦时),所以我决定监控我家的能源消耗,以感受可以节省能源的地区。
我曾经在一家为工业客户销售能源监控系统的公司工作。 虽然该公司主要使用专有软件,但您可以基于开源组件为您的房屋设置类似的智能监控和日志记录解决方案。 本文将向您展示如何。
在德国,电网运营商拥有电表。 网格操作员必须在其计量设备上提供一个接口,以使客户能够访问电表读数。 这是我家里的计量设备:
通常,几乎每个计量设备都至少具有干触点(就像我的电表一样),您可以使用该干触点记录计量。 如您所见,我的电表有两个计数器:上面的一个是白天的电费(早上6点至晚上10点),下面的一个是晚上的电费(晚上10点至早上6点)。 夜间关税便宜一些。 通常仅在带有电暖气的房屋中找到两价电表。
设计
可靠的私人能源监控解决方案应满足以下要求:
- 记录计量脉冲(干触点)
- 24/7全天候运行
- 节能运行
- 消耗数据的可视化
- 长期记录消费数据
- 连接性(例如,以太网,USB,WiFi等)
- 负担能力
我选择西门子SIMATIC IOT2020作为我的硬件平台。 这款经过工业验证的设备基于Intel Quark x86 CPU,具有可编程中断,并且与许多Arduino防护板兼容。
西门子设备不带SD卡,因此不带操作系统。 幸运的是,您可以在Siemens论坛中找到当前基于Yocto的Linux OS映像以及有关如何刷新SD卡的说明。
除了硬件平台,您还需要一些配件。 以下材料列表显示了所需的最少组件。 每个项目都包含指向我购买的零件的链接,因此您可以大致了解该项目的成本。
材料清单
- 西门子SIMATIC IoT2020单元
- 适用于SIMATIC IoT2000系列的Siemens I / O Shield
- microSD卡 (2GB或更多)
- CSL 300Mbit USB-WLAN适配器
- 24V电源(我已经使用了2.1A TDK-Lambda DRB50-24-1 )。 您可以使用价格更便宜,功耗更低的电源:SIMATIC IOT2020的最大电流为1.4A,干触点需要额外的0.1A(24V /220Ω)。
- 5个接线端子( Weidmueller WDU 2.5mm )
- 2个端子交叉连接桥( Weidmueller WQV )
- DIN导轨 (〜300毫米)
- 220Ω/ 3W电阻
- 线
这是组装的结果:
不幸的是,柜子的后壁没有足够的空间。 因此,带有已安装部件的DIN导轨位于地面上。
仪表与西门子设备之间的连接如下所示:
这个怎么运作
干触点是电流接口。 当电表触发时,在s0 +和s0-之间将有0.1A的电流开始流动。 在DI0上 ,电压上升至24V并触发中断。 当电表断开s0 +和s0-时 , DI0通过电阻接地。
在我的设备上,触点每千瓦时闭合1000次(此值在计量设备之间有所不同)。
为了可靠地计数这些峰值,我创建了一个C程序 ,该程序在DI0输入上注册一个中断服务程序,并在内存中向上计数。 每分钟一次,将内存中的值写入SQLite数据库。
整个仪表读数也将写入一个文本文件,并可以用一个起始值进行预设。 这是机柜中仪表总计量值的副本。
数据使用Node-RED可视化,并且我可以通过基于Web的GUI访问概述,例如下面的日常消费仪表板。
对于每日概览,我根据消费数据(大条形图)计算小时成本。 在仪表板的左上方,您可以看到实际功率; 每天的消耗量(能源和成本)低于该值。 淋浴用热水器在条形图中导致较大的峰值。
可靠的系统
如果您可以从命令行完全设置整个Linux系统,那么您将获得一个可靠而灵活的系统,该系统具有将中断服务例程链接到I / O级别的能力。
由于I / O Shield使用标准控制电压(24V)运行,因此您可以通过整个标准化工业组件(例如,继电器,传感器,执行器等)扩展其功能。 而且,由于其开放式体系结构,该系统可以轻松扩展并应用于其他应用,例如用于监视天然气或水的消耗或作为气象站,用于任务的简单控制器等等。
光线跟踪 开源