基于嵌入式視頻多媒體集中控制系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù)研究
1 引 言
本文引用地址:http://2s4d.com/article/90422.htm隨著數(shù)字技術(shù)和網(wǎng)絡技術(shù)的迅猛發(fā)展,嵌入式系統(tǒng)進入了一個新的發(fā)展時期。32位高性能專用微處理器的出現(xiàn),使嵌入式系統(tǒng)已經(jīng)能夠適應十分復雜的控制需求,進行多任務,尤其是嵌入式視頻的處理,大大擴展了嵌入式系統(tǒng)的應用范疇,正成為我國教育現(xiàn)代化對數(shù)字化、網(wǎng)絡化的教學設備進入全新的發(fā)展時期的強大技術(shù)支撐。32位高性能專用微處理器需要嵌入式操作系統(tǒng),而μClinux操作系統(tǒng)是針對32位微處理器設計的嵌入式Linux操作系統(tǒng)。
μClinux是控制領(lǐng)域的嵌入式操作系統(tǒng),其內(nèi)核功能結(jié)構(gòu)與Linux基本相同,且可移植和裁剪;用戶通過重新配置、編譯內(nèi)核,可方便移植到多種處理器平臺上。
本文主要介紹基于嵌入式視頻的多媒體集控系統(tǒng)基本技術(shù)構(gòu)架和相關(guān)的關(guān)鍵技術(shù),即嵌入式μCLinux操作系統(tǒng)的裁剪和移植和基于μCLinux的嵌入式系統(tǒng)的實時性解決方法以及集中控制系統(tǒng)的安全性設計等關(guān)鍵技術(shù)。
通過關(guān)鍵技術(shù)的設計與部署,實現(xiàn)了適合于局域網(wǎng)和廣域網(wǎng)環(huán)境下對遠程多媒體教學設備和屏幕、窗簾、燈光、空調(diào)和門禁等環(huán)境設備進行集中控制與管理。不僅適用于多媒體教室更高層次的遠程集中控制、管理、監(jiān)測與維護,而且也適用于無人值守的和環(huán)境險惡等環(huán)境的遠程控制與管理。
2 基于嵌入式視頻的多媒體集控系統(tǒng)實現(xiàn)的體系結(jié)構(gòu)
基于嵌入式視頻的多媒體集控系統(tǒng)以高性能32位微處理器為硬件核心,嵌入式軟件運行于μClinux操作系統(tǒng)上,其系統(tǒng)主要分為控制臺軟硬件系統(tǒng)和多媒體教室終端設備2部分,組成遠程交互平臺。
兩部分之間控制信號、狀態(tài)信息、數(shù)據(jù)等交互信息均通過嵌入式控制器硬件提供的多種網(wǎng)絡接口和TCP/IP協(xié)議,實現(xiàn)與局域網(wǎng)或廣域網(wǎng)的連接,使控制臺軟硬件系統(tǒng)和多媒體教室終端設備通過網(wǎng)絡,實現(xiàn)遠程控制和管理?;谇度胧揭曨l的多媒體集控系統(tǒng)體系結(jié)構(gòu)如圖1所示。
3 基于嵌入式視頻的多媒體集控系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù)
3.1 選擇32位嵌入式微處理器MCF5249模塊單元為硬件平臺
通過8/16/32位單片機性能對比測試,只有32位高性能單片機具備更高的反應速度、更強的數(shù)據(jù)處理、邏輯運算和數(shù)據(jù)存儲能力;不僅可用于工業(yè)數(shù)據(jù)采集、流程控制、遠程監(jiān)控等應用領(lǐng)域,而且還特別適合于嵌入式視頻的大數(shù)據(jù)量處理與控制的數(shù)字化多媒體教學設備的開發(fā)應用。
選擇Freescale公司的MCF5249 32位嵌入式微處理器模塊單元作為多媒體集控系統(tǒng)終端數(shù)據(jù)處理和功能控制的硬件平臺。
MCF5249模塊單元主要由32位處理器MCF5249和若于外圍器件AM29LV160DB90快閃存儲器、K4S281632SDRAM、SP3223串行通訊電路、DM9000網(wǎng)絡接口芯片、MT8816音視頻矩陣電路等硬件構(gòu)成。其主要性能如下表1所示。
3.2 嵌入式μCLinux操作系統(tǒng)的裁剪和移植
嵌入式μCLinux是專為沒有MMU內(nèi)存管理單元的微處理器芯片而裁剪的小型化操作系統(tǒng),嵌入式μCLinux針對沒有MMU的處理器采用了實存儲器管理策略。因此,嵌入式μCLinux操作系統(tǒng)不僅保持了穩(wěn)定、強大的網(wǎng)絡和文件系統(tǒng)支持等傳統(tǒng)Linux的主要性能,而且還具有自身的特點,使μCLinux成為真正意義上的嵌入式操作系統(tǒng)。
針對32位微處理器MCF5249的性能特點,結(jié)合基于嵌入式視頻的多媒體集控系統(tǒng)對操作系統(tǒng)功能的應用需求,需要對μCLinux的微內(nèi)核、內(nèi)存管理、進程管理、事務管理、初始化、硬件驅(qū)動、文件系統(tǒng)和TCP/IP協(xié)議棧等模塊進行剪裁和移植。
在編譯μCLinux微內(nèi)核之前,首先需要通過建立菜單配置來配置微內(nèi)核。從條件編譯的角度,就是在內(nèi)核上選擇所需的模塊,去掉不必要的模塊不參與編譯,從而可以控制內(nèi)核大小在一定的范圍內(nèi),以適合嵌入式μCLinux應用需求,利用Linux開放等特點降低對系統(tǒng)硬件成本和減少對資源的需求;然后還需要進一步對內(nèi)核中的代碼進行裁減,通過修改源代碼來滿足裁減的要求。
采用μCLinux的內(nèi)核有2種可選的運行方式:可以在FLASH上直接運行,也可以加載到內(nèi)存中運行。其中FLASH運行方式是把內(nèi)核的可執(zhí)行映像燒寫到FLASH上,系統(tǒng)啟動時從FLASH的某個地址開始逐句執(zhí)行;內(nèi)核加載方式則是把內(nèi)核的壓縮文件存放在FLASH上,系統(tǒng)啟動時讀取壓縮文件在內(nèi)存里解壓,然后開始執(zhí)行。選擇采用后一種相對復雜,但壓縮后的程序文件較小,對FLASH的空間要求低,并且程序運行速度更快可以很好地滿足對高實時性要求的方式。一般地,RAM的存取速率要比FLASH高。
在系統(tǒng)啟動后,最先調(diào)用的是針對32位微處理器MCF5249的特定的arch文件夾內(nèi)mmcontr.S文件。最后跳到main.c中的start_kernel()。μClinux/Linux-2.4.X/init/main.c中包含了對Linux系統(tǒng)初始化的代碼。其中stan_kernel()包含主要的初始化代碼。
3.3 嵌入式μCLinux操作系統(tǒng)實時性解決措施
由于μClinux主要針對MCF5249等微處理器在沒有內(nèi)存管理單元(MMU)而設計的,并不是為了Linux的實時性而提出的,因此μClinux本身并不能解決基于嵌入式視頻的多媒體集控系統(tǒng)對實時性的要求。為此,μClinux需要使用Rt-Linux的patch來增強μClinux的實時性要求,從而解決μClinux在對應用于一些實時要求較高的,諸如工業(yè)控制、進程控制等應用領(lǐng)域的需求。
Rt-Linux是有別于μClinux另一種嵌入式Linux版本,其突出特色在于內(nèi)核的處理上增強了對于實時問題的關(guān)注。Rt-Linux執(zhí)行管理器把普通Linux的內(nèi)核當成一個任務運行,同時還管理了實時進程。而非實時進程則交給普通Linux內(nèi)核處理。這種方法已經(jīng)應用于很多的操作系統(tǒng)來增強操作系統(tǒng)的實時性,包括一些商用版Unix系統(tǒng)、Windows NT等。這種方法優(yōu)點首先是實現(xiàn)簡單,且實時性能容易檢驗;其次是非實時進程運行于標準Linux系統(tǒng),同其他Linux版本之間保持著很大的兼容性;再有就是可以支持硬實時時鐘的應用。
嵌入式視頻的多媒體集控系統(tǒng)對紅外接收等功能在實時性方面要求很高,否則直接影響多媒體設備的使用效果。選擇Rt-Linux的patch作為增強μClinux的實時性要求,并且以后臺任務方式運行紅外接收中斷處理調(diào)度策略,從而增強了μClinux的實時性,滿足紅外接收等系統(tǒng)任務對實時性的嚴格要求。
3.4 OCX控件標準的控件封裝技術(shù)
OCX是基于嵌入式視頻的多媒體集控系統(tǒng)的網(wǎng)絡控制軟件;其視頻顯示模塊采用專用控件封裝技術(shù)解決了嵌入式數(shù)字視頻數(shù)據(jù)在跨網(wǎng)段、跨平臺上數(shù)據(jù)流傳輸,實現(xiàn)全數(shù)字網(wǎng)絡圖像的跨平臺無縫集成。
為了保證配置的靈活性,嵌入式視頻技術(shù)針對各廠家的網(wǎng)絡數(shù)字攝像頭的接口屬性,采用開放的設計風格,無論各生產(chǎn)廠家的算法接口采用何種開發(fā)平臺,即VB,VC,Delphi等,均采用Windows平臺下OCX控件標準的控件封裝技術(shù)。專用控件封裝技術(shù)使多媒體集控系統(tǒng)網(wǎng)絡控制軟件的視頻顯示模塊整體上去掉不必要的冗余程序,結(jié)構(gòu)簡單緊湊;嵌入式視頻采集硬件提供了多種網(wǎng)絡接口,并使用TCP/IP協(xié)議,可實現(xiàn)同局域網(wǎng)、廣域網(wǎng)的連接,使用戶無論身處何地都能通過網(wǎng)絡連線,實現(xiàn)對被監(jiān)控區(qū)域的監(jiān)控。實驗結(jié)果表明:這種專用控件封裝技術(shù)有效地解決了跨網(wǎng)段、跨網(wǎng)絡平臺下的全數(shù)字嵌人式視頻圖像的傳輸與管理。需要說明的是,嵌入式視頻的圖像采集硬件采用數(shù)字式數(shù)碼網(wǎng)絡攝像頭,通過圖像采集卡進行A/D轉(zhuǎn)換,采用不同的圖像分辨率可針對不同的網(wǎng)絡環(huán)境滿足網(wǎng)絡傳輸?shù)默F(xiàn)實需要。
3.5 系統(tǒng)鏈路可靠性與數(shù)據(jù)傳輸安全性技術(shù)方案
由于嵌入式視頻的多媒體集控系統(tǒng)使用范圍具有相當程度的封閉性,所以系統(tǒng)平臺的中、下層使用開放性的TCP/IP協(xié)議,在應用層則使用私有協(xié)議,對傳輸數(shù)據(jù)進行適度的加密處理。
系統(tǒng)傳輸鏈路可靠性設計方面,考慮通信數(shù)據(jù)與嵌入式視頻的多媒體集中控制系統(tǒng)的處理能力以及TCP連接建立的額外開銷,網(wǎng)絡傳輸層采用UDP協(xié)議封裝上層的應用數(shù)據(jù)。而UDP協(xié)議的非連接和不可靠性,則由應用層協(xié)議保證數(shù)據(jù)傳輸?shù)恼_性與可靠性。在應用協(xié)議設計中,采用發(fā)出請求幀與3 s內(nèi)接收應答幀判斷是否傳輸超時或者出錯。若超過3次請求而未收到應答則判斷系統(tǒng)故障,終止該次請求操作。另外,嵌入式視頻的多媒體集控系統(tǒng)還進行間隔10 s的主動式在線檢測,并將檢測數(shù)據(jù)分別向終端面板和控制臺發(fā)送顯示。
傳輸數(shù)據(jù)的安全性設計方面,采用加強網(wǎng)絡訪問控制和采用可靠的協(xié)議進行加密,對于協(xié)議數(shù)據(jù)被竊聽分析的風險,定義私有應用層交互協(xié)議和對數(shù)據(jù)包加密傳輸。在應用層交互協(xié)議設計中定義了數(shù)據(jù)包類型、控制編碼、數(shù)據(jù)編碼、數(shù)據(jù)定義等數(shù)據(jù)結(jié)構(gòu)。在網(wǎng)絡傳輸?shù)臄?shù)據(jù)采用移位加密算法進行加密。
數(shù)據(jù)包重放攻擊是在數(shù)據(jù)竊聽基礎(chǔ)上的一種攻擊行為。為了防止數(shù)據(jù)包重放攻擊,在設計中采用在嵌入式視頻的多媒體集控系統(tǒng)端口設置3個可信IP地址,只接收可信IP地址的指令操作。對于其他的IP只能查詢集中控制器的運行狀態(tài),不能控制操作,這樣有效地防止了非法用戶仿照獲取的數(shù)據(jù)包來控制操作集控系統(tǒng)。
4 結(jié) 語
嵌入式視頻多媒體集控系統(tǒng)采用32位嵌入式微處理器MCF5249模塊單元為硬件平臺、嵌入式μCLinux操作系統(tǒng)的裁剪和移植、嵌入式μCLinux操作系統(tǒng)實時性解決措施和OCX控件標準的控件封裝技術(shù)以及系統(tǒng)鏈路可靠性與數(shù)據(jù)傳輸安全性設計方法等系列關(guān)鍵技術(shù),是一種運用32位MCF5249微處理器+μClinux在嵌入式系統(tǒng)中的典型應用。
毋容置疑,MCF5249+μClinux系統(tǒng)平臺以其移植性好和性價比高在數(shù)字化多媒體教學設備研制與開發(fā)中將會得到進一步應用。
tcp/ip相關(guān)文章:tcp/ip是什么
評論