资料介绍
描述
介绍
该项目是为有婴儿、幼儿或宠物的父母和宠物主人设计的,他们可能需要在车内无人看管一段时间。当放置在车内时,该设备会监控热量水平和运动,以确保安全,避免过热。当车内温度升高到安全温度以上时,该设备将发送越来越紧急的文本通知。
虽然这并不能提供一个解决方案来冷却孩子或宠物以防止他们过热,但这确实有助于在死亡发生之前通知父母。
动机
自 1998 年以来,尤其是 2 岁以下的儿童,极易遭受中暑的危害。2018 年,据报道有 52 名儿童被困在过热的车辆内而死亡。即使车窗微开,车内温度也可以在 10 分钟内升高 20 度,在 30 分钟内升高 50 度。对于孩子的身体来说,它的升温速度要快三到五倍,这是一个严重的问题。在阅读了一篇阐述这个确切问题的文章后,我起初感到震惊和恐惧。对有多少人死亡感到震惊,并对还没有解决方案感到震惊。希望通过这个项目,它将成为创造新的安全可靠设备的垫脚石,以帮助确保他人的安全并帮助未来的孩子被困在过热的车辆内。
材料
某物
粒子设置
使用 Boron 的快速入门指南将电路板注册到粒子云环境中。大约花了半天时间,才将 SIM 卡注册到本地蜂窝网络并能够从 Particle 控制台访问它。
粒子控制台如下图所示,列出了 Boron 设备以及通过 API 调用所需的信息。
为了通过 Visual Studio Code 使用 Particle IDE、WEB 或 IDE,您需要 Personal Access Token 字符串,您可以通过在控制台上选择 WEB IDE 并选择 IDE 底部的设置齿轮找到它,您将在顶部看到个人访问令牌。在下图中,它已被编辑掉,因为它是个人令牌。
获得 PAT 后,使用 Visual Studio Code 环境就像登录到您的 Particle 帐户一样简单。
为了安装和配置您的桌面 IDE,请遵循此处的简单指南。
最后,将以下库包含到您的项目中:Adafruit_ILI9341、Adafruit_DHT 和 Adafruit_mfGFX。确保使用这些名称,因为搜索非常挑剔。该程序显示 Twilio,但实际上并没有使用它,所以忽略添加该库。
编码现实
编码需要与现实中的实际事件相匹配。在这种情况下,汽车的内部温度在夏季阳光明媚的日子里,温度高达 110 华氏度。
以下参考资料用于找到最佳温度范围,来自 NBC 新闻:“热车中的死亡:事实、数据和预防”、WhatToExpect:“保护您的孩子免受极端高温”和“为什么将孩子留在车内如此危险”。
首先,一组常量定义了温度阈值、要发送的消息数量和消息之间的时间间隔。
//Define constants for device status
#define STATUS_UNKNOWN 0
#define STATUS_OK 1
#define STATUS_WARNING 2
#define STATUS_DANGER 3
#define STATUS_PANIC 4
//Define constants for temperature strenght
#define RANGE_OK 81
#define RANGE_WARNING 89
#define RANGE_DANGER 99
#define WARNING_TIME 5 //mins
#define MSG_WARNING_MAX 4 //every 5 mins
#define WARNING_MAX_TIME 15
#define DANGER_TIME 3 //every 3 mins.
#define DANGER_MAX_TIME 15 //after that it becomes panic.
#define MSG_DANGER_MAX 5
#define PANIC_TIME 1 //every minute
unsigned long thresholdTime=5000;
unsigned long warningThreshold = 1000*60*WARNING_MAX_TIME;
unsigned long dangerThreshold = 1000*60*DANGER_MAX_TIME;
unsigned long warningTriggerThrs = 1000*60*WARNING_TIME;
unsigned long dangerTriggerThrs = 1000*60*DANGER_TIME;
unsigned long panicTriggerThrs = 1000*60*PANIC_TIME;
The
首先检查确保温度低于正常范围(82 华氏度);如果温度低于然后将环境变量重置为正常状态。
if (f < RANGE_OK)
{
if (eventStatus != STATUS_OK)
{
eventStatus = STATUS_OK;
msgCounterWarning = 0;
msgCounterDanger = 0;
eventStartTimer = 0;
eventTimer = 0;
}
}
如果温度达到警告范围 (82 - 89 华氏度),则会向直接触点发送警告消息,并启动 5 分钟的计时器。系统将每 5 分钟发送一条消息。
else if (f > RANGE_OK && f <= RANGE_WARNING)
{
if (eventStatus != STATUS_WARNING)
{
eventStatus = STATUS_WARNING;
msgCounterWarning = 0;
msgCounterDanger = 0;
eventStartTimer = millis();
eventTimer = 0;
sendWarning(f);
}
else
{
eventTimer = millis();
if ((eventTimer - eventStartTimer) < warningThreshold)
{
if ((eventTimer - eventLastTimer) > warningTriggerThrs)
{
sendWarning(f);
msgCounterWarning++;
eventLastTimer = eventTimer;
}
}
}
}
如果温度达到危险范围(90 到 99 华氏度),则每 3 分钟向直接联系人和 Twilio 中的第一个紧急号码寄存器发送一条危险消息。紧急号码将接收设备的位置(只要GPS锁定卫星),然后紧急号码可以联系直接联系人或开车到设备所在的位置,或联系紧急当局。系统将在 Danger 状态下尝试最多 15 分钟,然后升级为 Panic 状态,第三个人和第二个紧急联系人将收到一条短信,以及设备位置。
else if (f > RANGE_WARNING && f < RANGE_DANGER)
{
if (eventStatus == STATUS_PANIC)
{
eventTimer = millis();
if ((eventTimer - eventLastTimer) > panicTriggerThrs)
{
sendPanic(f);
msgCounterDanger++;
eventLastTimer = eventTimer;
}
}
else
{
if (eventStatus != STATUS_DANGER)
{
eventStatus = STATUS_DANGER;
msgCounterWarning = 0;
msgCounterDanger = 0;
eventStartTimer = millis();
eventTimer = 0;
sendDanger(f);
}
else
{
eventTimer = millis();
if ((eventTimer - eventStartTimer) < dangerThreshold)
{
if ((eventTimer - eventLastTimer) > dangerTriggerThrs)
{
sendDanger(f);
msgCounterDanger++;
eventLastTimer = eventTimer;
}
}
else
{
eventStatus = STATUS_PANIC;
sendPanic(f);
}
if (msgCounterDanger > MSG_DANGER_MAX)
{
eventStatus = STATUS_PANIC;
sendPanic(f);
}
}
}
}
如果温度升至紧急范围(99 华氏度及以上),则会向第三人发送紧急消息,并与设备位置的第二个紧急联系人联系。此消息将每分钟发送三条消息,直到温度降至安全范围。
else if (f > RANGE_DANGER)
{
if (eventStatus != STATUS_PANIC)
{
eventStatus = STATUS_PANIC;
msgCounterWarning = 0;
msgCounterDanger = 0;
eventStartTimer = millis();
eventTimer = 0;
}
else
{
eventTimer = millis();
if ((eventTimer - eventLastTimer) > panicTriggerThrs)
{
sendPanic(f);
msgCounterDanger++;
eventLastTimer = eventTimer;
}
}
}
位置链接的创建使用等于空格 ASCII 的 %20 字符代码,以便正确格式化字符串。
这是 Visual Studio Code 设置的快照。
WebHook 集成
Webhook 是一种 API,它允许您在数据可用时发送数据,而无需您发送数据请求。一旦温度传感器达到某个值,此功能适合我们通过 Twilio 发送 SMS 的需要。
Twilio 的 Webhook 允许我们向特定联系人发送短信。
粒子仪表板允许通过从菜单中选择集成来创建 Webhook。下图显示了用户界面。
选择 Webhook,然后选择新集成。下面,您可以看到触发温度事件时为每个联系人创建的三个 Webhook。
选择 New Integration 会显示 Webhook 模板,您可以从这里按照“使用 Particle Electron 发送 SMS 和 MMS 消息”的说明为 Webhook 添加适当的参数。
特维利奥
使用 Twilio,一个可通过云访问的 API 开发人员平台,我们购买了一个支持 SMS 的号码。当温度传感器返回指定范围内的某些值时,此号码会向预定联系人发送警告消息。
以下是注册和购买电话号码后的 Twilio 仪表板。请注意,在右上角您可以看到一个名为“已验证号码”的链接,您必须添加 Twilio 可以与之通信的号码才能发送短信。使用未经验证(注册)的数字将导致无效的 Webhook 执行。
由于隐私原因,已验证的号码已被删除,但在您输入短信发送的验证码验证号码后,您将看到以下列表显示这些号码。
现在让我们把它们放在一起。
把所有的放在一起
某物
以下快照显示了在旧婴儿座椅上安装传感器以进行测试。
压力传感器安装在座椅底部和靠背上,这些传感器的校准是必要的,尽管不可能,因为我们只有毛茸茸的测试对象。
测试
以下视频显示了使用吹风机提高温度的系统测试。
您可以看到注册号码随着状态从警告-->危险-->恐慌-->正常状态的变化及时收到短信。
这是一条关于紧急状态的 SMS 消息,其中设备的位置通过链接链接到谷歌地图。
结论
除了用作确保车内婴儿、幼儿和宠物安全的系统外,该设备还可以用于长期独自在家的老人或宠物。该设备可以监测房屋内的温度,并确保热量水平不会达到危险水平。虽然与被困在过热汽车中的婴儿相比,家中的中暑并不致命,但保持谨慎和知识渊博仍然很重要。
- 宠物饮水器水位监测器开源分享
- 宠物食品分配器开源设计
- 宠物喂食器开源硬件
- 自动宠物冷水机开源硬件
- 自动宠物喂食器开源硬件
- 物联网温度监测设备开源
- 可照顾您宠物的无线系统
- Nerd无线电子宠物开源设计
- 宠物食品消费追踪器开源分享
- 自动宠物饮水机和消耗监测
- 赫伯特机器人虚拟宠物开源分享
- HugWear可穿戴宠物开源分享
- 用于锻炼的心率监测设备开源分享
- 智能自动鱼/宠物喂食器开源分享
- 关于婴儿尿床无线监测系统的研制 5次下载
- 物联网智能宠物管理系统 822次阅读
- 宠物饮水机缺液提醒的原理是什么 453次阅读
- 基于STM32单片机的宠物监测系统设计 1068次阅读
- 基于STM32单片机的婴儿床系统设计 1058次阅读
- 基于STM32单片机的婴儿床控制系统设计 891次阅读
- 一种利用模糊PID算法的婴儿培养箱温度控制系统设计剖析 1257次阅读
- 婴儿培养箱温度控制系统设计方案解析 2846次阅读
- 可吞服的胶囊传感器:有望彻底变革肠道疾病的预防和诊断方法 4724次阅读
- 教你几招 帮你家电器降降温 2588次阅读
- 婴儿报警接收机原理图 1908次阅读
- 婴儿监测器(续) 3060次阅读
- 婴儿监测器 3256次阅读
- 婴儿报警载波接收机 2063次阅读
- 婴儿报警载波发射机 1964次阅读
- 婴儿睡觉受凉报知器电路 1604次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多