国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

利用現(xiàn)成元器件設(shè)計(jì)低成本脈搏血氧儀

發(fā)布時(shí)間:2022-3-24 10:39    發(fā)布者:eechina
關(guān)鍵詞: 脈搏 , 血氧儀
脈搏血氧儀可測量外周血氧飽和度 (SpO2),該指標(biāo)反映了心肺系統(tǒng)向身體提供富氧血液的效率。運(yùn)動(dòng)員使用 SpO2 測量值來衡量他們?cè)阱憻捴械呐Τ潭龋@種測量在新冠肺炎流行期間變得更加重要。醫(yī)護(hù)人員很關(guān)注 SpO2 的下降,因?yàn)樗且鹦鹿诜窝椎?SARS-CoV-2 病毒對(duì)肺組織造成損傷的預(yù)警信號(hào)。

對(duì)于被要求在家中隔離的癥狀輕微的感染者來說,如果有一臺(tái)低成本脈搏血氧儀隨時(shí)可以使用,那么將有助于判斷病情并獲得及時(shí)就醫(yī)所需的警告信息。

本文簡要討論了新冠肺炎的癥狀和監(jiān)測 SpO2 的需求。然后向開發(fā)人員展示如何使用 Microchip Technology 數(shù)字信號(hào)控制器 (DSC) 和一些附加器件,設(shè)計(jì)一個(gè)低成本的脈搏血氧儀,從而針對(duì)新冠肺炎感染后期的癥狀,為家庭用戶提供預(yù)警。

新冠肺炎和測量血氧飽和度的需求

由于 SARS-CoV-2 病毒的破壞作用,新冠肺炎會(huì)表現(xiàn)出各種癥狀。對(duì)于醫(yī)護(hù)人員來說,一個(gè)特別令人擔(dān)憂的癥狀與肺組織損傷有關(guān),它將導(dǎo)致呼吸系統(tǒng)受損,攝氧量減少。盡管醫(yī)生會(huì)逐一使用胸部 X 光檢查和計(jì)算機(jī)斷層 (CT) 掃描來確認(rèn)這一階段的新冠肺炎,但他們往往會(huì)使用 SpO2 測量值作為早期指標(biāo)。

通過由患者動(dòng)脈抽取樣本并分析血?dú)馑剑芍苯哟_定動(dòng)脈血氧飽和度 (SaO2),而 SpO2 測量是一種非侵入式的替代測量方法。雖然某些情況下可能需要直接測量動(dòng)脈血?dú)猓?SpO2 測量已被證明可以提供可靠的 SaO2 估計(jì)值。也許最重要的是,在家即可使用光學(xué)脈搏血氧儀進(jìn)行測量,而測量結(jié)果跟臨床環(huán)境一樣可靠。

光學(xué)脈搏血氧儀利用脫氧血紅蛋白 (Hb) 和氧合血紅蛋白 (HbO2) 的光吸收差異來測量 SpO2。在富含氧氣的肺內(nèi),紅細(xì)胞中的血紅蛋白最多可與四個(gè)氧分子迅速形成可逆性結(jié)合,從而生成 HbO2,該分子對(duì)波長為 940 nm 的光吸收率高于波長為 660 nm 的光(圖 1)。


圖 1:脈搏血氧儀利用了氧合血紅蛋白 (HbO2) 與脫氧血紅蛋白 (Hb) 吸收光譜之間的差異。(圖片來源:維基百科)

當(dāng)攜帶 HbO2 的紅細(xì)胞通過外周血管時(shí),血氧分壓(混合氣體中單一氣體成分的壓力)較低,血紅蛋白對(duì)氧的親和力下降,HbO2 開始釋放氧分子,最終成為 Hb。在這種脫氧狀態(tài)下,該分子的吸收光譜發(fā)生改變,對(duì)波長為 660 nm 的光吸收率高于波長為 940 nm 的光。

因?yàn)?HbO2 在血氧分壓較低時(shí)會(huì)變?yōu)?Hb,所以 SpO2 可以用簡單的公式來確定:

SpO2 = HbO2 / (HbO2 + Hb)

血液中 Hb 和 HbO2 的相對(duì)濃度則可通過測量對(duì)波長為 660 nm 和 940 nm 的光吸收情況來確定。

