醫(yī)學(xué)儀器嵌入式應(yīng)用課件_第1頁
醫(yī)學(xué)儀器嵌入式應(yīng)用課件_第2頁
醫(yī)學(xué)儀器嵌入式應(yīng)用課件_第3頁
醫(yī)學(xué)儀器嵌入式應(yīng)用課件_第4頁
醫(yī)學(xué)儀器嵌入式應(yīng)用課件_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第八章醫(yī)學(xué)儀器嵌入式應(yīng)用8.1嵌入式醫(yī)學(xué)儀器設(shè)計(jì)概述嵌入式醫(yī)學(xué)儀器應(yīng)視為一個(gè)數(shù)據(jù)采集與信息處理系統(tǒng),其設(shè)計(jì)應(yīng)遵循數(shù)據(jù)采集與信息處理系統(tǒng)的原則,它的技術(shù)路線與方案如下所示:第八章醫(yī)學(xué)儀器嵌入式應(yīng)用8.1嵌入式醫(yī)學(xué)儀器設(shè)計(jì)概述11.安全可靠醫(yī)學(xué)檢測系統(tǒng)中的控制計(jì)算機(jī)不同于一般的用于科學(xué)計(jì)算或管理的計(jì)算機(jī),它所擔(dān)當(dāng)控制重任不允許它發(fā)生異?,F(xiàn)象。因此,在設(shè)計(jì)過程中,要把安全可靠放在首位。從上述觀點(diǎn)出發(fā)首先要選用高性能的控制計(jì)算機(jī),其次還常設(shè)計(jì)后備裝置,對(duì)于特殊的控制對(duì)象還得設(shè)計(jì)成雙機(jī)系統(tǒng)。1.安全可靠22.操作維護(hù)方便操作方便表現(xiàn)在操作簡單、直觀形象、便于掌握,并不強(qiáng)求操作人員要掌握計(jì)算機(jī)知識(shí)才能操作。因而本系統(tǒng)操作顯示界面應(yīng)遵循上述原則進(jìn)行設(shè)計(jì)。3.實(shí)時(shí)性強(qiáng)醫(yī)學(xué)檢測儀器系統(tǒng)的實(shí)時(shí)性,表現(xiàn)在對(duì)內(nèi)部和外部事件能及時(shí)地響應(yīng),并做出相應(yīng)的處理,不丟失信息,不延誤操作。2.操作維護(hù)方便34.通用性好醫(yī)學(xué)儀器中的控制計(jì)算機(jī)的通用性體現(xiàn)在兩方面,一是硬件模板設(shè)計(jì)采用標(biāo)準(zhǔn)總線結(jié)構(gòu),配置各種通用的功能模板,以便在擴(kuò)充功能時(shí),只需增加功能模板就能實(shí)現(xiàn);二是軟件模塊或控制算法采用標(biāo)準(zhǔn)模塊結(jié)構(gòu),用戶使用時(shí)不需要二次開發(fā),只需按要求選擇各種功能模塊,靈活地進(jìn)行控制系統(tǒng)組態(tài)。4.通用性好45.經(jīng)濟(jì)效益高計(jì)算機(jī)控制應(yīng)該帶來高的經(jīng)濟(jì)效益,系統(tǒng)設(shè)計(jì)時(shí)要考慮性能價(jià)格比,要有市場競爭意識(shí)。經(jīng)濟(jì)效益表現(xiàn)在兩個(gè)方面,一是系統(tǒng)設(shè)計(jì)的性能價(jià)格比要盡可能的高;二是投入產(chǎn)出比要盡可能的低。5.經(jīng)濟(jì)效益高58.2嵌入式數(shù)據(jù)采集系統(tǒng)組成數(shù)據(jù)采集系統(tǒng)(圖8-1)由多路開關(guān)、采樣/保持器、放大器、A/D轉(zhuǎn)換器、計(jì)算機(jī)等組成。數(shù)據(jù)采集要經(jīng)過采樣和量化兩個(gè)步驟。采樣過程由多路開關(guān)、采樣/保持器完成(如信號(hào)變化很慢,也可以不用采樣/保持器)。多路開關(guān)將各路信號(hào)輪流切換到輸入端。A/D轉(zhuǎn)換器將采樣信號(hào)量化,將轉(zhuǎn)換成的數(shù)字量輸入到計(jì)算機(jī)中。放大器、濾波器可根據(jù)被測信號(hào)的大小、頻譜分布及干擾的強(qiáng)弱選用。8.2嵌入式數(shù)據(jù)采集系統(tǒng)組成6傳感器傳感器傳感器多路開關(guān)放大器計(jì)算機(jī)A/D轉(zhuǎn)換器采樣/保持器圖8.1數(shù)據(jù)采集系統(tǒng)組成傳感器傳感器傳感器多放計(jì)A采圖8.1數(shù)據(jù)采集系統(tǒng)組成78.3嵌入式醫(yī)學(xué)儀器系統(tǒng)軟件設(shè)計(jì)1系統(tǒng)軟件定義與需求分析系統(tǒng)軟件定義:

