便攜式移動機(jī)器人手持監(jiān)控系統(tǒng)設(shè)計
目前,便攜式移動機(jī)器人全自主控制方式尚不成熟,其監(jiān)控系統(tǒng)普遍采用人在環(huán)半自主控制方式設(shè)計。為滿足攜帶、系統(tǒng)小型化、嵌進(jìn)式的結(jié)構(gòu)特點,故設(shè)計便攜式移動機(jī)器人手持監(jiān)控系統(tǒng),并將其用于履帶結(jié)構(gòu)便攜式移動機(jī)器人實驗平臺。
功能設(shè)計
手持監(jiān)控系統(tǒng)對便攜式移動機(jī)器人起到監(jiān)視與控制的全局性作用。手持監(jiān)控系統(tǒng)可劃分為視頻圖像監(jiān)視模塊、狀態(tài)信息監(jiān)測模塊、遠(yuǎn)控指令模塊、無線通訊模塊、數(shù)字與圖交互模塊、全局路徑規(guī)劃模塊六大功能模塊(見圖1)。
視頻圖像監(jiān)視模塊對便攜式移動機(jī)器人所處環(huán)境進(jìn)行視頻監(jiān)視;狀態(tài)信息監(jiān)測模塊對機(jī)器人自身狀態(tài)信息的監(jiān)測;遠(yuǎn)控指令模塊實現(xiàn)基本的運動指令編碼以及發(fā)送;無線通訊模塊實現(xiàn)運動指令、狀態(tài)信息、視頻信號等數(shù)據(jù)的無線傳輸;數(shù)字輿圖交互模塊實現(xiàn)環(huán)境地理信息的數(shù)字化顯示及人機(jī)交互功能;全局路徑規(guī)劃模塊實現(xiàn)點到點的最優(yōu)路徑搜索功能。
硬件系統(tǒng)
手持監(jiān)控系統(tǒng)的硬件系統(tǒng)可劃分為若干模塊,各個模塊實現(xiàn)自身相對獨立的功能。
硬件結(jié)構(gòu)與接口
手持監(jiān)控系統(tǒng)硬件系統(tǒng)采用基于嵌進(jìn)式系統(tǒng)的PCI 總線的PC/104plus 總線結(jié)構(gòu),分為無線通訊、嵌進(jìn)式圖像采集、中心處理、遠(yuǎn)控器、液晶顯示等五大模塊。無線通訊模塊又劃分為無線數(shù)據(jù)傳輸和無線視頻傳輸模塊。無線數(shù)據(jù)傳輸模塊實現(xiàn)運動指令、狀態(tài)信息等窄帶數(shù)據(jù)無線傳輸;無線視頻傳輸模塊實現(xiàn)視頻圖像信號等寬帶數(shù)據(jù)無線傳輸。
硬件系統(tǒng)各模塊通過接口實現(xiàn)信息交換與數(shù)據(jù)共享。中心處理模塊通過PC/104plus 總線與嵌進(jìn)式圖像采集模塊接口,實現(xiàn)模塊之間視頻圖像數(shù)據(jù)的傳輸。中心處理模塊與無線數(shù)據(jù)傳輸模塊及遠(yuǎn)控器模塊通過串口連接。中心處理模塊通過TTL接口與液晶顯示模塊連接。嵌進(jìn)式圖像采集模塊與無線視頻傳輸模塊通過RCA 接口實現(xiàn)復(fù)合視頻信號的傳輸(見圖2)。
硬件模塊實現(xiàn)
無線數(shù)據(jù)傳輸模塊采用微功率無線數(shù)據(jù)傳送單元實現(xiàn)。嵌進(jìn)式圖像采集模塊采用PC/104plus總線結(jié)構(gòu)的嵌進(jìn)式圖像采集卡實現(xiàn)。中心處理模塊采用PC/104plus總線結(jié)構(gòu)的單板機(jī)實現(xiàn)。遠(yuǎn)控器模塊通過自行設(shè)計電路板實現(xiàn)按鍵掃描、指令編碼以及串口發(fā)送等功能。液晶顯示模塊采用小型彩色液晶屏實現(xiàn)。以上各硬件模塊實現(xiàn)符合手持設(shè)備小型化、便攜式的硬件要求。
軟件系統(tǒng)
手持監(jiān)控系統(tǒng)的軟件系統(tǒng)選用Windows CE(WinCE)作為嵌進(jìn)式操縱系統(tǒng)平臺,監(jiān)控系統(tǒng)軟件包括:操縱系統(tǒng)定制、設(shè)備驅(qū)動程序開發(fā)、應(yīng)用程序。應(yīng)用程序又分為:鍵盤掃描模塊、串口通訊模塊、視頻處理模塊、數(shù)字輿圖模塊、路徑規(guī)劃模塊五大模塊(見圖3)。
操縱系統(tǒng)定制
操縱系統(tǒng)定制主要根據(jù)系統(tǒng)需要建立操縱系統(tǒng)平臺并對其進(jìn)行相應(yīng)的配置。通過平臺裁剪工具Platform Builder(簡稱PB)完成。
設(shè)備驅(qū)動程序開發(fā)
WinCE的驅(qū)動程序分為:本機(jī)設(shè)備驅(qū)動程序和流接口驅(qū)動程序[5]。本機(jī)設(shè)備是指集成到目標(biāo)平臺的設(shè)備,其驅(qū)動程序由原設(shè)備制造商(OEM)提供。流接口驅(qū)動程序是指連接到WinCE平臺的外部設(shè)備驅(qū)動程序,由用戶自行開發(fā)。流接口驅(qū)動程序把外部設(shè)備看作文件系統(tǒng)的特殊文件,通過文件讀取函數(shù)間接地訪問外部設(shè)備。
嵌進(jìn)式圖像采集卡驅(qū)動程序分為三部分:
?。?) 內(nèi)核部分
實現(xiàn)中斷服務(wù)例程(ISR)。內(nèi)核函數(shù)實現(xiàn)了物理中斷號與邏輯中斷標(biāo)識之間的映射關(guān)系,并調(diào)用中斷服務(wù)例程,中斷服務(wù)例程在中斷發(fā)生后向內(nèi)核返回中斷邏輯標(biāo)識。
?。?) 驅(qū)動程序部分
實現(xiàn)WinCE 流接口驅(qū)動模型所需要的文件操縱接口函數(shù),包括:采集卡初始化、數(shù)據(jù)讀取和采集卡句柄封閉。
?。?) 應(yīng)用程序部分
通過調(diào)用設(shè)備注冊函數(shù)將嵌進(jìn)式圖像采集卡中斷驅(qū)動程序加載到系統(tǒng)內(nèi)存,并根據(jù)采集卡初始化參數(shù)設(shè)置修改WinCE系統(tǒng)注冊表文件。
應(yīng)用程序設(shè)計
鍵盤掃描模塊及串口通訊模塊單片機(jī)程序在單片機(jī)集成開發(fā)環(huán)境uVision2下用C語言開發(fā)外,其余模塊均在EVC(Windows CE Embedded VisualC++)下開發(fā)。
(1) 鍵盤掃描模塊
鍵盤掃描模塊主要實現(xiàn)單片機(jī)對薄膜鍵盤的按鍵識別及鍵值顯示功能。薄膜鍵盤屬于行列式非編碼鍵盤,按鍵的識別通常采用逐行掃描查詢法實現(xiàn)。程序采用軟件延時的方法處理抖動。鍵值顯示則通過單片機(jī)對液晶屏串行數(shù)據(jù)口編程實現(xiàn)。
(2) 串口通訊模塊
串口通訊模塊主要實現(xiàn)單板機(jī)與單片機(jī)之間的串行數(shù)據(jù)通訊功能。該模塊包括單板機(jī)串口通訊程序、單片機(jī)串口通訊程序、串口通訊協(xié)議三部分。
?、?單板機(jī)串口通訊程序。由于WinCE不支持串口通訊控件的使用,所以EVC下的單板機(jī)串口通訊程序開發(fā)只能通過調(diào)用文件操縱函數(shù)實現(xiàn)。
評論