脈搏血氧儀利用血氧分壓、血紅蛋白氧結(jié)合狀態(tài)和光吸收差異之間的關(guān)系,可提供可靠的 SpO2 測量。

典型脈搏血氧儀的主要子系統(tǒng)

典型脈搏血氧儀設(shè)計(jì)包括三個(gè)主要子系統(tǒng):

· 光傳輸子系統(tǒng),包括模擬開關(guān)和驅(qū)動(dòng)器,以及可發(fā)出紅光(波長為 660 nm)和紅外線 (IR)(波長為 950 nm)的發(fā)光二極管 (LED)。一些系統(tǒng)還包括綠光(波長為 530 nm)光源,可配合光電容積描記法 (PPG) 使用,通過監(jiān)測皮膚血管容積的變化來確定心率。
· 光檢測子系統(tǒng),包括光電二極管、信號(hào)調(diào)節(jié)鏈和模數(shù)轉(zhuǎn)換器 (ADC)。
· DSC 或微控制器,用于協(xié)調(diào)光傳輸和光檢測子系統(tǒng),并由測得的數(shù)據(jù)計(jì)算 SpO2。

盡管任何脈搏血氧儀中都存在這些基本子系統(tǒng),但它們的實(shí)現(xiàn)方式可能千差萬別。對(duì)于透射式脈搏血氧儀,光電二極管與 LED 分別放置在用戶手指或耳垂的兩側(cè)。常見的指夾裝置一側(cè)裝有紅光、紅外光 和綠光(可選)LED,另一側(cè)則是光電二極管。對(duì)于反射式脈搏血氧儀,光電二極管和 LED 均放置在皮膚的同一側(cè),兩者之間需設(shè)置光學(xué)屏障以減少偽影。例如,OSRAM 的 SFH7060 是一款即用型反射式測量器件,在單個(gè)封裝中包含 LED 和光電二極管,尺寸僅為 7.2 x 2.5 x 0.9 mm。

無論是將這些采用光學(xué)封裝結(jié)構(gòu)的器件用于透射式測量,還是反射式測量,設(shè)計(jì)人員都只需要添加相對(duì)較少的元器件就可實(shí)現(xiàn)低成本的脈搏血氧儀設(shè)計(jì),并且能夠?yàn)榧彝ビ脩籼峁┫嚓P(guān)信息,針對(duì)是否需要專業(yè)醫(yī)護(hù)人員進(jìn)一步評(píng)估提出建議。在基于 Microchip Technology 的 DSPIC33FJ128GP802 DSC 構(gòu)建的設(shè)計(jì)示例中,使用微控制器的集成外設(shè)來控制紅光和紅外光 LED 對(duì)皮膚的照射,然后將調(diào)節(jié)后的光電二極管輸出信號(hào)數(shù)字化(圖 2)。


圖 2:在典型脈搏血氧儀設(shè)計(jì)中,往往集成了 LED 照射子系統(tǒng)和光電二極管信號(hào)處理子系統(tǒng),以及控制照射時(shí)序和數(shù)據(jù)采集的微控制器。(圖片來源:Microchip Technology)

無論光源類型如何,脈搏血氧儀設(shè)計(jì)通常依靠具有寬光譜響應(yīng)范圍的單個(gè)光電二極管,以捕獲透射或反射信號(hào)。為了確保接收到的信號(hào)僅對(duì)應(yīng)于紅光或紅外光波長,硬件或軟件控制邏輯在給定時(shí)間內(nèi)僅開啟紅光或紅外光源,兩個(gè)光源交替發(fā)光以完成測量序列。

實(shí)現(xiàn)低成本脈搏血氧儀硬件設(shè)計(jì)

在此設(shè)計(jì)中,DSC 使用外部 Microchip Technology 的 MCP4728 數(shù)模轉(zhuǎn)換器 (DAC) 將單獨(dú)的 MBT2222 晶體管置于所需電平,從而以所需的亮度驅(qū)動(dòng)各個(gè) LED。為了對(duì)每個(gè) LED 的“開啟”序列進(jìn)行精確定時(shí),DSC 使用其中兩個(gè)脈沖寬度調(diào)制 (PWM) 輸出來控制 Analog Devices 的 ADG884 模擬開關(guān)(圖 3)。


