資料介紹
描述
概述:物聯網脈搏血氧儀
在這個項目中,您將學習使用 NodeMCU ESP8266、MAX30100和Blynk應用程序制作基于物聯網的脈搏血氧儀。在今天的項目中,我們可以使用 Blynk IoT 云平臺從世界任何地方監控這些值。
感謝 NextPCB
本項目在NextPCB的幫助和支持下順利完成。伙計們,如果您有 PCB 項目,請訪問他們的網站并獲得令人興奮的折扣和優惠券。
5-10 件 PCB 原型僅需 0 美元:(單擊此處)
注冊并從 NextPCB 獲得 100 美元:(點擊這里)
所需組件
要制作這款基于物聯網的脈搏血氧儀,您需要 NodeMCU ESP8266 開發板。一個0.96 英寸 SSD1306 OLED 顯示屏、MAX30100脈搏血氧計傳感器、少量跨接電纜和面包板。您可以從下面提供的亞馬遜鏈接購買所有這些組件。
材料:
- ESP8266
- 脈搏血氧儀 Max30100
- OLED顯示屏
- 面包板
- 跳線
MAX30100脈搏血氧儀傳感器的工作王
該傳感器有兩個 LED,一個發出紅光,另一個發出紅外光。脈率需要紅外線。但是,測量血液中的SpO2水平需要紅光和紅外光。
當心臟泵血時,氧氣水平會增加,因為有更多的血液。但是,當心臟休息時,含氧血液會減少。因此,脈率是通過獲得含氧血液上升和下降之間的時間來確定的。
含氧血液吸收更多的紅外光并通過更多的紅光。但是,脫氧血液會吸收紅光并通過更多的紅外光。基本上,MAX30100傳感器讀取兩個光源的吸收水平并將它們存儲在可通過I2C引腳讀取的緩沖區中。
連接 MAX30100 和 OLED 顯示器與 ESP8266
電路:-按照電路圖進行連接。
為 IoT 脈搏血氧計設置 Blynk 應用程序
現在從適用于 Android 和 iOS 的 Play 商店/應用商店下載此Blink 應用程序。使用您的電子郵件地址和密碼注冊 Blynk IoT 云。
現在,單擊新項目為您的項目命名。我給“物聯網脈搏血氧儀”選擇NodeMCU板,然后將連接類型設置為WiFi 。最后,點擊創建按鈕。
Blynk 身份驗證令牌將發送到您的電子郵件地址。我們稍后會在編程時用到它。
點擊主屏幕上的加號 (+)圖標并添加兩個儀表,然后我們將添加兩個值顯示小部件。
一個會顯示BPM值,另一個會顯示氧氣水平 (Sp02)。對于 BPM 我們將選擇虛擬引腳V1 ,并將值設置為0 到 130 ,您還可以設置此儀表的顏色。現在我們將設置值顯示。我們將在值顯示中添加相同的值,因為它們的行為相同。
現在我們將做氧氣水平。我們將選擇虛擬V2引腳,我們將選擇從0 到 100的值,給它一些顏色,我給它藍色,我們將設置一秒刷新率。我們將對具有相同引腳的值顯示設置執行相同的操作,即V2相同的值0 到 100以及一秒的刷新率和顏色。
代碼:物聯網脈搏血氧儀
//nextpcb
#include
#include "MAX30100_PulseOximeter.h"
#define BLYNK_PRINT Serial
#include
#include
#include
#include "Wire.h"
#include "Adafruit_GFX.h"
#include "OakOLED.h"
#define REPORTING_PERIOD_MS 1000
OakOLED oled;
char auth[] = "--------------------"; // Authentication Token Sent by Blynk
char ssid[] = "--------"; //WiFi SSID
char pass[] = "--------"; //WiFi Password
// Connections : SCL PIN - D1 , SDA PIN - D2 , INT PIN - D0
PulseOximeter pox;
float BPM, SpO2;
uint32_t tsLastReport = 0;
const unsigned char bitmap [] PROGMEM=
{
0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x18, 0x00, 0x0f, 0xe0, 0x7f, 0x00, 0x3f, 0xf9, 0xff, 0xc0,
0x7f, 0xf9, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xf7, 0xff, 0xf0, 0xff, 0xe7, 0xff, 0xf0, 0xff, 0xe7, 0xff, 0xf0, 0x7f, 0xdb, 0xff, 0xe0,
0x7f, 0x9b, 0xff, 0xe0, 0x00, 0x3b, 0xc0, 0x00, 0x3f, 0xf9, 0x9f, 0xc0, 0x3f, 0xfd, 0xbf, 0xc0,
0x1f, 0xfd, 0xbf, 0x80, 0x0f, 0xfd, 0x7f, 0x00, 0x07, 0xfe, 0x7e, 0x00, 0x03, 0xfe, 0xfc, 0x00,
0x01, 0xff, 0xf8, 0x00, 0x00, 0xff, 0xf0, 0x00, 0x00, 0x7f, 0xe0, 0x00, 0x00, 0x3f, 0xc0, 0x00,
0x00, 0x0f, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
void onBeatDetected()
{
Serial.println("Beat Detected!");
oled.drawBitmap( 60, 20, bitmap, 28, 28, 1);
oled.display();
}
void setup()
{
Serial.begin(115200);
oled.begin();
oled.clearDisplay();
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 0);
oled.println("Initializing pulse oximeter..");
oled.display();
pinMode(16, OUTPUT);
Blynk.begin(auth, ssid, pass);
Serial.print("Initializing Pulse Oximeter..");
if (!pox.begin())
{
Serial.println("FAILED");
oled.clearDisplay();
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 0);
oled.println("FAILED");
oled.display();
for(;;);
}
else
{
oled.clearDisplay();
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 0);
oled.println("SUCCESS");
oled.display();
Serial.println("SUCCESS");
pox.setOnBeatDetectedCallback(onBeatDetected);
}
// The default current for the IR LED is 50mA and it could be changed by uncommenting the following line.
//pox.setIRLedCurrent(MAX30100_LED_CURR_7_6MA);
}
void loop()
{
pox.update();
Blynk.run();
BPM = pox.getHeartRate();
SpO2 = pox.getSpO2();
if (millis() - tsLastReport > REPORTING_PERIOD_MS)
{
Serial.print("Heart rate:");
Serial.print(BPM);
Serial.print(" SpO2:");
Serial.print(SpO2);
Serial.println(" %");
Blynk.virtualWrite(V7, BPM);
Blynk.virtualWrite(V8, SpO2);
oled.clearDisplay();
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0,16);
oled.println(pox.getHeartRate());
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 0);
oled.println("Heart BPM");
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 30);
oled.println("Spo2");
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0,45);
oled.println(pox.getSpO2());
oled.display();
tsLastReport = millis();
}
}
現在將您的 ESP8266 NodeMCU 板與您的計算機連接起來。復制上面的源代碼。首先,在配置應用程序時輸入眨眼發送給您的身份驗證令牌。現在,輸入您的WiFi 名稱和 WiFi 密碼。最后選擇NodeMCU 12 E-board的板子,選擇COM口,上傳代碼。
測試物聯網脈搏血氧儀
結論
這就是使用 ESP8266 和 Blynk 的基于物聯網的脈搏血氧儀的全部內容。所以朋友們,我希望你們喜歡這個教程。
請與您的朋友分享。如果您遇到此項目的任何問題,請隨時在下面發表評論。
- 血氧儀方案介紹
- 帶有Blynk和IR的Arduino ESP8266控制繼電器
- 智能脈搏血氧儀(IoT)的構建
- WizFi360 EVB Mini脈搏血氧儀開源
- 用于健身和醫療應用脈搏血氧儀 8次下載
- 基于ESP8266的WiFi車 10次下載
- DIY心率監測器和脈搏血氧儀
- 使用NodeMCU ESP8266和Blynk 2.0的智能家居
- 使用Esp32的基于物聯網的脈搏血氧儀
- 如何快速設計脈搏血氧儀?德州儀器來支招!
- 基于藍牙技術的便攜式脈搏血氧儀 56次下載
- 中移合物固件ESP8266軟件下載 8次下載
- 指夾式脈搏血氧儀的拆解分析
- 機智云ESP8266模組固件資料下載 65次下載
- ESP8266系列模塊選型 37次下載
- ESP8266紅外信號收發實驗 1678次閱讀
- ESP8266硬件 4143次閱讀
- 如何使用MAX30102血氧心律脈搏傳感器量測心跳和血氧呢 6604次閱讀
- ESP8266/ESP32自動下載原理 4249次閱讀
- 如何使用ESP8266制作可配置的Web服務器 1.2w次閱讀
- ESP8266上運行代碼如何實現 2768次閱讀
- 如何利用ESP8266實現智能手表的設計 2999次閱讀
- 采用MSP430FG437微控制器實現非侵入式可視脈搏血氧計的設計 3570次閱讀
- 采用ADuC7024精密模擬微控制器的ADI脈搏血氧儀解決方案 4946次閱讀
- STM32系列設計,ESP8266聯網授時時鐘 7825次閱讀
- esp8266中文資料匯總(esp8266引腳圖_與單片機連接_串口wifi實例) 22.4w次閱讀
- esp8266固件如何升級_ESP8266WIFI模塊固件升級 4.2w次閱讀
- ESP8266 Wi-Fi到底傳多遠_esp8266 wifi信號強度測距 5.1w次閱讀
- esp8266 at指令集詳解 14.1w次閱讀
- esp8266串口wifi實例 1.8w次閱讀
下載排行
本周
- 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次下載 | 免費
評論
查看更多