系統(tǒng)軟件定義的目的是明確系統(tǒng)目標(biāo)規(guī)模和基本要求,確定系統(tǒng)軟件實(shí)現(xiàn)的基本功能和系統(tǒng)輸入及輸出。8.3嵌入式醫(yī)學(xué)儀器系統(tǒng)軟件設(shè)計(jì)8需求分析:

需求分析的基本任務(wù)是軟件開發(fā)人員與用戶一起完全弄清用戶對(duì)系統(tǒng)的確切要求。目的是確定目標(biāo)系統(tǒng)的運(yùn)行環(huán)境與性能要求以及系統(tǒng)功能。2面向?qū)ο笙到y(tǒng)軟件概要設(shè)計(jì)

通過以上系統(tǒng)基本功能的確定與需求分析后,我們就可以進(jìn)一步進(jìn)行程序設(shè)計(jì),以確立系統(tǒng)的對(duì)象模型、動(dòng)態(tài)模型、功能模型。需求分析:

需求分析的基本任務(wù)是軟件開發(fā)人員與9對(duì)象模型是三個(gè)模型中最關(guān)鍵的一個(gè)模型,它表示靜態(tài)的、結(jié)構(gòu)化的系統(tǒng)的“數(shù)據(jù)”性質(zhì)。描述了系統(tǒng)的靜態(tài)結(jié)構(gòu)。建立對(duì)象模型首先確定對(duì)象、類,然后分析對(duì)象的類及其相互關(guān)系對(duì)象:是系統(tǒng)中用來描述客觀事物的一個(gè)實(shí)體,是構(gòu)成系統(tǒng)的一個(gè)基本單位,由一組屬性和對(duì)這組屬性進(jìn)行操作的一組服務(wù)構(gòu)成。類:是具有相同屬性和服務(wù)的一組對(duì)象的集合。類為屬于它的全部對(duì)象提供了統(tǒng)一的抽象描述(屬性和服務(wù))對(duì)象模型是三個(gè)模型中最關(guān)鍵的一個(gè)模型,它表示靜態(tài)的、結(jié)構(gòu)化的10動(dòng)態(tài)模型

:描述對(duì)象和關(guān)系的狀態(tài)、狀態(tài)轉(zhuǎn)換的觸發(fā)事件以及對(duì)象的服務(wù)(行為)。即描述對(duì)象和關(guān)系的生成周期。狀態(tài):對(duì)象在其生成周期中的某個(gè)特定階段所具有的行為模式。事件:事件是引起對(duì)象狀態(tài)轉(zhuǎn)換的控制信息。服務(wù):也稱為行為,對(duì)象在某種狀態(tài)下所發(fā)生的一系列處理操作。建立動(dòng)態(tài)模型過程:編寫腳本(用例)提取事件順序圖狀態(tài)轉(zhuǎn)換圖動(dòng)態(tài)模型:描述對(duì)象和關(guān)系的狀態(tài)、狀態(tài)轉(zhuǎn)換的觸發(fā)事件以及對(duì)象11功能模型:用來說明如何處理數(shù)據(jù),數(shù)據(jù)之間有何依賴關(guān)系,并表明系統(tǒng)的有關(guān)功能。建立功能模型過程:確定輸入、輸出值畫數(shù)據(jù)(程序)流程圖定義服務(wù)。功能模型:用來說明如何處理數(shù)據(jù),數(shù)據(jù)之間有何依賴關(guān)系,并表12系統(tǒng)軟件設(shè)計(jì)思路圖8.2設(shè)計(jì)思路圖系統(tǒng)軟件設(shè)計(jì)思路圖8.2設(shè)計(jì)思路圖138.4嵌入式開發(fā)環(huán)境的建立

(以嵌入式linux操作系統(tǒng)為例)1.安裝虛擬機(jī)和Linux操作系統(tǒng)

基于Linux操作系統(tǒng)的嵌入式系統(tǒng)開發(fā)環(huán)境可在宿主機(jī)上安裝Linux操作系統(tǒng)。在開發(fā)過程中計(jì)算機(jī)可安裝了虛擬機(jī)VMware,并在這基礎(chǔ)上安裝了Linux操作系統(tǒng)Ubuntu。