圖 3:模擬開關(guān)由數(shù)字控制器紅光和紅外光通道的交替信號(hào)驅(qū)動(dòng),用于產(chǎn)生紅光和紅外光 LED 的驅(qū)動(dòng)電流。(圖片來源:Microchip Technology)

為了處理光電二極管輸出,單個(gè) Microchip Technology 的 MCP6002 器件可提供一對(duì)運(yùn)算放大器,借以實(shí)現(xiàn)基本兩級(jí)信號(hào)調(diào)節(jié)鏈。在這里,第一級(jí)使用 MCP6002 的一個(gè)運(yùn)算放大器,將其配置為跨阻放大器,以便將光電二極管的電流輸出轉(zhuǎn)換為電壓信號(hào)。在經(jīng)過高通濾波器以降低噪聲后,MCP6002 中的第二個(gè)運(yùn)算放大器提供了增益和直流偏移調(diào)整,以在 DSC 集成的 ADC 全范圍內(nèi)優(yōu)化調(diào)節(jié)后信號(hào)的擺動(dòng)(圖 4)。


圖 4:兩級(jí)信號(hào)鏈調(diào)節(jié)光電二極管輸出,以實(shí)現(xiàn)到數(shù)字控制器的集成 ADC 的信號(hào)傳送。(圖片來源:Microchip Technology)

工作時(shí),DSC 使用其 PWM 輸出和 ADC 輸入,對(duì)調(diào)節(jié)后光電二極管輸出信號(hào)的 LED 照射和 ADC 數(shù)字化進(jìn)行同步。這樣,每個(gè)交替的紅光和紅外光照射周期都會(huì)配合信號(hào)采集和轉(zhuǎn)換。在兩個(gè) LED 都關(guān)閉時(shí),還需采集一個(gè) ADC 樣本以測量環(huán)境光,以便用于優(yōu)化 LED 亮度和 SpO2 測量。最后得到的是一個(gè)精確控制的事件序列,協(xié)調(diào) LED 照射與 ADC 數(shù)字化,以捕獲表示 Hb 的紅光波長結(jié)果,再捕獲環(huán)境光,最終捕獲表示 HbO2 的紅外光波長結(jié)果(圖 5)。


圖 5:低成本脈搏血氧儀的功能依賴于數(shù)字信號(hào)控制器的管理能力,控制器需要對(duì)照射時(shí)序和數(shù)據(jù)捕獲進(jìn)行精確定時(shí),才能收集測量值以確定 SpO2。(圖片來源:Microchip Technology)

實(shí)現(xiàn)中斷驅(qū)動(dòng)軟件解決方案

Microchip 提供的脈搏血氧儀固件包帶有一個(gè)樣例程序,演示了如何使用 DSC 執(zhí)行這些照射控制和數(shù)據(jù)轉(zhuǎn)換序列。在這里,該程序使用一對(duì) DSC 定時(shí)器(Timer2 和 Timer3)來實(shí)現(xiàn)中斷驅(qū)動(dòng)方法,這兩個(gè)定時(shí)器分別用于紅外光 LED 和紅光 LED 各自的“開啟”序列。這樣,每個(gè)定時(shí)器又為 DSC 的兩個(gè)輸出比較 (OC) 模塊(OC1 和 OC2)提供時(shí)基,這兩個(gè)模塊分別用于控制紅外光LED 和紅光 LED 的模擬開關(guān)。

如清單 1 所示,該軟件首先初始化 Timer2 和 Timer3,以設(shè)置所需的照射周期時(shí)長并啟用中斷。作為其初始化序列的一部分,OC1 和 OC2 模塊使用 DSC 的可重映射引腳 (RP) 功能連接到各自的輸出引腳。然后,初始化序列設(shè)置照射占空比,并選擇關(guān)聯(lián)定時(shí)器用作時(shí)基。

