![WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)設(shè)計_第1頁](http://file4.renrendoc.com/view14/M02/37/22/wKhkGWYZ3IaAF1p7AAH_lfaTh6M677.jpg)
![WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)設(shè)計_第2頁](http://file4.renrendoc.com/view14/M02/37/22/wKhkGWYZ3IaAF1p7AAH_lfaTh6M6772.jpg)
![WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)設(shè)計_第3頁](http://file4.renrendoc.com/view14/M02/37/22/wKhkGWYZ3IaAF1p7AAH_lfaTh6M6773.jpg)
![WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)設(shè)計_第4頁](http://file4.renrendoc.com/view14/M02/37/22/wKhkGWYZ3IaAF1p7AAH_lfaTh6M6774.jpg)
![WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)設(shè)計_第5頁](http://file4.renrendoc.com/view14/M02/37/22/wKhkGWYZ3IaAF1p7AAH_lfaTh6M6775.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
-7-WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)設(shè)摘要對于傳統(tǒng)的醫(yī)療健康監(jiān)護(hù)系統(tǒng)功能單一,僅僅只能顯示病人的基本信息,并不能及時注意到病人的身體情況,以及準(zhǔn)確定位病人位置以便及時治療,因此設(shè)計一款能夠幫助患者,提高醫(yī)護(hù)人員救助效率的遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)是很有必要的。本系統(tǒng)主要設(shè)計一個WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)?;赟TM32單片機(jī)通過紅外體溫傳感器、血氧心率傳感器、WIFI模塊、GPS模塊、報警模塊對醫(yī)療健康監(jiān)護(hù)系統(tǒng)進(jìn)行設(shè)計。并完成具有能檢測病人體溫、心率、脈搏生理體征參數(shù)等信息以及數(shù)據(jù)上傳報警向醫(yī)生發(fā)送位置信息等功能的設(shè)計。以STM32F1芯片為CPU控制血氧心率采集模塊、人體體溫采集模塊,數(shù)據(jù)傳輸模塊,其具有功能豐富,使用簡單,測量數(shù)據(jù)準(zhǔn)確,性能穩(wěn)定等多個優(yōu)點(diǎn)。并可以把經(jīng)過檢測將實(shí)時檢測人體血氧濃度,心率快慢以及人體溫度反饋給數(shù)據(jù)庫,同時醫(yī)療人員也可以遠(yuǎn)程獲取到數(shù)據(jù),如果數(shù)據(jù)異常也可以及時搶救病人,大大降低了病人因治療不及時而造成損失的風(fēng)險。并通過各種算法,實(shí)現(xiàn)數(shù)據(jù)的準(zhǔn)確性以及穩(wěn)定性,最終得到一款人性化,性能高的監(jiān)護(hù)系統(tǒng)。關(guān)鍵詞:STM32單片機(jī);血氧心率采集模塊;體溫采集模塊;數(shù)據(jù)傳輸模塊目錄第1章緒論 11.1課題意義與背景 11.2國內(nèi)外研究現(xiàn)狀 11.3本文主要研究的內(nèi)容 2第2章系統(tǒng)整體設(shè)計方案 32.1WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)的需求分析 32.2系統(tǒng)總體方案設(shè)計 32.3控制方式的選擇 42.3.1單片機(jī)芯片的選擇 42.3.2血氧心率采集模塊的選擇 52.3.3體溫采集模塊的選擇 52.3.4定位模塊的選擇 62.3.5WIFI模塊的選擇 62.3.6報警模塊的選擇 62.4本章小結(jié) 6第3章硬件系統(tǒng)設(shè)計 73.1系統(tǒng)硬件電路設(shè)計 73.2晶振、復(fù)位與SWD下載電路 73.3MAX30100血氧心率模塊電路 83.4體溫傳感器模塊電路 93.5GPS模塊電路 93.6WIFI模塊電路 93.7報警模塊電路 10第4章軟件系統(tǒng)設(shè)計 114.1軟件整體框架 114.2軟件設(shè)計 114.2.1血氧心率采集程序 124.2.2體溫采集程序 154.2.3GPS定位程序 164.2.4WIFI程序 164.2.5報警程序 184.2.5上位機(jī)程序 19第5章WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)仿真 205.1WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)仿真 205.2WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)的調(diào)試 215.3系統(tǒng)功能驗(yàn)證 225.3.1顯示模塊 225.3.2檢測模塊 22第6章總結(jié) 23參考文獻(xiàn) 24致謝 26附錄 27附錄A原理圖 27附錄B主程序 27保定理工學(xué)院本科畢業(yè)設(shè)計第1章緒論1.1課題意義與背景隨著社會經(jīng)濟(jì)的發(fā)展,國民素質(zhì)逐漸提高,另外科技發(fā)展也引起醫(yī)療事業(yè)的大幅度進(jìn)步,因此我國的老齡化問題日趨嚴(yán)重,尤其是80后這代人則一個孩子贈養(yǎng)兩個老人,養(yǎng)老負(fù)擔(dān)空前沉重[14]。與此同時,目前國內(nèi)的衛(wèi)生資源還面臨著分布不均衡等問題,這些問題都集中表現(xiàn)為:治療和治療的能量總量相對不高,政府相應(yīng)的投資力度偏??;醫(yī)療服務(wù)水平不高,很難滿足病人的需要。當(dāng)前,我國醫(yī)療機(jī)構(gòu)普遍存在著效率低下和醫(yī)療物資資源浪費(fèi)兩大現(xiàn)象,造成這些問題的主要原因還在不同的區(qū)域、城市;他們的醫(yī)療資源,并不均衡。在病人住院時,醫(yī)療器械顯示的數(shù)據(jù)作為醫(yī)生判斷病人生命體征是否正常的條件,但是需要醫(yī)生及時根據(jù)數(shù)據(jù)進(jìn)行判斷,這對于醫(yī)療條件緊張、醫(yī)護(hù)人員緊張的地區(qū),24小時監(jiān)護(hù)是明顯做不到的,這樣會使得醫(yī)生不能迅速地了解患者的生命體征變化,從而導(dǎo)致患者出現(xiàn)情況不能快速的被醫(yī)生發(fā)現(xiàn)。因此健康監(jiān)護(hù)系統(tǒng)的建立成為大勢所趨,提升了醫(yī)院醫(yī)療設(shè)備的便捷性和智能化以及效率,引起了國內(nèi)外研究者的關(guān)注,形成了較多的研究成果。1.2國內(nèi)外研究現(xiàn)狀本文在《家庭遠(yuǎn)程健康監(jiān)護(hù)云服務(wù)系統(tǒng)設(shè)計》一書中介紹了該技術(shù),并給出了具體實(shí)現(xiàn)方案。該系統(tǒng)主要包括了物聯(lián)網(wǎng)健康監(jiān)護(hù)終端、家庭監(jiān)護(hù)網(wǎng)關(guān)、中心云服務(wù)器以及信息服務(wù)終端【14】。物聯(lián)網(wǎng)健康監(jiān)測終端利用
WIFI作為無線傳送手段,對病人的血壓進(jìn)行收集,同時,家庭監(jiān)測網(wǎng)關(guān)從物聯(lián)網(wǎng)血壓計中獲取并將其傳送到中央云服務(wù)器:使用
CART決策樹、隨機(jī)森林和梯度提升;采用K-最近鄰居等方法,對不同性別、不同年齡和不同身高的高血壓進(jìn)行了分類和診斷;以體重,收縮壓,舒張壓為主要指標(biāo)對高血壓進(jìn)行了定性和定量的分析。利用小波變換、神經(jīng)網(wǎng)絡(luò)等技術(shù),對具有非線性、非平穩(wěn)性的血壓數(shù)據(jù)進(jìn)行了建模。最終,開發(fā)出一套能夠進(jìn)行血壓數(shù)據(jù)輸入、數(shù)據(jù)查詢、高血壓診斷及血壓預(yù)報的家用遠(yuǎn)程監(jiān)控系統(tǒng)和血壓預(yù)報系統(tǒng)。在葉琦的《基于
WIFI的遠(yuǎn)程健康監(jiān)護(hù)系統(tǒng)設(shè)計》中,她使用了
ST公司的STM32系列
MCU作為她的實(shí)驗(yàn)平臺,利用兩臺計算機(jī)之間的WiFi通訊,將從機(jī)上獲得的相關(guān)信息,以及從機(jī)上再利用WiFi將這些信息傳送給主機(jī)上,再利用主機(jī)上的LCD12864液晶屏幕,對這些信息進(jìn)行實(shí)時的顯示,從而達(dá)到調(diào)整大氣環(huán)境質(zhì)量的目的。整個房間一共有四張病床,只需按下相應(yīng)的按鈕即可調(diào)用。與中國相比,醫(yī)學(xué)監(jiān)測在海外發(fā)展迅速,技術(shù)也處于中國的前列,隨著遠(yuǎn)程醫(yī)學(xué)應(yīng)用范圍的擴(kuò)大,其應(yīng)用范圍也在逐步擴(kuò)大;在海外,無線醫(yī)學(xué)監(jiān)控系統(tǒng)的發(fā)展非???。2021年AbedNJ;HusseinEhabAbdulrazzaq在《DesignandmplementationofRealTimeHealthCareMonitoringSystemBasedonlot》中提出基于網(wǎng)絡(luò)的傳感器或基于移動的應(yīng)用程序,這些設(shè)備通過網(wǎng)絡(luò)進(jìn)行通信,使構(gòu)建的監(jiān)測和記錄患者醫(yī)療數(shù)據(jù)和健康信息的系統(tǒng)更加有效。設(shè)計了一個由傳感器和監(jiān)測設(shè)備組成的衛(wèi)生系統(tǒng),該系統(tǒng)能夠收集患者的醫(yī)療數(shù)據(jù),然后通過互聯(lián)網(wǎng)將這些數(shù)據(jù)傳輸給??漆t(yī)生,以便準(zhǔn)確地評估患者的健康狀況。目前,物聯(lián)網(wǎng)(loT)在醫(yī)療保健領(lǐng)域是最重要的部分,它可以提供更好的思者健康監(jiān)測,讓醫(yī)生和醫(yī)院更好地工作,減少工作難度。該計劃旨在開發(fā)一種適當(dāng)?shù)谋O(jiān)測系統(tǒng)。通過互聯(lián)網(wǎng)將患者和居住在偏遠(yuǎn)地區(qū)、附近沒有醫(yī)院的患者連接起來,為他們提供更好的醫(yī)療服務(wù),通過能夠記錄患者心率、血氧百分比和體溫的設(shè)備收集與患者健康有關(guān)的數(shù)據(jù)[11]。在全球醫(yī)療監(jiān)護(hù)網(wǎng)絡(luò)設(shè)備市場中,國外產(chǎn)品擁有多樣化配置,但是價格昂貴沒有得到大范圍普及。因此設(shè)計硬件和軟件管理系統(tǒng)高度結(jié)合的安全的、高性價比的遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)具有很廣的市場前景。1.3本文主要研究的內(nèi)容本系統(tǒng)主要設(shè)計一個WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)[14]?;赟TM32單片機(jī)通過紅外體溫傳感器、血氧心率傳感器、WIFI模塊、GPS模塊、報警模塊對醫(yī)療健康監(jiān)護(hù)系統(tǒng)進(jìn)行設(shè)計。設(shè)計完成具有能檢測病人體溫、心率、脈搏生理體征參數(shù)等信息以及數(shù)據(jù)上傳報警向醫(yī)生發(fā)送位置信息等功能的設(shè)計。通過各種算法,實(shí)現(xiàn)數(shù)據(jù)的準(zhǔn)確性以及穩(wěn)定性,最終得到一款人性化,性能高的監(jiān)護(hù)系統(tǒng)[17]。第2章系統(tǒng)整體設(shè)計方案2.1WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)的需求分析WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)是一種基于現(xiàn)代科技,能夠通過對人體進(jìn)行檢測人體血氧濃度,心率以及人體溫度并傳輸給醫(yī)院數(shù)據(jù)庫進(jìn)行分析的新型智能電子設(shè)備。依照目前醫(yī)院管理現(xiàn)狀來看,病人數(shù)量遠(yuǎn)遠(yuǎn)大于護(hù)士護(hù)工人員數(shù)量,所以減少非必要的勞動力,節(jié)約時間顯得尤為重要,特別是重癥患者的治療情況緊急,甚至需要無時無刻的關(guān)注,另外,老年人逐漸增長,許多突發(fā)疾病不能及時通知監(jiān)護(hù)人,從而耽誤治療,而WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng),不僅可以幫助護(hù)士與家人快速了解病人,并且實(shí)時檢測病人當(dāng)前的心率情況與血氧情況,并且及時反饋給醫(yī)院系統(tǒng)數(shù)據(jù)庫,當(dāng)護(hù)士人員短缺或病人無人陪伴時,也不用去現(xiàn)場測量病人情況,直接在數(shù)據(jù)庫中遠(yuǎn)程查看情況,發(fā)現(xiàn)異常即可及時進(jìn)行處理,為病人的安全增添了保障。傳統(tǒng)監(jiān)護(hù)系統(tǒng)可以實(shí)現(xiàn)病人身份信息的顯示,令醫(yī)護(hù)人員方便確認(rèn)病人。通過對比傳統(tǒng)監(jiān)護(hù)系統(tǒng)的功能以及弊端,可以得到醫(yī)療腕帶具有以下優(yōu)勢特點(diǎn):(1)在不依靠其他醫(yī)療設(shè)備的情況下,檢測并顯示人體血氧濃度,心率快慢以及人體溫度,免去了繁瑣的儀器測量過程;(2)遠(yuǎn)程數(shù)據(jù)傳輸,將信息數(shù)據(jù)傳輸給數(shù)據(jù)庫,醫(yī)護(hù)人員對應(yīng)編號直接查看病人狀態(tài);(3)成本低廉,功能多樣,性價比高,而傳統(tǒng)監(jiān)護(hù)系統(tǒng)功能單一,完全可被替代。(4)包含GPS定位系統(tǒng),可以隨時精準(zhǔn)找到病人,以免因時間問題耽誤患者治療。2.2系統(tǒng)總體方案設(shè)計 結(jié)合WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)所具備的功能,本文將以單片機(jī)為核心控制不同模塊實(shí)現(xiàn)最終目的。單片機(jī)具有良好的集成度,可以大大簡化電路設(shè)計。同時,由于智能電子設(shè)備可能會頻繁的使用,所以這些設(shè)備的能耗要求非常高,因此需要設(shè)計出一些比較節(jié)能的控制模塊來提高智能電子設(shè)備的待機(jī)時常,特別是本文所設(shè)計的監(jiān)護(hù)系統(tǒng),需要長時間的開啟,而單片機(jī)的低耗能正好符合這一需求。除此之外,還將涉及到如何獲取人體血氧濃度,心率以及體溫,并將數(shù)據(jù)傳輸給數(shù)據(jù)庫,多種模塊的使用等,利用單片機(jī)更容易實(shí)現(xiàn),整個系統(tǒng)的設(shè)計主要包含了對系統(tǒng)研究方案的確定設(shè)計所需要的硬件電路的設(shè)計與軟件程序驅(qū)動的設(shè)計,以及軟件后期功能的調(diào)試。根據(jù)項(xiàng)目功能需求確定項(xiàng)目研究路線,如圖2.2.1所示。確定研究對象以及所需材料確定研究對象以及所需材料程序設(shè)計學(xué)習(xí)相關(guān)模塊驅(qū)動方法整合實(shí)物進(jìn)行測試得到準(zhǔn)確數(shù)據(jù)確定方案可行性繪制仿真和原理圖編寫程序驅(qū)動模塊根據(jù)數(shù)據(jù)進(jìn)行調(diào)試硬件設(shè)計學(xué)習(xí)相關(guān)軟件使用圖2.2.1系統(tǒng)研究路線圖單片機(jī)S單片機(jī)STM32F103血氧心率傳感器晶振與復(fù)位電路顯示電路數(shù)據(jù)傳輸電路體溫傳感器報警模塊GPS模塊手機(jī)平臺圖2.2.2硬件系統(tǒng)結(jié)構(gòu)框圖2.3控制方式的選擇2.3.1單片機(jī)芯片的選擇方案一:51
MCU從內(nèi)到外,總體上比較完善。它是以比特操作系統(tǒng)為基礎(chǔ)的,所以叫比特處理器。它不僅可以在單片機(jī)中對某些具有特定功能的比特進(jìn)行運(yùn)算,如傳送,設(shè)定,調(diào)零等;檢驗(yàn)等等,也能對比特進(jìn)行邏輯操作。功能齊全,操作簡單。但51MCU雖為經(jīng)典,但其缺點(diǎn)也十分明顯。AD、EEPROM等功能還需要依靠擴(kuò)展來使用,這為硬件與軟件增添了負(fù)擔(dān)。還有就是運(yùn)行速度過慢,尤其是雙數(shù)據(jù)指針,如果這一部分可以改進(jìn),能給編程帶來很大的方便。該設(shè)備的缺點(diǎn)很明顯,51保護(hù)能力非常差,不小心差錯方位,便很容易損毀芯片。方案二:方案2:STM32MCU的核心是ARM
32位的Cortex-M3CPU,其最大工作頻率是72毫赫,1.25
dmips/毫赫。其記憶體晶片內(nèi)有32至512
Kb閃存與6至64KbSRAM。時鐘,重置,功率管理等都是依靠23.6V供電和輸入輸出接口的驅(qū)動電壓來實(shí)現(xiàn)的。采用4~16兆赫的晶振,PDR及程控電壓檢測器。內(nèi)嵌廠注:8兆赫電阻式振蕩電路、40千赫電阻式振蕩電路.CPU、鎖相環(huán)。標(biāo)定了32KHz的RTC水晶振蕩器。除錯方式:SWD,
SWD,
JTAG接口.最多可提供112個高速輸入輸出端口,最多可提供11個計時器。除此之外,STM32單片機(jī)的學(xué)習(xí)方式非常的靈活。入門之后,通過各種模塊的學(xué)習(xí),能夠高效的提高使用的效率,并且可以在日常生活中,制作出多種多樣的機(jī)器人,對于科研學(xué)習(xí)人員來說,提供能更多的可能性與研究性。針對項(xiàng)目所需進(jìn)行合理分析后,本文采用STM32F103C8T6為控制核心。在不浪費(fèi)資源的前提下,充分利用其性能進(jìn)行調(diào)試與實(shí)驗(yàn)。2.3.2血氧心率采集模塊的選擇對于如何獲取人體血氧濃度與心率快慢,本文將使用MAX30100的血氧濃度腕式心率檢測傳感器模塊。本設(shè)計需要獲取到人體內(nèi)相對準(zhǔn)確的心率數(shù)據(jù)與血氧數(shù)據(jù),并且在佩戴較長時間的情況下,能夠保持穩(wěn)定狀態(tài),還應(yīng)具有較低耗能的特點(diǎn)。而MAX30100則是集脈沖式血氧飽和度檢測與心跳檢測于一體的生化檢測系統(tǒng)。其性能和性能都很好地滿足了我們的要求,其中包括一臺660nm的紅光發(fā)光二極管,一臺880nm的紅外發(fā)光二極管,一臺光電探測器;光學(xué)設(shè)備,以及降低周圍光線干擾的電子線路。具有軟件關(guān)斷模塊,待機(jī)電流為零,能隨時維持其供電狀態(tài),適用于低功耗的產(chǎn)品。MAX30100采用1.8伏的電力供應(yīng),另外還配有3.3伏的電力供應(yīng),并配有符合
IIC標(biāo)準(zhǔn)的通訊接口?,F(xiàn)在,市場上大多數(shù)都是將MAX30100芯片集成在一個
PCB模塊上,在其里面增加一個1.8
V和3.3
VLDO穩(wěn)壓電路,可給模塊分別提供5.0
V電源,以便于開發(fā)者開發(fā)。選擇該模塊的優(yōu)點(diǎn)主要是其擁有比較簡化的采集血氧與心率的設(shè)計,集成LED、光電傳感器以及高性能模擬前端;另外它超低功耗的功能可以延長設(shè)備的使用壽命,可編程采樣率和LED電流節(jié)省功率,同時具有超低的關(guān)閉電流;另外它具有優(yōu)良的性能,擁有強(qiáng)大的運(yùn)動神器彈性,同時可以消除環(huán)境光的影響,減少其數(shù)據(jù)的誤差。MAX30100芯片相較與MAX30102芯片廉價,但是性能卻十分穩(wěn)定,測量精確。2.3.3體溫采集模塊的選擇是一種無接觸的紅外測溫,又稱輻射測溫,通常采用熱電型或光電探測器,通過紅外輻射進(jìn)行測溫;將紅外能量轉(zhuǎn)化成電信號,高精度放大器再對這些電信號展開放大處理,最后利用模數(shù)轉(zhuǎn)換成為數(shù)字信號。最后,利用單片機(jī),利用算法程序補(bǔ)償修正、參數(shù)校準(zhǔn)等工作,就可以輸出較高精度的溫度值。模塊的默認(rèn)情況是以串口傳輸方式進(jìn)行的,該模塊有四個接口:電源正極(VCC為3~5V)、電源負(fù)極(GND),RC(串口UART-RX)與TD(串口UART-TX)。2.3.4定位模塊的選擇模組采用ATGM336H定位芯片,支持3.3V~5V供電,采用串口傳輸,帶有SMA和IPEX兩種天線接口,以及PPS時鐘脈沖輸出腳,方便時鐘同步,將GPS模塊與單片機(jī)進(jìn)行連接,經(jīng)過單片機(jī)程序解析,在串口可輸出數(shù)據(jù)包括UTC時間,經(jīng)度以及維度,進(jìn)行快速精準(zhǔn)定位。2.3.5WIFI模塊的選擇在該控制系統(tǒng)中,用戶獲取系統(tǒng)數(shù)據(jù)信息需要利用無線通信技術(shù),而對于手機(jī)與MCU的無線通信,主要有兩種方案,一是利用esp8266wifi模塊,通過建立客戶端與服務(wù)器進(jìn)行網(wǎng)絡(luò)通信,實(shí)現(xiàn)無線遙控。二是利用藍(lán)牙模塊,通過手機(jī)藍(lán)牙連接對應(yīng)藍(lán)牙設(shè)備,實(shí)現(xiàn)主從通信。兩種方案的可行性都十分成熟,但藍(lán)牙模塊的傳輸距離十分有限,且信號容易丟失,而wifi模塊只需連接網(wǎng)絡(luò)后,即可實(shí)現(xiàn)任意距離下的信息輸送,因此選用esp8266wifi模塊。2.3.6報警模塊的選擇本文采用蜂鳴器模塊作為報警模塊,蜂鳴器分為有源和無緣兩種。在沒有振動電源的情況下,通過對振動電源的調(diào)節(jié),可以使其產(chǎn)生各種振動信號。但是,有源蜂鳴器里面是有自己的振蕩源的,只要在它的正負(fù)極連接上直流電壓,就可以一直發(fā)出聲音。本文選用有源蜂鳴器,通過單片機(jī)與信號線連接,給與高低電平發(fā)出聲音,以此實(shí)現(xiàn)報警功能。2.4本章小結(jié)本章主要介紹了WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)所需要的模塊,主要包括主控芯片,測心率血氧模塊,藍(lán)牙傳輸模塊,體溫模塊以及顯示模塊,在模塊選擇的過程中,需要查找足夠多的資料,進(jìn)行多方面的對比,充分了解模塊的優(yōu)缺點(diǎn),關(guān)鍵要對使用場合,數(shù)據(jù)準(zhǔn)確性,功能穩(wěn)定性進(jìn)行分析,通過對各個模塊進(jìn)行性能上的分析,從而選擇出最合適的模塊進(jìn)行研究,制作出性能穩(wěn)定,功能齊全的醫(yī)療健康監(jiān)護(hù)系統(tǒng)[11]。第3章硬件系統(tǒng)設(shè)計3.1系統(tǒng)硬件電路設(shè)計本節(jié)主要是對各個模塊電路的設(shè)計,利用了AltiumDesigner軟件繪制原理圖,并對電路進(jìn)行簡單分析,主要對單片機(jī)的晶振、復(fù)位與SWD下載電路,MAX30100血氧心率模塊電路,體溫模塊電路,GPS電路,數(shù)據(jù)傳輸模塊電路,WIFI模塊進(jìn)行了詳細(xì)設(shè)計。軟件模塊的正常驅(qū)動離不開硬件電路的支持,只有合理的硬件電路才能證明系統(tǒng)的可行性,因此對于模塊的原理圖設(shè)計,也是不可或缺的一部分。在完成本設(shè)計的過程中,繪制硬件原理圖是所要完成的第一步,不僅是確保方案的可行性與合理性,同時也方便了后期搭建實(shí)物。本設(shè)計采用了AltiumDesigner軟件進(jìn)行了原理圖的繪制,該款軟件被開發(fā)者普遍地應(yīng)用于各種系統(tǒng)的研發(fā)當(dāng)中,軟件內(nèi)部具有豐富的功能,開發(fā)者們可以進(jìn)行原理圖的繪制,PCB板設(shè)計,電路仿真等等,有效的提高了系統(tǒng)開發(fā)效率。3.2晶振、復(fù)位與SWD下載電路在設(shè)計最小系統(tǒng)電路時,晶振電路是非常重要的一部分,晶振電路主要功能是為單片機(jī)提供一定的時鐘參考信息,晶振電路的設(shè)計非常簡單,只用在單片機(jī)的X1與X2對應(yīng)的引腳上進(jìn)行石英晶體的連接就可以了,此次設(shè)計單片機(jī)的晶振頻率選擇8MHz的,電容大小選擇22pF,晶振電路如圖3.1所示。圖3.1晶振電路原理圖因?yàn)閱纹瑱C(jī)在工作運(yùn)行程序時,經(jīng)常需要重新運(yùn)行程序,但不能僅憑借重新上電來解決問題,所以需要手動復(fù)位,來進(jìn)行重啟,這對于一個單片機(jī)系統(tǒng)來說也是十分重要的,NRST系統(tǒng)復(fù)位,通過按鍵按下,電容放電使NRST引腳上為低電平,將所有寄存器復(fù)位,當(dāng)按鍵沒有按下時,則電容會一直充電,兩端的電壓回到3.3V。其電路如圖3.2所示。圖3.2復(fù)位電路原理圖STM32單片機(jī)系列擁有多種下載方式,本設(shè)計采用SWD下載電路為單片機(jī)進(jìn)行程序燒錄,其電路連接非常簡單,只需接好對應(yīng)接口即可,下文會詳細(xì)介紹,其原理圖如圖3.3所示。圖3.3SWD原理圖3.3MAX30100血氧心率模塊電路MAX30100模塊的工作原理主要利用光信號發(fā)射和接收,通過AD轉(zhuǎn)換以及消除環(huán)境光的干擾,并對異常數(shù)據(jù)進(jìn)行濾波,得到較為準(zhǔn)確的光強(qiáng)值,使用者再通過單片機(jī)的IIC與其進(jìn)行通信,讀取寄存器中的光強(qiáng)值。這里STM32單片機(jī)與其通信采用了模擬IIC的方式,SDA—PB8,SCL—PB9其原理圖如圖3.4所示。圖3.4MAX30100模塊原理圖3.4體溫傳感器模塊電路GY-614V3是一款紅外非接觸溫度計。電源接口VCC為電源輸入,建議輸入電壓在3.3V-5V之間。分別將VCC和GND引腳連接好,串口分別連接兩根信號線,本設(shè)計配置了IIC通信,需要焊接PS焊點(diǎn),通過發(fā)射率計算目標(biāo)溫度,外加額溫補(bǔ)償進(jìn)行溫度計算,其原理圖如圖3.5所示。圖3.5GY-614V3模塊原理圖3.5GPS模塊電路GPS模塊采用3.3~5V供電,帶有SMA和IPEX兩種天線接口,用戶連接單片機(jī)的串口TTL電平或者USB-TTL模式,帶有PPS授時輸出引腳,采用NMEA-0183的輸出協(xié)議,設(shè)置9600波特率,采用串口讀取數(shù)據(jù)進(jìn)行采集,原理圖如圖3.6所示。圖3.6GPS模塊原理圖3.6WIFI模塊電路Esp8266芯片內(nèi)部為32位處理器,用作wife協(xié)議處理器,支持UART/GPIO/IIC/PWM/ADC/HSPI等接口,本系統(tǒng)利用單片機(jī)的串口與wifi模塊進(jìn)行通信交互,實(shí)現(xiàn)數(shù)據(jù)的傳輸,下圖為esp8266WiFi模塊原理圖。圖3.7WIFI模塊原理圖3.7報警模塊電路本模塊將VCC端接入3.3v~5v電壓,GND端接地,I/O接信號的輸入,當(dāng)觸發(fā)時就能發(fā)出“嗶嗶嗶~~~”的響聲。繼電器的驅(qū)動電壓不能超過限制電壓,不然會燒掉繼電器,模塊采用三極管驅(qū)動,下圖為蜂鳴器模塊原理圖。圖3.8蜂鳴器模塊原理圖第4章軟件系統(tǒng)設(shè)計4.1軟件整體框架 軟件系統(tǒng)的設(shè)計主要針對STM32的程序設(shè)計,并結(jié)合體溫采集模塊,心率血氧采集模塊,通信模塊以及OLED顯示模塊,軟件整體流程如下圖4.1所示。圖4.1軟件流程圖4.2軟件設(shè)計本節(jié)主要介紹了智能醫(yī)療腕帶的軟件技術(shù)開發(fā)[11],單片機(jī)技術(shù)開發(fā)中,設(shè)計軟件系統(tǒng)也是極其重要的一部分[13],軟件程序可以說是機(jī)器人的靈魂了,合適的軟件方案不僅能夠提高工作效率,也能保證數(shù)據(jù)的準(zhǔn)確行,這里主要對編程軟件,程序燒錄的軟件配置,采集各個模塊數(shù)據(jù)的軟件操作流程進(jìn)行了詳細(xì)的介紹。4.2.1血氧心率采集程序?qū)τ贛AX30102的使用,首先要了解其采集血氧氣與心跳之理論,將于下文中個別說明。血氧測量原理:血氧飽和度,也叫血氧濃度,是指血液中氧飽和血紅蛋白與總血紅蛋白(不飽和+飽和)的比率。身體要求并調(diào)整一種十分精密而具體的血氧平衡。正常情況下,人體內(nèi)的血管血氧飽和度應(yīng)該在95-100%之間。若其值在90%以下,就會被認(rèn)定為貧血。血液含氧量的測定有透過法和反射法兩種方法。現(xiàn)在最受歡迎的是傳輸型。這兩種儀器的原理很相似,都都是利用發(fā)光二極管(紅光RED,紅外IR,綠光GREEN和藍(lán)光BLUE等)再用一個二極管來接受被檢測物體的發(fā)射或者發(fā)射出來的光,并將其轉(zhuǎn)化成電信號。再利用高準(zhǔn)確度的模數(shù)轉(zhuǎn)換器,測定其所產(chǎn)生的電流強(qiáng)度,從而判斷出血液中的氧氣含量。圖4.2PPG波形圖上面4.2所示為一種由半導(dǎo)體探測器所收到的最初的光學(xué)訊號所形成的一般情況下的PPG波形。波形(由圖中間的白色橫虛線)可分為
DCsignal和ACsignal,即直流信號和交流信號。其中,直流信號從下到上可以被分成三個部分的反射,分別是:組織(issue),靜脈血(Venousblood)和不跳動的動脈血(Nonpulsatilearterialblood)。除此之外,不同性別、不同膚色、不同年齡的人,相應(yīng)的
DCsignal值也會有所不同。所以,接下來的血液含氧量的測量,都是以相對數(shù)值來進(jìn)行的。在了解完其原理之后,將開始進(jìn)行分析設(shè)計其軟件實(shí)現(xiàn)流程,圖4.7為血氧采集的軟件流程圖。其中最為重要的是IIC通信的程序與驅(qū)動模塊讀取數(shù)據(jù)的程序,后面本文將會對程序方面進(jìn)行刨析講解,獲取心率與血氧數(shù)據(jù)。圖4.3MAX30100軟件流程圖首先是對IIC通信程序的分析,對于MAX30100測心率血氧模塊的數(shù)據(jù)讀取,本設(shè)計這里選用軟件模擬IIC的方式,需要使用程序去控制SCL與SDA線輸出高低電平,并模擬IIC協(xié)議的時序,雖然軟件模擬IIC的速度較硬件慢,但是可以靈活轉(zhuǎn)換GPIO口,對于一些小應(yīng)用場景傳輸速度完全足以運(yùn)行,配置的程序雖然比較繁瑣,但是認(rèn)真研磨,不難掌握。以下是對模擬IIC程序的講解:第一步就是GPIO口的初始化,因?yàn)楸驹O(shè)計使用的是庫函數(shù)版本,所以以下程序運(yùn)行環(huán)境都在官方庫函數(shù)版本下進(jìn)行,模擬采用的GPIO口為PB8,PB9。在完成了初始化以后,開始寫啟動信號功能,其基本原則是:在SCL線路處于高電平的情況下,
SDA線路從高電平到低電平;此時間序列上的跳躍即為啟動信號。當(dāng)開始信號被設(shè)置完畢后,接著進(jìn)入結(jié)束信號,即所謂的停止信號,當(dāng)SCL線路處于高電平時,該結(jié)束信號和開始信號相同,但其SDA從低到高電平跳躍;這也是開始訊號的反方向。下來就是配置接收ACK應(yīng)答的函數(shù),過程就是先將數(shù)據(jù)線拉高,等待穩(wěn)定之后,再將時鐘線拉高,繼續(xù)等待穩(wěn)定,完成之后就是采集數(shù)據(jù)線的電平狀態(tài)了,如果是高電平就表示未應(yīng)答,如果是低電平即代表應(yīng)答。配置產(chǎn)生ACK應(yīng)答的函數(shù),其過程主要是先將數(shù)據(jù)線與時鐘線拉低,等待穩(wěn)定之后,再將時鐘線拉高,4微秒過后,把時鐘線重新拉低。配置產(chǎn)生ACK非應(yīng)答的函數(shù),單聽名字與上一個函數(shù)關(guān)系密切,其過程也是相近,首先將時鐘線拉低,數(shù)據(jù)線拉高。等待穩(wěn)定之后,然后把時鐘線拉高,采樣結(jié)束后,時鐘線又拉回低。對IIC發(fā)送一個字節(jié)的函數(shù)進(jìn)行編寫,并讓函數(shù)返回從機(jī)有無應(yīng)答狀況,若有應(yīng)答則為1,無應(yīng)答就為0。對IIC接收讀取一個字節(jié)的函數(shù)進(jìn)行編寫,主要是當(dāng)發(fā)送NACK時,則代表通知從機(jī)發(fā)送結(jié)束,再對SDA進(jìn)行釋放。完成以上基礎(chǔ)配置之后,軟件模擬IIC通信協(xié)議基本可以實(shí)現(xiàn)??梢愿鶕?jù)情況靈活使用其他的GPIO進(jìn)行模擬。配置好IIC之后,就是讀取數(shù)據(jù),將數(shù)據(jù)存放在FIFO里面,F(xiàn)IFO是一種可以存放數(shù)據(jù)的緩沖區(qū),因?yàn)橐x取的數(shù)據(jù)十分龐大,所以作者是將IIC獲取到的數(shù)據(jù)存放在FIFO緩沖區(qū)內(nèi),同時可以對緩沖區(qū)的數(shù)據(jù)進(jìn)行讀取,存放,清除,下面將演示如何更新讀取FIFO內(nèi)的數(shù)據(jù)函數(shù)。其中定義一個數(shù)組,數(shù)組前兩個元素存放紅外數(shù)據(jù),后兩個元素存放紅光數(shù)據(jù)。獲取數(shù)據(jù)后就是對數(shù)據(jù)進(jìn)行處理濾波,使數(shù)據(jù)更加平滑穩(wěn)定。最后就是分別獲取血氧濃度與心率大小了,通過函數(shù)公式計算出血氧濃度與心率大小。4.2.2體溫采集程序在單片機(jī)控制系統(tǒng)中,根據(jù)紅外傳感器得到的信號反饋進(jìn)行計算所測溫度。下圖為紅外測溫軟件流程圖。圖4.4體溫采集軟件流程圖下面簡單講解紅外體溫計配置。使用GPIO時鐘,復(fù)用時鐘設(shè)置IO口為通用端口并設(shè)置輸入,進(jìn)行初始化將紅外體溫計串口分別與串口1進(jìn)行對應(yīng)并且定義設(shè)置起始寄存器,寄存器數(shù)量讀取函數(shù)指針,分析所讀時序得到溫度值之后,將異常大或小不符合人體溫度范圍內(nèi)的值進(jìn)行過濾以及額溫補(bǔ)償,最后就是根據(jù)阻值大小與電壓大小計算出人體溫度值。4.2.3GPS定位程序GPS定位功能主要依靠其本身程序?qū)ψ陨砦恢玫亩ㄎ灰约跋鄳?yīng)聯(lián)系,圖4.5為GPS軟件流程圖。圖4.5GPS軟件流程圖下面是GPS模塊初始化的步驟:第一步是啟動命令,開啟低功耗模式。第二步是配置輸出消息的時間間隔,設(shè)置輸出波特率。第三步是定位信息上傳數(shù)據(jù)幀,GPS數(shù)據(jù)解析4.2.4WIFI程序?qū)τ跀?shù)據(jù)的傳輸,本文將使用STM32單片機(jī)上的USART2進(jìn)行通信,圖4.6為數(shù)據(jù)傳輸流程圖圖4.6數(shù)據(jù)傳輸軟件流程圖對于STM32F103上面的USART2串口的配置流程如下:第一步是GPIO端口的配置,這里選用串口1,故對照引腳后需驅(qū)動PA2(TXD)與PA3(RXD),設(shè)置模式為復(fù)用推挽輸出。第二步是使串口時鐘與串口復(fù)位。第三步是設(shè)置波特率(通信兩端的波特率需要一致)、數(shù)據(jù)格式、一個停止位、無奇偶校驗(yàn)、無硬件數(shù)據(jù)流控制、收發(fā)模式,并進(jìn)行初始化。第四步是配置中斷并開啟中斷。第五步就是編寫中斷處理函數(shù),本文對于串口中斷處理函數(shù)沒有無進(jìn)行運(yùn)用,根據(jù)情況而定。第六步是串口數(shù)據(jù)的接收與發(fā)送,直接調(diào)用庫函數(shù)中的收發(fā)函數(shù)即可。最后就是獲取串口的傳輸狀態(tài),用來判斷數(shù)據(jù)是否接收或發(fā)送成功。4.2.5報警程序針對報警器的信號控制,主要通過單片機(jī)IO口輸出的高低電平進(jìn)行控制,圖4.7為蜂鳴器報警流程圖圖4.7蜂鳴器報警流程圖對于蜂鳴器的配置流程如下:使能GPIO時鐘,復(fù)用時鐘設(shè)置IO口為通用端口并設(shè)置下拉輸入,推挽輸出,進(jìn)行初始化將蜂鳴器與IO口進(jìn)行對應(yīng)并且定義在主函數(shù)中進(jìn)行引腳初始化與邏輯程序的定義蜂鳴器配置完成之后,在主函數(shù)中進(jìn)行邏輯控制,當(dāng)體溫,心率等數(shù)據(jù)條件到達(dá)某一數(shù)值時,控制蜂鳴器發(fā)出聲音,達(dá)到報警的效果。4.2.5上位機(jī)程序通過前期采集的血氧心率信號以及體溫信號并將其上傳到手機(jī)app之中,圖4.8為APP操作界面圖。圖4.8APP操作界面圖第5章WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)仿真5.1WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)仿真 對于系統(tǒng)的硬件設(shè)計與軟件設(shè)計進(jìn)行仿真,來進(jìn)一步證明系統(tǒng)的可行性,對于仿真軟件的選擇,采用Proteus仿真軟件,其軟件內(nèi)部提供了非常多的仿真元器件資源,以及豐富的測試信號(數(shù)字信號和模擬信號等),可以用于對電路的測試,都對仿真提供了極大的便利,能夠快速的驗(yàn)證自己的電路,對于單片機(jī)系統(tǒng)的仿真來說再適合不過,另外Proteus的操作也是簡單,十分容易入門,對于一些初級開發(fā)者來說是非常不錯的選擇。下圖5.1為Proteus界面圖。圖5.1Proteus界面圖在STM32
MCU的編程方面,我們使用了Keil5編譯環(huán)境,
KeilMDK-ARM是一種由美國
Keil
SoftwareCorporation(現(xiàn)在已經(jīng)被ARMCorporation)所生產(chǎn)的一種支持
ARMMCU的IDE(IntegratedDevices)。MDK-ARM中包括了行業(yè)標(biāo)準(zhǔn)的
KeilC編譯器,宏編譯器,調(diào)試器,即時核心,以及其他一些其他的功能。關(guān)于keil5的安裝,可以在keil5官方網(wǎng)站上下載安裝包來進(jìn)行安裝,并且需要事先下載好stm32固件庫,本文中所使用的固件庫是STM32F10x_StdPeriph_Li_V3.5.0,可以從ST官方下載。而對于STM32芯片,有庫函數(shù)與寄存器兩個編譯方式,本文將采用庫函數(shù)版本對單片機(jī)以及各個模塊進(jìn)行編程調(diào)試,開發(fā)語言選用C語言,做好準(zhǔn)備工作之后,就是建立一個新的工程,具體流程本文不再贅述,具體可參考官方網(wǎng)站教程實(shí)例或直接使用正點(diǎn)原子官方STM32F103C8T6工程模板。在IDE中編譯好程序后,需將程序燒錄至單片機(jī)中,SMT32燒錄程序方法有多種種,本文簡單介紹兩種,并選取一種進(jìn)行具體使用:第一種ST-LINK的燒錄方式,采用SWD方式,僅需4條導(dǎo)線。其中有VCC、GND、SWCLK、
SWDIO這四根線分別于單片機(jī)上的這個口對應(yīng)接好后,再將keli5的STLINK配置好(下文會講述如何配置),即可一鍵燒錄程序。第二種方法是
USB轉(zhuǎn)
TTL連接線燒寫(也稱為
ISP燒寫,請注意,所用的串端口一定是串端口1)這里將會用到一個燒錄軟件FlyMcu。第一個步驟就是把單片機(jī)的BOOT0設(shè)置成1,然后把BOOT1設(shè)置成0,然后再按單片機(jī)重設(shè)按鈕,完成上述的操作之后;只有這樣,你才能從你的系統(tǒng)內(nèi)存中開始讀寫。然后在
BootLoader的協(xié)助下,使用1號串接口將該程序燒錄到flash中。在程序下載完畢之后,首先要做的就是將BOOT0接地,并進(jìn)行手工復(fù)位。如若不然,單片機(jī)將不會在Flash中啟動。通過對比這兩種燒寫方法與簡便性,本文將采用第一種ST-LINK燒寫方法。在使用ST-LINK燒錄程序的時候,需要提前對keil5配置,配置方法如下:打開工程文件,進(jìn)入到keil5IDE,然后在菜單欄找到魔法棒。進(jìn)去之后選擇Debug框,在Debug框下面找到Use,選擇ST-LinkDebugger。接下來點(diǎn)擊Use旁邊的Settings,,將Port參數(shù)選為SW,Max改為1.8MHz。這樣基本配置就結(jié)束了,當(dāng)我們插入ST-Link之后,ST-Link配置成功。最后就是燒錄程序了,將程序編譯好之后,無報錯,即可進(jìn)行燒錄,將ST-Link與單片機(jī)連接之后,插入電腦,按下按鈕,即可成功燒錄。5.2WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)的調(diào)試在搭建電路的過程中,要注意先對各個模塊的電路進(jìn)行單獨(dú)調(diào)試,確定模塊正常運(yùn)行,在許多的工程項(xiàng)目中,往往會因?yàn)橐粋€小模塊的問題而影響整個項(xiàng)目進(jìn)度,因此單獨(dú)對模塊的調(diào)試非常重要。測試完成之后,就是對模塊的焊接,根據(jù)設(shè)計要求,需要實(shí)物體積小,可穿戴在手腕上,方便攜帶,因此需要將模塊集成焊接在一起,實(shí)物焊接完成之后就是進(jìn)行軟件調(diào)試,在調(diào)試的過程中,遇到的問題主要有以下幾點(diǎn)問題需要注意:接線問題,很多時候復(fù)雜的線路很容易讓人混亂,導(dǎo)致接線錯誤,燒毀系統(tǒng),因此在調(diào)試的過程中,需要做到不緊不慢,條理清晰的進(jìn)行接線;焊接問題,由于焊接技術(shù)的不熟練,會造成電路引腳部分接觸不良或者斷掉,從而導(dǎo)致模塊無法正常使用,需要多加進(jìn)行檢查,減少焊接操作失誤;軟件程序的問題,很多時候編寫代碼不嚴(yán)謹(jǐn),不規(guī)范,導(dǎo)致單片機(jī)運(yùn)行發(fā)生意想不到的事情,另外使用算法進(jìn)行數(shù)據(jù)處理時,也要針對實(shí)際狀況,對算法進(jìn)行合理優(yōu)化,確保數(shù)據(jù)的真實(shí)性。搭建完成系統(tǒng)之后,就要對獲取到的數(shù)據(jù),進(jìn)行不斷地調(diào)試,確保心率血氧以及溫度的數(shù)值接近人體機(jī)能的實(shí)際值,這一過程,最重要的就是對程序的不斷優(yōu)化,直至達(dá)到要求為止。5.3系統(tǒng)功能驗(yàn)證5.3.1顯示模塊打開開關(guān),通過WiFi模塊進(jìn)行連接,發(fā)現(xiàn)顯示正常,證明顯示模塊可以正常使用如圖5.3.1所示,可以證明本設(shè)計實(shí)現(xiàn)了連接WiFi和顯示功能圖5.3.1顯示功能5.3.2檢測模塊把手放在檢測模塊相應(yīng)位置,發(fā)現(xiàn)可以正常檢測心率以及血氧證明心率以及血氧等模塊可以正常使用如圖5.3.2所示圖5.3.2檢測功能第6章總結(jié)隨著科技創(chuàng)新的發(fā)展,圍繞單片機(jī)為控制系統(tǒng)的各種各樣科技產(chǎn)品被研發(fā)出來,單片機(jī)改變了傳統(tǒng)的控制方法和設(shè)計方法,通過軟件控制各個模塊不僅節(jié)省了資源,而且非常高效。STM32單片機(jī)也從眾多單片機(jī)中脫穎而出,其強(qiáng)大的功能與體系的優(yōu)勢也會越來越顯現(xiàn)出來。本設(shè)計主要是STM32F103單片機(jī)在智能醫(yī)療腕帶系統(tǒng)中的應(yīng)用。重點(diǎn)講解了WIFI遠(yuǎn)程醫(yī)療健康監(jiān)護(hù)系統(tǒng)的實(shí)現(xiàn),從各個模塊的選型,到硬件電路的設(shè)計,再到軟件程序驅(qū)動模塊,最終實(shí)現(xiàn)其功能。由血氧心率模塊與體溫模塊分別采集到脈沖數(shù)據(jù),再經(jīng)過信號的放大、整形等一系列處理,由單片機(jī)通過中斷處理與IIC通信協(xié)議獲取到數(shù)據(jù),并利用公式轉(zhuǎn)換數(shù)據(jù)得到真實(shí)的血氧濃度值、心率快慢以及人體溫度,再驅(qū)動顯示屏顯示數(shù)據(jù)并通過單片機(jī)的串口通信驅(qū)動通信模塊發(fā)送給數(shù)據(jù)庫。為了更好的完成這次畢業(yè)設(shè)計,在這段時間里每天認(rèn)真學(xué)習(xí)各種軟件的使用方法,學(xué)習(xí)編寫程序驅(qū)動各個模塊獲取數(shù)據(jù),為畢業(yè)設(shè)計的成功實(shí)現(xiàn),打好了基礎(chǔ)。本次的設(shè)計其系統(tǒng)實(shí)現(xiàn)簡單,功能強(qiáng)大豐富,具有很強(qiáng)的實(shí)用價值,為醫(yī)療事業(yè)貢獻(xiàn)了力量。另外也有很多拓展功能可以在今后的學(xué)習(xí)中不斷探索,添加到設(shè)計中,使其日漸完善。這一次的畢業(yè)設(shè)計過程,也是十分艱苦,讓我收獲到了很多,并做了簡單的總結(jié):(1)首先在做任何事之前要做好充分準(zhǔn)備,學(xué)會搜集資料,不盲目的學(xué)習(xí),不然只會浪費(fèi)時間。(2)經(jīng)過這次設(shè)計之后,讓我充分認(rèn)識到單片機(jī)的強(qiáng)大,并認(rèn)識到自身的不足。(3)只有經(jīng)過無數(shù)次失敗,才能走向成功,不斷嘗試,就會有出路。參考文獻(xiàn)[1]周開利,張偉,王旭,基于藍(lán)牙和智能手機(jī)的人體多生理參數(shù)無線監(jiān)測系統(tǒng)[J].物聯(lián)網(wǎng)技術(shù)2015(06)[2]張鵬,嚴(yán)孝祥,基于Android平臺的心電遠(yuǎn)程監(jiān)護(hù)系統(tǒng)的實(shí)現(xiàn)[J].物聯(lián)網(wǎng)技術(shù)2015(04)[3]呂峰,楊莉,崔茂應(yīng)等.智能移動醫(yī)療動態(tài)監(jiān)護(hù)系統(tǒng)與物聯(lián)網(wǎng)的運(yùn)用分析[J]自動化與儀器儀表2016(08)[4]翟翔.淺談老年人監(jiān)護(hù)系統(tǒng)的研究和發(fā)展[J]內(nèi)蒙古科技與經(jīng)濟(jì)2016(22)[5]郝文延.病床監(jiān)測監(jiān)護(hù)系統(tǒng)設(shè)計[J]自動化應(yīng)用2017(04)[6]饒宜迅,郭洛含,易永余.一款基于多傳感器的室內(nèi)病床監(jiān)護(hù)系統(tǒng)設(shè)計IJ].電子測試,2021(17).[7]郝天然.智慧醫(yī)院監(jiān)護(hù)系統(tǒng)集成方案[J]中國新通信2021(17)[8]周杰,王申,田敏.基于無線傳感器網(wǎng)絡(luò)的遠(yuǎn)程醫(yī)療監(jiān)護(hù)系統(tǒng)設(shè)計[J].科技與創(chuàng)新2019(13).[9]何非,何克清.大數(shù)據(jù)及其科學(xué)問題與方法的探討[JL武漢大學(xué)學(xué)報(理學(xué)版)2014(01)[10]梁帥.病理文本數(shù)據(jù)的結(jié)構(gòu)化處理系統(tǒng)研究與實(shí)現(xiàn)[D].東華大學(xué)2015[11]趙澤,崔莉.一種基于無線傳感器網(wǎng)絡(luò)的遠(yuǎn)程醫(yī)療監(jiān)護(hù)系統(tǒng)[J].信息與控制,2006(02):265-269.[12]王鑫.便攜式心肺監(jiān)護(hù)系統(tǒng)的設(shè)計與實(shí)現(xiàn)[D].南京郵電大學(xué),2022.[13]黃俊翔,肖振邦,陳真誠,朱健銘.便攜式心電血氧動態(tài)監(jiān)護(hù)系統(tǒng)設(shè)計[J].信息技術(shù)與信息化,2022(09):15-19.[14]許樂,趙文龍.基于STM32的老年人健康監(jiān)護(hù)系統(tǒng)設(shè)計[J].南昌航空大學(xué)學(xué)報(自然科學(xué)版),2022,36(02):95-101.[15]BarettaA,BursiR,PalazzinAetal.AnautomatedcomputationaltooltostudyMRIsafetyofimplantedpassivecardiovascularmedicaldevices[Jj.EuropeanHeartJournal,2020.41.[16]OlsonDevraJ.,KulukianAnita,TaylorJanelleD.etal.PreclinicalcharacterizationoftucatinibinHER2-amplifiedxenograftandCNSimplantedtumors[J].CANCERRESEARCH,2020,80(16)[17]BruiningNico.deJaegerePeterTelemedicalmonitoringbyanimplantedlooprecordergatewaytopersonalizedmedicine?ResultsoftheSMARTMIstudy.[J]Cardiovascularresearch,2022[18]StanislavS.Dukhin,MohamedE.LabibHydrodynamically-drivendrugreleaseduringinterstitialfowthroughhollowfibersimplantednearlymphatics[JJColloidsandSurfacesA:PhysicochemicalandEngineeringAspects,2016,521.[19]AlshammariHamoudH..TheinternetofthingshealthcaremonitoringsystembasedonMQTTprotocol[J].AlexandriaEngineeringJournal,2023,69.[20]ColomboGL,TorreE,DiMatteoS,MontiE,MartinottiC,BrunoG,LevratGuillenF.EE281FreestyleLibre2FlashGlucoseMonitoringSystem:BudgetImpactandCost-UtilityAnalysesinType1DiabetesFromtheItalianNHSPerspective[J].ValueinHealth,2022,25(12S).[21]WeiShuoshuo,LuRong,ZhangZhengping,WangFaxuan,TanHai,WangXiaohong,MaJinlan,ZhangYating,DengNing,ChenJuan.MRI-assesseddiaphragmaticfunctioncanpredictfrequentacuteexacerbationofCOPD:aprospectiveobservationalstudybasedontelehealth-basedmonitoringsystem[J].BMCPulmonaryMedicine,2022,22(1).附錄附錄A原理圖附錄B主程序#ifndef__gps_h#define__gps_h#include"stm32f10x.h"#defineGPS_USART_REC_LEN 200 //定義最大接收字節(jié)數(shù)200externcharGPS_USART_RX_BUF[GPS_USART_REC_LEN];//接收緩沖,最大USART_REC_LEN個字節(jié).末字節(jié)為換行符//定義數(shù)組長度#defineGPS_Buffer_Length80#defineUTCTime_Length11#definelatitude_Length11#defineN_S_Length2#definelongitude_Length12#defineE_W_Length2#definefalse0#definetrue1 typedefstructSaveData{ charGPS_Buffer[GPS_Buffer_Length]; charisGetData; //是否獲取到GPS數(shù)據(jù) charisParseData; //是否解析完成 charUTCTime[UTCTime_Length]; //UTC時間 charlatitude[latitude_Length]; //緯度 charN_S[N_S_Length]; //N/S charlongitude[longitude_Length]; //經(jīng)度 charE_W[E_W_Length]; //E/W charisUsefull; //定位信息是否有效}_SaveData;extern_SaveDataSave_Data;voidCLR_Buf(void);voidclrStruct(void);voidGPS_RecHandle(u8res);voidparseGpsBuffer(void);//parse:分析GPS數(shù)據(jù)#endif#include"gps.h"#include<string.h>#include<stdio.h>#include"led.h"u16point1=0;//接收數(shù)組定位charGPS_USART_RX_BUF[GPS_USART_REC_LEN];//接收緩沖,最大USART_REC_LEN個字節(jié)._SaveDataSave_Data;voidCLR_Buf(void)//串口緩存清理{ memset(GPS_USART_RX_BUF,0,GPS_USART_REC_LEN);//清空 point1=0;}voidclrStruct(void){ Save_Data.isGetData=false; Save_Data.isParseData=false; Save_Data.isUsefull=false; memset(Save_Data.GPS_Buffer,0,GPS_Buffer_Length);//清空 memset(Save_Data.UTCTime,0,UTCTime_Length); memset(Save_Data.latitude,0,latitude_Length); memset(Save_Data.N_S,0,N_S_Length); memset(Save_Data.longitude,0,longitude_Length); memset(Save_Data.E_W,0,E_W_Length);}voidGPS_RecHandle(u8Res){ if(Res=='$') { point1=0; } GPS_USART_RX_BUF[point1++]=Res; if(GPS_USART_RX_BUF[0]=='$'&&GPS_USART_RX_BUF[4]=='M'&&GPS_USART_RX_BUF[5]=='C') //確定是否收到"GPRMC/GNRMC"這一幀數(shù)據(jù) { if(Res=='\n') { memset(Save_Data.GPS_Buffer,0,GPS_Buffer_Length);//清空 memcpy(Save_Data.GPS_Buffer,GPS_USART_RX_BUF,point1); //保存數(shù)據(jù) Save_Data.isGetData=true; point1=0; memset(GPS_USART_RX_BUF,0,GPS_USART_REC_LEN);//清空 } } if(point1>=GPS_USART_REC_LEN) { point1=GPS_USART_REC_LEN; } }voiderrorLog(intnum){ // while(1)// {// printf("ERROR%d\r\n",num);// } LED_Control(ON);}voidparseGpsBuffer(void)//parse:分析GPS數(shù)據(jù){ char*subString; char*subStringNext; chari=0; if(Save_Data.isGetData) { Save_Data.isGetData=false;// printf("**************\r\n");// printf(Save_Data.GPS_Buffer); for(i=0;i<=6;i++) { if(i==0) { if((subString=strstr(Save_Data.GPS_Buffer,","))==NULL) errorLog(1); //解析錯誤 } else { subString++; if((subStringNext=strstr(subString,","))!=NULL) { charusefullBuffer[2]; switch(i) { case1:memcpy(Save_Data.UTCTime,subString,subStringNext-subString);break; //獲取UTC時間 case2:memcpy(usefullBuffer,subString,subStringNext-subString);break; //獲取UTC時間 case3:memcpy(Save_Data.latitude,subString,subStringNext-subString);break; //獲取緯度信息 case4:memcpy(Save_Data.N_S,subString,subStringNext-subString);break; //獲取N/S case5:memcpy(Save_Data.longitude,subString,subStringNext-subString);break; //獲取經(jīng)度信息 case6:memcpy(Save_Data.E_W,subString,subStringNext-subString);break; //獲取E/W default:break; } subString=subStringNext; Save_Data.isParseData=true; if(usefullBuffer[0]=='A') Save_Data.isUsefull=true; elseif(usefullBuffer[0]=='V') Save_Data.isUsefull=false; } else { errorLog(2); //解析錯誤 } } } }}#ifndef__WUXIAN_H#define__WUXIAN_H#include"Def_config.h"#include"stm32f10x.h"#defineXinLv_Length5#defineXueYang_Length5#definelatitude_Length11#defineN_S_Length2#definelongitude_Length12#defineE_W_Length2#defineWuXian_RX_BUF_Length100#defineJUDGE_Length2typedefstruct{ charWuXian_Buffer[WuXian_RX_BUF_Length]; charisGetData; //是否獲取到數(shù)據(jù) charisParseData; //是否解析完成 charXinLv[XinLv_Length]; //心率值,字符串形式存儲 charXueYang[XueYang_Length]; //血氧數(shù)據(jù) charlatitude[latitude_Length]; //緯度 charN_S[N_S_Length]; //N/S charlongitude[longitude_Length]; //經(jīng)度 charE_W[E_W_Length]; //E/W charis_XinLvWarn[JUDGE_Length]; charis_XueYangWarn[JUDGE_Length]; charis_HandWarn[JUDGE_Length];}_SendData;extern_SendDataSend_Data;#definefalse0#definetrue1 voidparseWuXianBuffer(void);voidWuXian_Rec(u8Res);voidWuXian_Clear(void);#endif#include"wuxian.h"#include<string.h>#include<stdio.h>#include"lcdUart.h"#include"usart1.h"u8point1=0; u8WuXian_RX_BUF[WuXian_RX_BUF_Length];_SendDataSend_Data;voidWuXian_Clear(void){ memset(Send_Data.WuXian_Buffer,'\0',WuXian_RX_BUF_Length); memset(Send_Data.XinLv,'\0',WuXian_RX_BUF_Length); memset(Send_Data.XueYang,'\0',WuXian_RX_BUF_Length); memset(Send_Data.latitude,'\0',WuXian_RX_BUF_Length); memset(Send_Data.N_S,'\0',WuXian_RX_BUF_Length); memset(Send_Data.longitude,'\0',WuXian_RX_BUF_Length); memset(Send_Data.E_W,'\0',WuXian_RX_BUF_Length); memset(Send_Data.is_XinLvWarn,'\0',WuXian_RX_BUF_Length); memset(Send_Data.is_XueYangWarn,'\0',WuXian_RX_BUF_Length); memset(Send_Data.is_HandWarn,'\0',WuXian_RX_BUF_Length); Send_Data.isGetData=FALSE; Send_Data.isParseData=FALSE;}voidWuXian_Rec(u8Res){ if(Res=='$') { point1=0; } WuXian_RX_BUF[point1++]=Res; if(Res=='\n') { memset(Send_Data.WuXian_Buffer,'\0',WuXian_RX_BUF_Length);//清空 memcpy(Send_Data.WuXian_Buffer,WuXian_RX_BUF,point1); //保存數(shù)據(jù) Send_Data.isGetData=true; point1=0; USART1_SendString((u8*)Send_Data.WuXian_Buffer);// printf("DCV16(0,7,'%s',%d);\r\n",WuXian_RX_BUF,1);// LCD_CheckBusy(); memset(WuXian_RX_BUF,'\0',WuXian_RX_BUF_Length);//清空 } if(point1>=WuXian_RX_BUF_Length) { point1=WuXian_RX_BUF_Length; } }voidparseWuXianBuffer(void)//parse:分析數(shù)據(jù){ char*subString; char*subStringNext; chari=0; if(Send_Data.isGetData) { Send_Data.isGetData=false; for(i=0;i<9;i++) { if(i==0) { if((subString=strstr(Send_Data.WuXian_Buffer,"$"))!=NULL) { subString++; if((subStringNext=strstr(subString,","))!=NULL) { memcpy(Send_Data.XinLv,subString,subStringNext-subString); subString=subStringNext; } } } elseif(i<8) { subString++; if((subStringNext=strstr(subString,","))!=NULL) { switch(i) { case1: memcpy(Send_Data.XueYang,subString,subStringNext-subString); break; case2: memcpy(Send_Data.latitude,subString,subStringNext-subString); break; case3: memcpy(Send_Data.N_S,subString,subStringNext-subString); break; case4: memcpy(Send_Data.longitude,subString,subStringNext-subString); break; case5: memcpy(Send_Data.E_W,subString,subStringNext-subString); break; case6: memcpy(Send_Data.is_XinLvWarn,subString,subStringNext-subString); break; case7: memcpy(Send_Data.is_XueYangWarn,subString,subStringNext-subString); break; default:break; } subString=subStringNext; } } else { subString++; if((subStringNext=strstr(subString,"\r"))!=NULL) { memcpy(Send_Data.is_HandWarn,subString,subStringNext-subString); } } } Send_Data.isParseData=true; } }#ifndef__XINLV_H#define__XINLV_H#includ
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年房產(chǎn)大數(shù)據(jù)合作協(xié)議書
- 2025年低壓化成箔合作協(xié)議書
- 2025年減震系統(tǒng)材料合作協(xié)議書
- 2025年個人店鋪?zhàn)赓U合同樣本(三篇)
- 2025年中學(xué)設(shè)備供貨合同(2篇)
- 2025年二年級初中班主任工作總結(jié)樣本(五篇)
- 2025年二手房買賣購房合同樣本(2篇)
- 2025年個人房屋簡易租賃合同樣本(4篇)
- 2025年代理記賬委托協(xié)議合同格式版(2篇)
- 2025年互聯(lián)網(wǎng)專線電路接入服務(wù)協(xié)議范文(2篇)
- 同等學(xué)力英語申碩考試詞匯(第六版大綱)電子版
- 中日合同范本
- T-CARM 002-2023 康復(fù)醫(yī)院建設(shè)標(biāo)準(zhǔn)
- 《康復(fù)按摩知識》課件
- 旅游文本的翻譯課件
- 最全新能源材料-鋰離子電池材料189張課件
- 申論詳解(PPT課件)
- 立式加工中心說明書
- 第八版神經(jīng)病學(xué)配套課件-12-中樞神經(jīng)系統(tǒng)感染性疾病
- 15MW風(fēng)力發(fā)電機(jī)
- 正面管教 讀書分享(課堂PPT)
評論
0/150
提交評論