《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于仿人機(jī)器人的無(wú)線視頻監(jiān)控系統(tǒng)設(shè)計(jì)
基于仿人機(jī)器人的無(wú)線視頻監(jiān)控系統(tǒng)設(shè)計(jì)
2014年微型機(jī)與應(yīng)用第10期
李 歡,魏衡華
中國(guó)科學(xué)技術(shù)大學(xué) 自動(dòng)化系,安徽 合肥
摘要: 第一臺(tái)仿人機(jī)器人WABOT-1誕生以來(lái),經(jīng)過(guò)了40年的發(fā)展,仿人機(jī)器人已成為一個(gè)融合多門學(xué)科的高難度研究方向,也是各類新型控制理論和工程技術(shù)的研究平臺(tái)[1-2]。
Abstract:
Key words :

  摘  要: 針對(duì)仿人機(jī)器人的人機(jī)交互問題,提出在無(wú)線網(wǎng)絡(luò)下,使用智能手機(jī)對(duì)配備有攝像頭的仿人機(jī)器人進(jìn)行視頻監(jiān)控?;贚inux系統(tǒng),使用V4L2接口對(duì)攝像頭視頻信息進(jìn)行采集,并使用JPEG算法對(duì)其進(jìn)行壓縮,使用智能手機(jī)的Web瀏覽器顯示視頻信息,并通過(guò)瀏覽器頁(yè)面的按鈕向機(jī)器人發(fā)送控制命令。實(shí)驗(yàn)結(jié)果表明,在無(wú)線局域網(wǎng)內(nèi),仿人機(jī)器人攝像頭拍攝到的視頻信息可以清晰、穩(wěn)定、及時(shí)地傳輸?shù)讲煌到y(tǒng)和品牌的智能手機(jī)Web瀏覽器上,用戶可根據(jù)需要向仿人機(jī)器人發(fā)送控制命令,操作方便簡(jiǎn)單,便于使用。

  關(guān)鍵詞: 仿人機(jī)器人;Wi-Fi技術(shù);智能手機(jī);Web瀏覽器;視頻監(jiān)控

  第一臺(tái)仿人機(jī)器人WABOT-1誕生以來(lái),經(jīng)過(guò)了40年的發(fā)展,仿人機(jī)器人已成為一個(gè)融合多門學(xué)科的高難度研究方向,也是各類新型控制理論和工程技術(shù)的研究平臺(tái)[1-2]。

  從最初的工業(yè)機(jī)器人完全按照人類的指令進(jìn)行工作,到現(xiàn)代具有較高智能的仿人機(jī)器人自主地融入人們的工作和生活,為實(shí)現(xiàn)成為人類的伙伴、與人類共存的目標(biāo),仿人機(jī)器人的交互功能和技術(shù)始終是機(jī)器人發(fā)展中的重點(diǎn)[3-4]。

  在人機(jī)交互設(shè)備這一領(lǐng)域已有許多研究手持設(shè)備控制機(jī)器人的文獻(xiàn),多數(shù)為專業(yè)的手持控制設(shè)備來(lái)操控小車機(jī)器人的移動(dòng),手持設(shè)備較專業(yè),且不普遍,控制對(duì)象也較簡(jiǎn)單,智能化程度較低。而智能化程度較高的系統(tǒng)需要高精度的傳感器設(shè)備以及多臺(tái)計(jì)算機(jī)作為服務(wù)器協(xié)調(diào)控制[5-7]。

  綜合上述研究現(xiàn)況,結(jié)合目前大家普遍使用的智能手機(jī),為加快仿人機(jī)器人走入人們的生活,本文提出使用智能手機(jī)作為手持設(shè)備與仿人機(jī)器人進(jìn)行通信。結(jié)合參考文獻(xiàn)[8-10],決定采用Web瀏覽器進(jìn)行視頻監(jiān)控,可以最大限度地降低操作難度,實(shí)現(xiàn)真正意義上的跨平臺(tái)通信,可廣泛地應(yīng)用在各種場(chǎng)合中 。

  由參考文獻(xiàn)[11-13]可知,傳統(tǒng)的機(jī)器人研究通常使用CAN總線、網(wǎng)絡(luò)線等易兼容的連接線實(shí)現(xiàn)計(jì)算機(jī)與機(jī)器人的有線連接通信,但使用有線連接是仿人機(jī)器人走入人們?nèi)粘I畹囊淮笞璧K。無(wú)線AP(Access Point)數(shù)量的迅猛增長(zhǎng)、低廉的價(jià)格以及無(wú)線網(wǎng)絡(luò)的方便與高效使Wi-Fi(Wireless Fidelity)技術(shù)得到了迅速的普及。在一定范圍內(nèi),可以使用無(wú)線連接將仿人機(jī)器人與智能手機(jī)組建在同一個(gè)無(wú)線局域網(wǎng)中。該方法有利于降低成本,減小操作難度。

  1 系統(tǒng)結(jié)構(gòu)

  仿人機(jī)器人是體系結(jié)構(gòu)中非常重要的一部分,本文采用DARwin-OP、1.6 GHz Intel Atom系列主板、Linux內(nèi)核的Ubuntu9.10操作系統(tǒng)、自帶高清網(wǎng)絡(luò)自動(dòng)聚焦的USB攝像頭(最大幀數(shù)為30幀)。Wi-Fi模塊支持802.11b/g/n,速率高達(dá)150 Mb/s,工作頻率為2.4 GHz智能手機(jī)。需具有無(wú)線Wi-Fi連接功能且含Web瀏覽器。

  通過(guò)無(wú)線路由器,將仿人機(jī)器人與智能手機(jī)組建在一個(gè)局域網(wǎng)內(nèi)。系統(tǒng)構(gòu)成的主要部件如圖1所示。