8.4嵌入式開發(fā)環(huán)境的建立14

在VMware上安裝Linux操作系統(tǒng)Ubuntu有幾個(gè)好處。安裝完成并啟動(dòng)Ubuntu后,鼠標(biāo)即可在windows系統(tǒng)和Ubuntu系統(tǒng)之間自由切換。windows系統(tǒng)和Ubuntu系統(tǒng)之間還可以使用復(fù)制、粘貼數(shù)據(jù)的功能可以通過建立共享文件夾的方式,方便兩個(gè)操作系統(tǒng)間傳送數(shù)據(jù)、文件。在VMware上安裝Linux操作系統(tǒng)Ubuntu152.

建立交叉編譯環(huán)境開發(fā)環(huán)境搭建:根據(jù)所選cpu及開發(fā)板確定使用交叉編譯工具鏈。在編譯好交叉編譯工具鏈后,要在環(huán)境變量的PATH中添加編譯工具的路徑(也就是arm-*-linux-*-gcc所在的路徑),這樣在編譯時(shí)系統(tǒng)才找得到編譯器的命令。在Ubuntu下的修改方法如下:

vi~/.profile,

在最后加上:PATH="<交叉編譯工具的路徑>:$PATH"。2.建立交叉編譯環(huán)境16建立nfs服務(wù)器:

安裝nfs服務(wù)器程序、配置服務(wù)器端、測試服務(wù)器3.

QT圖形界面開發(fā)環(huán)境的建立安裝交叉編譯環(huán)境

下載、解壓交叉編譯器,修改環(huán)境變量;把交叉編譯器的路徑加入到PATH;檢查是否將路徑加入到PATH

;測試是否安裝成功。建立nfs服務(wù)器:17QT/Embedded安裝移植

下載QT/Embedded源碼包(如有觸摸屏則還需下載tslib1.4.tar.gz)、配置ubuntu編譯環(huán)境、編譯及安裝qt-x11-opensource-src-*(作用:產(chǎn)生Qt開發(fā)工具,如designer、qvfb,嵌入式的開發(fā)有了qvfb,就可以不需要實(shí)際的開發(fā)板,也可以調(diào)試Qt應(yīng)用程序)、編譯配置QtEmbedded-4.5.3-x86(或-xarm)版本、編譯安裝tslib1.4(如有觸摸屏)在宿主機(jī)上建立NFS啟動(dòng)根文件系統(tǒng),把編譯好的庫文件復(fù)制到相關(guān)目錄下。QT/Embedded安裝移植188.4實(shí)例:基于嵌入式技術(shù)的便攜式心電監(jiān)護(hù)儀軟件系統(tǒng)設(shè)計(jì)1.系統(tǒng)硬件總體結(jié)構(gòu)

圖8.3硬件結(jié)構(gòu)框圖

8.4實(shí)例:基于嵌入式技術(shù)的便攜式心電監(jiān)護(hù)儀軟件系統(tǒng)設(shè)計(jì)192.軟件系統(tǒng)設(shè)計(jì)

使用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法利用Qt進(jìn)行編程。設(shè)計(jì)步驟如下:A)系統(tǒng)軟件定義與需求分析系統(tǒng)軟件定義:基于32位嵌入式系統(tǒng)的便攜式心電監(jiān)護(hù)系統(tǒng),具有心電信號(hào)實(shí)時(shí)顯示和簡易自動(dòng)分析功能,并能對(duì)心電異常作及時(shí)報(bào)警處理,可應(yīng)用于家庭、社區(qū)醫(yī)院及流動(dòng)醫(yī)療站等場所。需求分析:

