当前位置:首页 > 物联网 > IoT设计分享
[导读]健康监测一直是物联网(IoT)的一个有前途的应用。通过使用正确的技术,我们不再需要依靠常规的健康检查或当地的医生来评估我们的身体。传感器可以用来测量你身体的所有生命体征,这些信息可以远程实时共享,供世界其他地方的医生诊断你,或者人工智能可以处理所有的数字并诊断你的问题。听起来很有未来感,对吧?但我们正在逐渐向它迈进,我们离远程物联网机械臂为我们做手术不远了。在此过程中,我们将构建树莓派心率监测器来测量远程患者的心率,并将其显示在Processing IDE上。之前我们还使用Arduino和ESP8266构建了一个心率监测器,并将值上传到Thingspeak。

健康监测一直是物联网(IoT)的一个有前途的应用。通过使用正确的技术,我们不再需要依靠常规的健康检查或当地的医生来评估我们的身体。传感器可以用来测量你身体的所有生命体征,这些信息可以远程实时共享,供世界其他地方的医生诊断你,或者人工智能可以处理所有的数字并诊断你的问题。听起来很有未来感,对吧?但我们正在逐渐向它迈进,我们离远程物联网机械臂为我们做手术不远了。在此过程中,我们将构建树莓派心率监测器来测量远程患者的心率,并将其显示在Processing IDE上。之前我们还使用Arduino和ESP8266构建了一个心率监测器,并将值上传到Thingspeak。

材料要求:

以下是使用Raspberry Pi构建您自己的患者监测系统所需的组件。

•覆盆子π

•脉搏传感器

•ADS1115 ADC模块

•跳线

•电源或移动电源

脉冲速率传感器:

在我们进入实际项目之前,让我们先看看脉冲速率传感器是如何工作的。脉搏/心跳传感器的工作非常简单。传感器有两面,一面是LED和环境光传感器,另一面是一些电路。这个电路负责放大和噪声消除工作。传感器正面的LED被放置在我们人体的静脉上。这可以是你的指尖或耳尖,但它应该直接放在静脉的顶部。

现在LED发出的光会直接落在静脉上。只有当心脏跳动时,静脉里才会有血液流动,所以如果我们监测血液流动,我们就能监测心脏跳动。如果检测到血流,那么环境光传感器就会接收到更多的光,因为它们会被血液反射,随着时间的推移,这种接收光的微小变化就会被分析出来,从而确定我们的心跳。在这个项目中,脉冲传感器作为树莓派的心跳传感器。

有三根电线从传感器出来,分别是信号(S), Vcc (3 - 5 V)和GND。

信号线分别显示为紫色、红色和黑色。在我们的项目中,传感器将由Arduino的3.3V引脚供电,由于树莓派默认不能读取模拟电压,因此信号引脚将通过ADS115 ADC模块连接到树莓派上。

线路图:

完整的树莓派物联网患者监护系统电路图如下图所示。

正如你所看到的,我们已经使用了带有脉冲传感器的ADS115 ADC模块,脉冲传感器通过I2C通信连接到树莓派,这样我们就可以在树莓派上测量心跳。以下是它们之间的联系:

•脉冲传感器的信号引脚- ADC模块的>a0

•脉冲传感器的Vcc引脚-> 3.3V的树莓

•脉冲传感器的GND引脚-> Pi的GND

•RPI的Tx -> RPI的Rx

•ADC的GND -> RPI的GND

•ADC模块的VCC -> +5v的RPI

•ADC模块的SCL和SDA ->的SCL和SDA的RPI

安装与配置

由于ADC模块在I2C通信,我们使用UART进行串行通信,我们必须在shell中使用raspi-config命令启用树莓派的UART和I2C,如下所示。

现在选择Interfacing Options并按enter。

现在选择I2C并按enter

现在选择Yes并按enter

现在通过选择ok按enter键

现在通过选择Serial并按enter键来启用Serial

现在选择no并按enter键禁用串口登录shell。

现在选择Yes并按enter键以启用串行。

现在选择ok并按enter。

现在选择finish并按enter

现在选择Yes并按enter键进行重启。

现在安装i2c包

现在使用给定的命令测试并获得连接设备的I2C地址:

现在使用给定的命令为ADC模块安装ads1115 python库

在树莓派上安装Processing

现在使用给定的命令将Processing安装到现有的安装上:

现在我们可以看到树莓派菜单中的处理图标:

这里我们需要运行pulse_sensor python代码,然后处理本文末尾给出的代码。然后我们将看到如下图所示的结果

一个完整的工作视频也可以在这个页面的底部找到。下面将解释python代码和Processing代码。

树莓派的Python代码测量心跳

在此代码中,我们通过I2C通信连接ADC模块以获得脉冲传感器的模拟输出。从脉冲传感器获得原始模拟输出后,我们找到了上峰值和下峰值。然后找出两个峰值点之间的时间差,然后将其转换为BPM。我们将原始模拟输出和BPM发送到串行端口,串行端口从处理IDE中读取以供进一步处理。完整的心跳传感器树莓派python代码在本页的底部给出。

在首先编写代码时,我们导入了一些模块,这些模块在代码中用于不同的目的

现在我们有一些用于计算和动作的变量。并创建了一个串行对象

现在给定的部分代码用于发送数据到处理

现在给出了读取脉冲传感器和测量BPM的函数。

处理代码显示心跳值图形在树莓派

在处理代码时,我们从树莓的串口获取数据,这是我们上面解释过的python代码发送的环回信号。现在我们找到原始模拟输入和BPM。并根据模拟值绘制图形,显示BPM值。在处理代码时,首先导入了一些必要的库模块

在这之后,我们取了一些变量

然后在设置功能中,我们初始化了串口,配置了串口,初始化了默认图形

现在在serialEvent函数中,我们已经读取并提取了接收到的数据

现在在绘制函数中,我们已经将输入值映射到图形维度,然后绘制图形。

给定的代码行负责在图上显示BPM

这里我们还有另一个功能,用于放大和缩小绘图。通过按-,我们可以缩小,按+,我们可以放大脉冲图。为了控制这个,首先我们必须点击图形上的任何地方,然后需要按-和+。

通过这种方式,您可以使用树莓派测量患者的心跳,并将其显示为屏幕上的图形。如果需要,您还可以将此串行数据发送到ThingSpeak或其他物联网平台,如IFTTT, Artik Cloud, Firebase, Particle Cloud, Amazon AWS,并在全球范围内远程共享数据。

本文编译自iotdesignpro

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