001.jpg

  仿人機(jī)器人與智能手機(jī)接入同一局域網(wǎng),攝像頭將采集到的視頻信息通過(guò)無(wú)線局域網(wǎng)傳送到手機(jī),手機(jī)也能將控制命令傳輸?shù)綑C(jī)器人。

  圖2是仿人Darwin機(jī)器人和智能手機(jī)間視頻傳輸系統(tǒng)的整體設(shè)計(jì)框圖。

002.jpg

  攝像頭對(duì)視頻進(jìn)行采集,采集后的圖片經(jīng)壓縮后通過(guò)Wi-Fi無(wú)線傳輸模塊傳送到智能手機(jī)端,由手機(jī)的Web瀏覽器顯示視頻。這樣用戶就可以在手機(jī)的瀏覽器上通過(guò)訪問機(jī)器人的IP打開視頻圖像進(jìn)行監(jiān)控,也可通過(guò)瀏覽器頁(yè)面按鈕操作將控制命令傳輸?shù)綑C(jī)器人端,對(duì)機(jī)器人進(jìn)行控制。

  Darwin機(jī)器人的攝像頭對(duì)視頻進(jìn)行采集,采集后的圖片經(jīng)壓縮后通過(guò)Wi-Fi無(wú)線網(wǎng)絡(luò)傳輸模塊經(jīng)由無(wú)線路由傳送到智能手機(jī)視頻接收模塊,由手機(jī)的Web瀏覽器顯示視頻,用戶就可以在手機(jī)的瀏覽器上通過(guò)訪問機(jī)器人的IP打開視頻圖像進(jìn)行監(jiān)控。

  2 系統(tǒng)實(shí)現(xiàn)

  2.1 視頻采集

  攝像頭視頻采集程序的設(shè)計(jì)與實(shí)現(xiàn)是視頻監(jiān)控應(yīng)用程序中比較關(guān)鍵的部分,在Linux下采用V4L2(Video For Linux two)對(duì)視頻進(jìn)行采集。V4L2是 Linux系統(tǒng)下視頻設(shè)備驅(qū)動(dòng)程序接口規(guī)范[10],為上層應(yīng)用程序提供了一系列的接口函數(shù),可實(shí)現(xiàn)對(duì)視頻設(shè)備的操作,進(jìn)而完成視頻圖像的采集。

006.jpg

  V4L2對(duì)設(shè)備文件的操作方法簡(jiǎn)單直觀,表1中的函數(shù)可以在應(yīng)用程序中直接調(diào)用,功能如下:V4L2接口提供兩種方式進(jìn)行視頻數(shù)據(jù)采集,一種是 read直接讀取方式,這種方式使用較為方便,但占用大量的用戶內(nèi)存空間;另一種是mmap內(nèi)存映射方式,將申請(qǐng)到的內(nèi)核緩沖區(qū)地址通過(guò)mmap函數(shù)映射到用戶空間,可以直接對(duì)內(nèi)核緩沖區(qū)的數(shù)據(jù)進(jìn)行處理,這種方式簡(jiǎn)潔有效,故本文采用第二種內(nèi)存映射方式。

  2.2 視頻處理

  與傳統(tǒng)的單幀圖片傳輸相比,視頻實(shí)時(shí)傳輸?shù)年P(guān)鍵問題是視頻圖像信息的數(shù)據(jù)量非常大,需要對(duì)采集的原始圖像進(jìn)行壓縮。目前圖像壓縮方法比較成熟的是JPEG或MPEG技術(shù)。

  原理上這兩種編碼方式基本相同,JPEG針對(duì)單獨(dú)的圖像圖片進(jìn)行處理,而MPEG則利用了圖像序列間的相似性技巧,使MPEG的整體壓縮倍率要優(yōu)于JPEG。但考慮到傳輸信道鏈路特點(diǎn),JPEG一次誤碼最多損失圖像序列中的一幅,而MPEG將導(dǎo)致后續(xù)的多幅幀間編碼序列無(wú)法復(fù)現(xiàn),所以,根據(jù)系統(tǒng)的可靠性需求,JPEG成為優(yōu)選方案。

  圖3是Darwin-OP的編程-框架數(shù)據(jù)流示意圖,分別是視覺部分與動(dòng)作部分。