副本

    //*********************************************************************************************************
    // Initialize Timer 2 - IR light
    //*********************************************************************************************************
    T2CON = 0x0020;                    // Stop 16-bit Timer2, 1:64(40MhzFosc) Prescale, Internal clock (Fosc/2)
    TMR2 = 0x00;                    // Clear timer register
    PR2 = 1250;                        // Load the period value, OCxRS <= PRx, 4ms period = (1/(Fosc/2))*1000*64*PR2 = (1/(40000000/2))*1000*64*1250
    IPC1bits.T2IP = 2;                // Set Timer2 Interrupt Priority Level
    IFS0bits.T2IF = 0;                // Clear Timer2 Interrupt Flag
    IEC0bits.T2IE = 1;                // Enable Timer2 Interrupt

    //*********************************************************************************************************
    // Initialize Timer 3 - Red light
    //*********************************************************************************************************
    T3CON = 0x0020;                    // Stop 16-bit Timer3, 1:64(40MhzFosc) Prescale, Internal clock (Fosc/2)
    TMR3 = 0x00;                    // Clear timer register
    PR3 = 1250;                        // Load the period value, OCxRS <= PRx, 4ms period = (1/(Fosc/2))*1000*64*PR2 = (1/(40000000/2))*1000*64*1250
    IPC2bits.T3IP = 2;                // Set Timer3 Interrupt Priority Level
    IFS0bits.T3IF = 0;                // Clear Timer3 Interrupt Flag
    IEC0bits.T3IE = 1;                // Enable Timer3 Interrupt

    //*********************************************************************************************************
    // Initialize Output Compare 1 module in Continuous Pulse mode, OC1 controls IR LED switch
    //*********************************************************************************************************
    RPOR6bits.RP13R = 0b10010;        // RP13/RB13 tied to OC1 (IR)
    OC1CONbits.OCM = 0b000;         // Disable Output Compare 1 Module
    OC1R = 0;                         // Write the duty cycle for the first PWM pulse, 24=8MHzFosc(50us), 30=40MHzFosc(50us), 600=40MHzFosc(1ms)
    OC1RS = duty_cycle;             // Write the duty cycle for the second PWM pulse, OCxRS <= PRx, 499=8MHzFosc(1ms), 623=40MHzFosc(1ms), 1246=40MHzFoc,2msPeriod, 4984=40MHzFoc,8msPeriod, 280=450us D/C@40MHzFoc,2msPeriod,switch
    OC1CONbits.OCTSEL = 0;             // Select Timer 2 as output compare time base

    //*********************************************************************************************************
    // Initialize Output Compare 2 module in Continuous Pulse mode, OC2 controls Red LED switch
    //*********************************************************************************************************
    RPOR6bits.RP12R = 0b10011;        // RP12/RB12 tied to OC2 (Red)
    OC2CONbits.OCM = 0b000;         // Disable Output Compare 2 Module
    OC2R = 0;                         // Write the duty cycle for the first PWM pulse, 24=8MHzFosc, 30=40MHzFosc, 600=40MHzFosc(1ms)
    OC2RS = duty_cycle;             // Write the duty cycle for the second PWM pulse, OCxRS <= PRx, 499=8MHzFosc(1ms), 623=40MHzFosc(1ms), 1246=40MHzFoc,2msPeriod, 4984=40MHzFoc,8msPeriod, 280=450us D/C@40MHzFoc,2msPeriod,switch
    OC2CONbits.OCTSEL = 1;             // Select Timer 3 as output compare time base

清單 1:在 Microchip Technology 提供的示例代碼包中,主例程使用一個(gè)簡短的初始化序列來設(shè)置數(shù)字信號(hào)控制器的定時(shí)器和輸出比較模塊,這是這種低成本脈搏血氧儀解決方案的核心。(代碼來源:Microchip Technology)

這種方法利用了 DSC 架構(gòu)將每個(gè)定時(shí)器中斷與特定的中斷服務(wù)例程 (ISR) 入口點(diǎn)相關(guān)聯(lián)的特性。例如,當(dāng)紅光 LED 通道的 Timer3 中斷發(fā)生時(shí),DSC 在 _T3Interrupt 入口點(diǎn)執(zhí)行相應(yīng)功能。因此,當(dāng)紅光 LED 的 Timer3 到期時(shí),會(huì)發(fā)生以下兩個(gè)相應(yīng)的硬件和軟件事件:

OC2 生成一個(gè)連續(xù)脈沖并發(fā)送至模擬開關(guān),開啟紅光 LED
DSC 開始執(zhí)行 _T3Interrupt ISR(清單 2)

副本