實(shí)時(shí)地采集心電和動(dòng)態(tài)顯示心電信號(hào)計(jì)算并顯示心率計(jì)算并顯示ST段幅值心率報(bào)警,當(dāng)心率異常時(shí),亮報(bào)警燈或鳴報(bào)警聲2.軟件系統(tǒng)設(shè)計(jì)20ST段幅值報(bào)警,當(dāng)ST段幅值超出某個(gè)范圍值時(shí),亮報(bào)警燈或鳴報(bào)警聲報(bào)警設(shè)置,可以分別設(shè)置心率和ST段的正常范圍凍結(jié),心電信號(hào)停止動(dòng)態(tài)顯示,能前后查看顯示實(shí)時(shí)時(shí)間去除50Hz工頻干擾可選擇采樣頻率,可選擇顯示放大倍數(shù)B)系統(tǒng)軟件概要設(shè)計(jì)設(shè)計(jì)對(duì)象模型畫出用例圖ST段幅值報(bào)警,當(dāng)ST段幅值超出某個(gè)范圍值時(shí),亮報(bào)警燈或鳴報(bào)21圖8.4心電監(jiān)護(hù)用例圖圖8.4心電監(jiān)護(hù)用例圖22細(xì)化用例(說明用例)Usecase:采集心電信號(hào)ID:1Briefdescription:采集心電信號(hào),保存至緩沖區(qū)Primaryactors:UserPreconditions:啟動(dòng)硬件設(shè)備,連接好心電導(dǎo)聯(lián)Mainflows:用戶點(diǎn)擊“開始”按鈕系統(tǒng)開始采集心電信號(hào),保存至緩沖區(qū),“開始”按鈕變?yōu)椤巴V埂睌U(kuò)展點(diǎn):處理心電信號(hào)Postconditions:系統(tǒng)發(fā)送提示緩沖池已滿的信號(hào)Alternativeflows:沒有細(xì)化用例(說明用例)Usecase:采集心電信號(hào)ID:123Usecase:停止心電信號(hào)采集ID:2Briefdescription:停止采集心電信號(hào)Primaryactors:UserPreconditions:啟動(dòng)硬件設(shè)備,連接好心電導(dǎo)聯(lián)Mainflows:用戶點(diǎn)擊“停止”按鈕系統(tǒng)停止采集心電信號(hào),“停止”按鈕變?yōu)椤伴_始”Postconditions:Alternativeflows:沒有Usecase:停止心電信號(hào)采集ID:2Briefd24Usecase:顯示心電信號(hào)ID:3Briefdescription:系統(tǒng)在屏幕上動(dòng)態(tài)顯示心電信號(hào)Actors:用戶Preconditions:沒有Mainflows:1.(o1.)用戶選擇“播放”心電信號(hào)2.系統(tǒng)接收緩沖池已滿的信號(hào),更新顯示內(nèi)容3.(o2.)系統(tǒng)在屏幕上顯示心電信號(hào)4.系統(tǒng)將“播放”轉(zhuǎn)換為“凍結(jié)”Postconditions:沒有Alternativeflows:沒有Usecase:顯示心電信號(hào)ID:3Briefdesc25Usecase:凍結(jié)心電信號(hào)ID:4Briefdescription:系統(tǒng)在屏幕上靜態(tài)顯示心電信號(hào)Actors:用戶Preconditions:沒有Mainflows:1.(o1)用戶選擇“凍結(jié)”心電信號(hào)2、系統(tǒng)接收緩沖池已滿的信號(hào)3.(o2)系統(tǒng)在屏幕上顯示心電信號(hào)4.系統(tǒng)將“凍結(jié)”轉(zhuǎn)換為“播放”Postconditions:沒有Alternativeflows:沒有Usecase:凍結(jié)心電信號(hào)ID:4Briefdesc26Usecase:設(shè)置參數(shù)ID:5Briefdescription:用戶設(shè)置系統(tǒng)運(yùn)行的參數(shù)Actors:用戶Preconditions:沒有Mainflows:1.1如果用戶選擇了“軟增益”

系統(tǒng)顯示軟增益設(shè)置界面,用戶設(shè)置軟增益1.2如果用戶選擇了“掃描速度選擇”

系統(tǒng)顯示掃描速度選擇設(shè)置界面,用戶設(shè)置掃描速度1.3如果用戶選擇了“設(shè)置濾波參數(shù)”

系統(tǒng)顯示設(shè)置濾波參數(shù)設(shè)置界面,用戶設(shè)置濾波參數(shù)1.4如果用戶選擇了“設(shè)置報(bào)警參數(shù)”

