亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

脉搏异常时通过电子邮件和短信通知

组件和用品

心跳测量传感器模块
× 1
Arduino Mega 2560
× 1
Bolt IoT Bolt WiFi 模块
× 1
跳线(通用)
× 7

应用和在线服务

Bolt IoT Bolt Cloud
DigitalOcean
运行心率监测代码的VPS服务。
Mailgun
电子邮件自动化服务
Twilio SMS Messaging API

关于这个项目

像健身手环这样的 24x7 心率监测设备现在在市场上很常见,你甚至可能拥有一两个!如果您可以制造类似的设备,但如果检测到您的心率异常,还可以向您发送短信或电子邮件或两者兼而有之,该怎么办?兴奋的?这个项目就是关于如何以最简单的方式完成这项工作。

查看正在运行的项目:

步骤 1:将心率传感器模块连接到 Arduino

使用公对母跳线,进行以下连接:

  • Arduino 的引脚 2 和心率传感器模块的输出引脚。
  • Arduino 的 5V 引脚和心率传感器模块的 VCC 引脚。
  • Arduino 的 GND 引脚和心率传感器模块的 GND 引脚。

第 2 步:在 Arduino 中编码

从 https://www.arduino.cc/en/Main/Software 安装 Arduino IDE 并编写以下代码:

