描述
介绍
我们大多数人经常浏览谷歌以获取他们所在地区的最新温度。同样,大多数制药公司都希望按需了解其生产设施中的温度。并且这样的系统需要实时报告。
想想制药公司需要在30-35摄氏度下进行生产的情况,任何变化都会对产品造成损坏。现在,生产设施的经理有两种选择。
-
要么定期连续读取温度读数,要么在波动时停止操作。这根本不可行。
-
另一种解决方案是部署物联网设备,该设备将持续监控读数,并在读数波动时向生产设施的经理或员工报告。
第二种方案不仅值得信赖,而且节省了人工。每当出现波动时,设备可以通过短信、社交平台向员工报告,这将为工厂避免巨大的损失。
螺栓物联网平台
Bolt IoT 平台让您无论身在何处都能安全可靠地控制您的设备并从 IoT 设备收集数据。只需单击几下即可部署机器学习算法以检测异常并预测传感器值,从而获得可行的见解。
第 1 步:硬件连接
使用公对母线将 LM35 的 3 个引脚连接到 Bolt Wifi 模块,如下所示:
-
LM35 的 VCC 引脚连接到 Bolt Wifi 模块的 5V。
-
LM35 的输出引脚连接到 Bolt Wifi 模块的 A0(模拟输入引脚)。
-
LM35 的 GND 引脚连接到 Gnd。
第 2 步:软件设置
python get-pip.py
pip install boltiot
第 3 步:将设备连接到 BoltIOT 云
-
接下来,转到 API 选项卡并复制 API 代码:
第 4 步:在 Telegram 上创建频道
创建频道的步骤
-
转到 Telegram 应用程序的主屏幕。
-
从左侧滑动以显示菜单。
-
点击“新频道”。
-
它会要求您输入频道的名称和说明。给出合适的名称和描述。添加照片是可选的。
-
在下一个屏幕中,将频道设置为公共。
-
在同一屏幕上,它会要求您输入频道的永久链接。您可以使用小写字母和数字 0-9 来创建频道链接。
-
请注意,频道链接名称是全局的,只有当链接名称可用时,您才能创建频道链接。频道链接名称类似于电子邮件地址,即一次只能存在一个唯一的电子邮件 ID。
-
您可以将频道链接名称保留为 temperature_alert_,后跟您的电子邮件 ID。例如,如果我的电子邮件 ID 是 developer@boltiot.com,我可以将频道链接名称保留为temperature_alert_developer_boltiot_com (我已经删除了 @ 和。符号,因为它是不允许的,并将其替换为下划线 _)。这只是一个建议。您可以根据需要保留频道链接名称,只要它有效即可。
-
记下此频道永久链接名称。稍后将需要向此频道发送消息。例如,下图中的通道链接名称为“ temperature_alert”。
-
恭喜!您已经创建了一个新频道。您还可以从应用主屏幕查看此频道。
-
您可以单击顶部的频道名称以查看有关它的更多详细信息。
-
接下来,我们需要创建一个机器人并将其添加到频道,以便它可以在该频道上为我们发布警报。
第 5 步:在 Telegram 上创建机器人
创建一个新机器人
Telegram 允许我们在名为“BotFather”的机器人的帮助下创建一个新机器人。它是创建和管理其他机器人的单个机器人。
-
在应用程序的主屏幕上,单击右上角的搜索图标并输入“botfather”。
-
在搜索结果中,单击“BotFather”的正确结果,如下所示。正确的“BotFather”在其名称旁边会有一个蓝色的勾号。这将带您进入与“BotFather”的聊天窗口。
-
聊天中已经有一些项目,并且会向您显示开始使用的命令列表。
-
由于我们需要创建一个新的 Bot,请继续并在窗口中输入“/newbot”。
-
它会要求您输入更多详细信息,例如 Bot 名称和 Bot 用户名。
-
成功创建机器人后,您将看到类似于下图的屏幕,其中包含机器人令牌。此令牌用于控制您的 Bot 并代表它发送消息。请保持此令牌的安全,因为它将允许任何人访问您的机器人。
-
在上面的屏幕截图中,Bot 令牌是“894346529:AAhuJ2XJQy5dlEtLYF0sc0Z_qu0fSqihSSc”。请将其另存为 telegram_bot_id。telegram_bot_id 保存为“bot”,后跟 bot 令牌。因此,在本例中,telegram_bot_id 将为“bot894346529:AAhuJ2XJQy5dlEtLYF0sc0Z_qu0fSqihSSc”。
-
telegram_bot_id 将在 python 代码中用于发送消息。Python代码将在后面的课程中讲授。
-
另外,保存 Bot ID 时请小心。您可能会对 0 和 O、I 和 1 等感到困惑,因为它们看起来很相似。
-
恭喜,您已经创建了一个新的 Bot。现在,我们需要将它添加到我们之前创建的通道中,以便我们可以发送警报。
第 6 步:将机器人添加到频道
-
在 App 主屏幕中,打开我们之前创建的频道。
-
在屏幕中,单击顶部的频道名称以打开频道的信息。
-
单击管理员按钮,以便我们可以将新创建的机器人添加到频道。
-
使用机器人的用户名搜索我们创建的机器人。找到正确的 Bot 后,单击它以将其添加到频道。请确保您在上一步中单击了管理员按钮,因为这将允许我们的机器人发布到频道。
-
您将被要求确认机器人的权利。按右上角的刻度线以继续将机器人添加到频道。确保机器人有权“发布消息”。
-
现在我们将编写一个代码,用于通过 Bot 向通道发送消息。
第七步:工作原理
温度设置已连接到 BoltIOT 云,现在我们需要编写代码。但在开始之前,让我们先了解一下这个项目的结构。
我们的 Python 脚本将在所述时间间隔内持续监控我们的温度传感器,并捕获数据馈送。捕获数据后,脚本现在将执行 Z 分数分析,以计算周围环境的温度上限和下限。Z-score 统计数据需要很少的数据点来开始计算,比如大约 10 个点。一旦捕获到上述点数,我们就可以应用 Z-score 异常统计来计算数据的上限和下限。或者换句话说,这将为我们提供一段时间内监控的平均室温限制。
Zn = factor * math.sqrt(Variance / frame_size)
High_bound = history_data[frame_size-1]+Zn
Low_bound = history_data[frame_size-1]-Zn
现在,每当我们捕获位于高域和低域之外的数据点时,我们都会向用户发送警报。换句话说,通过 Z-score,我们可以计算出准确的数据上限和下限阈值。
Z分数计算
截图:
在上图中,我们看到如上图所示进行连接,然后插入 USB 数据线并借助移动电源、移动充电器供电或简单地将其连接到笔记本电脑的 USB 端口。
当代码运行时,房间内的温度正在下降,因为它是在空调房间里。为了提高温度,只需揉搓手掌使其温暖并用手轻轻握住传感器,然后您会注意到图像中提到的读数有所不同。随着温度的突然变化,传感器会检测到它并在 Telegram 中向您发送消息。
它进行了 8 次,每当温度变化出现异常或巨大差异时,我们都会在 Telegram 中收到 8 条警报消息。当温度以一定的速度下降时,它不会在 Telegram 中向您发送任何消息。但是,当温度突然升高 2,3 度或更多度时,它会立即向您发送通知。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