- 相關(guān)推薦
單片機心電信號數據采集系統的設計答辯(一)
尊敬的各位評委老師,大家下午好,我叫 ,是自動(dòng)化031班的學(xué)生,我的畢業(yè)設計題目是:?jiǎn)纹瑱C心電信號數據采集系統的設計。首先,我先簡(jiǎn)單介紹一下本設計的意義。
心血管疾病是人類(lèi)生命的最主要的威脅,而心電信號是診斷心血管疾病的主要依據,因此,實(shí)時(shí)檢測病人的心電活動(dòng),設計信號采集系統具有非常重要的意義。
下面我開(kāi)始介紹我的硬件電路設計。
首先介紹一下系統原理框圖。
系統主要由前置放大電路,導聯(lián)脫落檢測電路,帶通濾波電路,光電隔離電路,主放大電路,50赫茲掐波電路,35赫茲掐波電路,電平抬升電路,A/D轉換電路,單片機處理電路以及液晶顯示電路等幾部分組成。
下面我介紹一下各部分的功能。
首先,前置放大電路的性能指標決定了整個(gè)電路的輸入特性,而由于心電信號的頻率低,信號弱,變化慢等特性,因此,需要前置放大具有高輸入阻抗,高共模抑制比,低噪聲等條件,針對以上的特點(diǎn),選用了美國AD公司生產(chǎn)的AD620放大器,它具有高輸入阻抗,低輸入偏置電流,低噪音,低功耗等特性,很適合作為本設計的放大器,
AD620參數:CMRR為140DB,輸入阻抗為10G歐,輸入偏置電流小于2.0NA,工作電流為1.3MA。其可調增益1—1000倍,并可由公式 來(lái)確定。使用時(shí)只需在1腳和8腳間接一電阻RG即可設置所需要的增益。
需要注意的是RG必須選用精密電阻。在此取5千歐。
通過(guò)U3 可將R2、R3 上的人體共模信號檢測出來(lái)用于驅動(dòng)導線(xiàn)屏蔽層,以消除分布電容,提高輸入阻抗和共模抑制比。U4、R5、R6、C1 構成的“浮地”驅動(dòng)電路可將人體共模信號倒相放大后用于激勵人體右腿,從而降低甚至抵消共模電壓,以達到較強抑制50Hz 工頻干擾之目的。U1、U2 主要用于穩定輸入信號和提高輸入阻抗,進(jìn)一步提高共模抑制比。
電極脫落檢測
由于此系統應用于人體日常生活中,人體常常處于活動(dòng)狀態(tài),這樣輸入電極很可能脫落,從而是系統不能正常工作。為此,設計了導聯(lián)電極脫落檢測電路如圖3.3
所示。
正常情況下,正負電極對人體皮膚形成的極化電壓可以互相抵消。當一側電極脫落時(shí),將有較大的極化電壓輸入,通過(guò)一個(gè)比較器,當比較電壓超出范圍時(shí),認為電極導聯(lián)脫落,此時(shí)輸出電平由正常時(shí)的高電平變?yōu)榈碗娖,下級三極管導通,蜂鳴器發(fā)聲報警。
光電偶合電路的作用是為了進(jìn)一步濾除干擾。
帶通濾波及主放大電路
如圖3.6 所示, 帶通濾波由雙運放集成電路OP2177 構成。OP2177 具有高精度、低偏置、低功耗等特性, 片內集成了兩個(gè)運放, 可靈活組成各類(lèi)放大和濾波電路。由于心電信號頻帶主要集中在0. 05~100Hz 左右, 頻帶較寬, 為此, 采用OP2177 的兩個(gè)運放分別設計二階壓控有源高通和低通濾波器并組合成帶通濾波。其中, U6A、C6、C7、R8、R9 構成高通濾波器,為不損失心電信號的低頻成分, 其截止頻率設計為f = 1/ [ 2π( C6C7R8R9) 1/ 2] =0. 03Hz。U6B、R10、R11、C8、C9 構成低通濾波器,同樣,為不損失其高頻成分, 截止頻率設計為f =1/ [ 2π( C8C9R10R11) 1/ 2] = 130Hz。主放大電路由OP1177(U7) 、R12、R13 構成?紤]到心電信號幅度約為0~4mV, 而A/ D 轉換輸入信號要求1V左右, 因此, 整個(gè)信號電路的放大倍數需1000 倍左右。而前置放大約10 倍左右,因此本級放大倍數設計為100 倍左右,即G= 1 + R12/ R13≈100。
掐波及電平抬升電路
選用了BB(Burr-Brown)公司的UAF42,只需通過(guò)外接合適的外部電阻便可方便地實(shí)現陷波功能,同時(shí)可以克服以往陷波電路的電容電阻的匹配和損耗問(wèn)題。
另外:人體肌電隨著(zhù)個(gè)體的差異也會(huì )對心電信號造成不同程度的干擾;時(shí)甚至淹沒(méi)心電信號,因而有必要加以抑制。研究表明,肌電干擾主要集中在35Hz 左右,為此,本系統還設計了圖3.7所示的35Hz的無(wú)限增益多路反饋型二階陷波器。該二階陷波器由U10A、U10B 構成。其截止頻率約為35Hz ,可符合實(shí)際要求。經(jīng)過(guò)一系列信號調理后,陷波輸出的心電信號為交變信號,而本系統中單片機內置ADC 轉換輸入電壓范圍為0~3.3V,因此,在送入ADC 之前還需進(jìn)行電平抬升,在圖3.7電平抬升部分由U11、R42、R43、R44 構成。
單片機的選擇
單片機作為數據采集系統的核心部分,在本系統的設計中占有舉足輕重的地位。
單片機的選擇
單片機作為數據采集系統的核心部分,在本系統的設計中占有舉足輕重的地位。與80C51兼容;
具有4K可重復編程的閃存,可寫(xiě)入/擦除1000次以上,數據保存10年以上;
操作頻率:0Hz-24Hz;
三層可編程的存儲器上鎖;
128個(gè)位組的內部數據存儲器;
32條可變成的I/O線(xiàn);
2組16位定時(shí)器/計數器;
6個(gè)中斷源;
可編程的串行通道;
低功率停頓和功率下降模式。
以上特點(diǎn)使得AT89C51非常適合作為本數據采集系統的控制器。AT89C51與信號調理電路的連接見(jiàn)附錄。
A/D轉換芯片的選擇
(2)ADC0809 引腳 ADC0809 是 28 腳雙列直插式封裝,其引腳圖如圖3.9所示,各引腳的功能如下:
D7~D0:8位數字量輸出引腳;
IN0~IN7:8 路模擬量輸入引腳;
VCC:+5 V 工作電壓;
GND:接地端;
REF(+):參考電壓正連接端;
REF(-):參考電壓負連接端;
START:A/D 轉換啟動(dòng)信號輸入端;
ALE:地址鎖存允許信號輸入端;
EOC:轉換結束信號輸出引腳,開(kāi)始轉換時(shí)為低電平,當轉換結束時(shí)為高電平;
OE:輸出允許控制端,即完成轉換后數字量輸出允許控制信號輸入端口,高電平有效,用以打開(kāi)三態(tài)數據輸出鎖存器;
CLK:時(shí)鐘信號輸入端;
ADDA、ADDB、ADDC:地址輸入線(xiàn),用三位編碼組成 3-8 譯碼器,選通 8 路模擬電子開(kāi)關(guān),實(shí)現 IN0~IN7八個(gè)通道中的通道之間可進(jìn)行切換。
ADC0809 可以以查詢(xún)方式或中斷方式與單片機 AT89C52 相連,本課題采用中斷方式,并采用定時(shí)器 T0 定5ms 中斷,進(jìn)行 200 Hz 采樣。ADC0809 與AT89C51
單片機的接口如圖 3.10 所示。由于 ADC0809 片內無(wú)時(shí)鐘,可利用 AT89C51提供的地址鎖在允許信號 ALE 經(jīng) D 觸發(fā)器二分頻后獲得 ALE 腳的頻率是 AT89C51 單片機時(shí)鐘頻率的 1/6(但要注意的是,每當訪(fǎng)問(wèn)外部數據存儲器時(shí),將跳過(guò)一個(gè) ALE 脈沖)。如果單片機時(shí)鐘頻率采用 12MHz,經(jīng)二分頻后符合 ADC0809 對時(shí)鐘頻率的要求。由于 ADC0809 具有輸出三態(tài)鎖存器,其 8 位數據輸出引腳可直接與數據總線(xiàn)相連。地址譯碼引腳 ADDA、ADDB、ADDC 分別與地址總線(xiàn)的低三位 A0、A1、A2 相連,以選通 IN0~IN7 中一個(gè)通路,本課題只用到一個(gè)通道。將 P2.7(地址總線(xiàn) A15)作為片選信號、在啟動(dòng) A/D 轉換時(shí),由單片機的寫(xiě)信號和 P2.7 控制 ADC0809 的地址鎖存和轉換啟動(dòng),由于 ALE 和START 連在一起,因此 ADC0809 在鎖存通道地址的同時(shí),啟動(dòng)并進(jìn)行轉換。在讀取轉換結果時(shí),用低電平的讀信號和 P2.7 腳經(jīng)一級或非門(mén)后,產(chǎn)生的正脈沖作為 OE 信號用以打開(kāi)三態(tài)鎖存器,由圖 3.10可知,P2.7應設為低電平,ADC0809 芯片選中第三通道的地址為 7FFB H。
液晶顯示硬件設計
為了能夠清晰的顯示出系統所檢測到的心電信號波形,特采用了高清晰的液晶顯示作為系統的輸出設備。
液晶顯示模塊的選擇
選則合適的液晶模塊對于心電采集系統的外觀(guān)和功能的實(shí)現起到至關(guān)重要的作用。
液晶模塊有以下3種類(lèi)型[13-14]。
(1)數顯液晶模決;
(2)液晶點(diǎn)陣字符模塊;
(3)點(diǎn)陣圖形液晶模塊;
T6963C 液晶顯示控制器是日本東芝公司的產(chǎn)品, 多用于中小規模的液晶顯示器件, 常被裝配在圖形液晶顯示模塊上, 以?xún)炔乜刂破魇綀D形液晶顯示模塊的形式出現。它能與80 系列的8 位微處理器直接接口?梢詧D形方式、字符方式及圖形和字符合成方式進(jìn)行顯示, 還可以實(shí)現字符方式下的特征顯示, T6963C最大的特點(diǎn)是具有獨特的硬件初始設置功能,由于顯示驅動(dòng)所需的參數(如占空比系數、驅動(dòng)傳輸的字節數/行以及字符的字體選擇等)均由引腳電平來(lái)設置,因此T6963C的初始化在上電時(shí)就已基本設置完成,而對顯示功能的設置則由軟件初始化來(lái)完成[19-20]。
液晶電源電路設計
液晶電源電路設計的主要作用是為液晶顯示模塊提供工作電壓。
系統軟件設計
4.1主程序及數據采集中斷程序
系統上電后,首先要進(jìn)行系統初始化設置,包括復位方式、時(shí)鐘源、電壓基準、中斷、ADC的設置,這些設置通過(guò)設置相應的特殊功能寄存器來(lái)進(jìn)行。本系統選用外部時(shí)鐘源,頻率12M。由于心電信號的主要頻率范圍為0.05—100Hz,根據采樣定理,為了不失真的采集信號,設計時(shí)將采樣定為200 Hz,即心電數據采樣周期為5ms。為此設置ADC啟動(dòng)方式采用定時(shí)器1溢出方式;轉換采用中斷方式。其主程序及數據采集程序流程圖如圖4.1及4.2所示。
液晶模塊軟件設計
LCD 軟件的設計主要包括初始化子程序和顯示子程序。初始化子程序又包括清顯示RAM 子程序和驅動(dòng)子程序及對顯示功能的設置。在進(jìn)行顯示之前, 應先對顯示緩沖區進(jìn)行清零, 也即先執行清顯示RAM 子程序[21-22]; 而在對LCD 進(jìn)行讀寫(xiě)等操作之前, 必須先執行驅動(dòng)子程序, 對其相應的標志位進(jìn)行判斷; 對顯示功能的設置主要包括設置文本區首址和寬度、設置圖形區首址和寬度、顯示方式設置、顯示開(kāi)關(guān)設置等。
圖形區首地址:在點(diǎn)陣式液晶圖形顯示器中,LCD屏幕上的每個(gè)顯示單元對應一個(gè)地址,從左上角開(kāi)始,從左到右,從上到下。在圖形顯示方式下,顯示單元的單位是1×8點(diǎn)陣(即一個(gè)字節),對應于240×64的屏幕,它有240×64÷8=1920個(gè)顯示單元,一屏的地址范圍是0-1919。命令控制字是24H和42H。
圖形區寬度:它用來(lái)調整使用的有效顯示窗口寬度,表示每行可有效顯示的單元數。對于240×64的顯示屏,最多每行有240/8=30個(gè)顯示單元。命令控制字是43H。
顯示開(kāi)關(guān)設置是將相應的顯示方式打開(kāi),例如要顯示圖形,則將圖形方式控制位置1。命令控制字是98H。
曲線(xiàn)顯示的原理是將第1次A/D轉換的結果在第0列顯示,第2次轉換的結果在第1列顯示,……,第240次轉換的結果在第239列顯示,第241次轉換在第1列顯示,……,依次循環(huán),在液晶屏幕上就會(huì )出現根據信號實(shí)時(shí)變化的心電曲線(xiàn)。
利用液晶顯示器顯示波形時(shí),應首先建立顯示坐標系,可把坐標系的原點(diǎn)設在顯示屏的左下角處,這樣可使所有點(diǎn)都處在第一象限內,即坐標(X,Y)的值都為正值,以使算法簡(jiǎn)化。其中X表示1~240個(gè)點(diǎn),Y表示各個(gè)點(diǎn)所對應的幅值。幅值Y每增加1,顯示緩沖區的地址將減少10H。具體公式如下: Y=X-10H(D/A) 其中D為ADC0809采集的數字量,A為該數字量縮小的倍數。這樣,就可建立液晶屏面與直角坐標的一一對應關(guān)系! ∪绻巡杉臄祿旁赗AM中,液晶顯示器只能顯示240點(diǎn)。為了能對采集來(lái)的數據有一個(gè)全面的了解,可以通過(guò)改變在RAM中的讀數間隔來(lái)控制波形的顯示,即每讀完一個(gè)數據,存放數據的RAM地址便加N,然后通過(guò)設定N的大小來(lái)放大或回縮波形。在實(shí)際使用中,由于相鄰兩個(gè)點(diǎn)幅值的不同,可能會(huì )造成波形的不連續而影響視覺(jué)效果。因此,為了使波形能夠連續顯示,可以在顯示屏每顯示完一個(gè)點(diǎn)后,判斷與前一個(gè)幅值的差距,若大于08H,則在兩點(diǎn)之間插入若干個(gè)點(diǎn)以使兩點(diǎn)連續起來(lái),然后再進(jìn)行下一個(gè)點(diǎn)的顯示。相應操作表格說(shuō)明見(jiàn)表4.1-4.7所示。顯示程序流程圖如圖4.5所示。各子程序清單見(jiàn)附錄。
4.3.1 基本操作時(shí)序
讀狀態(tài):輸入:C/D=H,CE=L,RD=L,WR=H,輸出:D0-D7=狀態(tài)字
寫(xiě)指令:輸入:C/D=H,CE=L,RD=H,WR=L,D0-D7=指令碼 輸出:無(wú)
讀數據:輸入:C/D=H,CE=L,RD=L,WR=H,輸出:D0-D7=數據
寫(xiě)數據:輸入:C/D=H,CE=L,RD=H,WR=L,D0-D7=數據 輸出:無(wú)
4.3.2 狀態(tài)字說(shuō)明
控制器可處于兩種工作狀態(tài),指令數據讀寫(xiě)狀態(tài)和連續數據讀寫(xiě)狀態(tài)。
指令數據讀寫(xiě)狀態(tài):在此狀態(tài)下,對控制器每次進(jìn)行操作之前,都必須進(jìn)行讀寫(xiě)檢測,確保STA0和STA1都為1。
連續數據讀寫(xiě)狀態(tài):在此狀態(tài)下,對控制器每次進(jìn)行操作之前,都必須進(jìn)行連續讀寫(xiě)檢測,確保STA2和STA3都為1。
4.3.3 指令寫(xiě)入方式
指令寫(xiě)入方式可分三種:無(wú)參數指令、單參數指令、雙參數指令。
無(wú)參數指令:開(kāi)始—讀寫(xiě)檢測—寫(xiě)指令—結束。
單參數指令:開(kāi)始—讀寫(xiě)檢測—寫(xiě)數據—讀寫(xiě)檢測—寫(xiě)指令—結束。
雙參數指令:開(kāi)始—讀寫(xiě)檢測—寫(xiě)數據(參數一)—讀寫(xiě)檢測—寫(xiě)數據(參數二)—讀寫(xiě)檢測—寫(xiě)指令—結束。
4.3.4 指令說(shuō)明
控制器內部設有一個(gè)數據地址指針,可通過(guò)它來(lái)訪(fǎng)問(wèn)內部32KRAM。
在連續指令開(kāi)始后,控制器進(jìn)入連續數據讀寫(xiě)狀態(tài),以后每讀寫(xiě)一次數據,數據地址指針自動(dòng)加一,直到向控制器發(fā)出連續讀寫(xiě)結束指令后,才能退出此狀態(tài)。
在連續數據讀寫(xiě)狀態(tài),每次讀之前必須進(jìn)行連續讀寫(xiě)檢測。在連續數據讀寫(xiě)狀態(tài),不可用除連續讀寫(xiě)結束指令外的其他指令。在連續數據讀寫(xiě)以后,務(wù)必向控制器發(fā)連續讀寫(xiě)結束指令,退出連續數據讀寫(xiě)狀態(tài)位寫(xiě)入。
4.3.5 初始化過(guò)程(復位過(guò)程)
寫(xiě)指令80H:設置顯示模式為0R模式。
寫(xiě)指令98H:開(kāi)顯示。
寫(xiě)指令43H:設置現實(shí)緩沖區首地址。
STA0 指令讀寫(xiě)使能 1:允許 0:禁止
STA1 數據讀寫(xiě)使能 1:允許 0:禁止
STA2 數據連續讀使能 1:允許 0:禁止
STA3 數據連續寫(xiě)使能 1:允許 0:禁止
STA4 未用
STA5 未用
STA6 未用
STA7 液晶屏當前顯示狀態(tài) 1:顯示 0:關(guān)閉
表4.2 顯示模式設置
參數1 參數2 指令碼 功能
無(wú) 無(wú) 80H 設置顯示模式為0R模式
表4.3顯示開(kāi)/關(guān)設置
參數1 參數2 指令碼數 功能
無(wú) 無(wú) 90H 關(guān)顯示
無(wú) 無(wú) 98H 開(kāi)顯示
表4.4 顯示緩沖區設置
參數 1 參數2 指令碼 功能
地址低字節 地址高字節 42H 顯示緩沖區首地址
1EH 無(wú) 43H 設置顯示每行字節數
表4.5 數據指針設置
參數 1 參數2 指令碼 功能
地址低字節 地址高字節 24H 設置數據地址指針
表4.6 數據讀寫(xiě)
參數1 參數2 指令碼 功能單位
數據字節 無(wú) C0H 寫(xiě)數據且數據地址指針加一
無(wú) 無(wú) C1H 讀數據且數據地址指針加一
數據字節 無(wú) C2H 寫(xiě)數據且數據地址指針減一
無(wú) 無(wú) C3H 讀數據且數據地址指針減一
數據字節 無(wú) C4H 寫(xiě)數據且數據地址指針不變
無(wú) 無(wú) C5H 寫(xiě)數據且數據地址指針不變
表4.7數據連續讀寫(xiě)
參數1 參數2 指令碼 功能
無(wú) 無(wú) B0H 連續寫(xiě)開(kāi)始
無(wú) 無(wú) B1H 連續讀開(kāi)始
無(wú) 無(wú) B2H 連續讀寫(xiě)結束
前置放大電路,從強的噪聲背景中提取心電信號。
帶通濾波電路,使頻率為0.05-100Hz的心電信號通過(guò),該范圍以外的信號將大幅度衰減掉。
導聯(lián)電極脫落檢測電路,檢測電極是否脫落。
主放大電路,將前級放大的心電信號進(jìn)行再次放大。
50Hz掐波電路,用于濾掉50Hz工頻干擾。
35Hz掐波電路,用于濾除肌電干擾。
電平抬升電路,用于抬升電平。
數據采集電路,采集心電信號并進(jìn)行處理。
液晶顯示器輸出電路,輸出心電波形。
【單片機心電信號數據采集系統的設計答辯(一)】相關(guān)文章:
基于USB接口的心電信號數據采集系統03-19
一種用單片機控制的光譜數據采集系統03-18
基于USB接口的數據采集系統設計03-18
基于Verilog HDL設計的自動(dòng)數據采集系統03-21
螺紋半角測量?jì)x數據采集系統的設計03-07
低軾耗數據采集系統的USB接口設計03-18