×

温度监测预报系统开源分享

消耗积分:0 | 格式:zip | 大小:2.09 MB | 2023-07-03

分享资料个

描述

介绍

将药品的温度保持在阈值范围内对于制药行业来说非常重要。

我的朋友Manisha 女士是制药行业的负责人,一年前在监测温度方面遇到了问题。药片被毁,不得不丢弃,公司损失惨重。

今年,该公司决定在行业中安装一个温度监测系统,当温度超过阈值时,该系统将发送消息和电子邮件。

同样作为预防措施,预测机器学习算法将根据历史数据预测未来数据,该模型是根据其先前的数据集进行训练的,以便可以采取先前的步骤。

1) 演示

在Twilio上创建一个免费帐户并按照以下步骤接收短信:-

  • 要注册,请单击“获取免费 API 密钥”。
  • 用必要的详细信息填写注册表单,包括姓名、电子邮件 ID、选择要首先使用的产品计划的短信、为您正在构建的内容和编程语言选择帐户通知,因为我们的代码在 python 中。
  • 选择国家代码并输入您的号码
  • 在下一个屏幕上选择产品
poYBAGOD0TyARbTWAADtfrIHsMY700.png
 
  • 启用可编程短信和电话号码,如下面的屏幕所示
pYYBAGOD0T-AWc7aAAERvdJ4-Mg097.png
 
  • 向下滚动并单击继续并为项目命名
  • 当它要求邀请队友时点击“跳过这一步”
  • 单击项目信息以查看凭据;从自上而下的菜单中选择可编程短信,然后单击下一个屏幕上的开始单击获取号码以接收短信

在Mailgun上创建一个免费帐户,然后按照 steos 接收邮件:-

  • 点击注册按钮
  • 填写所有必要信息并确保取消选中复选框中的付款选项
  • 验证邮件后,验证电话号码。
  • 验证后向下滚动到沙盒域并单击添加收件人。
poYBAGOD0UGAHYZtAABd0veshsM562.png
 
  • 单击邀请新收件人并输入收件人的电子邮件 ID。
pYYBAGOD0USAX37wAABTEkDO7bk108.png
 
  • 添加电子邮件 ID 后,将生成一个新的沙箱。让我们从 LED 和蜂鸣器的连接开始。
  • 对于 LED 连接,我们需要一个 330 欧姆的电阻。电阻器的一条腿缠绕在较长的/正极腿 LED 上。将 LED 的负端插入 BOLT Wifi 模块的接地引脚,并将电阻器的另一端插入 BOLT Wifi 模块的数字引脚 0。
  • 蜂鸣器的连接方式相同,只是蜂鸣器不要使用电阻。蜂鸣器腿连接到 BOLT Wifi 模块的数字引脚 1。
  • 现在对于 LM35 连接,LM35 有 3 个引脚,即 VCC、输出和 Gnd。LM35 的 VCC 引脚连接到 Bolt Wifi 模块的 5v。LM35 的输出引脚连接到 Bolt Wifi 模块的 A0,LM35 的 Gnd 引脚连接到 GND。
  • 连接完成后,通过 USB 电缆将 Bolt Wifi 模块连接到笔记本电脑。
  • 哇!硬件连接完成
  • 有关连接的详细信息,请参阅原理图。

3) 在笔记本电脑和输出上运行

SENDING SMS AND MAIL

  • 在你的 Ubuntu 机器上;在命令行上创建一个名为 project 的目录
mkdir project
cd project
  • 接下来创建一个名为 conf 的 .py 文件,该文件将存储所有 auth、ssid 和 bolt wifi 模块凭据。
sudo nano conf.py
  • 创建 .py 扩展名的 temp_sms 文件并输入发送短信和邮件的代码
sudo nano temp_sms.py
  • 运行 temp_sms.py 文件并注意命令行界面上的输出
sudo python3 temp_sms.py
  • 现在要启用左侧的 API KEY,请单击 API。将出现一个屏幕,其中显示了启用和禁用两个选项。选择启用选项。
  • 一旦您开始接收邮件和短信,项目的警报部分就完成了。现在为了将来谨慎起见,我们构建了一个机器学习算法。
  • 登录到您的 BOLT 云帐户并单击产品,然后单击添加产品。如果不存在现有产品,请单击构建项目。
pYYBAGOD0UaAHvpAAABCp3UF2jA226.png
 
  • 给项目起个名字,选择配置如下
poYBAGOD0UmAJb92AACDkttchWo20.jpeg
 
  • 选择产品,然后单击配置此产品。在硬件部分选择数据收集速率为 5 分钟。命名变量并选择 A0 模拟引脚。
pYYBAGOD0UuAUzRtAADzJbunhiQ32.jpeg
 
  • 在代码部分输入以下代码
/ *start typing your code here */
setChartLibrary('google-chart'); # set the chart library as google-charts
setChartTitle('Polynomial Regression'); # Title of the chart
setChartType('predictionGraph'); #Type of the graph is prediction graph
setAxisName('time_stamp','temp'); # setting axis name
mul(0.0977); 
plotChart('time_stamp','temp');#plotting the chart
poYBAGOD0U2AIpswAADkmB-cz18970.png
 
  • 在代码部分中,选择“js”作为代码的扩展名,因为代码位于 JavaScript 中。保存对产品的更改
  • 通过单击链接选项将您的产品链接到设备
poYBAGOD0VCAaAtsAAAl8AWGp50997.jpg
 
  • 单击部署配置,然后查看此设备。
pYYBAGOD0VKAFHk8AACP_Wueaps98.jpeg
 
poYBAGOD0VWAKEb8AAB85KPTtL8486.png
 
pYYBAGOD0VeAHCQPAACBT9BwEns949.png
 

4) 代码说明

  • conf 文件包含帐户在 Twilio、Mailgun 和 Bolt 云 API 密钥和 Bolt 设备 ID 上的所有凭据。它包含 twilio 号码、mailgun 沙箱电子邮件、收件人号码、收件人邮件 ID。
  • 从 boltiot pythom 模块导入 Bolt 类、sms 和 email 类。导入从 bolt 模块加载响应所需的json和时间。
  • 代码算法如下:-
  • 设置温度模拟值的最小值和最大值。
  • 创建对象 1) mybolt:- 用于螺栓设备 2) sms:- 用于来自 Twilio 的短信 3)mailer:- 用于来自 Mailgun 的邮件
  • 从 while 循环开始并运行直到它为真(按 Ctrl+C 退出)。在 while 循环中,首先从 Bolt 设备获取最新的传感器值。
  • 使用 json.loads() 函数从 Bolt Wifi 模块加载响应。
  • 从 Bolt Wifi 模块收到的响应中提取传感器值,并检查该值是否在我们的最小值和最大值中指定的范围内。
  • 如果不在范围内,请发送短信和邮件。
  • 如果未发送短信和邮件,则显示来自 Twilio 和 Mailgun 的响应。
  • 等待 10 秒
  • 从 while 循环重复。

结论

前进 !建立这个有趣的项目!一切顺利!

感谢 BOLT IOT 培训课程讲师:Pranav Pai Vernekar。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !