趙玲
(四川中醫(yī)藥高等??茖W(xué)校,四川綿陽,261000)
隨著社會(huì)經(jīng)濟(jì)的發(fā)展,人們對(duì)于醫(yī)學(xué)護(hù)理方面的需求也日趨提升?,F(xiàn)在的護(hù)理工作主要靠醫(yī)護(hù)人員來開展。就存在工作強(qiáng)度較高以及一定的感染風(fēng)險(xiǎn)等問題。因此,設(shè)計(jì)一種護(hù)理機(jī)器人,實(shí)現(xiàn)無人化的護(hù)理作業(yè),可以有效解決上述問題,具有良好的應(yīng)用價(jià)值。
就目前而言,國(guó)內(nèi)許多機(jī)構(gòu)在護(hù)理機(jī)器人領(lǐng)域開展了研究。2020 年,電子科技大學(xué)成都學(xué)院陳虹宇以人機(jī)工程學(xué)為基礎(chǔ),設(shè)計(jì)了一種穿戴式下肢復(fù)健輔助行走裝置,用于腦卒中偏癱患者的康復(fù)護(hù)理[1];2021 年,江南大學(xué)姜智文通過構(gòu)建人機(jī)力學(xué)模型,研究了仿人背抱機(jī)器人的主要設(shè)計(jì)因素[2];2022 年,安徽理工大學(xué)畢亮亮團(tuán)隊(duì)采用TRIZ 發(fā)明原理,研發(fā)了一種多功能的輔助護(hù)理機(jī)器人[3]。從上述設(shè)計(jì)來看,對(duì)護(hù)理機(jī)器人的研發(fā)均達(dá)到了良好的效果,且解決了一定的問題。通過分析上述文獻(xiàn)的研究方式可知,均是以提出問題-目標(biāo)-功能研發(fā)為流程進(jìn)行開展。由此可以說明,該研究方式對(duì)于護(hù)理機(jī)器人的結(jié)構(gòu)、性能研發(fā)是比較有效的。因此,本文也以上述研究方式為依據(jù),以STM32 為主控芯片,開發(fā)一種結(jié)構(gòu)合理、系統(tǒng)穩(wěn)定且具有簡(jiǎn)易護(hù)理功能的機(jī)器人。
本課題對(duì)于簡(jiǎn)易護(hù)理機(jī)器人的設(shè)計(jì)中,將到被護(hù)理人的常規(guī)需求作為設(shè)計(jì)的主要目標(biāo)。因此,該護(hù)理機(jī)器人需要實(shí)現(xiàn)的目標(biāo)有:喂餐、輔助翻身、中醫(yī)推拿、人機(jī)交互等。要實(shí)現(xiàn)上述功能,系統(tǒng)完成各項(xiàng)功能所需要具備的模塊如表1所示。
表1 功能與實(shí)現(xiàn)模塊
由表1 所示的功能與模塊對(duì)應(yīng)圖,護(hù)理機(jī)器人在運(yùn)行時(shí),主要通過信號(hào)采集、信號(hào)傳輸、發(fā)送指令信號(hào)指示各模塊動(dòng)作等流程來實(shí)現(xiàn)各項(xiàng)功能。因此,需要確定系統(tǒng)的主控芯片從而實(shí)現(xiàn)結(jié)構(gòu)的完整性。因此,本文以STM32 為主控核心[4],構(gòu)建整個(gè)系統(tǒng)。系統(tǒng)的整體布局情況,如圖1 所示。
圖1 系統(tǒng)整體布局
系統(tǒng)的整體布局完成之后,下一步就是對(duì)系統(tǒng)的硬件進(jìn)行設(shè)計(jì)。具體操作為:(1)模塊分析。對(duì)系統(tǒng)的各模塊應(yīng)用場(chǎng)景、要求等情況進(jìn)行分析,為后續(xù)硬件的類型選擇提供參考依據(jù);(2)對(duì)系統(tǒng)的各部分確定合理的硬件類型(如:型號(hào)、參數(shù)、功能);(3)設(shè)計(jì)各模塊的硬件電路,即根據(jù)各模塊的情況,搭建能夠使其正常運(yùn)行的電路。
護(hù)理機(jī)器人在運(yùn)行中,需要具有以下幾個(gè)性能:(1)系統(tǒng)的運(yùn)行速度較快且穩(wěn)定性要求較高;(2)在給被護(hù)理人喂飯、翻身、推拿等操作中,需要各種信號(hào)和指令即時(shí)、穩(wěn)定傳輸才能確保一切工作有條不紊地進(jìn)行,故主控芯片需要支持大量且高速的數(shù)據(jù)傳輸;(3)對(duì)于機(jī)器人在護(hù)理工作中,系統(tǒng)面對(duì)各種復(fù)雜的指令,具有良好的可靠性;(4)系統(tǒng)的功耗較低。根據(jù)上述性能,本文選擇的主控芯片為STM32F407。該控制器兼具上述優(yōu)點(diǎn),同時(shí)還具有多樣化的接口,可以滿足護(hù)理機(jī)器人在不同場(chǎng)景下的使用需求,其豐富的外設(shè),也能夠使其應(yīng)用在多種場(chǎng)合下[5]。STM32F407 的主要參數(shù),如表2 所示。
表2 STM32F407部分主要參數(shù)
STM32F407 主控芯片的電路如圖2 所示。
圖2 STM32 主控芯片
就本課題而言,護(hù)理機(jī)器人由于需要滿足一定的功能需求,故其機(jī)器人本體,設(shè)計(jì)為手臂式結(jié)構(gòu)??紤]到機(jī)器人在不同場(chǎng)景的開展護(hù)理工作時(shí),能夠根據(jù)具體的情況來動(dòng)作。且工作場(chǎng)景通常是在病房或室內(nèi),其地面較為平整,故行走機(jī)構(gòu)設(shè)計(jì)為輪式。因此,該護(hù)理機(jī)器人的驅(qū)動(dòng)模塊主要體現(xiàn)在幾個(gè)方面:(1)驅(qū)動(dòng)機(jī)器人行走機(jī)構(gòu)的驅(qū)動(dòng);(2)機(jī)械手臂的驅(qū)動(dòng)。機(jī)器人的手臂包括大臂、小臂、關(guān)節(jié)、手腕,為實(shí)現(xiàn)翻身、喂飯、按摩等功能,需要對(duì)關(guān)節(jié)和手腕進(jìn)行驅(qū)動(dòng)。
當(dāng)系統(tǒng)運(yùn)行時(shí),驅(qū)動(dòng)模塊的基本運(yùn)行流程為:(1)系統(tǒng)獲得指令,指示機(jī)器人進(jìn)行某項(xiàng)動(dòng)作(如給被護(hù)理人翻身);(2)主控系統(tǒng)指示行走機(jī)構(gòu)的驅(qū)動(dòng)模塊,機(jī)器人行走至給被護(hù)理人翻身的最佳位置;(3)主控系統(tǒng)指示關(guān)節(jié)、手腕的驅(qū)動(dòng)模塊動(dòng)作,機(jī)械手臂開始運(yùn)動(dòng),為被護(hù)理人翻身。
由于涉及的驅(qū)動(dòng)模塊較多,限于篇幅,本文僅以行走機(jī)構(gòu)模塊為例進(jìn)行說明。從上述運(yùn)行流程可知,機(jī)器人在工作場(chǎng)所中,行走的地面較為平坦,且行走距離較短,故驅(qū)動(dòng)電機(jī)僅需要能夠?qū)崿F(xiàn)基本的運(yùn)動(dòng)需求即可。鑒于此,行走機(jī)構(gòu)的驅(qū)動(dòng)模塊擬定為雙驅(qū)動(dòng)結(jié)構(gòu)。驅(qū)動(dòng)模塊的電路設(shè)計(jì)如圖3 所示。
圖3 行走機(jī)構(gòu)驅(qū)動(dòng)模塊
同理,根據(jù)關(guān)節(jié)、手腕驅(qū)動(dòng)手臂的電磁轉(zhuǎn)矩要求、構(gòu)件的自由度、轉(zhuǎn)速控制的效果等因素,實(shí)現(xiàn)相應(yīng)驅(qū)動(dòng)模塊的設(shè)計(jì)。
通常情況下,護(hù)理機(jī)器人的活動(dòng)范圍為室內(nèi),其整體的活動(dòng)面積較小。因此,對(duì)于系統(tǒng)的無線通信模塊設(shè)計(jì)中,由于藍(lán)牙模塊的有效作用范圍為30 ~40 米,完全能夠滿足室內(nèi)的使用。因此,本文的無線通信模塊確定為藍(lán)牙模塊,基本類型為藍(lán)牙5.0 Mesh 模塊。部分主要參數(shù)如表3 所示。
表3 藍(lán)牙5.0基本參數(shù)
對(duì)于護(hù)理機(jī)器人而言,其運(yùn)動(dòng)軌跡較為簡(jiǎn)單,僅在室內(nèi)小范圍運(yùn)動(dòng)。因此,在循跡模塊設(shè)計(jì)中,除了為機(jī)器人規(guī)劃合理的軌跡外,由于小范圍活動(dòng)區(qū)間存在大量的物品擺放以及人員走動(dòng),因此還要考慮的是避障問題。鑒于上述兩點(diǎn),本文在循跡模塊的設(shè)計(jì)中,考慮到陽光和燈光對(duì)傳感器的影響,采用紅外傳感器來實(shí)現(xiàn)機(jī)器人的循跡[6]。同時(shí),采用超聲波傳感器對(duì)障礙物進(jìn)行檢測(cè)[7],繼而達(dá)到良好的循跡和避障效果。紅外循跡模塊如圖4 所示,超聲波避障模塊如圖5所示。
圖4 紅外循跡模塊
圖5 超聲避障模塊
液晶顯示模塊,是實(shí)現(xiàn)人機(jī)交互的媒介。即通過液晶顯示器,顯示系統(tǒng)的運(yùn)行狀態(tài),包括:計(jì)時(shí)、驅(qū)動(dòng)電機(jī)轉(zhuǎn)速、電量、循跡模塊工作狀態(tài)顯示以及發(fā)送指令等。在液晶顯示模塊的設(shè)計(jì)中,選擇類型為OLED。原因在于,該顯示模塊即使沒有背離燈光,也能夠自主發(fā)亮,而且該模塊具有較快的響應(yīng)速度[8]。液晶顯示模塊的電路設(shè)計(jì)如圖6 所示。
圖6 液晶顯示模塊
護(hù)理機(jī)器人在執(zhí)行各項(xiàng)指令的時(shí)候,需要對(duì)被護(hù)理人的特征進(jìn)行圖像識(shí)別,例如:執(zhí)行喂飯操作時(shí),需要識(shí)別被護(hù)理人的面部,執(zhí)行翻身操作時(shí),需要識(shí)別被護(hù)理人的側(cè)方位,以便能夠在最佳位置完成上述動(dòng)作。因此,在系統(tǒng)的軟件設(shè)計(jì)中,主要是圖像識(shí)別模塊的軟件設(shè)計(jì)。在本文的圖像識(shí)別模塊設(shè)計(jì)中,采用的方法為最大類間方差算法(OTSU 算法)。其主要原因在于:(1)計(jì)算速度較快。由于其本質(zhì)是均值方差的計(jì)算,故整個(gè)計(jì)算過程比較簡(jiǎn)單,能夠快速得到計(jì)算結(jié)果;(2)受環(huán)境影響因素較小。該算法受圖片的亮度以及對(duì)比度等因素的影響比較小,具有良好的數(shù)字圖像處理性能[10]。從原理上來說,該方法是一種能夠確定圖像的二值化分割閾值,將圖像采集的目標(biāo)和背景都達(dá)到較高的像素區(qū)分度[9]。類間方差表達(dá)式為[10]:
式中,1ω為背景像素占比;2ω為前景像素占比;μ為累積灰度值;1μ為前景平均灰度值;2μ為背景的平均灰度值。
對(duì)公示(1)進(jìn)行簡(jiǎn)化,可得簡(jiǎn)化表達(dá)式[10]:
3.2.1 系統(tǒng)基本運(yùn)行流程
護(hù)理機(jī)器人主要對(duì)被護(hù)理人進(jìn)行識(shí)別,以便準(zhǔn)確實(shí)現(xiàn)對(duì)應(yīng)的護(hù)理動(dòng)作。該圖像處理模塊主要分為5 個(gè)流程:(1)圖像的選??;(2)平面圖像處理;(3)圖像預(yù)處理;(4)圖像分割;(5)選擇圖像。在圖像識(shí)別中,當(dāng)攝像頭拍攝照片后,按照上述步驟系統(tǒng)開始對(duì)平面圖像進(jìn)行處理,并將處理好的圖像進(jìn)行展示;隨后,被選取的圖像將被提取濾波器中,進(jìn)行均衡化、線性變換以及降噪等處理,再利用OTSU 算法計(jì)算圖像的最佳值,從而準(zhǔn)確實(shí)現(xiàn)護(hù)理人(人臉、后背等位置)與背景的區(qū)分。以人臉識(shí)別為例,部分實(shí)現(xiàn)的代碼如下:
mport cv2
img = cv2.imread(” face2.png” )
faceCascade = cv2.CascadeClassifier(” haarcascade_frontalface_default.xml” )
faces = faceCascade.detectMultiScale(img,1.3)
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x + w, y + h), (0, 0, 255), 5)
cv2.imshow(” img” , img)
cv2.waitKey()
cv2.destroyAllWindows()
……
3.2.2 GUI 界面設(shè)計(jì)
系統(tǒng)的GUI 界面,即圖形用戶界面。其運(yùn)行的基本原理為:系統(tǒng)的內(nèi)部會(huì)把用戶的指令轉(zhuǎn)換成對(duì)應(yīng)的代碼信息。此時(shí),GUI 程序開始運(yùn)行,并創(chuàng)建對(duì)應(yīng)的消息隊(duì)列,程序?qū)?shí)時(shí)對(duì)隊(duì)列中的消息進(jìn)行處理。
在本文中,以人臉識(shí)別為例,GUI 界面里主要有五個(gè)部分:(1)圖像的選取;(2)平面圖像處理;(3)圖像的預(yù)處理;(4)圖像分割;(5)圖像選擇。如圖所示,第一個(gè)按鈕是實(shí)現(xiàn)圖像選擇的功能。當(dāng)圖像輸入完成后,點(diǎn)擊平面圖像轉(zhuǎn)化按鍵,系統(tǒng)便開始對(duì)輸入的圖像進(jìn)行平面化處理。再通過預(yù)處理按鍵,對(duì)圖像進(jìn)行均衡化以及降噪等操作。隨后,執(zhí)行圖像分割處理,即開始分割實(shí)現(xiàn)目標(biāo)和非目標(biāo)要素;最后將已經(jīng)分割完成的人臉圖像進(jìn)行選擇和確定。GUI界面的基本布局,如圖7 所示。
圖7 GUI 界面布局
圖像識(shí)別的效果,主要通過識(shí)別率來判別。具體的操作方式為:確定圖像識(shí)別的總目標(biāo)數(shù)Fz 以及人工識(shí)別總數(shù)Fr,則識(shí)別率計(jì)算表達(dá)式為[11~12]:
考慮到護(hù)理機(jī)器人需要在喂飯、翻身以及按摩三個(gè)方面的護(hù)理,選取人臉、側(cè)體位以及后背三個(gè)對(duì)象為識(shí)別目標(biāo),在保持室內(nèi)光線充足的前提下,進(jìn)行圖像識(shí)別比較。以人體側(cè)面為例,部分程序?yàn)椋?/p>
import cv2
img = cv2.imread(” monitoring.jpg” )
bodyCascade = cv2.CascadeClassifier(” cascades\haarcascade_fullbody.xml” )
bodys = bodyCascade.detectMultiScale(img, 1.15, 4)
for (x, y, w, h) in bodys
cv2.rectangle(img, (x, y), (x + w, y + h), (0, 0, 255), 5)
……
圖像識(shí)別效果如表4 所示。
表4 測(cè)試結(jié)果
從表4 所示的數(shù)據(jù)來看,在光線充足的條件下,人臉的識(shí)別率最高,因?yàn)槿说哪槻烤哂忻黠@的特征,系統(tǒng)能夠較容易地區(qū)分人臉與背景的差異;而側(cè)體位識(shí)別率略低,通常智能通過手部特征來進(jìn)行識(shí)別,而后背由于明顯的特征較少,識(shí)別率也進(jìn)一步降低。所以,OTSU 算法在計(jì)算中,對(duì)于特征明顯的對(duì)象,具有非常高的識(shí)別精度,但缺乏明顯特征的對(duì)象,圖像識(shí)別的準(zhǔn)確率會(huì)低一些。該實(shí)驗(yàn)結(jié)果也表明,在護(hù)理機(jī)器人設(shè)計(jì)中,可以在圖像識(shí)別的基礎(chǔ)上,再增加人工后臺(tái)的運(yùn)維和控制功能,例如:通過UI 設(shè)計(jì),開發(fā)基于人機(jī)遠(yuǎn)程交互的App,通過手機(jī)指令動(dòng)作,指示機(jī)器人的運(yùn)行,這樣便可以彌補(bǔ)系統(tǒng)的不足之處。
對(duì)于簡(jiǎn)易護(hù)理機(jī)器人的設(shè)計(jì)而言,本文結(jié)合功能與設(shè)計(jì)模塊相對(duì)應(yīng)的情況,完成了以STM32 為主控制系統(tǒng),驅(qū)動(dòng)模塊、無線通信模塊、循跡模塊等相關(guān)聯(lián)的整體布局。在此基礎(chǔ)上,完成了系統(tǒng)的硬件設(shè)計(jì)。并在軟件設(shè)計(jì)中,采用OTSU 算法實(shí)現(xiàn)機(jī)器人的圖像識(shí)別功能,從識(shí)別率測(cè)試來看,對(duì)特征不明顯的對(duì)象識(shí)別,會(huì)存在識(shí)別率略低的情況。因此,下一步工作,通過開發(fā)人機(jī)交互App,通過人工運(yùn)維與機(jī)器人智能化功能相結(jié)合的形式,達(dá)到優(yōu)化護(hù)理機(jī)器人性能的目的。