unsigned long highCounter =0;int pulse =0;int val =0;int lastPulse =LOW;unsigned long oldMillis =0;无效设置(){ pinMode(2,输入); Serial.begin(9600); } void loop() {pulse =digitalRead(2); if (pulse !=lastPulse) { lastPulse =pulse; if (pulse ==HIGH) highCounter++;} // 每隔几秒打印并重置 highCounter if ( millis() - oldMillis>=10000 ){ oldMillis =millis(); val =高计数器 * 6; if (highCounter> 1) Serial.println(val); highCounter =0;}} 

保存、验证并上传代码。

此代码将:

  • 从心率传感器模块收集数据,
  • 计算心率
  • 打印值,以便 Bolt wifi 模块可以通过串行通信接收它。

第 3 步:将 BOLT Wifi 模块连接到 Arduino

使用公对公跳线,进行以下连接:

  • BOLT Wifi 模块的 3V3 引脚和 Arduino 的 3.3V 引脚
  • BOLT Wifi 模块的 TX 引脚和 Arduino 的 RX 引脚
  • BOLT Wifi 模块的 RX 引脚和 Arduino 的 TX 引脚

这些连接为 BOLT Wifi 模块供电并在 BOLT Wifi 模块和 Arduino 之间建立串行通信。

至此所有硬件连接结束

第 4 步:使用 Mailgun 设置电子邮件自动化服务

  • 在 Mailgun 上创建一个帐户
  • 验证您的电话号码后,转到 部分。点击添加收件人 按钮。
  • 点击邀请新收件人 按钮。输入收件人电子邮件 ID。
  • 添加电子邮件 ID 后,将生成一个新的沙箱。单击新生成的沙箱的 ID。

  • 新屏幕将包含您发送电子邮件所需的所有必要凭据。复制所有这些凭据并保存在记事本中。

第 5 步:使用 Twilo 设置短信服务

  • 前往 https://www.twilio.com 并点击 Get a Free API Key 按钮注册
  • 在注册表格中填写所有必要的详细信息,如下所示:
  • 输入并验证您的电话号码。
  • 点击“产品”,如下面的屏幕所示。
  • 现在通过点击可编程短信和电话号码的两个复选框来启用短信服务,如下所示。
  • 点击“继续”。输入项目名称后,再次单击“继续”。
  • 当它要求您邀请队友时,点击“跳过这一步”。
  • 点击“项目信息”以查看帐户凭据。
  • 您可以在此页面上查看帐户 SID 和身份验证令牌。确保这些信息安全无虞。
  • 从下拉菜单中选择“可编程短信”。现在点击Get Started 按钮生成电话号码。
  • 点击获取号码 按钮。然后会出现一个弹窗。点击选择这个号码 按钮。
  • 然后会出现一个弹出窗口,其中包含最终数字。复制此号码并妥善保管。

第六步:使用DigitalOcean VPS运行心率监测代码

注意:您也可以保留一台专用的linux电脑或在虚拟机中运行linux,而不是像DigitalOcean那样使用VPS。

  • 转到 https://www.digitalocean.com 并注册一个帐户。
  • 创建一个项目。然后创建一个运行 ubuntu 的 Droplet 并使用 PuTTY 访问机器。
  • 使用通过电子邮件发送给您的凭据登录到 ubuntu。
  • 运行以下代码:

在 Ubuntu 上更新软件包

sudo apt-get -y update 

安装python3 pip3

sudo apt install python3-pip 

使用pip安装boliot库

sudo pip3 install boltiot 

m创建一个名为的python文件 conf.py

sudo nano confi.py 
  • 使用正确的数据编写以下代码:
#Credentials from TwilioSID ='你可以在你的 Twilio 仪表板上找到 SID' AUTH_TOKEN ='你可以在你的 Twilio 仪表板上找到' FROM_NUMBER ='这是没有的。由 Twilio 生成。您可以在 Twilio 仪表板上找到此信息'TO_NUMBER ='这是您的号码。确保在开头添加 +91 '#Credentials from MailgunMAILGUN_API_KEY ='这是您可以在 Mailgun 仪表板上找到的私有 API 密钥' SANDBOX_URL ='您可以在 Mailgun 仪表板上找到它' SENDER_EMAIL ='这将是测试@your SANDBOX_URL'RECIPIENT_EMAIL ='在此处输入您的电子邮件 ID'#Credentials from BoltAPI_KEY ='这是您的 Bolt Cloud accout API 密钥'DEVICE_ID ='这是您的 Bolt 设备的 ID'  
  • 保存 conf.py
  • 制作一个名为 heart_rate.py 的 python 文件
sudo nano heart_rate.py 
  • 在 heart_rate.py 中编写以下代码:
import conf, json, timefrom boltiot import Email, Boltfrom boltiot import Sms, Boltminimum_limit =57 #心率最低阈值maximum_limit =100 #心率最高阈值mybolt =Bolt(conf.API_KEY, conf.DEVICE_ID )mailer =Email(conf.MAILGUN_API_KEY, conf.SANDBOX_URL, conf.SENDER_EMAIL, conf.RECIPIENT_EMAIL)sms =Sms(conf.SSID, conf.AUTH_TOKEN, conf.TO_NUMBER, conf.FROM_NUMBER)while True:response =mybolt.serial 2) data =json.loads(response) sensor_value =data['value'] try:sensor_value =data['value'] if sensor_value> maximum_limit or sensor_value  
  • 保存 heart_rate.py
  • 运行 Heart_rate.py。
sudo python3 Heart_rate.py 

当心率异常时,会分别向您的手机和邮箱ID发送短信和邮件。

代码

  • Arduino 代码
  • 配置文件
  • heart_rate.py
Arduino 代码Arduino
计算脉冲值的代码。
unsigned long highCounter =0;int pulse =0;int val =0;int lastPulse =LOW;unsigned long oldMillis =0;无效设置(){ pinMode(2,输入); Serial.begin(9600); } void loop() {pulse =digitalRead(2); if (pulse !=lastPulse) { lastPulse =pulse; if (pulse ==HIGH) highCounter++;} // 每隔几秒打印并重置 highCounter if ( millis() - oldMillis>=10000 ){ oldMillis =millis(); val =高计数器 * 6; if (highCounter> 1) Serial.println(val); highCounter =0;}}
conf.pyPython
包含用于使用 Bolt、MailGun 和 Twilio 的 API 密钥和其他凭据的代码.由 Twilio 生成。您可以在 Twilio 仪表板上找到此信息'TO_NUMBER ='这是您的号码。确保在开头添加 +91 '#Credentials from MailgunMAILGUN_API_KEY ='这是您可以在 Mailgun 仪表板上找到的私有 API 密钥' SANDBOX_URL ='您可以在 Mailgun 仪表板上找到它' SENDER_EMAIL ='这将是测试@your SANDBOX_URL'RECIPIENT_EMAIL ='在此处输入您的电子邮件 ID'#Credentials from BoltAPI_KEY ='这是您的 Bolt Cloud accout API 密钥'DEVICE_ID ='这是您的 Bolt 设备的 ID'
heart_rate.pyPython
采集脉搏值和检查异常代码
import conf, json, timefrom boltiot import Email, Boltfrom boltiot import Sms, Boltminimum_limit =57 #心率最小阈值maximum_limit =100 #心率最大阈值mybolt =Bolt(conf. API_KEY, conf.DEVICE_ID)mailer =Email(conf.MAILGUN_API_KEY, conf.SANDBOX_URL, conf.SENDER_EMAIL, conf.RECIPIENT_EMAIL)sms =Sms(conf.SSID, conf.AUTH_TOKEN, conf.TO_NUMBER, conf.FROM_NUMBER) =mybolt.serialRead(2) data =json.loads(response) sensor_value =data['value'] try:sensor_value =data['value'] if sensor_value> maximum_limit or sensor_value  

示意图

如图所示进行连接

制造工艺

  1. 如何结合数据和讲故事来让您的维护项目获得批准
  2. 保住工作并取得成功的九种方法
  3. 防卡润滑剂可以节省时间、金钱和头痛的 5 个时刻
  4. 如何让人们阅读您的销售电子邮件(以及不该做什么)
  5. 保持溶剂回收率的提示和技巧
  6. 胶印机停止运行时快速获得帮助的案例研究
  7. 使用 Bolt 和 Arduino 控制 LED 亮度
  8. 如何确定并充分利用您的采矿挖掘机和搬运车
  9. 购买工业切割刀片时要考虑的 4 个因素
  10. 了解何时以及如何为您的家选择自动增压泵
  11. 螺钉和螺栓的类型
  12. 了解螺丝和螺栓