系統(tǒng)顯示設(shè)置報(bào)警參數(shù)設(shè)置界面,用戶設(shè)置報(bào)警參數(shù)2.用戶點(diǎn)擊“確定”按鈕3.系統(tǒng)保存參數(shù)Postconditions:沒有Alternativeflows:沒有Usecase:設(shè)置參數(shù)ID:5Briefdescr27Usecase:啟動(dòng)報(bào)警ID:6Briefdescription:系統(tǒng)停止聲光報(bào)警Actors:用戶Preconditions:系統(tǒng)已啟動(dòng)Mainflows:1、用戶按下“啟動(dòng)報(bào)警”按鈕2、系統(tǒng)啟動(dòng)報(bào)警檢測3、“啟動(dòng)報(bào)警”按鈕轉(zhuǎn)換成“停止報(bào)警”Postconditions:沒有Alternativeflows:沒有Usecase:啟動(dòng)報(bào)警ID:6Briefdescri28Usecase:停止報(bào)警ID:7Briefdescription:系統(tǒng)停止聲光報(bào)警Actors:用戶Preconditions:系統(tǒng)已啟動(dòng)Mainflows:1、用戶按下“停止報(bào)警”按鈕2、系統(tǒng)停止聲光報(bào)警3、“停止報(bào)警”按鈕轉(zhuǎn)換成“啟動(dòng)報(bào)警”Postconditions:沒有Alternativeflows:沒有Usecase:停止報(bào)警ID:7Briefdescri29Usecase:刷新顯示ID:8Briefdescription:系統(tǒng)刷新顯示界面Actors:系統(tǒng)定時(shí)器Preconditions:系統(tǒng)已啟動(dòng)Mainflows:1、系統(tǒng)刷新定時(shí)器定時(shí)時(shí)間到2、系統(tǒng)刷新顯示界面Postconditions:沒有Alternativeflows:沒有Usecase:刷新顯示ID:8Briefdescri30確定設(shè)計(jì)類ECGmonitor心電監(jiān)護(hù)類DeviceRecorder采集設(shè)備類VolumeDialog軟增益對(duì)話框類SpeedDialog掃描速度對(duì)話框類FilterDialog濾波設(shè)置對(duì)話框類AlarmDialog報(bào)警對(duì)話框類Alarm報(bào)警類確定設(shè)計(jì)類31確定類關(guān)系確定類關(guān)系32設(shè)計(jì)動(dòng)態(tài)模型圖8.5啟動(dòng)、停止心電信號(hào)采集順序圖設(shè)計(jì)動(dòng)態(tài)模型圖8.5啟動(dòng)、停止心電信號(hào)采集順序圖33第八章醫(yī)學(xué)儀器嵌入式應(yīng)用8.1嵌入式醫(yī)學(xué)儀器設(shè)計(jì)概述嵌入式醫(yī)學(xué)儀器應(yīng)視為一個(gè)數(shù)據(jù)采集與信息處理系統(tǒng),其設(shè)計(jì)應(yīng)遵循數(shù)據(jù)采集與信息處理系統(tǒng)的原則,它的技術(shù)路線與方案如下所示:第八章醫(yī)學(xué)儀器嵌入式應(yīng)用8.1嵌入式醫(yī)學(xué)儀器設(shè)計(jì)概述341.安全可靠醫(yī)學(xué)檢測系統(tǒng)中的控制計(jì)算機(jī)不同于一般的用于科學(xué)計(jì)算或管理的計(jì)算機(jī),它所擔(dān)當(dāng)控制重任不允許它發(fā)生異?,F(xiàn)象。因此,在設(shè)計(jì)過程中,要把安全可靠放在首位。從上述觀點(diǎn)出發(fā)首先要選用高性能的控制計(jì)算機(jī),其次還常設(shè)計(jì)后備裝置,對(duì)于特殊的控制對(duì)象還得設(shè)計(jì)成雙機(jī)系統(tǒng)。1.安全可靠352.操作維護(hù)方便操作方便表現(xiàn)在操作簡單、直觀形象、便于掌握,并不強(qiáng)求操作人員要掌握計(jì)算機(jī)知識(shí)才能操作。因而本系統(tǒng)操作顯示界面應(yīng)遵循上述原則進(jìn)行設(shè)計(jì)。3.實(shí)時(shí)性強(qiáng)醫(yī)學(xué)檢測儀器系統(tǒng)的實(shí)時(shí)性,表現(xiàn)在對(duì)內(nèi)部和外部事件能及時(shí)地響應(yīng),并做出相應(yīng)的處理,不丟失信息,不延誤操作。2.操作維護(hù)方便364.通用性好醫(yī)學(xué)儀器中的控制計(jì)算機(jī)的通用性體現(xiàn)在兩方面,一是硬件模板設(shè)計(jì)采用標(biāo)準(zhǔn)總線結(jié)構(gòu),配置各種通用的功能模板,以便在擴(kuò)充功能時(shí),只需增加功能模板就能實(shí)現(xiàn);二是軟件模塊或控制算法采用標(biāo)準(zhǔn)模塊結(jié)構(gòu),用戶使用時(shí)不需要二次開發(fā),只需按要求選擇各種功能模塊,靈活地進(jìn)行控制系統(tǒng)組態(tài)。4.通用性好375.經(jīng)濟(jì)效益高計(jì)算機(jī)控制應(yīng)該帶來高的經(jīng)濟(jì)效益,系統(tǒng)設(shè)計(jì)時(shí)要考慮性能價(jià)格比,要有市場競爭意識(shí)。經(jīng)濟(jì)效益表現(xiàn)在兩個(gè)方面,一是系統(tǒng)設(shè)計(jì)的性能價(jià)格比要盡可能的高;二是投入產(chǎn)出比要盡可能的低。5.經(jīng)濟(jì)效益高388.2嵌入式數(shù)據(jù)采集系統(tǒng)組成數(shù)據(jù)采集系統(tǒng)(圖8-1)由多路開關(guān)、采樣/保持器、放大器、A/D轉(zhuǎn)換器、計(jì)算機(jī)等組成。數(shù)據(jù)采集要經(jīng)過采樣和量化兩個(gè)步驟。采樣過程由多路開關(guān)、采樣/保持器完成(如信號(hào)變化很慢,也可以不用采樣/保持器)。多路開關(guān)將各路信號(hào)輪流切換到輸入端。A/D轉(zhuǎn)換器將采樣信號(hào)量化,將轉(zhuǎn)換成的數(shù)字量輸入到計(jì)算機(jī)中。放大器、濾波器可根據(jù)被測信號(hào)的大小、頻譜分布及干擾的強(qiáng)弱選用。8.2嵌入式數(shù)據(jù)采集系統(tǒng)組成39傳感器傳感器傳感器多路開關(guān)放大器計(jì)算機(jī)A/D轉(zhuǎn)換器采樣/保持器圖8.1數(shù)據(jù)采集系統(tǒng)組成傳感器傳感器傳感器多放計(jì)A采圖8.1數(shù)據(jù)采集系統(tǒng)組成408.3嵌入式醫(yī)學(xué)儀器系統(tǒng)軟件設(shè)計(jì)1系統(tǒng)軟件定義與需求分析系統(tǒng)軟件定義:

