gpt4 book ai didi

c# - 从数据库中的一系列 Kw 读数(当时的 kw 值)确定每日 Kwh 值的正确方法是什么

转载 作者:行者123 更新时间:2023-11-30 13:02:53 25 4
gpt4 key购买 nike

我有一个设备可以读取电气设备的 kw 值,以测量它们在特定时间的(能量消耗率)。然后将这些值发送到轮询器(它定期向设备询问这些值),并插入到数据库中。

例子:

1st reading - 10 kw at 1.01pm2nd reading - 15 kw at 1.23pm3rd reading - 11 kw at 1.30pm

如您所见,轮询间隔不是固定的,因此可以在不同时间将值插入数据库。为简单起见,我们可以假设数据库只是一个包含 2 列的表,[time] 和 [kw_value]。

这实际上是一个两部分的问题:

  1. 如何从这些读数(全天的能源消耗)中获取每日千瓦时值?我的数学很差,所以我不知道从这些值中获取每日千瓦时值的正确方法是什么。

    我想把所有的值加起来得到平均值,但我妈妈说我应该画出一整天所有读数的图表,然后得到绘制线以下的区域(有点像得到图形的积分),这将给我当天消耗的总功率。然后,我应该使用该值除以一整天的持续时间(以小时为单位)以获得千瓦时,对吗?

  2. 如何使用数据库执行此操作?如果一天有数千个读数(来自多个电子设备,在这种情况下我们有 3 列 - [time]、[kw_value]、[deviceid]),我应该如何计算这个,我应该加载所有值吗内存(我使用的是 C#)并从那里计算,或者我可以使用 SQL 来计算吗?

编辑:感谢你们指出 kw 和 kwh 之间的区别。我原来的问题犯了一个大错误,因此进行了这次编辑。重申一下,设备在特定时间读取 kw 值(以千焦耳/秒为单位的能量消耗率),并在数据库中给出这些值的列表/图表,确定 kwh(消耗的总能量)的正确方法是什么) 给定的一天。

最佳答案

您肯定不会获得准确的千瓦时值。由于轮询频率如此低,您最终可能会发现估计使用情况与实际使用情况之间存在很大差异。你举这个例子:

1st reading - 10 kW at 1.01pm
2nd reading - 15 kW at 1.23pm
3rd reading - 11 kW at 1.30pm

在没有其他信息的情况下,唯一合理的做法是对每对读数进行平均,然后乘以时间。从 1.01 到 1.23 是 22 分钟,或 0.367 小时。这段时间的平均读数为 (10 + 15)/2,即 12.5 kWh,估计使用量为 (12.5 * 0.367),即 4.58 kWh。

不过,这种方法存在一些明显的漏洞。如果实际消费是:

10 kW at 1.01pm
0 kW at 1.02pm // machine turned off
15 kW at 1.23pm // machine turned back on
11 kW at 1.29pm

您在 1.01 和 1.23 之间的时间段内的实际使用量是 10 kW 一分钟,即 0.16 kWh。

在另一个方向上,数字可能会有类似的偏差。也就是说,您的计算值可能非常低而不是非常高。

如果这是合理的,我会这样做的方法是创建一个 SQL 查询,返回按机器排序然后按时间排序的数据。所以你得到:

machine1, 1.01 am, reading
machine1, 1.20 am, reading
... etc. ...
machine2, 1.03, reading
machine2, 2.15, reading

所以机器 1 的所有读数都按时间顺序呈现给您,然后是机器 2,依此类推。

您当然可以使用 ORDER BY 和 GROUP BY 编写查询,以正确的顺序返回所有读数。然后,您可以使用 SqlDataReader 按顺序移动结果,计算每个周期的消耗量(使用上面显示的平均计算),并对每台机器的结果求和。我对 SQL 的了解还不足以说明是否可以编写一个查询来为您完成所有计算并返回一个结果集,例如:

machine1, start time, end time, total power consumed
machine2, start time, end time, total power consumed
etc

关于c# - 从数据库中的一系列 Kw 读数(当时的 kw 值)确定每日 Kwh 值的正确方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14183100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com