汪正進(jìn),武風(fēng)波,李國(guó)民,張文海
(西安科技大學(xué) 通信與信息工程學(xué)院,陜西 西安 710054)
?
Linux平臺(tái)下的無(wú)線視頻尋跡小車
汪正進(jìn),武風(fēng)波,李國(guó)民,張文海
(西安科技大學(xué) 通信與信息工程學(xué)院,陜西 西安 710054)
為研究如何縮小自動(dòng)尋跡小車的在指定路線上的偏差率問(wèn)題,采用基于Linux平臺(tái)下的嵌入式操作系統(tǒng)和無(wú)線視頻處理相結(jié)合的方法。主控單元用2塊飛凌公司的32位ARM11系列的S3C6410處理器分別作為服務(wù)器和小車的客戶端;路徑識(shí)別單元采用CMOS數(shù)字?jǐn)z像頭OV9650進(jìn)行攝像,通過(guò)圖像處理單元提取路徑信息;驅(qū)動(dòng)控制單元采用SGS公司的L298N芯片。結(jié)果表明,通過(guò)模糊PID控制算法對(duì)舵機(jī)轉(zhuǎn)向和速度進(jìn)行控制,能較好實(shí)現(xiàn)小車按預(yù)定路線平滑尋跡。為避免Wi-Fi傳輸信號(hào)不好或者說(shuō)數(shù)據(jù)量過(guò)大,出現(xiàn)嚴(yán)重丟包現(xiàn)象,Wi-Fi傳輸協(xié)議上選擇基于數(shù)據(jù)流式傳輸數(shù)據(jù)的TCP協(xié)議。經(jīng)過(guò)反復(fù)測(cè)試,系統(tǒng)路徑識(shí)別性能良好,運(yùn)行比較穩(wěn)定。
Linux;模糊PID控制算法;無(wú)線視頻;路徑識(shí)別
隨著計(jì)算機(jī)處理速度和網(wǎng)速的快速提升,再加上各種視頻處理技術(shù)的優(yōu)化發(fā)展,遠(yuǎn)程網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)開(kāi)始向智能化、平臺(tái)化方向發(fā)展。目前圖像壓縮技術(shù)的發(fā)展也很迅速,推動(dòng)了視頻壓縮格式的多樣化,如H.264,AVS編碼格式等[1]。視頻監(jiān)控在錄像存儲(chǔ)、圖像傳輸?shù)确矫媸艿揭曨l壓縮技術(shù)的發(fā)展而得到穩(wěn)步提高。例如利用無(wú)線視頻技術(shù)對(duì)供暖設(shè)備進(jìn)行監(jiān)視和控制,對(duì)無(wú)人職守區(qū)域進(jìn)行火災(zāi)檢測(cè)和報(bào)警以及在煤礦井下利用GIS系統(tǒng)并借助Wi-Fi對(duì)人員進(jìn)行定位等[2-4]。目前在操作系統(tǒng)方面,由于Linux內(nèi)核的可移植性和開(kāi)源性,在系統(tǒng)開(kāi)發(fā)上具有較好的實(shí)時(shí)性和穩(wěn)定性,便于實(shí)際操作[5-7]。再加上嵌入式系統(tǒng)的快速發(fā)展,它的軟硬件是可裁剪的,它的功能強(qiáng)、可靠性高、體積小、功耗低等優(yōu)點(diǎn)。它的應(yīng)用在人們的日常生活中隨處可見(jiàn),例如MP3、智能電器、車載GIS等。目前在煤礦井下,利用嵌入式系統(tǒng)搭建平臺(tái)對(duì)煤礦入井人員進(jìn)行實(shí)時(shí)跟蹤監(jiān)測(cè)和定位以及對(duì)礦井有限空間Wi-Fi信號(hào)質(zhì)量進(jìn)行檢測(cè)和評(píng)估等[8-10]。
無(wú)線視頻尋跡小車概念也是伴隨著無(wú)線視頻監(jiān)控和嵌入式系統(tǒng)的發(fā)展提出來(lái)的。目前各種尋跡小車在指定路線上運(yùn)行存在一定的偏差問(wèn)題。本系統(tǒng)通過(guò)飛凌公司的32位ARM11作為核心處理器,采用目前比較流行的視頻編解碼標(biāo)準(zhǔn)H.264進(jìn)行編碼,再經(jīng)過(guò)Wi-Fi的TCP通信,將視頻采集到的實(shí)時(shí)數(shù)據(jù)指令等傳遞給小車服務(wù)器進(jìn)行顯示,便于控制和降低無(wú)線視頻尋跡小車在指定路線上運(yùn)行的偏差率問(wèn)題。若今后將無(wú)線視頻尋跡小車應(yīng)用于煤礦事故等危險(xiǎn)現(xiàn)場(chǎng)的探察工作,能及時(shí)準(zhǔn)確掌握井下人員的分布和現(xiàn)場(chǎng)情況,提高搶險(xiǎn)救災(zāi)的效率。
系統(tǒng)采用2個(gè)ARM1176JZ內(nèi)核型號(hào)的S3C6410作處理器。分別作為服務(wù)器和小車客戶端,它們之間通過(guò)Wi-Fi的TCP通信協(xié)議進(jìn)行數(shù)據(jù)指令等的傳輸,系統(tǒng)整體流程如圖1所示。
圖1 系統(tǒng)流程圖
整個(gè)系統(tǒng)由直流電機(jī)驅(qū)動(dòng)控制、路徑識(shí)別、無(wú)線傳輸、速度檢測(cè)和報(bào)警裝置組成。首先利用裝載在小車上的CMOS攝像頭OV9650(130W像素)對(duì)路面信息進(jìn)行攝像[11]。CMOS攝像頭所采集的視頻信號(hào)在圖像處理過(guò)程中必須先濾除附加的控制信號(hào),然后通過(guò)AD轉(zhuǎn)換進(jìn)行采樣,變成數(shù)據(jù)信號(hào)之后進(jìn)行傳輸。但攝像頭采集圖像的數(shù)據(jù)容量比較大,若直接采用無(wú)線傳輸,傳輸速率需要達(dá)到20 Mbps左右,要想滿足實(shí)時(shí)性要就,需要提供的帶寬達(dá)到幾百兆,但有了視頻壓縮技術(shù)之后,在傳輸之前利用視頻壓縮編碼來(lái)處理所采樣的視頻信號(hào),這樣傳輸速率可以降到1~10 Mbps之間,再通過(guò)無(wú)線傳輸實(shí)時(shí)地發(fā)送到小車服務(wù)器終端,它將接收到的視頻壓縮信號(hào)進(jìn)行解碼并通過(guò)液晶顯示器實(shí)時(shí)播放。其次根據(jù)CMOS攝像頭對(duì)路面攝像信息,經(jīng)圖像處理后對(duì)小車前方路徑提取信息進(jìn)行識(shí)別,通過(guò)模糊自適應(yīng)PID控制算法對(duì)舵機(jī)轉(zhuǎn)向和速度進(jìn)行控制,其中舵機(jī)開(kāi)環(huán)控制由PWM信號(hào)輸入,讓小車按預(yù)定的軌跡平滑運(yùn)動(dòng),若小車尋跡錯(cuò)誤會(huì)自動(dòng)發(fā)出報(bào)警提示[12-15]。
2.1 用戶界面
用戶界面分為小車服務(wù)器用戶界面和小車客戶端用戶界面,如圖2,圖3所示。它是用功能強(qiáng)大的Linux Qt Creator 4.7.1進(jìn)行編寫。界面按鈕均為虛擬按鈕,可通過(guò)小車控制面板上的觸摸屏的點(diǎn)擊動(dòng)作完成操作。CMOS攝像頭所采集到的視頻圖像也是在該界面上進(jìn)行顯示。在優(yōu)先級(jí)上,視頻圖像顯示的優(yōu)先等級(jí)要高于按鈕界面顯示等級(jí)。整體效果上視頻打開(kāi)之前能顯示虛擬按鈕,打開(kāi)之后覆蓋按鈕界面顯示,可通過(guò)側(cè)面返回鍵返回按鈕界面。
圖2 小車服務(wù)器用戶界面
圖3 小車客戶端用戶界面
2.2 硬件設(shè)計(jì)
處理器采用的是ARM1176JZ內(nèi)核型號(hào)的S3C6410,它內(nèi)置有全性能的cache和MMU接口以及高速AMBA總線接口。AMBA片上總線是一個(gè)開(kāi)放標(biāo)準(zhǔn),已成為IP庫(kù)開(kāi)發(fā)和SoC構(gòu)建的事實(shí)標(biāo)準(zhǔn)。它在視頻圖像處理方面相比較于其它處理器更加優(yōu)越和快捷。
驅(qū)動(dòng)控制采用SGS公司的L298N電機(jī)驅(qū)動(dòng)芯片它具有過(guò)電壓和過(guò)電流保護(hù),抗干擾能力強(qiáng)。它可單獨(dú)控制電機(jī),當(dāng)輸入信號(hào)端IN1接高電平輸入端IN2接低電平,電機(jī)正轉(zhuǎn)。如果信號(hào)端IN1接低電平,IN2接高電平,電機(jī)反轉(zhuǎn)。同時(shí)還可調(diào)電機(jī)的轉(zhuǎn)速,實(shí)現(xiàn)PWM脈寬平滑調(diào)速。因此,它相對(duì)于其它電機(jī)驅(qū)動(dòng)芯片而言對(duì)系統(tǒng)的穩(wěn)定性有很大的提高。
電源模塊。此系統(tǒng)的設(shè)計(jì)需要3種電壓,分別是1.8 V,3.3 V和5 V.其中5 V電壓利用美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的3 A電流輸出降壓開(kāi)關(guān)型集成高效穩(wěn)壓電路LM2576和開(kāi)關(guān)穩(wěn)壓電源將220 V直接轉(zhuǎn)換,再利用低壓差電壓調(diào)節(jié)器LM1117可以得到2個(gè)固定的3.3 V和1.8 V電壓輸出。它們?yōu)樘幚砥骷捌渫鈬鷶U(kuò)展器件供電,其中S3C2410內(nèi)核使用的1.8 V電壓[16]。
2.3 軟件設(shè)計(jì)
系統(tǒng)采用Linux 2.6.36v2嵌入式內(nèi)核,軟件應(yīng)用程序開(kāi)發(fā)環(huán)境在Qt Creator 4.7.1上進(jìn)行。根文件系統(tǒng)采用yaffs/yaffs2,它是專門針對(duì)Nand Flash開(kāi)發(fā)的可讀可寫文件系統(tǒng)。軟件設(shè)計(jì)如圖4,圖5所示。
圖4 服務(wù)器程序流程圖
圖5 小車客戶端程序流程圖
在無(wú)線傳輸過(guò)程中,Wi-Fi傳輸協(xié)議上選擇基于連接的TCP協(xié)議。也就是說(shuō),在正式采集和接收數(shù)據(jù)前,必須和對(duì)方建立一種可靠的連接。一個(gè)TCP通信協(xié)議連接必須要經(jīng)過(guò)三次“握手”才能建立起來(lái),它的過(guò)程相當(dāng)復(fù)雜,但TCP通信協(xié)議適合傳輸大量數(shù)據(jù)。
在路徑識(shí)別模塊中,舵機(jī)轉(zhuǎn)向控制采用模糊自適應(yīng)PID控制算法來(lái)進(jìn)行優(yōu)化。模糊自適應(yīng)PID控制系統(tǒng)由一個(gè)模糊控制環(huán)節(jié)和一個(gè)PID控制器組成。PID控制器表達(dá)式為
(1)
式中 f(k)為PID控制器輸出的控制量;e(k)為角度偏差信號(hào);Km為比例 ;Kn為積分系數(shù),它的作用使系統(tǒng)的穩(wěn)態(tài)誤差得到消除;Ks為微分系數(shù),它的作用是使系統(tǒng)的動(dòng)態(tài)特性得到改善。
采集數(shù)據(jù)經(jīng)過(guò)圖像處理后,賽道的路徑基本信息就會(huì)展現(xiàn)出來(lái)。但要判斷當(dāng)前賽道是直道還是彎道。需要先確定2個(gè)點(diǎn),即尋跡的有效起點(diǎn)和有效終點(diǎn)[14-15]。有效起點(diǎn)即圖像數(shù)據(jù)最近位置的第一個(gè)有效行,黑線的中心位置,把它定義為A(X0,Y0)點(diǎn);有效終點(diǎn)即圖像數(shù)據(jù)最遠(yuǎn)位置的第一個(gè)有效行,黑線的中心位置,把它定義為B(X1,Y1)點(diǎn)。根據(jù)2點(diǎn)確定一條直線,就能確定斜率。將它設(shè)置為偏離圖像中心位置的角度偏差信號(hào)。將偏差信號(hào)分為2路,一路送入PID控制器,另一路和它的變化率一起送入模糊控制環(huán)節(jié),根據(jù)公式(1)得到參數(shù)校正值ΔKm,ΔKn,ΔKs,自動(dòng)校正初始的PID參數(shù)Km,Kn,Ks,然后用校正后的參數(shù)輸入PID控制器得到控制量,作為速度調(diào)節(jié)環(huán)節(jié)給定值。這樣就可以降低舵機(jī)轉(zhuǎn)向滯后的機(jī)率而控制舵機(jī)轉(zhuǎn)向的角度。再利用舵機(jī)開(kāi)環(huán)控制(給定的PWM信號(hào)值與舵機(jī)的輸出轉(zhuǎn)角成線性關(guān)系),很好地實(shí)現(xiàn)舵機(jī)的轉(zhuǎn)向。這樣可以保證小車在直道進(jìn)入彎道之前提前轉(zhuǎn)彎,實(shí)現(xiàn)小車按預(yù)定路線平滑尋跡。
根據(jù)反復(fù)測(cè)驗(yàn),小車在直道上行駛速度不低于0.5m/s;小車在彎道轉(zhuǎn)彎時(shí),與指定路線上的偏差不超過(guò)50mm.小車在指定路線上運(yùn)行狀況測(cè)試表,見(jiàn)表1.
表1 小車在指定路線上運(yùn)行狀況測(cè)試表Tab.1 Car running test on the specified route
小車在彎道轉(zhuǎn)彎時(shí)與指定路線上運(yùn)行所造成的誤差是在視頻圖像分析處理時(shí)通過(guò)圖像亮度采用兩點(diǎn)預(yù)定路線提取黑白線信息,從而導(dǎo)致路線容易跑出攝像頭攝像范圍,再加上視頻在傳輸過(guò)程的延時(shí)導(dǎo)致小車尋跡效果更差。為了降低小車尋跡偏差,結(jié)合圖像亮度提取黑白線算法時(shí)對(duì)光線要求高,在小車前端安裝了一個(gè)前方照明燈,這樣會(huì)消除對(duì)光強(qiáng)度不均勻?qū)π≤囋趯ほE線路上所造成的影響。其次利用圖像特征處理提取技術(shù),提出采用三點(diǎn)預(yù)定路線來(lái)優(yōu)化圖像處理算法,結(jié)合模糊自適應(yīng)PID控制算法可計(jì)算出預(yù)定路線實(shí)際尋跡軌跡,擺脫了傳統(tǒng)的光電二極管尋跡或者紅外線尋跡的缺陷。這樣它的道路參數(shù)多、檢測(cè)范圍寬、前瞻距離遠(yuǎn)的優(yōu)點(diǎn),使得尋跡小車的速度更加快捷和準(zhǔn)確。
本系統(tǒng)在彩色視頻圖像當(dāng)中提取黑白線算法優(yōu)化時(shí),需要考慮視頻傳輸延遲的影響。為提高硬件寄存器工作效率,采用減少不必要的內(nèi)核進(jìn)程的運(yùn)行和對(duì)驅(qū)動(dòng)進(jìn)行優(yōu)化。經(jīng)過(guò)反復(fù)測(cè)試,本系統(tǒng)在白底黑線的跑道上鋪設(shè)一定寬度任意弧度的黑線,小車能快速地沿此黑色引導(dǎo)線實(shí)現(xiàn)自主尋跡,在彎道轉(zhuǎn)彎時(shí)偏差較小,具有穩(wěn)態(tài)誤差小和控制響應(yīng)時(shí)間短的特點(diǎn),有較高的應(yīng)用價(jià)值。
References
[1]端木春江.視頻處理與編碼中的運(yùn)動(dòng)估計(jì)技術(shù)[M].南京:南京大學(xué)出版社,2011.
DUANMU Chun-jiang.Video processing and encoding of motion estimation technique[M].Nanjing:Nanjing University Press,2011.
[2]郝秦霞.智能分戶供暖監(jiān)控系統(tǒng)的無(wú)線溫控器設(shè)計(jì)[J].西安科技大學(xué)學(xué)報(bào),2013,33(6):737-740.
HAO Qin-xia.Smart household heating thermostat Wireless monitoring system design[J].Journal of Xi’an University of Science and Technology,2013,33(6):737-740.
[3]來(lái)望銀.視頻監(jiān)控系統(tǒng)在火災(zāi)報(bào)警中的應(yīng)用[J].西安科技大學(xué)學(xué)報(bào),2013,33(4):400-403.
LAI Wang-yin.Video surveillance system in the fire alarm[J].Journal of Xi’an University of Science and Technology,2013,33(4):400-403.
[4]馬卜林.煤礦井下Wi-Fi人員定位GIS系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].西安科技大學(xué)學(xué)報(bào),2012,32(3):301-304.
MA Bo-lin.Wi-Fi coal mine personnel positioning GIS system design and implementation[J].Journal of Xi’an University of Science and Technology,2012,32(3):301-304.
[5][美]Robert Love,陳莉君,康華譯.Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)[M].北京:機(jī)械工業(yè)出版社,2011.
Robert Love,CHEN Li-jun,KANG Hua-ze.Linux kernel design and implementation[M].Beijing:Beijing Machinery Industry Press,2011.
[6]齊愛(ài)玲,張小艷,劉 濤.μC/OS-Ⅱ在TI DM270微處理器上的移植與開(kāi)發(fā)[J].西安科技大學(xué)學(xué)報(bào),2007,27(3):462-466.
QI Ai-ling,ZHANG Xiao-yan,LIU Tao.Implantation and development of μC/OS-Ⅱ into TI DM270MPU[J].Journal of Xi’an University of Science and Technology,2007,27(3):462-466.
[7]邱光能.基于嵌入式的遠(yuǎn)程視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].長(zhǎng)沙:電氣與信息工程學(xué)院,2013.
QIU Guang-neng.Design and implementation of remote video monitor system based on embedded technology[D].Changsha:Electronic Science and Technology,2013.
[8]黃 剛.礦井人員定位系統(tǒng)硬件電路應(yīng)用設(shè)計(jì)[J].西安科技大學(xué)學(xué)報(bào),2012,32(3):320-323
HUANG Gang.Mine personnel positioning system hardware circuit design applications[J].Journal of Xi’an University of Science and Technology,2012,32(3):320-323.
[9]孫 弋,袁曉霞.有限空間WIFI無(wú)線信號(hào)覆蓋測(cè)量系統(tǒng)設(shè)計(jì)[J].西安科技大學(xué)學(xué)報(bào),2013,33(3):347-350.
SUN Yi,YUAN Xiao-xia.Limited space Wi-Fi Wireless signal coverage measurement system design[J].Journal of Xi’an University of Science and Technology,2013,33(3):347-350.
[10]孫 弋,袁曉霞.礦井有限空間WIFI信號(hào)測(cè)評(píng)系統(tǒng)研究[J].西安科技大學(xué)學(xué)報(bào),2013,33(5):544-548.
SUN Yi,YUAN Xiao-xia.Mine limited space research WIFI signal evaluation system[J].Journal of Xi’an University of Science and Technology,2013,33(5):544-548.
[11]林浩岳,董曉慶,曾 輝,等.基于CMOS攝像頭識(shí)別路徑的智能車控制系統(tǒng)設(shè)計(jì)[J].韓山師范學(xué)院學(xué)報(bào),2009(12):52-56.
LIN Hao-yue,DONG Xiao-qing,ZENG Hui,et al.Design of intelligent vehicle control system based on CMOS camera path identification[J].Journal of Hanshan Normal University,2009(12):52-56.
[12]陳華偉,熊 慧.智能循跡小車硬件設(shè)計(jì)及路徑識(shí)別算法[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2010(12):26-31.
CHEN Hua-wei,XIONG Hui.Hardware design and path identification algorithm for smart track-keeping car[J].Microcontroller and Embedded System Application,2010(12):26-31.
[13]徐 斐.基于自適應(yīng)模糊PID算法的舵機(jī)控制器研究[D].西安:西安電子科技大學(xué),2008.
XU Pei.Steering gear system controller in missile based on adaptive fuzzy PID algorithm[D].Xi’an:Xi’an Electronic and Science University,2008.
[14]林 濤,馬騰煒,陳亞勛,等.基于MCU 的自動(dòng)尋跡智能車控制系統(tǒng)的設(shè)計(jì)[J].自動(dòng)化與儀表,2012(11):1-4.
LIN Tao,MA Teng-wei,CHEN Ya-xun,et al.Control system of automatically tracing intelligent vehicle based on the MCU[J].Automation and Instrumentation,2012(11):1-4.
[15]唐甫世,齊明俠,張曉春,等.復(fù)雜路線下機(jī)器人的三點(diǎn)三輪尋跡系統(tǒng)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2009(8):56-58.
TANG Fu-shi,QI Ming-xia,ZHANG Xiao-chun,et al.The three round of tracing system complex route robot[J].Microcontroller and Embedded System Application,2009(8):56-58.
[16]錢江泳.一種單片機(jī)控制的電壓電流轉(zhuǎn)換電路[J].煤礦機(jī)電,2012(2):64-67.
QIAN Jiang-yong.A circuit of voltage signal converts to current controlled by single-chip microcomputer[J].Coal Mine Electromechanical,2012(2):64-67.
Wireless video tracing car under Linux system
WANG Zheng-jin,WU Feng-bo,LI Guo-min,ZHANG Wen-hai
(CollegeofCommunicationandInformationEngineering,Xi’anUniversityofScienceandTechnology,Xi’an710054,China)
To study how to reduce the car’s automatic tracking deviation rate on the specified routes,we use a method combined embedded operating systems with wireless video processing based on Linux.The main control unit uses 2 pieces of Forlinx’s 32-bit ARM11 series S3C6410 processors as main control unit of server and client,respectively.The path identification unit adopts the CMOS digital camera OV9650 to obtain the path information through the image processing unit.The drive control adopts SGS’s L298N chip.The results show that it’s better to realize the smooth tracing car at predetermined route through the fuzzy-PID control algorithm to control steering gear and speed.We select the TCP protocol based on transmission data of data streaming at the Wi-Fi transfer protocol.After repeated testing,the system’s performance of path recognition is good and operation is stable.
Linux system;fuzzy-PID control algorithm;wireless video;path identification
10.13800/j.cnki.xakjdxxb.2015.0118
1672-9315(2015)01-0105-05
2014-10-20責(zé)任編輯:高 佳
陜西省科技攻關(guān)項(xiàng)目(209K08-36)
汪正進(jìn)(1981-),男,安徽廬江人,工程師,E-mail:jin7-8@163.com
A