系統(tǒng)軟件定義的目的是明確系統(tǒng)目標(biāo)規(guī)模和基本要求,確定系統(tǒng)軟件實(shí)現(xiàn)的基本功能和系統(tǒng)輸入及輸出。8.3嵌入式醫(yī)學(xué)儀器系統(tǒng)軟件設(shè)計(jì)41需求分析:

需求分析的基本任務(wù)是軟件開發(fā)人員與用戶一起完全弄清用戶對(duì)系統(tǒng)的確切要求。目的是確定目標(biāo)系統(tǒng)的運(yùn)行環(huán)境與性能要求以及系統(tǒng)功能。2面向?qū)ο笙到y(tǒng)軟件概要設(shè)計(jì)

通過以上系統(tǒng)基本功能的確定與需求分析后,我們就可以進(jìn)一步進(jìn)行程序設(shè)計(jì),以確立系統(tǒng)的對(duì)象模型、動(dòng)態(tài)模型、功能模型。需求分析:

需求分析的基本任務(wù)是軟件開發(fā)人員與42對(duì)象模型是三個(gè)模型中最關(guān)鍵的一個(gè)模型,它表示靜態(tài)的、結(jié)構(gòu)化的系統(tǒng)的“數(shù)據(jù)”性質(zhì)。描述了系統(tǒng)的靜態(tài)結(jié)構(gòu)。建立對(duì)象模型首先確定對(duì)象、類,然后分析對(duì)象的類及其相互關(guān)系對(duì)象:是系統(tǒng)中用來描述客觀事物的一個(gè)實(shí)體,是構(gòu)成系統(tǒng)的一個(gè)基本單位,由一組屬性和對(duì)這組屬性進(jìn)行操作的一組服務(wù)構(gòu)成。類:是具有相同屬性和服務(wù)的一組對(duì)象的集合。類為屬于它的全部對(duì)象提供了統(tǒng)一的抽象描述(屬性和服務(wù))對(duì)象模型是三個(gè)模型中最關(guān)鍵的一個(gè)模型,它表示靜態(tài)的、結(jié)構(gòu)化的43動(dòng)態(tài)模型

