当前位置:首页 > 物联网 > IoT设计分享
[导读]一如既往,我们意识到在医学科学中使用测量心跳来诊断各种问题。心跳用来监测我们心脏的健康状况。通过测量病人当前的心跳来诊断问题是医学中一个古老的部分。因此,在这个项目中,我们将使用NodeMCU ESP8266构建一个基于物联网的监测系统,该系统将能够测量当前的心跳并将数据发布到云平台。因此,数据可以从全球任何地方访问(只需要互联网连接)。该项目有助于为患者提供高质量的支持,并使医务人员的工作更轻松。正常人也可以使用它作为他们生活的一部分来监测他们的心脏健康。

一如既往,我们意识到在医学科学中使用测量心跳来诊断各种问题。心跳用来监测我们心脏的健康状况。通过测量病人当前的心跳来诊断问题是医学中一个古老的部分。因此,在这个项目中,我们将使用NodeMCU ESP8266构建一个基于物联网的监测系统,该系统将能够测量当前的心跳并将数据发布到云平台。因此,数据可以从全球任何地方访问(只需要互联网连接)。该项目有助于为患者提供高质量的支持,并使医务人员的工作更轻松。正常人也可以使用它作为他们生活的一部分来监测他们的心脏健康。

我们用ESP8266做了很多项目,这里有一些例子,

如何使用ESP8266构建基于LoRa的GPS跟踪器

基于物联网的库存管理系统,使用称重传感器和NodeMCU

基于物联网的语音控制新像素LED -在谷歌助手上使用语音命令设置任何颜色

基于物联网的色彩分选机,使用ESP8266和ThingSpeak

组件的要求

ESP8266 nodecu单板

OLED显示器

心跳传感器模块

电路试验板

跳线

LED灯

脉搏传感器

它是一种模拟设备,用于测量人体的脉搏/心跳。它通过发射和感应光来监测血管中血液的变化,这个过程被称为光容积脉搏描记术。

它有三个引脚,GND, VCC和信号。

VCC引脚:该引脚用于向传感器供电,使其工作。通常连接在NodeMCU单板的3.3V引脚上。其电压范围在3.3v到5v之间。

GND引脚:用于连接传感器和NodeMCU单板的接地。

信号引脚:该引脚用于将脉冲速率数据以模拟形式传输到NodeMCU板。

OLED显示器

有机发光二极管(OLED)显示器用于显示输出数据。它们非常轻,像纸一样薄,理论上是柔性的,能产生更亮、更清晰的图像。

它有四个引脚VCC, GND, SCl和SDA。

VCC引脚:该引脚用于向OLED显示器提供电压以打开显示器。OLED的电压范围为3.3v到6v。

GND引脚:用于连接显示器和NodeMCU单板的接地。

SDA引脚:在I2C通信中用于数据传输。通常连接在NodeMCU单板的D2引脚上。

SCL引脚:该引脚用于I2C通信中的时钟信号。通常连接在NodeMCU单板的D1引脚上。

线路图

这里的联系非常简单。脉冲传感器信号引脚连接到NodeMCU的A0上。OLED的SCL和SDA应分别连接到NodeMCU的D1和D2上。

同时,指示脉冲正侧的RED LED连接到NodeMCU的D8引脚,另一侧连接到地。

为远程监控设置Thingspeak

为了监控云上的输出数据,我们将使用Thingspeak云平台。在这里,我们将创建一个用于存储心跳数据的字段。让我们快速设置一下。

首先,在Thingspeak网站上创建一个新账户。

然后登录到您的帐户并创建一个新频道。通道可以读写API密钥,可以是公共的也可以是私有的。

为通道中的字段指定一个名称,并将其用于数据监视。

在通道内找到API密钥并复制它。不同通道的API密钥是不同的,我们需要在代码中使用它们来提供对通道ID的访问。

有读和写两个API键。如果你想发送和接收数据到Thingspeak,分别使用写和读API键。

项目代码说明

该程序读取脉冲传感器的模拟参数并将其转换为BPM(每分钟跳动),并将数据显示到OLED以及云平台(Thingspeak)上。

首先,我们必须包含成功执行代码所需的所有库。库包括SPI, WIRE, Adafruit_SSD1306和Adafruit_GFX。ESP8266WiFi ThingSpeak。此外,我们还定义了进一步编程所需的变量和对象。

OLED显示器的SSD1306控制器具有复杂的驱动程序,因此我们使用预定义库Adafruit SSD1306来隐藏控制器的复杂性。

Adafruit_SSD1306构造函数接受三个参数:屏幕宽度、屏幕高度和ESP8266引脚编号,该引脚与显示器的复位引脚相连。但是这里我们没有连接任何RESET引脚。

在OLED上显示圆形、线条和正方形等图形基元。我们必须使用Adafruit GFX库。

ESP8266WiFi库,用于将WIFI模块连接到WIFI连接上,提供连接信息。

Thingspeak库用于通过互联网连接到Thingspeak服务器,允许我们发送和接收数据。

您可以通过Sketch > Include Library > Manage libraries从Arduino IDE安装所有这些库。

A0引脚从脉冲传感器读取模拟数据。

变量MychannelNumber和mywriteAPIkey分别是Thingspeak帐户通道的通道ID和API KEY,您将在其中发布数据。为了成功发送数据,您需要更改这些双变量数据。

在setup()函数中,启动串行通信。

OLED显示器初始化为begin(SSD1306_SWITCHCAPVCC, 0x3C)函数,其中SSD1306_SWITCHCAPVCC打开内部充电电路和显示输出,0x3C是显示器的I2C地址。

clearDisplay()函数用于清除显示并使其完全为空白。

WIFI .begin()函数用于初始化WIFI连接进程。它需要两个参数WIFI名称和同一网络的密码。

begin()函数与Thingspeak库关联,它初始化连接进程以连接到Thingspeak服务器。

在上面的循环部分,我们已经完成了所有的处理任务,比如比较和赋值,同时还运行了Thingspeak函数。

可变sensorValue存储脉冲传感器的模拟输入。然后比较<= 590 & <=680范围内的值来检测节拍。

如果检测到节拍,则D8引脚上的LED打开10ms,否则它将不发光。

BPM计算:

我们对脉冲进行20秒的计数,然后将其乘以3次,得到每分钟的节拍数,并在Arduino IDE的串行监视器上显示。

OLED显示屏:使用许多功能来根据需要调整显示。让我们看看一些常用的函数。

setTextColor用于设置字体颜色。将白色设置为暗背景,黑色设置为亮背景。

setCursor接受x轴和y轴位置的两个参数,并将光标分配给该位置。

setTextSize用于设置字体大小(从1开始)。

display()命令指示库将屏幕缓冲区批量传输到SSD1306控制器的内存中,并在OLED屏幕上显示所述内容。

最后,我们使用Thingspeak的writefield()函数。它有四个参数,从通道ID、字段号、数据变量和API Key开始。所有这些信息应该按照你的Thingspeak帐户和频道。

完整的代码将在下面的代码部分中找到。

项目运作

现在您已经理解了代码,您可以简单地将其上传到您的NodeMCU板,然后项目就应该开始工作了。

在OLED和云上监测你的心跳。

本文编译自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 隧道灯 驱动电源
关闭