003.jpg

  視覺處理模塊LinuxCamera類包含V4L2接口程序,完成對(duì)攝像頭進(jìn)行設(shè)置以及圖片的存儲(chǔ)和處理。其中,LinuxCamera類、MinIni類讀取設(shè)置值;Mjpg_steamer類確認(rèn)圖像,主要是將由攝像頭端采集而來(lái)的YUYV格式的圖片,經(jīng)mjpg_streamer使用JPEG壓縮算法將圖片處理后轉(zhuǎn)換為jpeg圖片。部分代碼如下:

  minIni *ini = new minIni(INI_FILE_PATH);

  LinuxCamera::GetInstance()->Initialize(0);

  LinuxCamera::GetInstance()->LoadINISettings(ini);

  mjpg_steamer *streamer = new mjpg_streamer(Camera::WIDTH,

  Camera::HEIGHT);

  2.3 視頻傳輸與顯示

  mjpg_streamer可以把經(jīng)過(guò)視頻壓縮后得到的jpeg圖片以流的形式通過(guò)基于IP的網(wǎng)絡(luò)傳輸?shù)綖g覽器。視頻服務(wù)器首先基于TCP協(xié)議建立Socket連接,監(jiān)聽、接收客戶端請(qǐng)求,再進(jìn)行分析請(qǐng)求、響應(yīng)請(qǐng)求等操作。

  視頻服務(wù)器建立TCP Socket套接字、bind綁定端口后,listen開始監(jiān)聽,收到客戶端的連接請(qǐng)求后,保存相應(yīng)信息并進(jìn)行分析,給出相應(yīng)處理或發(fā)送數(shù)據(jù)。

  瀏覽器通過(guò)監(jiān)控設(shè)備的IP地址打開視頻監(jiān)控網(wǎng)頁(yè),實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控。

  LinuxCamera類允許在Web瀏覽器端捕捉到mjpg_streamer流的幀,代碼如下:

  while(1)

  {

  LinuxCamera::GetInstance()->CaptureFrame();

  streamer->send_image(LinuxCamera::GetInstance()->

  fbuffer->m_YUVFrame);

  }

  2.4 控制命令的實(shí)現(xiàn)

  視頻傳輸?shù)街悄苁謾C(jī)瀏覽器后,用戶可以根據(jù)視頻情況對(duì)機(jī)器人進(jìn)行操作。首先使用動(dòng)作編輯軟件action_editor對(duì)機(jī)器人進(jìn)行動(dòng)作編寫,將編寫好的動(dòng)作存放在任務(wù)表中,瀏覽器頁(yè)面上用按鈕顯示相應(yīng)功能鍵。

  控制命令主要通過(guò)調(diào)用system函數(shù)實(shí)現(xiàn),函數(shù)的具體形式為system(const char *cmdstr),其中cmdstr為字符串類型的輸入?yún)?shù)。system()先調(diào)用fork()函數(shù)產(chǎn)生一個(gè)子進(jìn)程,然后通過(guò)這個(gè)子進(jìn)程調(diào)用“/bin/sh-cmdstr”來(lái)執(zhí)行參數(shù)cmdstr字符串所代表的命令。動(dòng)作編輯完成后可以通過(guò)函數(shù)對(duì)動(dòng)作頁(yè)進(jìn)行調(diào)用,具體實(shí)現(xiàn)過(guò)程為:加載動(dòng)作;構(gòu)建LinuxCM730和CM730類以及對(duì)Motion類進(jìn)行初始化和注冊(cè)Action類;對(duì)LinuxManagerTimer進(jìn)行初始化和讓MotionManager使能;執(zhí)行動(dòng)作頁(yè)。

  表2所示為任務(wù)表中編寫的基本動(dòng)作。用戶即可通過(guò)頁(yè)面按鈕操作機(jī)器人的動(dòng)作。

007.jpg

  3 實(shí)驗(yàn)結(jié)果與結(jié)論

  實(shí)驗(yàn)使用Android的LenovoA298t手機(jī)、UC瀏覽器、火狐瀏覽器、小米1s UC瀏覽器和iphone 4s safari瀏覽器。

  圖4給出的是通過(guò)機(jī)器人頭部攝像頭拍攝到的畫面通過(guò)無(wú)線Wi-Fi網(wǎng)絡(luò)傳輸?shù)绞謾C(jī)端的畫面實(shí)況。