:描述對(duì)象和關(guān)系的狀態(tài)、狀態(tài)轉(zhuǎn)換的觸發(fā)事件以及對(duì)象的服務(wù)(行為)。即描述對(duì)象和關(guān)系的生成周期。狀態(tài):對(duì)象在其生成周期中的某個(gè)特定階段所具有的行為模式。事件:事件是引起對(duì)象狀態(tài)轉(zhuǎn)換的控制信息。服務(wù):也稱為行為,對(duì)象在某種狀態(tài)下所發(fā)生的一系列處理操作。建立動(dòng)態(tài)模型過程:編寫腳本(用例)提取事件順序圖狀態(tài)轉(zhuǎn)換圖動(dòng)態(tài)模型:描述對(duì)象和關(guān)系的狀態(tài)、狀態(tài)轉(zhuǎn)換的觸發(fā)事件以及對(duì)象44功能模型:用來說明如何處理數(shù)據(jù),數(shù)據(jù)之間有何依賴關(guān)系,并表明系統(tǒng)的有關(guān)功能。建立功能模型過程:確定輸入、輸出值畫數(shù)據(jù)(程序)流程圖定義服務(wù)。功能模型:用來說明如何處理數(shù)據(jù),數(shù)據(jù)之間有何依賴關(guān)系,并表45系統(tǒng)軟件設(shè)計(jì)思路圖8.2設(shè)計(jì)思路圖系統(tǒng)軟件設(shè)計(jì)思路圖8.2設(shè)計(jì)思路圖468.4嵌入式開發(fā)環(huán)境的建立

(以嵌入式linux操作系統(tǒng)為例)1.安裝虛擬機(jī)和Linux操作系統(tǒng)

基于Linux操作系統(tǒng)的嵌入式系統(tǒng)開發(fā)環(huán)境可在宿主機(jī)上安裝Linux操作系統(tǒng)。在開發(fā)過程中計(jì)算機(jī)可安裝了虛擬機(jī)VMware,并在這基礎(chǔ)上安裝了Linux操作系統(tǒng)Ubuntu。

8.4嵌入式開發(fā)環(huán)境的建立47

在VMware上安裝Linux操作系統(tǒng)Ubuntu有幾個(gè)好處。安裝完成并啟動(dòng)Ubuntu后,鼠標(biāo)即可在windows系統(tǒng)和Ubuntu系統(tǒng)之間自由切換。windows系統(tǒng)和Ubuntu系統(tǒng)之間還可以使用復(fù)制、粘貼數(shù)據(jù)的功能可以通過建立共享文件夾的方式,方便兩個(gè)操作系統(tǒng)間傳送數(shù)據(jù)、文件。在VMware上安裝Linux操作系統(tǒng)Ubuntu482.

建立交叉編譯環(huán)境開發(fā)環(huán)境搭建:根據(jù)所選cpu及開發(fā)板確定使用交叉編譯工具鏈。在編譯好交叉編譯工具鏈后,要在環(huán)境變量的PATH中添加編譯工具的路徑(也就是arm-*-linux-*-gcc所在的路徑),這樣在編譯時(shí)系統(tǒng)才找得到編譯器的命令。在Ubuntu下的修改方法如下:

vi~/.profile,

在最后加上:PATH="<交叉編譯工具的路徑>:$PATH"。2.建立交叉編譯環(huán)境49建立nfs服務(wù)器:

安裝nfs服務(wù)器程序、配置服務(wù)器端、測試服務(wù)器3.

QT圖形界面開發(fā)環(huán)境的建立安裝交叉編譯環(huán)境

下載、解壓交叉編譯器,修改環(huán)境變量;把交叉編譯器的路徑加入到PATH;檢查是否將路徑加入到PATH

;測試是否安裝成功。建立nfs服務(wù)器:50QT/Embedded安裝移植

下載QT/Embedded源碼包(如有觸摸屏則還需下載tslib1.4.tar.gz)、配置ubuntu編譯環(huán)境、編譯及安裝qt-x11-opensource-src-*(作用:產(chǎn)生Qt開發(fā)工具,如designer、qvfb,嵌入式的開發(fā)有了qvfb,就可以不需要實(shí)際的開發(fā)板,也可以調(diào)試Qt應(yīng)用程序)、編譯配置QtEmbedded-4.5.3-x86(或-xarm)版本、編譯安裝tslib1.4(如有觸摸屏)在宿主機(jī)上建立NFS啟動(dòng)根文件系統(tǒng),把編譯好的庫文件復(fù)制到相關(guān)目錄下。QT/Embedded安裝移植518.4實(shí)例:基于嵌入式技術(shù)的便攜式心電監(jiān)護(hù)儀軟件系統(tǒng)設(shè)計(jì)1.系統(tǒng)硬件總體結(jié)構(gòu)

圖8.3硬件結(jié)構(gòu)框圖

8.4實(shí)例:基于嵌入式技術(shù)的便攜式心電監(jiān)護(hù)儀軟件系統(tǒng)設(shè)計(jì)522.軟件系統(tǒng)設(shè)計(jì)

