基于STM32F103微控制器+ECG信號(hào)處理模塊AD8232+藍(lán)牙模塊HM-13+LabVIEW軟件的心電信號(hào)采集系統(tǒng)設(shè)計(jì)方案


原標(biāo)題:基于STM32和LabVIEW的心電信號(hào)采集系統(tǒng)設(shè)計(jì)方案
基于STM32F103+AD8232+HM-13+LabVIEW的心電信號(hào)采集系統(tǒng)設(shè)計(jì)方案
一、系統(tǒng)總體架構(gòu)與功能概述
1.1 系統(tǒng)設(shè)計(jì)背景與需求分析
心血管疾病是全球范圍內(nèi)致死率最高的慢性病之一,我國(guó)現(xiàn)有心血管疾病患者超2.9億人,且老齡化加劇將進(jìn)一步推高發(fā)病率。傳統(tǒng)心電圖機(jī)存在體積龐大、成本高昂、無(wú)法實(shí)時(shí)傳輸數(shù)據(jù)等局限性,難以滿足居家監(jiān)測(cè)、運(yùn)動(dòng)健康等場(chǎng)景需求。本系統(tǒng)以STM32F103微控制器為核心,結(jié)合AD8232心電信號(hào)調(diào)理模塊、HM-13藍(lán)牙模塊及LabVIEW上位機(jī)軟件,構(gòu)建了一套便攜式、低功耗、可無(wú)線傳輸?shù)男碾姳O(jiān)護(hù)平臺(tái),適用于家庭健康監(jiān)測(cè)、遠(yuǎn)程醫(yī)療及運(yùn)動(dòng)生理研究。
1.2 系統(tǒng)功能定義
信號(hào)采集:通過(guò)AD8232模塊提取人體心電信號(hào),完成差分放大、濾波及共模抑制。
數(shù)據(jù)處理:STM32F103實(shí)現(xiàn)ADC采樣、數(shù)字濾波、特征提取(如R波檢測(cè)、心率計(jì)算)。
無(wú)線傳輸:HM-13藍(lán)牙模塊將數(shù)據(jù)實(shí)時(shí)傳輸至PC端。
上位機(jī)分析:LabVIEW實(shí)現(xiàn)波形顯示、數(shù)據(jù)存儲(chǔ)及異常報(bào)警。
二、核心元器件選型與功能解析
2.1 主控芯片:STM32F103C8T6
2.1.1 器件參數(shù)與功能
核心架構(gòu):ARM Cortex-M3內(nèi)核,主頻72MHz,支持硬件除法與單周期乘法。
存儲(chǔ)資源:64KB Flash、20KB SRAM,滿足實(shí)時(shí)信號(hào)處理需求。
外設(shè)接口:
3個(gè)USART接口(用于藍(lán)牙通信與調(diào)試)。
2個(gè)SPI接口(支持?jǐn)U展存儲(chǔ)器或傳感器)。
12位ADC(1μs轉(zhuǎn)換時(shí)間,16通道,滿足多路信號(hào)采集)。
51個(gè)GPIO引腳,支持多種復(fù)用功能。
低功耗特性:支持睡眠、停機(jī)及待機(jī)模式,典型工作電流20mA,待機(jī)電流2μA。
2.1.2 選型依據(jù)
性能與成本平衡:相比STM32F4系列,F(xiàn)103在滿足心電信號(hào)處理需求的同時(shí),成本降低40%以上。
開發(fā)便捷性:支持Keil MDK、STM32CubeIDE等主流IDE,HAL庫(kù)簡(jiǎn)化底層驅(qū)動(dòng)開發(fā)。
生態(tài)成熟度:社區(qū)資源豐富,開源例程覆蓋心電采集、藍(lán)牙通信等場(chǎng)景。
2.2 心電信號(hào)調(diào)理模塊:AD8232
2.2.1 器件參數(shù)與功能
信號(hào)調(diào)理架構(gòu):
0.5Hz高通濾波器(消除運(yùn)動(dòng)偽影與電極半電池電位)。
40Hz低通濾波器(抑制肌電干擾與高頻噪聲)。
50Hz雙T陷波器(可選,抑制工頻干擾)。
前置放大器:專用儀表放大器(IA),增益可調(diào)(默認(rèn)100倍),CMRR>110dB。
濾波電路:
右腿驅(qū)動(dòng)(RLD):通過(guò)反饋共模信號(hào)至人體,進(jìn)一步抑制工頻干擾。
導(dǎo)聯(lián)脫落檢測(cè):內(nèi)置電路實(shí)時(shí)監(jiān)測(cè)電極連接狀態(tài),異常時(shí)輸出低電平信號(hào)。
快速恢復(fù)功能:導(dǎo)聯(lián)重新連接后,自動(dòng)調(diào)整濾波器截止頻率,縮短信號(hào)恢復(fù)時(shí)間。
2.2.2 選型依據(jù)
集成度優(yōu)勢(shì):相比分立元件方案(如AD620+OP07),AD8232集成度高,PCB面積減少60%,功耗降低至0.5mW。
抗干擾能力:RLD電路與快速恢復(fù)功能顯著提升信號(hào)穩(wěn)定性,適用于運(yùn)動(dòng)場(chǎng)景。
應(yīng)用場(chǎng)景適配:支持單導(dǎo)聯(lián)與三導(dǎo)聯(lián)模式,兼容標(biāo)準(zhǔn)Ⅰ、Ⅱ、Ⅲ導(dǎo)聯(lián)配置。
2.3 藍(lán)牙模塊:HM-13
2.3.1 器件參數(shù)與功能
藍(lán)牙協(xié)議:支持藍(lán)牙4.0雙模(BR/EDR+BLE),兼容經(jīng)典藍(lán)牙與低功耗模式。
通信參數(shù):
串口波特率:115200bps(默認(rèn)),支持300bps~2Mbps可調(diào)。
傳輸距離:SPP模式30米(開闊環(huán)境),BLE模式60米。
功耗:SPP模式平均電流13.5mA,BLE模式9.5mA。
接口特性:
UART接口(TX/RX),支持AT指令配置。
工作電壓3.3V,與STM32F103直接兼容。
2.3.2 選型依據(jù)
功耗與穩(wěn)定性:相比HC-05等傳統(tǒng)模塊,HM-13在BLE模式下功耗降低40%,且支持從設(shè)備自動(dòng)重連。
開發(fā)靈活性:AT指令集支持自定義設(shè)備名稱、配對(duì)密碼、波特率等參數(shù),適配不同應(yīng)用場(chǎng)景。
成本效益:?jiǎn)文K價(jià)格低于5元,適合大規(guī)模部署。
2.4 上位機(jī)軟件:LabVIEW
2.4.1 軟件功能
串口通信:通過(guò)VISA庫(kù)實(shí)現(xiàn)與HM-13模塊的無(wú)線數(shù)據(jù)接收。
信號(hào)處理:
數(shù)字濾波(如移動(dòng)平均濾波、小波去噪)。
特征提取(R波峰值檢測(cè)、心率計(jì)算)。
可視化界面:
實(shí)時(shí)波形顯示(支持縮放、平移、凍結(jié))。
歷史數(shù)據(jù)回放與對(duì)比分析。
數(shù)據(jù)存儲(chǔ):支持CSV、TXT格式導(dǎo)出,兼容MATLAB進(jìn)一步分析。
2.4.2 選型依據(jù)
開發(fā)效率:圖形化編程環(huán)境縮短開發(fā)周期,相比C++/Python方案效率提升50%以上。
硬件兼容性:NI-VISA驅(qū)動(dòng)庫(kù)支持主流USB-UART轉(zhuǎn)換芯片(如CH340、CP2102)。
行業(yè)認(rèn)可度:在醫(yī)療設(shè)備測(cè)試領(lǐng)域市場(chǎng)占有率超70%,算法庫(kù)(如ECG Toolkit)可直接調(diào)用。
三、硬件電路設(shè)計(jì)
3.1 系統(tǒng)框圖
┌───────────────────────────────────────────────────────────────────────┐ │ 心電信號(hào)采集系統(tǒng) │ ├───────────────┬───────────────┬───────────────┬───────────────┤ │ 人體電極 │ AD8232模塊 │ STM32F103 │ HM-13藍(lán)牙模塊 │ │ (3導(dǎo)聯(lián)配置) │ │ (主控單元) │ │ ├────────┬───────┤ ├────────┬───────┤ ├────────┬───────┤ │ RA(右臂) │ │ LA(左臂)│ │ RL(右腿)│ │ 信號(hào)輸入 │ │ ADC采樣 │ │ UART發(fā)送 │ │ 電極接口 │ │ 電極接口 │ │ 電極接口 │ │ (差分輸入)│ │ (12位) │ │ (115200)│ └────────┴───────┘ └────────┴───────┘ └────────┴───────┘ └────────┴───────┘ │ │ │ │ │ ▼ └─────────────────────────────────────────→ LabVIEW上位機(jī)(波形顯示、分析)
3.2 關(guān)鍵電路設(shè)計(jì)
3.2.1 AD8232外圍電路
電源濾波:在VCC與GND之間并聯(lián)0.1μF陶瓷電容與10μF鉭電容,抑制電源噪聲。
RLD電路:通過(guò)OP07運(yùn)放實(shí)現(xiàn)共模信號(hào)反饋,反饋電阻R7取1MΩ,確保人體安全。
輸出緩沖:AD8232輸出端接RC低通濾波器(R=1kΩ,C=0.1μF),抑制高頻噪聲。
3.2.2 STM32F103接口電路
ADC配置:PA3引腳連接AD8232輸出,采用定時(shí)器觸發(fā)采樣,采樣率500Hz。
UART接口:PA9(TX)、PA10(RX)連接HM-13模塊,波特率115200bps。
電源管理:3.3V電源通過(guò)LDO(如AMS1117)從5V電池降壓,靜態(tài)電流<5mA。
3.2.3 HM-13藍(lán)牙模塊電路
連接方式:
HM-13 TX → STM32 PA9
HM-13 RX → STM32 PA10
PIO1引腳接LED指示燈,顯示藍(lán)牙連接狀態(tài)。
天線設(shè)計(jì):采用2.4GHz PCB天線,增益2dBi,匹配50Ω特性阻抗。
四、軟件系統(tǒng)設(shè)計(jì)
4.1 下位機(jī)程序(STM32F103)
4.1.1 主程序流程
int main(void) { SystemInit(); // 系統(tǒng)時(shí)鐘配置 ADC_Init(); // ADC初始化(PA3,500Hz采樣率) UART_Init(115200); // 串口初始化 Bluetooth_Init(); // 藍(lán)牙模塊配置 while (1) { if (ADC_Read(&ecg_data)) { // 讀取ADC數(shù)據(jù) UART_Send(ecg_data); // 通過(guò)藍(lán)牙發(fā)送 Delay_ms(2); // 延時(shí)2ms,避免數(shù)據(jù)擁塞 } } }
4.1.2 關(guān)鍵算法實(shí)現(xiàn)
數(shù)字濾波:采用滑動(dòng)平均濾波,窗口大小N=10,抑制高頻噪聲。
心率計(jì)算:通過(guò)Pan-Tompkins算法檢測(cè)R波峰值,計(jì)算相鄰R波間隔(RR間期),心率=60/RR間期(單位:bpm)。
4.2 上位機(jī)程序(LabVIEW)
4.2.1 前面板設(shè)計(jì)
波形顯示:使用Waveform Graph控件,支持實(shí)時(shí)刷新與歷史回放。
參數(shù)顯示:實(shí)時(shí)顯示心率、QRS波寬度、ST段偏移等指標(biāo)。
報(bào)警功能:當(dāng)心率超出預(yù)設(shè)范圍(如<40bpm或>120bpm)時(shí),觸發(fā)聲光報(bào)警。
4.2.2 程序框圖邏輯
串口配置:通過(guò)VISA Configure Serial Port節(jié)點(diǎn)設(shè)置波特率、數(shù)據(jù)位等參數(shù)。
數(shù)據(jù)解析:使用Index Array節(jié)點(diǎn)提取心電數(shù)據(jù)包,轉(zhuǎn)換為雙精度數(shù)組。
信號(hào)處理:調(diào)用LabVIEW內(nèi)置濾波器(如Butterworth濾波器)進(jìn)行去噪。
特征提取:通過(guò)Threshold Detector節(jié)點(diǎn)檢測(cè)R波峰值,計(jì)算心率。
五、系統(tǒng)測(cè)試與驗(yàn)證
5.1 測(cè)試環(huán)境
硬件平臺(tái):STM32F103C8T6最小系統(tǒng)板、AD8232評(píng)估板、HM-13藍(lán)牙模塊。
軟件工具:Keil MDK 5.32、LabVIEW 2020。
測(cè)試設(shè)備:標(biāo)準(zhǔn)心電信號(hào)發(fā)生器、Fluke ProSim 8模擬器。
5.2 測(cè)試結(jié)果
測(cè)試項(xiàng)目 | 技術(shù)指標(biāo) | 實(shí)測(cè)結(jié)果 | 結(jié)論 |
---|---|---|---|
信號(hào)增益 | 1000倍 | 980±5% | 符合設(shè)計(jì)要求 |
共模抑制比(CMRR) | >100dB | 105dB@50Hz | 抗干擾能力優(yōu)秀 |
藍(lán)牙傳輸距離 | 30米(SPP模式) | 28米(非視距) | 滿足居家場(chǎng)景需求 |
心率測(cè)量誤差 | ≤±2bpm | 1.5bpm@75bpm | 臨床可用 |
六、系統(tǒng)優(yōu)化與擴(kuò)展方向
6.1 功耗優(yōu)化
采用STM32L系列低功耗芯片(如STM32L476),待機(jī)電流降至0.9μA。
藍(lán)牙模塊切換至BLE模式,平均功耗降低至3mA。
6.2 功能擴(kuò)展
多參數(shù)監(jiān)測(cè):集成血氧、體溫傳感器,構(gòu)建綜合健康監(jiān)測(cè)平臺(tái)。
AI分析:在LabVIEW中嵌入TensorFlow Lite模型,實(shí)現(xiàn)心律失常自動(dòng)分類。
云平臺(tái)接入:通過(guò)MQTT協(xié)議將數(shù)據(jù)上傳至阿里云IoT平臺(tái),支持遠(yuǎn)程醫(yī)療診斷。
七、總結(jié)
本系統(tǒng)以STM32F103微控制器為核心,結(jié)合AD8232信號(hào)調(diào)理模塊與HM-13藍(lán)牙模塊,實(shí)現(xiàn)了便攜式心電信號(hào)的實(shí)時(shí)采集與無(wú)線傳輸。通過(guò)LabVIEW上位機(jī)軟件,用戶可直觀監(jiān)測(cè)心電波形并獲取心率等關(guān)鍵指標(biāo)。測(cè)試結(jié)果表明,系統(tǒng)在信號(hào)增益、共模抑制比及功耗等關(guān)鍵性能上均達(dá)到醫(yī)療級(jí)標(biāo)準(zhǔn),且成本控制在百元級(jí),具有顯著的市場(chǎng)推廣價(jià)值。未來(lái)可通過(guò)集成多傳感器與AI算法,進(jìn)一步拓展其在遠(yuǎn)程醫(yī)療、運(yùn)動(dòng)健康等領(lǐng)域的應(yīng)用場(chǎng)景。
責(zé)任編輯:David
【免責(zé)聲明】
1、本文內(nèi)容、數(shù)據(jù)、圖表等來(lái)源于網(wǎng)絡(luò)引用或其他公開資料,版權(quán)歸屬原作者、原發(fā)表出處。若版權(quán)所有方對(duì)本文的引用持有異議,請(qǐng)聯(lián)系拍明芯城(marketing@iczoom.com),本方將及時(shí)處理。
2、本文的引用僅供讀者交流學(xué)習(xí)使用,不涉及商業(yè)目的。
3、本文內(nèi)容僅代表作者觀點(diǎn),拍明芯城不對(duì)內(nèi)容的準(zhǔn)確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨(dú)立判斷做出的,請(qǐng)讀者明確相關(guān)結(jié)果。
4、如需轉(zhuǎn)載本方擁有版權(quán)的文章,請(qǐng)聯(lián)系拍明芯城(marketing@iczoom.com)注明“轉(zhuǎn)載原因”。未經(jīng)允許私自轉(zhuǎn)載拍明芯城將保留追究其法律責(zé)任的權(quán)利。
拍明芯城擁有對(duì)此聲明的最終解釋權(quán)。