汉斯在物联网

ThingSpeak、MATLAB和物联网

对事件做出反应与MATLAB在你的数据

克里斯Hayhurst使用太阳能热水器在他家降低能源成本和使用热水在他的房子被太阳加热。克里斯是MathWorks咨询经理,与物联网团队使用ThingSpeak收集关于他的系统数据和使用ThingSpeak内置的MATLAB程序来分析它。在这个项目中,Adarsh,我将向您展示如何发送警报当事件被检测到的数据通过使用MATLAB分析应用。

太阳能热水系统

克里斯家用太阳能热水系统是物联网应用的一个例子,使用多个传感器对一个物理系统收集数据。克里斯的热水器措施环境温度,储存水的温度,收集器温度和泵的速度。所有这些数据被ThingSpeak收集和存储频道29633

太阳能热水器

天当存储水温超过50°C (122°F),不需要使用其他方法来加热水的商店一个有用的工作温度。泵应该打开只有当集热器温度大于存储水箱的温度。如果泵本身在收集器比存储水冷却器温度,从存储水箱宝贵的热量损失。克里斯想要提醒这个条件,所以,他可以调整控制器设置,提高系统的效率。

物联网系统,如克里斯太阳能热水系统,通常收集大量的数据,但通常真正的兴趣是很少发生的事件。这些罕见的事件发生时采取行动的能力是很重要的,需要一种机制来检测此类事件并展开行动。我们将使用太阳能热水系统收集的数据存储在ThingSpeak频道29633并使用MATLAB分析程序来检测条件,提醒他使用Twitter。

solar-water-heater-inside

MATLAB事件检测

检测到一个错误的泵的行为活动,创建一个新的MATLAB分析ThingSpeak用下面的代码:

%读取数据字段1、2和3通道26633。%字段1代表存储水温%字段2代表收集器温度%字段3代表泵,打开或关闭的状态(数据、时间)= thingSpeakRead(29633年,“字段”,[1,2,3]);%指定单个变量的测量storeTemp =数据(1);collectorTemp =数据(2);pumpState =数据(3);%检查如果collectorTemp小于storeTemp isCollectorCooler = collectorTemp < storeTemp;%确定如果泵是在收集器是凉爽。%我们应用逻辑和操作来检测事件只有当收集器%比储存温度和泵冷却器。eventDetected = isCollectorCooler & pumpState

按下“运行和保存”按钮保存应用MATLAB分析。上面的代码集eventDetected 1每次收集器温度温度比存储温度,如果泵。现在我们可以探测到事件,我们需要设置的MATLAB程序安排运行。要做到这一点,我们将设置一个TimeControl MATLAB代码每5分钟。

TimeControl选项

使用MATLAB分析发送警报

到目前为止,我们已经创建了一个MATLAB分析来检测事件的数据被收集在太阳能热水器数据通道。我们相关的MATLAB分析代码与一个TimeControl运行每5分钟检查对我们的感兴趣的事件。通过Twitter收到通知时,泵是不正确的,我们可以用MATLAB分析发送一条微博。

首先,你需要链接你的Twitter帐户ThingSpeak帐户。然后,添加以下代码行数的MATLAB分析代码检测到一个事件时发送一条微博:

如果eventDetected webwrite (“http://api.thingspeak.com/apps/thingtweet/1/statuses/update”、“api_key”,“< ThingTweet_APIKey >”,“状态”,“警报!太阳能泵错误!”)

一定要更换< ThingTweet_APIKey >与你ThingTweet API键。

如果太阳能热水器泵打开错误的时候,你会得到一个推特让你知道!

下一个步骤

这个例子向您展示了一些ThingSpeak应用的力量,我们尝试提供给你。MATLAB分析应用非常强大,可以用来检测事件数据和发送警报。MATLAB分析可以用于各种各样的计算和编制不同的web服务。我们也可以使用MATLAB控制泵。

请尝试这个例子,进一步把它…

  • 阅读来自不同领域的数据通道
  • 结合在一个通道数据字段和数据读取一个网站如气象站或天气预报。

你将MATLAB ?

|

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。