void __attribute__((__interrupt__, no_auto_psv)) _T3Interrupt(void)        //Read Red DC & AC signals from AN0 & AN1
{
    int delay;
    unsigned char i;

    Read_ADC_Red = 1;
    CH0_ADRES_Red_sum = 0;
    CH1_ADRES_Red_sum = 0;

    for (delay=0; delay<200; delay++);    //2000=delayed 256us before read ADC

//    LATBbits.LATB14 = 1;            // for debugging

    for (i=0; i     {
        //Acquires Red-DC from Channel0 (AN0)
        AD1CHS0bits.CH0SA = 0x00;        // Select AN0
        AD1CON1bits.SAMP = 1;            // Begin sampling
        while(!AD1CON1bits.DONE);        // Waiting for ADC completed
        AD1CON1bits.DONE = 0;            // Clear conversion done status bit
        CH0_ADRES_Red_sum = CH0_ADRES_Red_sum + ADC1BUF0;    // Read ADC result

        //Acquires Red-AC from Channel1 (AN1)
        AD1CHS0bits.CH0SA = 0x01;        // Select AN1
        AD1CON1bits.SAMP = 1;            // Begin sampling
        while(!AD1CON1bits.DONE);        // Waiting for ADC completed
        AD1CON1bits.DONE = 0;            // Clear conversion done status bit
        CH1_ADRES_Red_sum = CH1_ADRES_Red_sum + ADC1BUF0;    // Read ADC result
    }

    CH0_ADRES_Red = CH0_ADRES_Red_sum / oversampling_number;
    FIR_input_Red[0] = CH1_ADRES_Red_sum / oversampling_number;

#ifdef Sleep_Enabled
    if (CH0_ADRES_Red<=74 && CH1_ADRES_Red>=4000)    //if spo2 probe is not connected, 74=60mV, 4000=3.2V
    {
        goto_sleep = 1;
    }
    else if (CH0_ADRES_Red > Finger_Present_Threshold)    //if no finger present then goto sleep
    {
        goto_sleep = 1;
    }
    else
#endif
    {
//        LATBbits.LATB14 = 0;            // for debugging
        for (delay=0; delay<500; delay++);    //1000=delayed 256us before read ADC
//        LATBbits.LATB14 = 1;            // for debugging

        //Acquires Red-DC baseline from Channel0 (AN0)
        AD1CHS0bits.CH0SA = 0x00;        // Select AN0
        AD1CON1bits.SAMP = 1;            // Begin sampling
        while(!AD1CON1bits.DONE);        // Waiting for ADC completed
        AD1CON1bits.DONE = 0;            // Clear conversion done status bit
        Baseline_ambient = ADC1BUF0;

        Baseline_Upper_Limit = Baseline_ambient + DCVppHigh;
        Baseline_Lower_Limit = Baseline_ambient + DCVppLow;

        Meter_State = Calibrate_Red();
    }

//    LATBbits.LATB14 = 0;            // for debugging

    OC2RS = duty_cycle;                // Write Duty Cycle value for next PWM cycle
    IFS0bits.T3IF = 0;                // Clear Timer3 Interrupt Flag
}

清單 2:Microchip Technology 的示例代碼包含有此處所示的 Timer3 ISR,這段代碼用于收集紅光 LED 照射的測量值和環(huán)境光測量值,而 Timer2 ISR 只需要收集紅外光 LED 照射的測量值。(代碼來源:Microchip Technology)

如清單 2 所示,_T3Interrupt ISR 從 ADC 通道 0 (AN0) 讀取紅光基線水平 (Red-DC),并從 ADC 通道 1 (AN1) 讀取紅光動(dòng)態(tài)水平 (Red-AC)。如果開發(fā)人員選擇將 Sleep_Enabled 的定義納入應(yīng)用中,則編譯的 ISR 代碼會(huì)在捕獲數(shù)據(jù)后檢查處理器是否應(yīng)進(jìn)入休眠狀態(tài)。Microchip 軟件包的默認(rèn)配置包括 Sleep_Enabled 的 #define,因此如果未連接光學(xué)探頭或者未檢測到用戶的手指,則將設(shè)置變量 goto_sleep。

檢查了此探頭狀態(tài)之后,ISR 會(huì)對(duì)環(huán)境光水平進(jìn)行采樣,并使用此更新值相應(yīng)地調(diào)整基線窗口限值。利用這些調(diào)整后的限值,函數(shù) Calibrate_Red() 可增加或減少連接紅光 LED 驅(qū)動(dòng)器的 DAC 輸出,使亮度保持在 Baseline_Lower_Limit 和 Baseline_Upper_Limit 之間。

T2 定時(shí)器中斷服務(wù)例程使用相同的基本設(shè)計(jì)模式,但不包括對(duì) sleep_enabled 和環(huán)境光水平測量值的檢查。

配置了定時(shí)器、輸出比較和 ISR 后,該示例軟件的主例程將執(zhí)行一個(gè)簡短的初始化序列,并啟動(dòng) Timer2 和 Timer3。此時(shí),代碼進(jìn)入主循環(huán),等待接收 ISR 處理的數(shù)據(jù)。待獲得紅光和紅外光數(shù)據(jù)后,這些值將由一個(gè)數(shù)字有限脈沖響應(yīng) (FIR) 濾波器進(jìn)行處理,最后調(diào)用例程來計(jì)算 SpO2 和心率(清單 3)。

副本

    //********** Enable OC1 & OC2 ouputs for IR & Red LED's on/off switch **********
    OC2CONbits.OCM = 0b101;                // Select the Output Compare 2 mode, Turn on Red LED
    T3CONbits.TON = 1;                    // Start Timer3

    for (delay=0; delay<2200; delay++);

    OC1CONbits.OCM = 0b101;                // Select the Output Compare 1 mode, Turn on IR LED
    T2CONbits.TON = 1;                    // Start Timer2

    goto_sleep = 0;
    first_reading = 0;
   

    while (1)
    {
        if (goto_sleep)
        {

[lines clipped]

                Sleep();                    // Put MCU into sleep
                Nop();
            }
        }

        //--------- Main State Machine starts here ---------
        if (RedReady && IRReady)
        {
            RedReady = 0;
            IRReady = 0;

//            LATBbits.LATB14 = 1;            //for debugging

            FIR(1, &FIR_output_IR[0], &FIR_input_IR[0], &BandpassIRFilter);
            FIR(1, &FIR_output_Red[0], &FIR_input_Red[0], &BandpassRedFilter);

            CH1_ADRES_IR = FIR_output_IR[0];
            CH1_ADRES_Red = FIR_output_Red[0];

[lines clipped]

            if (Detection_Done)
            {
                //Max & Min are all found. Calculate SpO2 & Pulse Rate
                SpO2_Calculation();                //calculate SpO2
                Pulse_Rate_Calculation();        //calculate pulse rate

[lines clipped]

    }
/*****************************************************************************
* Function Name: SpO2_Calculation()
* Specification: Calculate the %SpO2
*****************************************************************************/
void SpO2_Calculation (void)
{
    double Ratio_temp;

    IR_Vpp1 = fabs(IR_Max - IR_Min);
    Red_Vpp1 = fabs(Red_Max - Red_Min);
    IR_Vpp2 = fabs(IR_Max2 - IR_Min2);
    Red_Vpp2 = fabs(Red_Max2 - Red_Min2);

    IR_Vpp = (IR_Vpp1 + IR_Vpp2) / 2;
    Red_Vpp = (Red_Vpp1 + Red_Vpp2) / 2;

    IR_Vrms = IR_Vpp / sqrt(8);
    Red_Vrms = Red_Vpp / sqrt(8);

//    SpO2 = log10(Red_Vrms) / log10(IR_Vrms) * 100;
//    if (SpO2 > 100)
//    {
//        SpO2 = 100;
//    }

    // Using lookup table to calculate SpO2
    Ratio = (Red_Vrms/CH0_ADRES_Red) / (IR_Vrms/CH0_ADRES_IR);

清單 3:在 Microchip Technology 示例代碼包中,主例程的這段代碼展示了該代碼如何初始化定時(shí)器和輸出比較模塊并進(jìn)入無限循環(huán),從而在獲得測量值后計(jì)算 SpO2 和心率,或在未連接傳感器時(shí)將處理器置于低功耗休眠模式。(代碼來源:Microchip Technology)

對(duì)于 SpO2,函數(shù) SpO2_Calculation() 將紅光和紅外光信號(hào)的脈沖幅度 (Vpp) 轉(zhuǎn)換為 Vrms 值。該函數(shù)使用這些值生成一個(gè)比值,并使用查找表(清單 3 中未顯示)將該比值轉(zhuǎn)換為特定的 SpO2 值。通常,該查找表由多次測量經(jīng)驗(yàn)總結(jié)得出。Pulse_Rate_Calculation() 使用測量的峰間計(jì)時(shí)來確定心率。

SpO2 設(shè)計(jì)優(yōu)化選項(xiàng)

雖然本文介紹的設(shè)計(jì)為低成本脈搏血氧儀提供了一個(gè)有效的解決方案,但其他器件可能會(huì)提供進(jìn)一步的優(yōu)化。例如,開發(fā)人員可以使用 Microchip Technology 的 DSPIC33CK64MP102 DSC 集成的運(yùn)算放大器,則無需添加外部 MCP6002 雙運(yùn)算放大器器件。

然而,在實(shí)現(xiàn)這種經(jīng)過修改的脈搏血氧儀設(shè)計(jì)時(shí),由于 DSC 有所不同,開發(fā)人員需要重寫以上軟件包的一些關(guān)鍵部分。

例如,不同于 DSPIC33FJ128GP802 DSC 中的 Timer2/Timer3 功能,DSPIC33CK64MP102 DSC 提供了一組多用途定時(shí)器模塊,因此需要開發(fā)人員提供自己的解決方案,以實(shí)現(xiàn)本文清單中所述的某些功能。即便如此,工作原理依然不變,開發(fā)人員至少可以使用 Microchip Technology 示例軟件包所示的設(shè)計(jì)模式來指導(dǎo)自己的定制軟件設(shè)計(jì)。

結(jié)語

血氧飽和度測量可提供重要的呼吸功能指標(biāo),在新冠肺炎疫情期間已成為重要的健康管理工具。使用簡單的光學(xué)方法,脈搏血氧儀提供了可靠的外周血氧飽和度 (SpO2) 估計(jì)值,可滿足疫情期間對(duì)平價(jià)健康監(jiān)測解決方案的特別需求。

如上所述,DSC 與一些基本元器件相結(jié)合,為實(shí)現(xiàn)低成本的脈搏血氧儀提供了有效的硬件基礎(chǔ),能夠提供可靠的 SpO2 測量值,從而針對(duì)是否需要尋求進(jìn)一步醫(yī)療護(hù)理以診治不斷加重的新冠肺炎感染,為用戶提供必要信息。


來源:Digi-Key
作者:Stephen Evanczuk
本文地址:http://www.qingdxww.cn/thread-785904-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 了解一下Microchip強(qiáng)大的PIC18-Q24 MCU系列
  • 無線充電基礎(chǔ)知識(shí)及應(yīng)用培訓(xùn)教程3
  • 5分鐘詳解定時(shí)器/計(jì)數(shù)器E和波形擴(kuò)展!
  • 為何選擇集成電平轉(zhuǎn)換?
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 香蕉综合在线 | 日韩最新视频一区二区三 | 欧美四虎影院 | 国产第一自拍 | 榴莲app下载网站进入wym | 欧美成年黄网站色视频 | 日语高清视频在线观看 | 欧美一区二区在线视频 | 妈妈的朋友伦理在线观看 | 91短视频在线观看2019 | 福利午夜最新 | 亚洲人和日本人jzz护士 | 日韩欧美一区二区在线观看 | 精品国产一区二区三区19 | 青青热久免费精品视频网站 | 久久久精品免费视频 | 久久久久久综合对白国产 | 国产自产2023最新麻豆 | 欧美亚洲综合图区在线 | 麻豆高清 | 亚洲欧美一区二区三区蜜芽 | 国产午夜精品不卡观看 | 国产1024精品视频专区免费 | 两个人免费观看视频高清视频 | 精品久久久久中文字幕日本 | 日日噜噜夜夜狠狠视频 | 在线视频 一区二区 | 国内精品久久久久影院一蜜桃 | 四虎精品国产一区二区三区 | 亚洲视频在线播放 | 男女羞羞视频在线观看 | 草莓丝瓜app | 视色4se000| 免费视频不卡一区二区三区 | 国产va在线观看 | 国产午夜视频在线观看第四页 | 狠狠色狠狠色综合网 | 日本高清在线精品一区二区三区 | 亚洲国产韩国一区二区 | 九九热这里有精品 | 国产欧美精品一区二区三区 |