本网页已闲置超过3分钟,按键盘任意键或点击空白处,即可回到网页

基于 DPS310 的老年人智能助手—健康手环

发布时间:2021-12-30
分享到:

基于 DPS310 的老年人智能助手—健康手环

发布时间:2021-12-30
分享到:

使用英飞凌的 DPS310 压力传感器,我们开发了一个虚拟助手,它以带子的形式整齐地环绕在您的手臂上,它可以处理这项耗时的工作,让您的亲人放心!

系统/概念中的组件

尽管该系统主要关注阿尔茨海默病患者面临的问题,但我们在我们的项目中灌输了许多其他系统,这些系统影响所有老年人的生活,帮助他们独立地克服日常生活中的障碍。

英飞凌压力传感器的主要特点之一尺寸较小!这使得关键组件便携且通用性强。系统核心为Arduino Nano,通过 I2C 总线连接到 DPS310 压力传感器。系统将以动编码模拟患者的实时运动。使用这些图表或值,我们可以确定患者的状态并在紧急情况下向成员发出警报。然后将使用 Blynk 在一个小应用程序上生成对应的数据。

整个系统将集成到一个紧凑而美观的腕表手环中,将这项技术无缝融入患者的生活中。

功能和能力

以下是我们的波段将能够分析/检测的主要功能和动作:

跌倒——研究表明,老年人最大的问题是失去平衡和跌倒。患者往往是无助的,通常会在跌倒过后很长时间才能得到帮助。通过检测压力突然下降,Health Band 可以轻松避免这种情况。一旦检测到,就会自动向亲属发送消息,从而防止情况恶化。

锻炼——对于老年人来说,让他们锻炼或散步是相当困难的,即使这能让他们保持健康。我们认为一种激励他们的方法可以是向他们展示所走的步数或步行的时间,以便促使他们锻炼。

比如我的奶奶,医生告诉她每天需要走 1000 步左右,她愿意配合但无法记清自己的步数。这时候手环就可以帮助到她。

一旦 Health Band 检测到“波浪”运动,它就会推断出患者已经开始了他/她的锻炼。波峰到波峰或波谷到波谷标志着一个周期。随着步数的进行,循环数会生成并显示出来,从而制作出您自己的步数计数器。

体温测量 -这个非常简单,传感器还可以监测温度。与手臂接触的带子可以提供患者的实时温度。任何异常的波动情况将通过消息自动再次提醒亲属。

状态 -告诉亲属患者的实时状态。例如,如果 Health Band 检测到的压力变化不大,则患者可能正在睡觉。

项目有三种状态:睡眠、清醒和锻炼。

电路

英飞凌强大的 DPS310 传感器可以使用蓝牙同步到应用程序。该应用程序生成传感器的实时视觉表示。虽然它很有用,但它对我们的概念有其局限性。

因此,为了利用传感器的数据流,我们通过 I2C 总线连接了 Arduino Nano。这使我们能够计算数据,从而可以推断出患者所处的各种场景。

一旦我们解决了这个问题,我们将 Arduino 连接到 ESP8266 WiFi 模块,使其能够与移动应用程序进行通信。

配置

在设置一切之前,您需要为传感器添加引脚。剪断两根七针的长度并将它们焊接起来。

  • DPS310 压力传感器到 Arduino Nano (I2C)

注意:传感器的方向如图所示

传感器上的引脚 1 (SDA) => Arduino 上的 模拟引脚 4

传感器上的引脚 2 (SCL) => Arduino 上的模拟引脚 5

传感器上的引脚 8 (GND) => Arduino 上的GND

  • Arduino Nano 转 ESP8266(WiFi 模块)

注意:模块的方向如图所示

WiFi 模块上的引脚 1 => Arduino 上的 数字引脚 11

WiFi 模块上的引脚 2 => Arduino 上的 数字引脚 10

WiFi 模块上的引脚 7 (GND) => Arduino 上的GND

WiFi 模块上的引脚 8(电源)=> Arduino 上的3v3

小巧的所有组件都非常适合您的手腕。为了制作实际的成品,我们使用Canvas和Foam来嵌入组件。然后魔术贴形成带子。

要制作您的 DIY 健康手环,请先将泡沫切成手的宽度。然后排列好各种传感器,裁剪出最终的尺寸。把边缘弄圆,让它看起来更整洁。将别针压入泡沫(为其提供保护和抓握),然后将电池嵌入一个小槽中。

添加魔术贴条以制作肩带。将表带包裹在帆布中并用热胶粘住,可以让手环的外观变得更加简洁。

编码各种算法

在我们开始对系统进行编程之前,您需要安装某些库才能使程序正常运行。您需要下载的库是:

  • Wire 库(通常是预装的,它负责 Arduino Nano 和 DPS310 压力传感器之间的通信)https://github.com/PaulStoffregen/Wire
  • DPS310 压力传感器库https://github.com/Infineon/DPS310-Pressure-Sensor
  • Blynk 库(用于 Arduino Nano 能够与 Blynk 云通信)https://github.com/blynkkk/blynk-library

下载每个库后,每个库的安装都遵循相同的过程:打开Arduino IDE并前往草图(窗口顶部)。然后从下拉列表中单击include library 。接下来单击添加 .ZIP 库。现在导航到您存储下载的文件的位置,然后单击打开。对所有三个库重复该过程。

现在您可以尝试下载试用代码并检查它是否编译。将其上传到您的 Arduino Nano 并确保通过打开串行监视器(由 IDE 右上角的监视器图标表示)获取实时数据。

如果一切顺利,请继续上传主代码,然后您就可以开始构建您的应用程序了。

构建应用程序

为了连接到互联网,我们使用了一个名为 Blynk 的预建平台,可以从 android play 商店下载,链接如下。有无数关于如何将应用程序与 Arduino 一起使用的示例,这些示例都可以通过访问Arduino IDE 中的文件、示例和Blynk 列表来获得。

blynk 应用链接:https : //play.google.com/store/apps/details? id = cc 。

选择Arduino Nano作为您的微控制器和“连接类型” WiFi 。然后,您将收到一封“身份验证令牌”的邮件,您需要在代码中输入(在代码中提到)。

我们添加了几个小部件,例如表示实时温度的仪表、计步器的值显示和显示当前状态的LCD 显示器。这些是您可以为其他特定情况添加更多功能的基本构建块。

结论,大体上成功!

该项目存在一些错误和误读。一是体温。HealthBand 读数为 36°C(手腕温度),而医疗级温度计读数为 36.8°C(腋下温度)。

我们的步骤算法起初被证明给出了错误的计数,但经过多次修改尝试后,它的工作相当准确。另一个问题是状态函数。我们添加了更多变量和语句,使其进一步了解其他状态。

最后,我们能够通过重新校准解决问题,并且 HealthBand 成功收集了所需的数据。

如果您对此项目有任何想法、意见或问题,请在下方留言。

原文链接丨以上内容来源网络,如涉及侵权可联系删除。

加入微信技术交流群

技术交流,职业进阶

关注与非网服务号

获取电子工程师福利

加入电路城 QQ 交流群

与技术大牛交朋友

讨论