步驟1:材料和組件
需要的東西:
1)Arduino Uno x1
2)MAX30100接線板x1
3)適當長度的魔術(shù)貼
5)跳線
6)焊接線
7)焊接工具
我們從ProtoCentral獲得了MAX30100分支板,該分支板已準備就緒,可插入插槽以插入維可牢尼龍搭扣,以便將器件纏繞在手指上。為了將其連接到Arduino,我們還必須將跳線焊接到分支板的引腳上。
步驟2:要求和規(guī)格
-建立一個可以調(diào)節(jié)來自兩個不同LED的光并在光電二極管上拾取透射光的手指套
-使用與Arduino和顯示器集成在一起的MAX30100芯片。
-提供一個用于在顯示心率和血氧飽和度之間進行選擇的用戶界面。
步驟3:操作摘要
脈搏血氧飽和度測定法根據(jù)氧化血紅蛋白和脫氧血紅蛋白的紅色和紅外光吸收特性進行操作。血氧濃度可以由血紅蛋白從吸收紅光和紅外光之間的比率算出。心率通過整個手指的血量變化來檢測,然后通過穿過手指的光量來量化。
MAX30100芯片集成了兩個LED:紅色和紅外(IR),光電探測器和低噪聲信號處理以檢測脈搏血氧飽和度和心率信號。紅外和紅光的吸收數(shù)據(jù)存儲在FIFO緩沖區(qū)中,最多64個字節(jié)。它提供兩種操作模式;心率模式以及心率和氧飽和度模式。在心率模式下,僅IR LED點亮,而在雙模式下,IR和紅色LED均點亮。它還具有一個集成的60 Hz低通濾波器。雖然可以濾除電源線噪聲,但仍不能解決環(huán)境噪聲和波動問題。
紅色和紅外光通過LED傳輸通過手指,并且集成在芯片中的光電檢測器可以感應到兩個不同波長的光吸收。在本項目中,我們將血氧飽和度和心率檢測操作與MAX30100一起使用,因此我們可以同時檢測心率和氧飽和度。
步驟4:框圖
步驟5:將MAX30100集成到Arduino
MAX30100是I2C器件,因此,通過代碼,需要Wire庫與Arduino接口。物理上,MAX30100(在本例中為分線板)通過特殊引腳連接到Arduino,這些引腳能夠從SCL和SDA線(A4和A5)讀取數(shù)據(jù)。 SCL和SDL線提供數(shù)據(jù)信號和時鐘信號。地線和Vin線分別連接到GND和5V線。
LCD鍵盤屏蔽通過4-8針連接到Arduino,以便我們提供用戶友好的顯示。我們還使用了LCD鍵盤防護板上的兩個按鈕,用于在兩種模式之間進行選擇:心率監(jiān)視器和氧氣濃度監(jiān)視器。
步驟6:源代碼
#include
#include
#include
#include “MAX30100.h”
MAX30100*pulseOxymeter;
LiquidCrystal lcd(8,9,4,5,6,7)
int mode = 0;
void setup() {
Wire.begin();
lcd.begin(16,2);
lcd.print(“Up for SaO2”)
lcd.setCurson(0,2);
lcd.println(“Pulse oxymeter test!”)
pulseOxymeter = new MAX30100( DEFAULT_OPERATING_MODE, DEFAULT_SAMPLING_RATE, DEFAULT_LED_PULSE_WIDTH, DEFAULT_IR_LED_CURRENT, true, false);
pinMode(2, OUTPUT);
}
void loop() {
pulseoxymeter_t result = pulseOxymeter-》update();
if ((analogRead(0)》130) && (analogRead(0)《160)) {
lcd.clear();
lcd.setCursor(0,0);
lcd.print( “SaO2: ” );
mode = 1;
} else if ((analogRead(0)》130) && (analogRead(0)《160)) {
lcd.clear();
lcd.setCursor(0,0);
lcd.print( “BPM: ” );
mode = 2;
if (result.pulseDetected == true)
{
if (mode == 1) {
lcd.clear();
lcd.setCursor(0,0);
lcd.print( “SaO2: ”);
lcd.print( result.SaO2 );
lcd.print( “%” );
} else if (mode == 2) {
lcd.clear();
lcd.setCursor(0,0);
lcd.print( “BPM: ”);
lcd.print(result.heartBPM);
}
}
delay(10);
digitalWrite( 2, !digitalRead(2) );
}
步驟7:有關(guān)代碼實現(xiàn)的更多信息
我們在此項目中提供的代碼基于由Raivinis Strogonovs使用開放源代碼庫編寫,該庫已使用MAX30100實現(xiàn)了自己的脈搏血氧儀版本。
這是他的庫的鏈接:https://github.com/xcoder123/MAX30100
步驟8:挑戰(zhàn)
在實施MAX30100時,我們注意到手指的位置和移動會顯著影響所記錄的讀數(shù)。這可能是由于心率的測量很大程度上取決于流經(jīng)手指的血液量而引起的,皮膚的厚度也在這里發(fā)揮了作用。如果手指四處移動,則在獲取讀數(shù)時可能會導致光線不均勻。
測試我們項目的人們不應四處移動手指/手以獲取穩(wěn)定的讀數(shù)。可以通過將傳感器放置在實際的手指套中來改進此項目,該方法可以進一步減少環(huán)境光的影響,并且可以使手指保持在適當?shù)奈恢茫粌H僅是使用簡單的魔術(shù)貼條即可。
責任編輯:wv
-
脈搏血氧儀
+關(guān)注
關(guān)注
1文章
29瀏覽量
11111 -
MAX30100
+關(guān)注
關(guān)注
1文章
6瀏覽量
3035
發(fā)布評論請先 登錄
相關(guān)推薦
HOLTEK全新脈搏血氧儀MCU產(chǎn)品介紹
Cortex-A55人工智能教學實驗箱操作教程_案例分享:5-26 血氧檢測實驗
在不犧牲尺寸的情況下提高脈搏血氧儀溶液的性能
![在不犧牲尺寸的情況下提高<b class='flag-5'>脈搏</b><b class='flag-5'>血</b><b class='flag-5'>氧</b><b class='flag-5'>儀</b>溶液的性能](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
EMI增強型運算放大器減少脈搏血氧儀的誤差
![EMI增強型運算放大器減少<b class='flag-5'>脈搏</b><b class='flag-5'>血</b><b class='flag-5'>氧</b><b class='flag-5'>儀</b>的誤差](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
MSP430的模擬組合實現(xiàn)了真正的單芯片脈搏血氧儀設計
![MSP430的模擬組合實現(xiàn)了真正的單芯片<b class='flag-5'>脈搏</b><b class='flag-5'>血</b><b class='flag-5'>氧</b><b class='flag-5'>儀</b>設計](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
使用高度集成的低成本MSPM0 MCU簡化脈搏血氧儀設計
![使用高度集成的低成本MSPM0 MCU簡化<b class='flag-5'>脈搏</b><b class='flag-5'>血</b><b class='flag-5'>氧</b><b class='flag-5'>儀</b>設計](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
基于MSP430FR2355的單芯片脈搏血氧計設計
![基于MSP430FR2355的單芯片<b class='flag-5'>脈搏</b><b class='flag-5'>血</b><b class='flag-5'>氧</b>計設計](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
AFE4403用于心率監(jiān)護儀和低成本脈搏血氧儀的超小型集成式模擬前端數(shù)據(jù)表
![AFE4403用于心率監(jiān)護儀和低成本<b class='flag-5'>脈搏</b><b class='flag-5'>血</b><b class='flag-5'>氧</b><b class='flag-5'>儀</b>的超小型集成式模擬前端數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
血氧監(jiān)測儀語音芯片怎么選?一文帶你了解
![<b class='flag-5'>血</b><b class='flag-5'>氧</b>監(jiān)測<b class='flag-5'>儀</b>語音芯片怎么選?一文帶你了解](https://file.elecfans.com/web2/M00/42/BC/pYYBAGJ6JAOAWhY7AAAjPnDlpp8975.jpg)
TIDA-010267-具有90dB動態(tài)范圍、實現(xiàn)較低灌注指數(shù)的單芯片脈搏血氧儀 PCB layout 設計
![TIDA-010267-具有90dB動態(tài)范圍、實現(xiàn)較低灌注指數(shù)的單芯片<b class='flag-5'>脈搏</b><b class='flag-5'>血</b><b class='flag-5'>氧</b><b class='flag-5'>儀</b> PCB layout 設計](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論