004.jpg

  由實(shí)驗(yàn)結(jié)果可知,視頻信息從攝像頭正常地傳輸?shù)教O果、小米和聯(lián)想不同品牌的智能手機(jī),能在Android和IOS不同系統(tǒng)智能手機(jī)通過(guò)以上幾款不同的Web瀏覽器打開,視頻信息穩(wěn)定;根據(jù)具體的實(shí)驗(yàn)需求,可以通過(guò)手機(jī)控制機(jī)器人向前、向后、向左和向右4個(gè)方向的移動(dòng),便于機(jī)器人在不同的位置對(duì)實(shí)驗(yàn)室鍋爐設(shè)備進(jìn)行察看;頭部上下左右移動(dòng),可改變觀察時(shí)的角度,使機(jī)器人更全面、更清晰地察看實(shí)驗(yàn)狀況,最大限度地提供盡量多的信息供用戶使用。

005.jpg

  經(jīng)過(guò)多次實(shí)驗(yàn),由圖5可知,通過(guò)手機(jī)向機(jī)器人發(fā)送頭部向上移動(dòng)的命令到手機(jī)端接收到的視頻圖像發(fā)生變化的平均響應(yīng)時(shí)間為2.1 s,比在計(jì)算機(jī)上接收視頻的平均響應(yīng)時(shí)間1.5 s稍有延遲。但由于手機(jī)的便攜性更強(qiáng),在日常生活的使用中,該延時(shí)還是可以接受的,與計(jì)算機(jī)相比有不可替代的優(yōu)勢(shì)。

  本文主要研究的是仿人機(jī)器人與智能手機(jī)之間運(yùn)用Wi-Fi進(jìn)行無(wú)線視頻傳輸,視頻傳輸成功后就像給了用戶一個(gè)遠(yuǎn)程的眼睛,用戶只要拿著手機(jī)就能看到機(jī)器人能看到的范圍,該組合使其整個(gè)系統(tǒng)既新穎又易讓人接受,加速了仿人機(jī)器人走入人們的日常工作和生活中。

  參考文獻(xiàn)

  [1] 李明.機(jī)器人[M].上海:上??茖W(xué)技術(shù)出版社,2013.

  [2] NI L G,KARI D P,MUGANZA A.Wireless integration of tactile senging on the hand of a humanoid robot NAO[R].IEEE International Symposium on Robot and Human Inter-active Communication,Paris,F(xiàn)rance,2012.

  [3] 肖南峰.仿人機(jī)器人[M].北京:科學(xué)出版社,2008.

  [4] Wang Qian,Pan Wei,Li Mo.Robot’s remote real-time nav-igation controlled by smart phone[C].IEEE International Conference on Robotics and Biomimetics,Guangzhou,China,2012:2351-2356.

  [5] KOBAYASHI S,TAMAGAWA S,MORITA T.Intelligenthumanoid robot with Japanese Wikipedia ontology and robotaction ontology introduction[C].IEEE International Conference,Lausanne,Switzerland,2011.

  [6] FINKE A,HACHMEISTER N,RIECHMANN H.Riechmannthought-controlled robots-systems,studies and future challenges[C].IEEE International Conference on Robotics and Automationn,Karlsrube,Germany,2013.

  [7] 李宗瑋,孫雷.基于智能手機(jī)的網(wǎng)絡(luò)機(jī)器人人機(jī)交互系統(tǒng)[J].計(jì)算機(jī)工程與應(yīng)用,2011,47(15):64-68.

  [8] TIBEMACINE C,KERDOUDI M L.Migrating component-based Web applications to Web services:towards consider-ing a “Web interface as a service”[C].2012 IEEE 19th International Coference on Web Services,Honolulu,2012:146-153.

  [9] YEOH K J M,WONG H L.Web-based remote navigationalrobot for multiclass human-robot interaction[C].IEEE Con-ference on Sustainable Utization and Development in Engi-neering and Technology,Malaysia,2012.

  [10] 劉艷嬌.基于嵌入式Linux的無(wú)線視頻監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2012.

  [11] 黃時(shí),劉健,王國(guó)權(quán).AUV內(nèi)部通訊總線設(shè)計(jì)[J].機(jī)器人,2004,26(4):342-345.

  [12] 周煜嘯,羅仕鑒,朱上上.手持移動(dòng)設(shè)備中以用戶為中心的服務(wù)設(shè)計(jì)[J].計(jì)算機(jī)集成制造系統(tǒng),2012,2(18):243-253.

  [13] Zhou Jianjun,Cao Mingang,Li Su.Remote monitoringand automatic navigation system for agricultural vehicles based on WLAN[C].2008 International Conference on Wireless Communications,Networking and Mobile Computing.Dalian,China,2008:1-4.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。