使用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法利用Qt進(jìn)行編程。設(shè)計(jì)步驟如下:A)系統(tǒng)軟件定義與需求分析系統(tǒng)軟件定義:基于32位嵌入式系統(tǒng)的便攜式心電監(jiān)護(hù)系統(tǒng),具有心電信號(hào)實(shí)時(shí)顯示和簡易自動(dòng)分析功能,并能對(duì)心電異常作及時(shí)報(bào)警處理,可應(yīng)用于家庭、社區(qū)醫(yī)院及流動(dòng)醫(yī)療站等場所。需求分析:

實(shí)時(shí)地采集心電和動(dòng)態(tài)顯示心電信號(hào)計(jì)算并顯示心率計(jì)算并顯示ST段幅值心率報(bào)警,當(dāng)心率異常時(shí),亮報(bào)警燈或鳴報(bào)警聲2.軟件系統(tǒng)設(shè)計(jì)53ST段幅值報(bào)警,當(dāng)ST段幅值超出某個(gè)范圍值時(shí),亮報(bào)警燈或鳴報(bào)警聲報(bào)警設(shè)置,可以分別設(shè)置心率和ST段的正常范圍凍結(jié),心電信號(hào)停止動(dòng)態(tài)顯示,能前后查看顯示實(shí)時(shí)時(shí)間去除50Hz工頻干擾可選擇采樣頻率,可選擇顯示放大倍數(shù)B)系統(tǒng)軟件概要設(shè)計(jì)設(shè)計(jì)對(duì)象模型畫出用例圖ST段幅值報(bào)警,當(dāng)ST段幅值超出某個(gè)范圍值時(shí),亮報(bào)警燈或鳴報(bào)54圖8.4心電監(jiān)護(hù)用例圖圖8.4心電監(jiān)護(hù)用例圖55細(xì)化用例(說明用例)Usecase:采集心電信號(hào)ID:1Briefdescription:采集心電信號(hào),保存至緩沖區(qū)Primaryactors:UserPreconditions:啟動(dòng)硬件設(shè)備,連接好心電導(dǎo)聯(lián)Mainflows:用戶點(diǎn)擊“開始”按鈕系統(tǒng)開始采集心電信號(hào),保存至緩沖區(qū),“開始”按鈕變?yōu)椤巴V埂睌U(kuò)展點(diǎn):處理心電信號(hào)Postconditions:系統(tǒng)發(fā)送提示緩沖池已滿的信號(hào)Alternativeflows:沒有細(xì)化用例(說明用例)Usecase:采集心電信號(hào)ID:156Usecase:停止心電信號(hào)采集ID:2Briefdescription:停止采集心電信號(hào)Primaryactors:UserPreconditions:啟動(dòng)硬件設(shè)備,連接好心電導(dǎo)聯(lián)Mainflows:用戶點(diǎn)擊“停止”按鈕系統(tǒng)停止采集心電信號(hào),“停止”按鈕變?yōu)椤伴_始”Postconditions:Alternativeflows:沒有Usecase:停止心電信號(hào)采集ID:2Briefd57Usecase:顯示心電信號(hào)ID:3Briefdescription:系統(tǒng)在屏幕上動(dòng)態(tài)顯示心電信號(hào)Actors:用戶Preconditions:沒有Mainflows:1.(o1.)用戶選擇“播放”心電信號(hào)2.系統(tǒng)接收緩沖池已滿的信號(hào),更新顯示內(nèi)容3.(o2.)系統(tǒng)在屏幕上顯示心電信號(hào)4.系統(tǒng)將“播放”轉(zhuǎn)換為“凍結(jié)”Postconditions:沒有Alternativeflows:沒有Usecase:顯示心電信號(hào)ID:3Briefdesc58Usecase:凍結(jié)心電信號(hào)ID:4Briefdescription:系統(tǒng)在屏幕上靜態(tài)顯示心電信號(hào)Actors:用戶Preconditions:沒有Mainflows:1.(o1)用戶選擇“凍結(jié)”心電信號(hào)2、系統(tǒng)接收緩沖池已滿的信號(hào)3.(o2)系統(tǒng)在屏幕上顯示心電信號(hào)4.系統(tǒng)將“凍結(jié)”轉(zhuǎn)換為“播放”Postconditions:沒有Alternativeflows:沒有Usecase:凍結(jié)心電信號(hào)ID:4Briefdesc59Usecase:設(shè)置參數(shù)ID:5Briefdescription:用戶設(shè)置系統(tǒng)運(yùn)行的參數(shù)Actors:用戶Preconditions:沒有Mainflows:1.1如果用戶選擇了“軟增益”

系統(tǒng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論