版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 信息學(xué)院電科專業(yè)課程設(shè)計報告課程設(shè)計報告 設(shè)計題目:心電信號采集模塊的設(shè)計與開發(fā) 班 級: 學(xué) 號: 姓 名: 指導(dǎo)教師: 設(shè)計時間:摘 要針對心電信號的特點進行心電信號的采集、數(shù)據(jù)轉(zhuǎn)換模塊的設(shè)計與開發(fā)。本文設(shè)計一種用于心電信號采集的電路,然后進行A/D轉(zhuǎn)換,使得心電信號的頻率達到采樣要求。人體的心電信號是一種低頻率的微弱信號,由于心電信號直接取自人體,所以在心電采集的過程中不可避免會混入各種干擾信號。為獲得含有較小噪聲的心電信號,需要對采集到的心電信號做降噪處理。本文通過濾波的方法將噪聲從信號中分離。并將采集到的小信號放大約1000倍,送入數(shù)模轉(zhuǎn)換模塊,讓單片機處理。關(guān)鍵詞: 心電信號采集
2、,降噪,A/D轉(zhuǎn)換放大目 錄 1. 課程設(shè)計任務(wù)及要求11.1 設(shè)計任務(wù)11.2 設(shè)計要求12. 理論設(shè)計12.1 方案論證12.2 電路原理框圖說明22.3 單元電路設(shè)計22.3.1 前置放大及反饋電路22.3.2 帶通濾波電路32.3.3 50Hz陷波電路42.3.4 電壓放大電路42.3.5 電平抬升電路52.4 整體電路圖仿真63. 硬件調(diào)試63.1 焊接及調(diào)試過程63.2 心電信號采集73.3 故障分析74. 嵌入式軟件設(shè)計74.1 開發(fā)軟件CCS簡介74.2 軟件總體設(shè)計框圖84.3 軟件分步配置:94.3.1 配置ADC12:94.3.2 配置LCD:94.4 軟件主程序95.
3、整體效果146. 結(jié)論157. 參考文獻161. 課程設(shè)計任務(wù)及要求1.1 設(shè)計任務(wù) 了解心電信號特點,設(shè)計心電信號調(diào)理電路,調(diào)理電路包括前端放大和右腿 驅(qū)動電路、帶通濾波和50Hz陷波電路、主放大和電平抬高電路等。學(xué)習(xí)MPS430單片機原理,通過對心電信號采集,實現(xiàn)對脈搏率的測量及顯示。 焊接相應(yīng)電路,完成調(diào)試。1.2 設(shè)計要求在設(shè)計中了解心電信號特點,設(shè)計心電信號調(diào)理電路,調(diào)理電路包括前端放大和右腿驅(qū)動電路、帶通濾波和50Hz陷波電路、主放大和電平抬高電路等。2. 理論設(shè)計2.1 方案論證將整個設(shè)計分成硬件部分和軟件部分,在硬件設(shè)計部分又可細分為如下幾個部分:前置放大、帶通濾波、陷波、電壓
4、放大、電平抬升以及反饋。根據(jù)已有的器件,本設(shè)計使用AD620作為前置放大級。帶通濾波部分,分成了高通與低通兩部分,為了提高濾波的效果,高通部分采低通部分采用了二階切比雪夫低通濾波器,帶通紋波為3dB。50Hz濾波陷波電路考慮了Fliege結(jié)構(gòu)點阻濾波器和“雙T”型陷波電路,實際焊接后發(fā)現(xiàn)后者的效果明顯更穩(wěn)定,故改為采用了“雙T”型陷波電路。2.2 電路原理框圖說明圖2-1 系統(tǒng)結(jié)構(gòu)圖如圖2-1所示,本系統(tǒng)硬件部分主要由前置放大、帶通濾波、陷波、電壓放大、電平抬升等電路構(gòu)成;軟件部分由基于Msp430 Launchpad的AD采集和液晶顯示等程序編寫構(gòu)成。2.3 單元電路設(shè)計2.3.1 前置放大
5、及反饋電路由于人體心電信號的特點,加上背景噪聲較強,采集信號時電極與皮膚間的阻抗大且變化范圍也較大,要求前級放大電路應(yīng)滿足高輸入阻抗;高共模抑制比;低噪聲、低漂移、非線性度小;合適的頻帶和動態(tài)范圍等特點。 為此,選用儀用放大器AD620作為前級放大。該放大器有較高的共模抑制比(CMRR),溫度穩(wěn)定性好,放大頻帶寬,噪聲系數(shù)小且具有調(diào)節(jié)方便的特點,是生物醫(yī)學(xué)信號放大的理想選擇。根據(jù)小信號放大器的設(shè)計原則,前級的增益不能設(shè)置太高,因為前級增益過高將不利于后續(xù)電路對噪聲的處理。 仿真過程采用O5 MV,12 Hz的差分信號源為模擬心電輸入來模擬電路的放大過程,結(jié)果滿足要求,如圖
6、2-2所示。圖2-2 前置放大及反饋電路2.3.2 帶通濾波電路心電信號頻帶主要集中在005-100 Hz,因此帶通濾波器用高低通濾波器來構(gòu)成,以濾除干擾信號。經(jīng)過高通濾波后,可以大大削弱01 Hz以下因呼吸等引起的基線漂移程度,經(jīng)過低通濾波后,也可以較好的削弱100Hz以上的干擾信號。圖2-3 帶通濾波電路2.3.3 50Hz陷波電路在我國采用的是50hz頻率的交流電,所以在對信號進行采集處理和分析時,會存在50hz的工頻干擾,對我們的信號處理造成很大干擾,因此要設(shè)計一個50hz雙T陷波器來濾除工頻干擾。濾波器的中心頻率和抑制帶寬BW之間的關(guān)系為: 中心頻率:圖2-4 50Hz陷波
7、電路2.3.4 電壓放大電路心電信號通常比較微弱,至多為mV量級,需要用較大增益的放大電路將信號放大到方便分析和采集的量級。該放大電路放大倍數(shù)為:圖2-5 電壓放大電路2.3.5 電平抬升電路由于Msp430 Launchpad不能采集負電壓,直接采集放大后的心電信號將會使液晶屏上波形失真,因此設(shè)計該電壓抬升電路并通過電位器調(diào)節(jié)信號整體電平。圖2-6 電平抬升電路2.4 整體電路圖仿真圖2-7 整體電路圖仿真3. 硬件調(diào)試3.1 焊接及調(diào)試過程為了使作品更加具備實用性和觀賞性,焊接電路時采用雙面面包板并在不影響電路性能前提下盡可能減小電路面積??紤]“飛線”過多過長可能降低電路穩(wěn)定性、增加干擾,
8、焊接過程盡量少使用引線,縮短導(dǎo)線長度。將VCC,VEE,GND及各級輸入輸出用一定量排針引出,方便調(diào)試,降低出錯率。圖3-1 硬件部分3.2 心電信號采集 經(jīng)過采集電路在示波器顯示的心電信號如圖3-2所示,信號無明顯失真,經(jīng)測量和計算,該同學(xué)心率此時約為1.4Hz。 圖3-2 成功采集的心電信號3.3 故障分析 心電信號因人而異,不同的人測量,效果可能會出現(xiàn)較大差異,可以選擇信號明顯波形較好的人做實驗。 實驗中使用了3種運放,都采用雙電源接法,焊接時要注意不要短路,焊接完畢,應(yīng)先檢查后通電。 Msp430 Launchpad采集電壓范圍為0至5V,需調(diào)節(jié)抬升電路電位器使其輸出電壓值合適的心電信
9、號。4. 嵌入式軟件設(shè)計本設(shè)計軟件部分的設(shè)計用Msp430 Launchpad來實現(xiàn)。4.1 開發(fā)軟件CCS簡介 CCS是一種針對TMS320系列DSP的集成開發(fā)環(huán)境,在Windows操作系統(tǒng)下,采用圖形接口界面,提供有環(huán)境配置、源文件編輯、程序調(diào)試、跟蹤和分析等工具。 CCS有兩種工作模式,即軟件仿真器模式:可以脫離DSP芯片,在PC機上模擬DSP的指令集和工作機制,主要用于前期算法實現(xiàn)和調(diào)試。硬件在線編程模式:可以實時運行在DSP芯片上,與硬件開發(fā)板相結(jié)合在線編程和調(diào)試應(yīng)用程序。 CCS的開發(fā)系統(tǒng)主要由以下組件構(gòu)成: TMS320C54x集成代碼產(chǎn)生工具;
10、CCS集成開發(fā)環(huán)境; DSP/BIOS實時內(nèi)核插件及其應(yīng)用程序接口API; 實時數(shù)據(jù)交換的RTDX插件以及相應(yīng)的程序接口API; 由TI公司以外的第三方提供的各種應(yīng)用模塊插件。 CCS的功能十分強大,它集成了代碼的編輯、編譯、鏈接和調(diào)試等諸多功能,而且支持C/C+和匯編的混合編程。4.2 軟件總體設(shè)計框圖 F5529 ADC12 LCD模擬信號 數(shù)據(jù)處理 顯示logo顯示工程相關(guān)信息4.3 軟件分步配置:4.3.1 配置ADC12:F5529內(nèi)部ADC為8位12通道模數(shù)轉(zhuǎn)換器。實驗中將P6.4作為模擬 信號的輸入端口。時鐘源為MCLK的3分頻。 ADC12CTL0 = ADC12SH
11、T02 + ADC12ON; / Sampling time, ADC12 on ADC12CTL1 |= ADC12SSEL0 + ADC12DIV2; /ADC12SSEL 0:mclk 1:smclk ADC12CTL1 |= ADC12SHP; / Use sampling timer ,0 clock ADC12IE = 0x01; / Enable interrupt ADC12CTL0 |= ADC12ENC; P6SEL |= 0x10; / P6.4 ADC option select4.3.2 配置LCD1602:采用F5529內(nèi)置的點陣屏,相關(guān)詳細配置參見F5529官方“
12、HAL_Dogs102x6.c”4.4 軟件主程序/*/ MSP430F552x/ -/ /| |/ | | |/ -|RST |/ | |/ Vin ->|P6.4/CB0/A0 |/*#include <msp430.h>#include "HAL_Dogs102x6.h"#include"info.h"#include <math.h>int read;volatile unsigned int x = 0;volatile unsigned int flag = 0;volatile unsigned int val
13、ue = 0;volatile unsigned int count = 0;volatile float freq = 1.4;volatile unsigned int i;#define Num_of_Results 2volatile unsigned int resultsNum_of_Results; / Needs to be global in this / example. Otherwise, the / compiler removes it because it / is not used for anything.uint16_t timeoutCounter;voi
14、d init_lcd() uint8_t contrast = *(unsigned char *)contrastSetpointAddress); /讀取FLASH中對比度值uint8_t brightness = *(unsigned char *)brightnessSetpointAddress); /讀取FLASH中背光值 / Set up LCD Dogs102x6_init(); /初始化LCD Dogs102x6_backlightInit(); /背光初始化 / Contrast not programed in Flash Yet if (contrast = 0xFF)
15、 /若當(dāng)前FLASH中無對比度值,則將對比度值設(shè)為11(默認) / Set Default Contrast contrast = 11; / Brightness not programed in Flash Yet if (brightness = 0xFF) /若當(dāng)前FLASH中無背光值,則將背光值設(shè)為11(默認) / Set Default Brightness brightness = 0x11;/ Dogs102x6_setBacklight(brightness); /設(shè)置初始背光值/ Dogs102x6_setContrast(contrast); /設(shè)置初始對比度值 Dogs
16、102x6_clearScreen(); /顯示文字說明: /Dogs102x6_stringDraw(3, 0, " pan ", DOGS102x6_DRAW_NORMAL);int main(void) WDTCTL = WDTPW + WDTHOLD; / Stop WDT /Board_init(); /初始化GPIO / Globally enable interrupts ADC12CTL0 = ADC12SHT02 + ADC12ON; / Sampling time, ADC12 on ADC12CTL1 |= ADC12SSEL0 + ADC12DIV2
17、;/ADC12SSEL 0:mclk 1:smclk ADC12CTL1 |= ADC12SHP; / Use sampling timer ,0 clock ADC12IE = 0x01; / Enable interrupt ADC12CTL0 |= ADC12ENC; P7DIR |= 0x01; / P7.0 output P6SEL |= 0x10; / P6.4 ADC option select P1DIR |= 0x01; / P1.0 output TA1CCTL0 = CCIE; / CCR0 interrupt enabled TA1CCR0 = 2040;/ (1/32
18、768)*205 =5 ms ? TA1CTL = TASSEL_1 + MC_1 + TACLR; / ACLK, upmode, clear TAR init_lcd(); /logo_init(); _enable_interrupt(); /使能全局中斷 /info_init(); Dogs102x6_clearScreen(); buttonsPressed = 0; /_disable_interrupt(); /關(guān)閉全局中斷 while (1) ADC12CTL0 |= ADC12SC; / Start sampling/conversion _bis_SR_register(L
19、PM0_bits + GIE); / LPM0, ADC12_ISR will force exit _no_operation(); / For debugger /Dogs102x6_stringDraw(8, 0, " pan ", DOGS102x6_DRAW_NORMAL); / Timer0_A5 Interrupt Vector (TAIV) handler#pragma vector=TIMER1_A0_VECTOR_interrupt void TIMER1_A0_ISR(void) P7OUT = 0x01; / Toggle P1.0#pragma v
20、ector = ADC12_VECTOR_interrupt void ADC12_ISR(void) static unsigned char index = 0;if(x<103) x+;else if (buttonsPressed) if(freq>1.0 && freq <1.5) ADC12IE = 0x00; / Enable interrupt _bic_SR_register_on_exit(LPM0_bits); / Exit active CPU else flag = 0; value = 0; count = 0; buttonsPr
21、essed = 0; Dogs102x6_clearScreen(); x=0; else Dogs102x6_clearScreen(); x=0; switch(_even_in_range(ADC12IV,34) case 0: break; / Vector 0: No interrupt case 2: break; / Vector 2: ADC overflow case 4: break; / Vector 4: ADC timing overflow case 6: / Vector 6: ADC12IFG0 read = ADC12MEM0; resultsindex =
22、ADC12MEM0; / Move results index+; / Increment results index, modulo; Set Breakpoint1 here if (index = 2) index = 0; Dogs102x6_pixelDraw(x,41-ADC12MEM0/100 + 10,DOGS102x6_DRAW_NORMAL); if( x>1 && abs(results0-results1) > 200 && x < 102/*the last line don't draw*/) Dogs102
23、x6_lineDraw(x,41-results0/100 + 10,x,41-results1/100 + 10,DOGS102x6_DRAW_NORMAL); if(abs(results0-results1) > 200 && flag=0) flag = 1; if(flag = 1) value+; count+; if( abs(results0-results1) > 200 && count > 5) flag = 2; freq = (float)102/value/5*2; /buttonsPressed = 1; /*Do
24、gs102x6_stringDraw(7, 0, "ECG FREQ:", DOGS102x6_DRAW_NORMAL); Dogs102x6_charDraw(7, 60, 0x30+(int)freq%10, DOGS102x6_DRAW_NORMAL); Dogs102x6_stringDraw(7, 67, ".", DOGS102x6_DRAW_NORMAL); Dogs102x6_charDraw(7, 74, 0x30+(int)(freq*10)%10, DOGS102x6_DRAW_NORMAL); Dogs102x6_stringDraw(7,90, "HZ", DOGS102x6_DRAW_NORMAL);*/ _bic_SR_register_on_exit(LPM0_bits); / Exit active CPU case 8: break; / Vector 8: ADC12IFG1 case 10: break; / Vector 10: ADC12IFG2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 保溫購銷合同范例
- 按小時勞動合同模板
- 房屋抵押擔(dān)保合同范例
- 建筑檢測合同范例
- 旅游住宿合同模板
- 建筑業(yè)集體勞動合同模板
- 撤銷協(xié)議合同范例
- 建行購房合同范例
- 肝炎后肝硬化病人的護理
- 賓館承包經(jīng)營合同范例3篇
- 中國特色社會主義法律體系課件
- 高中數(shù)學(xué)奧賽輔導(dǎo)教材(共十講)
- 國開一體化平臺04633《納稅實務(wù)》形考任務(wù)(1-4)試題及答案
- 真人CS俱樂部經(jīng)營專項方案
- 咖啡文化與飲品調(diào)制智慧樹知到期末考試答案2024年
- 臨城興業(yè)礦產(chǎn)資源有限公司閆家莊鐵礦礦山地質(zhì)環(huán)境保護與土地復(fù)墾方案
- 【海南康養(yǎng)旅游現(xiàn)狀和對策探究11000字(論文)】
- (2024版)大學(xué)本科新增專業(yè)《智能視覺工程》解讀
- 2023寺廟寺院品牌營銷全案
- 循環(huán)系統(tǒng)監(jiān)測-課件
- 學(xué)生心理健康一生一策檔案模板
評論
0/150
提交評論