張可征,方武,2,李晨曦
(1.蘇州經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院信息技術(shù)學(xué)院,蘇州215009;2.江蘇省智能服務(wù)工程技術(shù)研究開(kāi)發(fā)中心,蘇州215009)
聯(lián)合國(guó)人口老齡化和可持續(xù)發(fā)展報(bào)告指出,全球在未來(lái)十年將加速老齡化進(jìn)程。由于疾病人群對(duì)醫(yī)療服務(wù)需求的增加,機(jī)器人便被提出作為一種輔助工具提供醫(yī)療服務(wù)以彌合日益擴(kuò)大的需求,緩解醫(yī)療人員和資源短缺。機(jī)器人產(chǎn)品分為工業(yè)機(jī)器人和服務(wù)機(jī)器人,而護(hù)理機(jī)器人便是服務(wù)機(jī)器人的一種。本文提出了一款基于VR(Virtual Reality)的雙臂機(jī)器人,可以為老年人和殘障人士帶來(lái)便捷的家庭護(hù)理服務(wù)。
目前護(hù)理機(jī)器人產(chǎn)品主要有:中國(guó)臺(tái)灣交大研究團(tuán)隊(duì)研發(fā)完成居家照護(hù)智能機(jī)器人——ROLA;中國(guó)浙江大學(xué)軟件學(xué)院“大三合創(chuàng)業(yè)團(tuán)隊(duì)”發(fā)明的智能衛(wèi)生護(hù)理機(jī)器人;日本的RI-MAN機(jī)器人等。老年人和殘疾人實(shí)際使用的機(jī)器人數(shù)量并沒(méi)有達(dá)到人們預(yù)期的目標(biāo),導(dǎo)致用戶使用量較少?,F(xiàn)階段護(hù)理機(jī)器人存在的主要存在價(jià)格問(wèn)題和用戶體驗(yàn)不佳。而我國(guó)服務(wù)機(jī)器人起步比較晚,但發(fā)展迅猛,加上巨大的需求,將會(huì)成為全球最大的潛在市場(chǎng)。本項(xiàng)目采用開(kāi)源平臺(tái)開(kāi)發(fā)可有效降低研發(fā)成本,基于VR人機(jī)交互技術(shù)提升用戶體驗(yàn),幫助老年人和殘疾人體會(huì)高科技帶來(lái)的便捷,解決生活當(dāng)中的實(shí)際問(wèn)題,帶來(lái)更好的生活服務(wù)。
如圖1所示,系統(tǒng)結(jié)構(gòu)可以分為兩部分,一部分由樹(shù)莓派結(jié)合機(jī)器視覺(jué)攝像頭操控機(jī)器人自動(dòng)搜尋目標(biāo)物品并實(shí)現(xiàn)目標(biāo)物品的抓取,另一部分由Arduino平臺(tái)結(jié)合機(jī)械骨骼控制端實(shí)現(xiàn)機(jī)器人的運(yùn)轉(zhuǎn);操作者可通過(guò)VR設(shè)備獲取目標(biāo)物品,從而實(shí)現(xiàn)目標(biāo)物品的抓取。
系統(tǒng)硬件部分包括:機(jī)械臂模塊:采用六自由度機(jī)械臂;底盤(pán)運(yùn)動(dòng)模塊,主要通過(guò)Arduino控制;轉(zhuǎn)接板模塊:STM32F103VCT6;樹(shù)莓派主板模塊:Raspberry PI 3B+。機(jī)器視覺(jué)攝像頭模塊;FPV攝像頭模塊;VR眼鏡模塊;機(jī)械骨骼模塊。
圖1系統(tǒng)組成圖
(1)機(jī)械臂模塊
如圖2所示,多自由度機(jī)械臂的主控芯片為STM32F103VCT6,驅(qū)動(dòng)方式有自動(dòng)和手動(dòng):自動(dòng)由樹(shù)莓派發(fā)送的運(yùn)動(dòng)指令驅(qū)動(dòng)該機(jī)械臂;手動(dòng)由姿態(tài)傳感器發(fā)送運(yùn)動(dòng)指令,STM32F103VCT6通過(guò)藍(lán)牙接收指令信息驅(qū)動(dòng)該機(jī)械臂。
圖2多自由度機(jī)械臂
(2)底盤(pán)運(yùn)動(dòng)模塊
如圖3所示,底盤(pán)集成了Arduino Mega2560核心電路板,底盤(pán)接收到來(lái)自樹(shù)莓派或手柄的運(yùn)動(dòng)指令,通過(guò)引腳發(fā)送控制指令 25、26、47、48、55、56、78、79、80、83、92、93控制六個(gè)35電機(jī)運(yùn)轉(zhuǎn),從而驅(qū)動(dòng)整體進(jìn)行運(yùn)動(dòng)。
圖3底盤(pán)運(yùn)動(dòng)模塊電路圖
(3)轉(zhuǎn)接板模塊
如圖4所示,VR機(jī)器人通信轉(zhuǎn)接板采用STM32F103VCT6作為主控制器供電電壓為12V通信接口包涵Uart4、IICX2、無(wú)線接口音頻接口。
圖4 VR機(jī)器人通信轉(zhuǎn)接板
(4)樹(shù)莓派模塊
如圖5所示,視覺(jué)處理模塊采用的Raspberry PI 3B+,搭載了Broadcom BCM2837,集成藍(lán)牙和Wi-Fi模塊,5V電壓,同時(shí)擁有 40 個(gè)引腳、USB、RJ-45、HDMI、音頻、SPI等接口。
圖5 U5NBCM2837B電路原理圖
(5)攝像頭模塊
如圖6所示,攝像頭擁有500w分辨率,CCD尺寸為1/4inch,3.6mm可調(diào)光圈,60°視場(chǎng)角。
圖6紅外夜視攝像頭
(6)FPV攝像頭模塊
如圖7所示,Crazepony的FPV攝像頭采用按鈕式調(diào)頻,廣角170°帶攝麥克風(fēng),分辨率可達(dá)1280×960,焦距為1.8mm。
圖7 FPV攝像頭
(7)VR眼鏡模塊
如圖8所示,VR眼鏡采用LCD屏,屏幕尺寸為4.3寸,分辨率可 480×270px,電壓 7.4V。
圖8 VR眼鏡
(8)機(jī)械骨骼模塊
如圖9所示,可穿戴式機(jī)械骨骼搭載STM32F103VCT6的MCU通過(guò)藍(lán)牙來(lái)發(fā)送傳感器的命令,以此控制機(jī)器人完成一系列操作指令。
圖9可穿戴式機(jī)械骨骼
系統(tǒng)底盤(pán)控制軟件采用C語(yǔ)言進(jìn)行開(kāi)發(fā),應(yīng)用軟件部分采用Python結(jié)合OpenCV庫(kù)進(jìn)行運(yùn)動(dòng)控制和物品識(shí)別。系統(tǒng)軟件流程如圖10所示。
圖10程序流程圖
程序具體步驟如下:
機(jī)器人進(jìn)入運(yùn)行狀態(tài);設(shè)定紅色閾HSV顏色模型值;設(shè)定尺寸;打開(kāi)攝像頭;等待兩秒;獲得手動(dòng)抓物體大小的標(biāo)定值;初始化串口;打開(kāi)串口;執(zhí)行程序;檢測(cè)攝像頭;若未檢測(cè)到攝像頭輸出No Camera返回;檢測(cè)到攝像頭,轉(zhuǎn)到白色的HSV空間;紅點(diǎn)標(biāo)出圖像的中心坐標(biāo);根據(jù)閾值構(gòu)建蒙版掩膜腐蝕操作,去除噪點(diǎn)輪廓檢測(cè);給小車(chē)一個(gè)初始速度V1,左轉(zhuǎn)搜尋物體,如果存在物體輪廓找到面積最大的輪廓——目標(biāo)物體,停止轉(zhuǎn)動(dòng)調(diào)整角度,調(diào)整機(jī)器人與目標(biāo)物品間距至合適位置;抓取物品;放置物品,機(jī)械臂回到初始位置,結(jié)束程序。
表1主函數(shù)
表2系統(tǒng)配置
系統(tǒng)配置將可見(jiàn)光攝像頭插入樹(shù)莓派的SPI接口之后,在樹(shù)莓派中啟用攝像頭模塊。在終端中輸入sudo raspi-config,進(jìn)入系統(tǒng)設(shè)置。
圖11系統(tǒng)設(shè)置界面
圖11系統(tǒng)設(shè)置界面選擇5 Inerfacing Options,選擇P1 Camera,然后選擇Yes,回到系統(tǒng)設(shè)置界面選擇7 Advanced Options,選擇SPI然后啟用SPI。最后重啟樹(shù)莓派,至此攝像頭模塊和GPIO口以可以使用了。
(1)串口配置搭建樹(shù)莓派串口通信開(kāi)發(fā)環(huán)境
①安裝Python:sudo apt-get update;sudo apt-get install python。
②安裝Python的GPIO模塊,用于控制LED、電機(jī)等:
wget https://sourceforge.net/projects/raspberry-gpiopython/files/RPi.GPIO-0.6.2.tar.gz;(下載GPIO庫(kù),因?yàn)楦?,具體參考官網(wǎng)網(wǎng)址變動(dòng))
tar xvzf RPi.GPIO-0.6.2.tar.gz;(tar解壓)
cdRPi.GPIO-0.6.2;(進(jìn)入解壓后的文件夾)
sudo python setup.py install;(安裝GPIO庫(kù)文件)
③安裝serial,用于串口通信及USB通信:
sudo apt-get install python-serial
④檢驗(yàn)前三步環(huán)境安裝是否正確:
用nano編輯器編輯一個(gè)test文件;
sudo nano test.py
在test.py文件中寫(xiě)入下面兩行代碼:
import serial;
import RPi.GPIO
運(yùn)行python test.py語(yǔ)句,如果沒(méi)有報(bào)錯(cuò)說(shuō)明樹(shù)莓派開(kāi)發(fā)環(huán)境搭建正確。
修改樹(shù)莓派配置文件:
●修改cmdline.txt
sudo nano/boot/cmdline.txt看到dwc_otg.lpm_enable=0 console=ttyAMA0,115200kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait把console=ttyAMA0,115200 kgdboc=ttyAMA0,115200刪除變成這樣dwc_otg.lpm_enable=0 console=tty1root=/dev/mmcblk0p2rootfstype=ext4 elevator=deadlinerootwait Ctrl+X按Y按Enter保存退出
●修改inittab然后禁止掉從串口登錄的功能
sudo nano/etc/inittab注 釋 掉 T0:23:respawn:/sbin/getty-L ttyAMA0 115200 vt100變成#T0:23:respawn:/sbin/getty-L ttyAMA0 115200 vt100 Ctrl+X按Y按Enter保存退出sudo reboot之后樹(shù)莓派的pin8(GPIO14)pin10(GPIO15)這兩個(gè)口就可以當(dāng)成普通的串口來(lái)用了現(xiàn)在你可以像使用一個(gè)普通串口那樣使用/dev/ttyAMA0了。
(2)開(kāi)機(jī)自啟動(dòng)配置執(zhí)行mkdir.config/autostartsudonano~/.config/autostart/run.desktop輸入以下內(nèi)容:[DesktopEntry]Type=ApplicationExec=python/home/pi/pi_robot_red.py重新啟動(dòng)sudo reboot now啟動(dòng)后可以自動(dòng)執(zhí)行程序,設(shè)置成功。5.2調(diào)試機(jī)器人運(yùn)行步驟:檢查線路連接是否正常檢查電源供電是否正常將待抓取物品放置適當(dāng)位置打開(kāi)電源等待機(jī)器運(yùn)行完畢關(guān)閉電源要實(shí)現(xiàn)成功抓取;光照條件足夠;物體垂直于地面擺放;無(wú)障礙物遮擋;電池電量充足;小車(chē)零部件無(wú)故障;連接線正確且牢固連接。
實(shí)驗(yàn)采用Arduino Mega2560核心板,STM32F103VCT6 MCU核心板,Raspberry Pi 3B+系統(tǒng)。系統(tǒng)調(diào)試結(jié)果如圖11、12所示,圖中顯示的是自動(dòng)抓取過(guò)程和遙控機(jī)械臂抓取過(guò)程。
圖12樹(shù)莓派自動(dòng)抓取
圖13 VR+機(jī)械骨骼抓取
圖14機(jī)械骨骼操控圖
服務(wù)機(jī)器人目前存在造價(jià)高、靈巧性不足、安全性待提高及應(yīng)用中的人性倫理等問(wèn)題,致使大部分機(jī)器人在家庭推廣中存在困難。針對(duì)以上問(wèn)題,本文提出了一種基于VR的雙臂機(jī)器人。項(xiàng)目采用開(kāi)源平臺(tái)開(kāi)發(fā)可有效降低研發(fā)成本,基于VR人機(jī)交互技術(shù)提升用戶體驗(yàn),幫助老年人和殘疾人體會(huì)高科技帶來(lái)的便捷,解決生活當(dāng)中的實(shí)際問(wèn)題,帶來(lái)更好的生活服務(wù)。后續(xù)工作會(huì)重點(diǎn)觀察機(jī)器人在參與家庭護(hù)理服務(wù)中存在問(wèn)題并結(jié)合人工智能技術(shù)發(fā)展趨勢(shì)深入研究,開(kāi)發(fā)出令用戶滿意的服務(wù)機(jī)器人。