基于安芯一號(hào)單片機(jī)的醫(yī)用輸液器智能控制系統(tǒng)
一、項(xiàng)目設(shè)計(jì)背景及概述
本文引用地址:http://butianyuan.cn/article/201710/368559.htm1、開(kāi)發(fā)目的
眾所周知,我國(guó)人口眾多,醫(yī)療資源稀缺,醫(yī)院時(shí)常人滿為患。輸液作為一種重要的治療手段,其受眾面是非常之廣,幾乎每個(gè)人都有在醫(yī)院掛水的經(jīng)歷。然而進(jìn)入信息時(shí)代的今天,輸液器卻仍然保留著最原始的功能,缺乏智能化或信息化的控制手段,這也是導(dǎo)致醫(yī)院注射室秩序混亂,護(hù)士疲于奔命,患者苦不堪言的最直接原因。目前醫(yī)院所使用的懸掛式輸液器雖然有控制流速的裝置,但無(wú)法得知輸液剩余時(shí)間,且缺乏輸液完畢后的報(bào)警系統(tǒng),使患者不能合理安排注射時(shí)間,且注射完畢后不得不大聲呼喊護(hù)士,這樣做既造成了注射室的喧嘩,影響了其他患者的休息,亦耗費(fèi)了患者的體力。
2、功能特性
本小組設(shè)計(jì)的輸液器智能控制系統(tǒng)不但可以實(shí)時(shí)調(diào)整患者輸液的流速,而且可以以剩余時(shí)間的方式,形象直觀地指出患者的輸液進(jìn)度,并且在輸液即將完畢后自動(dòng)發(fā)出提示。
3、創(chuàng)新性及實(shí)用性
本裝置的創(chuàng)新之處在于,比較以往傳統(tǒng)的輸液裝置只具備輸液功能和簡(jiǎn)單的調(diào)速功能,本裝置賦予了其監(jiān)測(cè)時(shí)間和結(jié)束報(bào)警的功能,使得患者可以根據(jù)自己的意愿精確設(shè)定輸液時(shí)間,做到與其他事宜的無(wú)縫銜接,合理安排手頭工作。舉個(gè)例子來(lái)說(shuō),就如同于我們平時(shí)下載電影,如果只知道下載速度而不知道下載剩余時(shí)間,就會(huì)顯得很被動(dòng),無(wú)法統(tǒng)籌控制和管理各下載任務(wù),無(wú)法合理安排其他事務(wù)。而正因?yàn)橛辛耸S鄷r(shí)間,使得我們可以精確安排下載流程,合理調(diào)配各項(xiàng)活動(dòng)。對(duì)醫(yī)院而言,本裝置也可使醫(yī)務(wù)工作者及時(shí)獲知患者輸液信息以便補(bǔ)液和結(jié)束輸液,做到有條不紊,秩序井然,最終提高效率。本裝置的實(shí)用性在于,無(wú)需對(duì)傳統(tǒng)輸液器進(jìn)行改裝加工,只需在頂部掛鉤處添加本裝置即可。此外其結(jié)構(gòu)簡(jiǎn)單,易于安裝,使用方便。
二、項(xiàng)目設(shè)計(jì)原理
1、總體設(shè)計(jì)原理
由物理知識(shí)可知,懸掛著的輸液瓶主要受到兩個(gè)力:一個(gè)是豎直向下的重力G,另一個(gè)是豎直向上的拉力F。由于F=G,故輸液瓶靜止與空中。
另外輸液瓶中的液體:
(1-1)
(1-2)
(1-3)
由以上三式,可得: (1-4)
由于 為常數(shù),故: (1-5)
其中K為常數(shù),可知輸液瓶受到的拉力F與瓶中液體體積V成線性關(guān)系。那么通過(guò)測(cè)量拉力F,即可得到體積V。
基于以上的推論,本系統(tǒng)通過(guò)測(cè)量一段短時(shí)間 內(nèi)輸液瓶受到拉力的變化量 ,并與此時(shí)受到的拉力F做一下運(yùn)算即可得到輸液結(jié)束所需的時(shí)間t:
(1-6)
注:F為除去輸液瓶毛重后液體所受的拉力
2、硬件設(shè)計(jì)原理
硬件上的設(shè)計(jì)難點(diǎn)在于液體重量的獲取。針對(duì)此問(wèn)題,我們采用了高精度的3kg拉力傳感器(如圖2-1所示),此傳感器是電阻橋式壓力傳感器。
圖2-1 拉力傳感器
電阻橋式壓力傳感器的工作原理如下所述:將應(yīng)變片黏貼到受力的力敏型彈性元件上,當(dāng)彈性元器件受力產(chǎn)生變形時(shí),應(yīng)變片產(chǎn)生相應(yīng)的變化,進(jìn)而使電阻阻值發(fā)生變化,有力引起的阻值變化轉(zhuǎn)換為電壓的變化,通過(guò)測(cè)量輸出電壓的數(shù)值再通過(guò)相應(yīng)的計(jì)算即可得出測(cè)量的物體的重量。其內(nèi)部電路如圖2-2所示。
圖2-2 拉力傳感器內(nèi)部電路
盡管此傳感器的精度較高,但其輸出的電壓仍然很低,單片機(jī)的AD口不能檢測(cè)出來(lái)。我們采用的方案的是:采用專(zhuān)用的傳感器檢測(cè)芯片HX711。
HX711是一款專(zhuān)為高精度電子秤而設(shè)計(jì)的24位A/D轉(zhuǎn)換器芯片。與同類(lèi)型其它芯片相比,該芯片集成了包括穩(wěn)壓電源、片內(nèi)時(shí)鐘振蕩器等其它同類(lèi)型芯片所需要的外圍電路,具有集成度高、響應(yīng)速度快、抗干擾性強(qiáng)等優(yōu)點(diǎn)。降低了電子秤的整機(jī)成本,提高了整機(jī)的性能和可靠性。該芯片與后端MCU 芯片的接口和編程非常簡(jiǎn)單,所有控制信號(hào)由管腳驅(qū)動(dòng),無(wú)需對(duì)芯片內(nèi)部的寄存器編程。輸入選擇開(kāi)關(guān)可任意選取通道A 或通道B,與其內(nèi)部的低噪聲可編程放大器相連。通道A 的可編程增益為128 或64,對(duì)應(yīng)的滿額度差分輸入信號(hào)幅值分別為±20mV或±40mV。通道B 則為固定的64 增益,用于系統(tǒng)參數(shù)檢測(cè)。芯片內(nèi)提供的穩(wěn)壓電源可以直接向外部傳感器和芯片內(nèi)的A/D 轉(zhuǎn)換器提供電源,系統(tǒng)板上無(wú)需另外的模擬電源。芯片內(nèi)的時(shí)鐘振蕩器不需要任何外接器件。上電自動(dòng)復(fù)位功能簡(jiǎn)化了開(kāi)機(jī)的初始化過(guò)程。
從傳感器輸出的電壓經(jīng)過(guò)HX711的128倍放大后,由其24位AD采樣后得到的數(shù)值已能夠滿足此項(xiàng)目的需求。
由于此傳感器的精度較高,其對(duì)電源的要求而隨之提高,為了滿足其對(duì)供電的需求。我們使用了5V線性穩(wěn)壓器使供電電源更加穩(wěn)定,紋波更小。
以上就是硬件設(shè)計(jì)原理的介紹,詳細(xì)的硬件設(shè)計(jì)將在后面的硬件設(shè)計(jì)中論述。
3、軟件設(shè)計(jì)原理
本項(xiàng)目軟件部分的設(shè)計(jì)難點(diǎn)在于如何準(zhǔn)確地獲取輸液的重量,如何抵抗外部的干擾。
依據(jù)總體設(shè)計(jì)原理里提及的輸液剩余時(shí)間的獲取,軟件程序?qū)@取的總重量減去稱(chēng)重傳感器毛重及輸液瓶重量后即為輸液的重量,再通過(guò)每1s的采樣獲取輸液重量的變化,即可計(jì)算出剩余時(shí)間。但實(shí)際中并不完全是這樣的。由于在實(shí)際中輸液的速度極慢,礙于傳感器的精度有限,在1s的采樣周期內(nèi),采集到的輸液重量幾乎不變,無(wú)法進(jìn)行剩余時(shí)間的預(yù)測(cè)。為了克服這種情況,我們參照光電編碼器里的T測(cè)量轉(zhuǎn)速的辦法,通過(guò)測(cè)量在第n個(gè)1s內(nèi)輸液重量改變1個(gè)單位,再將n乘以1s采樣周期內(nèi)改變1個(gè)單位所算得的剩余時(shí)間,這才得到輸液剩余時(shí)間。
由于輸液瓶并不是靜止不動(dòng)的,每時(shí)每刻它都受到各種力的作用。這會(huì)對(duì)我們重力的測(cè)量帶來(lái)各種干擾。為了盡量降低這種干擾的影響,我們的軟件程序中對(duì)運(yùn)算得到的重量變化率進(jìn)行了簡(jiǎn)單的一階濾波,這能有效地降低高頻干擾的影響。不過(guò),這樣依然不夠的,如輸液瓶遭到人為施加的晃動(dòng)時(shí),剩余時(shí)間會(huì)突變得非常嚴(yán)重的。故我們的程序中,通過(guò)每三個(gè)變化周期里其剩余時(shí)間變化一致時(shí)才認(rèn)為采集到的數(shù)據(jù)為正確的數(shù)據(jù)。通過(guò)這種辦法,能夠很好解決外部大的干擾帶來(lái)的影響。
在此,我們只是介紹了軟件設(shè)計(jì)中所用到的重要技術(shù),詳細(xì)的軟件設(shè)計(jì)將在后面的軟件設(shè)計(jì)中論述。
三、項(xiàng)目設(shè)計(jì)
1、硬件設(shè)計(jì)
圖3-1 硬件總體框圖
簡(jiǎn)要說(shuō)明一下,我們采用的供電方案是:由220V市電經(jīng)電源適配器得到5-12V,然后經(jīng)過(guò)LM2940-5.0線性穩(wěn)壓芯片得到5V,再給單片機(jī)、傳感器、LCD顯示屏和無(wú)線模塊供電。
由于拉力傳感器受壓后輸出值改變量小,故需要經(jīng)過(guò)放大電路后再送到單片機(jī)的AD口進(jìn)行模數(shù)轉(zhuǎn)換以得到足夠的精度。而由于HX711芯片內(nèi)部已自帶128倍可編程放大器,故不需要在外部電路多加放大電路。
由于醫(yī)院的輸液室不算寬廣,而且輸液懸掛點(diǎn)較多。針對(duì)這種情況,無(wú)線模塊使用Zigbee是最合適的。但手頭上暫無(wú)Zigbee,只有以前用過(guò)的XL02-232AP1。故無(wú)線模塊暫定于XL02-232AP1。
為了開(kāi)發(fā)的方便,LCD顯示屏?xí)簳r(shí)利用手頭上已有的OLED 128*64 0.96寸黃藍(lán)雙色顯示屏。
以下是系統(tǒng)的硬件原理圖:
圖3-2 系統(tǒng)硬件原理圖
由于時(shí)間緊急,我們并沒(méi)有PCB打樣。我們利用以前用過(guò)的舊板上通過(guò)飛線焊接,搭建最小系統(tǒng)。實(shí)物圖如下所示:
圖3-3 最小系統(tǒng)實(shí)物圖
配上各種模塊后的實(shí)物圖如下所示:
圖3-4 總的實(shí)物圖
2、軟件設(shè)計(jì)
軟件設(shè)計(jì)主要分為兩個(gè)部分:上位機(jī)和下位機(jī)。下位機(jī)的工作主要是在規(guī)定的采樣周期內(nèi)采集輸液的重量,經(jīng)過(guò)算法計(jì)算得到輸液剩余時(shí)間,然后通過(guò)OLED顯示及通過(guò)無(wú)線模塊發(fā)送到上位機(jī)。
而上位機(jī)的工作主要是收集下位機(jī)發(fā)送的數(shù)據(jù),將數(shù)據(jù)分類(lèi)并排序,最后在界面上顯示出來(lái)。
2.1 下位機(jī)軟件設(shè)計(jì)
下位機(jī)的程序先經(jīng)過(guò)各方面的初始化(包括定時(shí)器、串口、稱(chēng)重傳感器的去皮等),然后等待1s采樣時(shí)間的到來(lái)。當(dāng)1s采樣周期到來(lái)時(shí),單片機(jī)通過(guò)HX711采集輸液的重量,對(duì)于真實(shí)的數(shù)據(jù)進(jìn)行處理,不符合的拋棄。以下是其程序流程圖:
圖3-5 下位機(jī)程序框圖
2.2 上位機(jī)程序設(shè)計(jì)
上位機(jī)經(jīng)過(guò)初始化,打開(kāi)特定通訊端口,創(chuàng)建連接后,就等待著下位機(jī)發(fā)送數(shù)據(jù)。當(dāng)上位機(jī)收到數(shù)據(jù)后,判斷數(shù)據(jù)是否符合通訊協(xié)議的規(guī)定(通訊協(xié)議為:A5+ID+AA+剩余時(shí)間),符合進(jìn)行排序并顯示;不符合則拋棄。其軟件流程圖如下所示:
圖3-6 上位機(jī)軟件流程圖
四、測(cè)試結(jié)果
我們的程序調(diào)試完畢后,用醫(yī)用輸液瓶進(jìn)行測(cè)量,測(cè)量的結(jié)果如下表所示:
表4-1 實(shí)驗(yàn)測(cè)量結(jié)果
從上表上的數(shù)據(jù)可以看出,在短時(shí)間內(nèi)的誤差幾乎為0,而在較長(zhǎng)時(shí)間上有所不足,在我們的實(shí)驗(yàn)上誤差最大為15.7%,但其實(shí)際上偏差的分鐘數(shù)并不算很多(最多為11分鐘),這在實(shí)際使用當(dāng)中依然能讓人接受。
五、總結(jié)
本方案是以深聯(lián)華單片機(jī)芯片為核心,通過(guò)相應(yīng)的傳感器和無(wú)線模塊,將病人當(dāng)前輸液時(shí)間信息實(shí)時(shí)的反饋給院方和病人的一個(gè)效率解決方案。針對(duì)當(dāng)前醫(yī)院輸液混亂的現(xiàn)實(shí)情況,本著以病人為核心,以醫(yī)院工作效率為重點(diǎn)而提出的這個(gè)輸液時(shí)間監(jiān)控解決方案解決了輸液時(shí)間這個(gè)長(zhǎng)期存在但并未正確解決的問(wèn)題,使醫(yī)院輸液秩序得到有效的維護(hù),并解決了病人在無(wú)法獲知時(shí)間的焦急感。而且在實(shí)際測(cè)量中,其結(jié)果能讓人滿意。本方案設(shè)計(jì)產(chǎn)品精巧,有效,成本低廉,同時(shí)后期可擴(kuò)展的可能性大,可大面積的在醫(yī)院推廣使用。
六、視頻地址
地址:http://pan.baidu.com/s/1pJlojn9
提取碼:x65c
評(píng)論