摘要 為實(shí)現(xiàn)近距離無線視頻傳輸,,提出了一種基于MPEG-4編碼的近距離無線視頻傳輸方案。由CMOS攝像頭OV7620采集到的數(shù)據(jù),,通過專用MPEG-4編碼器,,ML86410得到速率低于2 Mbit·s-1的MPEG-4數(shù)據(jù)流,在FPGA控制器的控制下,,通過nRF24L01無線發(fā)送,;接收端利用同系列芯片nRF24LU1接收無線數(shù)據(jù),其自帶USB協(xié)議和接口,,再把數(shù)據(jù)流送入PC顯示。通過仿真板電路測試,,獲得了良好的圖像,,證明電路可以實(shí)現(xiàn)視頻無線傳輸的結(jié)論。
關(guān)鍵詞 MPEG-4編碼,;ML86410,;無線傳輸;nRF24L01;nRF24LU1
無線視頻通信作為第三代移動通信關(guān)鍵技術(shù)得到了廣泛關(guān)注,。但其是為遠(yuǎn)距離多用戶服務(wù)的,,開發(fā)難度大,需要眾多輔助技術(shù)支持,。然而,,近距離無線視頻通信可以采用較為成熟的技術(shù)實(shí)現(xiàn),它可以應(yīng)用于視頻監(jiān)控中不易連線的部分以及近距離巡視,,它不同于3G技術(shù)中的視頻傳輸,,具有易于開發(fā)、傳輸距離近等特點(diǎn),。要實(shí)現(xiàn)無線視頻傳輸,,就要應(yīng)用大壓縮比的視頻壓縮編碼滿足無線傳輸速率的苛刻要求,MPEG-4編碼是基于圖像內(nèi)容的第二代視頻編碼方案,,并將對象合成的編碼方案也結(jié)合在標(biāo)準(zhǔn)中,,它根據(jù)圖像的內(nèi)容將圖像分割為不同的視頻對象(VO)。在編碼過程中,,前景和背景對像采用不同的編碼策略:前景對像的編碼壓縮盡可能保留壓縮對像的細(xì)節(jié)和平滑性,;對背景視頻對像,采用大壓縮比的編碼策略,,而在解碼端用其他的背景拼成新的的背景,。因此它可以實(shí)現(xiàn)大壓縮比的視頻編碼,不僅解決了塊效應(yīng),,同時解決了無線傳輸時的帶寬限制問題,,因此MPEG-4被作為無線通信系統(tǒng)中主要的視頻編碼標(biāo)準(zhǔn)。
1 系統(tǒng)硬件總體方案
圖1所示為無線視頻傳輸系統(tǒng)框圖,。采用專用MPEG-4編碼器,,可以獲得良好的性價比,因此采用日本OKI公司的ML86410芯片是較好的MPEG-4視頻壓縮解決方案,;同時采用挪威Nordic公司的nRF24L01和nRF24LU1芯片實(shí)現(xiàn)無線傳輸,,它們不僅具有高達(dá)2 Mbit·s-1的無線空中速率,而且后者帶有增強(qiáng)型8051內(nèi)核和USB2.0協(xié)議的無線Soc芯片,,較好地解決了與PC機(jī)的連接問題,;控制器采用廣泛使用的低功耗FPGA來協(xié)調(diào)控制視頻流的無線傳輸以及對OV7620和ML86410進(jìn)行控制和模式配置,F(xiàn)PGA準(zhǔn)確地邏輯性保證了傳輸?shù)目煽啃浴?/p>
從圖中可以看出,,在視頻采集電路中,,F(xiàn)PGA是整個系統(tǒng)的核心控制器。它的作用是無線接收配置參數(shù),,對圖像CMOS傳感器和ML86410進(jìn)行初始化配置,;當(dāng)開始圖像采集后,,其負(fù)責(zé)接收MPEG-4視頻數(shù)據(jù),并進(jìn)行無線傳輸,。設(shè)計重點(diǎn)是實(shí)現(xiàn)了視頻的無線傳輸,,采用具有nRF24系列芯片,具有2 Mbit·s-1的空中速率,;這樣的速率對一般視頻數(shù)據(jù)流是不能實(shí)現(xiàn)無線傳輸?shù)?,所以要采取具有高壓縮率的MPEG-4視頻編碼,其要求的傳輸速率較低,,當(dāng)圖像分辨率為176×144時,,速率為4 800~64 000 bit·s-1。
1.1 視頻采集模塊電路
1.1.1 OV7620
OV7620是一種CMOS圖像傳感器,,被廣泛應(yīng)用于網(wǎng)絡(luò)攝像頭,、攝像手機(jī)等產(chǎn)品中。它是一種CMOS彩色/黑白圖像傳感器,,支持連續(xù)和隔行兩種掃描方式,,VGA和QVGA兩種圖像格式;最高像素為664×492,,幀速率為30 f·s-1,;數(shù)據(jù)輸出格式包括YUV、YcrCb和RGB這3種,,能夠滿足一般圖像采集系統(tǒng)的要求,。OV7620內(nèi)部具有可編程功能寄存器,設(shè)置有上電模式和SCCB編程模式,,設(shè)計中采用了SCCB編程控制協(xié)議,,連續(xù)掃描,8位YUV數(shù)據(jù)輸出,。
1.1.2 ML86410壓縮芯片
ML86410是日本OKI公司面向監(jiān)視攝像機(jī),、網(wǎng)絡(luò)攝像機(jī)等圖像監(jiān)控設(shè)備開發(fā)的一種能夠?qū)崟r進(jìn)行MPEG-4圖像壓縮(編碼)處理的單芯片。以往面向網(wǎng)絡(luò)監(jiān)視攝像機(jī)的視頻編碼方式一般采用Motion-JPEG方式,,存在著壓縮率低的問題,。在網(wǎng)絡(luò)上進(jìn)行視頻傳輸時,受網(wǎng)絡(luò)帶寬的影響,,使得傳輸圖像的尺寸縮小,,并帶來畫質(zhì)下降和動畫圖像的幀率降低等限制。于是,,OKI采用MPEG-4視頻編碼國際標(biāo)準(zhǔn),,開發(fā)了具有高壓縮率的高畫質(zhì)視頻MPEG-4編碼器芯片ML86410。它采用了獨(dú)創(chuàng)的專用加速器,,無需高速CPU、DSP,與以往方式相比實(shí)現(xiàn)了低功耗,,并大幅度降低了產(chǎn)品成本,。
ML86410由視頻接口、MPEG-4編碼器,、主機(jī)接口電路,、鎖相環(huán)PLL和DRAM存儲器控制組成。其特性如表1所示,。
1.1.3 SDRAM存儲器
SDRAM存儲器在電路中主要完成對攝像頭采集到的大量數(shù)據(jù)進(jìn)行緩存,,以使ML86410的。MPEG-4編碼器部分進(jìn)行有序編碼,。設(shè)計中采用三星公司K4S643232F系列SDRAM實(shí)現(xiàn),,它是2×32 MbitSDRAM存儲器,采用32位數(shù)據(jù)總線進(jìn)行存取,,工作頻率最高166 MHz,,可以滿足ML86410對緩存的要求。它是一個具有67 108 864 bit的同步高數(shù)據(jù)率的動態(tài)RAM存儲器,,由4塊512×32 kbit組成,。
1.1.4 連接電路
ML86410和OV7620、SDRAM的連接電路圖如圖3所示,。
1.2 無線傳輸方案
1.2.1 nRF24L01及其連接電路
下位機(jī)的無線連接采用Nordic Semiconductor公司的nRF24L01,。它是一款新型單片射頻收發(fā)器件,工作于2.4~2.5 GHz ISM頻段,,采用GFSK調(diào)制,,硬件集成OSI鏈路層,最高空中速率達(dá)到2Mbit·s-1,,采用SPI接口連接控制器,。內(nèi)置頻率合成器、功率放大器,、晶體振蕩器和調(diào)制器等功能模塊并融合了增強(qiáng)型ShockBurst技術(shù),,其輸出功率和通信頻道可通過程序進(jìn)行配置,有125個頻道,。nRF24L01功耗低,,在以功率為-6 dBm發(fā)射時,工作電流只有9 mA,;接收時,,工作電流為12.3 mA。
采用SPI接口與控制器FPGA進(jìn)行連接,,負(fù)責(zé)開機(jī)時接收各個器件的配置信息,,完成配置后進(jìn)行視頻數(shù)據(jù)流的無線發(fā)送,。其中,CE是發(fā)射和接收切換引腳,,CSN為片選,,IRQ為中斷信號輸出引腳,連接電路圖如圖4所示,。
1.2.2 nRF24LU1及其應(yīng)用電路
nRF24LU1+是Nordic推出的一款將高性能射頻收發(fā)器與單片USBdongle功能結(jié)合起的無線收發(fā)芯片,,它可實(shí)現(xiàn)無線數(shù)據(jù)到USB數(shù)據(jù)形式的轉(zhuǎn)換,這樣就實(shí)現(xiàn)了與PC機(jī)的連接,。nRF24LU1+內(nèi)含1個增強(qiáng)型8051MCU內(nèi)核,、無線收發(fā)模塊、符合全速USB2.0標(biāo)準(zhǔn)的器件控制器,。nRF2ALU1+顯著地增強(qiáng)了抗寬帶干擾和互調(diào)失真(IMD)性能,。nRF24LU1+芯片需要的外部元件只是低成本的16 MHz晶振、去耦電路,、匹配網(wǎng)絡(luò)和天線,。USB工作電源電壓范圍4.0~5.25 V。nRF24LU1+是單片結(jié)構(gòu),,外形尺寸5 mm×5 mm,。它的最高速率2 Mbit·s-1,兼容所有nRF24系列芯片,;使用Enhanced ShockedBust技術(shù)可以實(shí)現(xiàn)數(shù)據(jù)包的自動打包/解包和傳輸處理,;使用MultiCeiver技術(shù)可同時支持6個無線裝置,頻段,、輸出能量和其他射頻參數(shù)可通過射頻寄存器進(jìn)行編程調(diào)節(jié),,電路圖如圖5所示。
1.2.3 PA和LNA
單獨(dú)只采用nRF芯片只能近距離的無線通信,,為增加無線視頻傳輸?shù)木嚯x,,需要加入PA。從增加數(shù)據(jù)通信距離考慮,,還需要增加芯片輸入端的接收靈敏度,,選用合適的LNA和濾波器成為必然。設(shè)計選用Maxim公司的MAX2240和MAX2644,,連接電路如圖6所示,。
MAX224O專為2.4~2.5 GHz頻段的應(yīng)用而設(shè)計,符合Bluetooth,、HomeRF,、802.11標(biāo)準(zhǔn)以及其他FSK調(diào)制系統(tǒng)的要求。:MAX2644是一款專為WLAN,,Bluetooth等工作在2.4 GHz頻段內(nèi)的設(shè)備設(shè)計的高三階交調(diào)點(diǎn)的低噪聲放大器,。放大電路中,,微波開關(guān)采用Hittite公司生產(chǎn)的低成本SPDT微波開關(guān),型號HMC545,,該開關(guān)特別為3G和ISM頻段工作的設(shè)備設(shè)計,,其插入損耗僅有0.25 dB,,采用SOT封裝,、體積小,可用CMOS或TTL電平控制,。利用nRF芯片的VDD_PA引腳控制無線發(fā)送和接收的切換,。
2 控制器FPGA設(shè)計
FPGA選用Altrea公司的EP2C8208。其硬件連接電路如圖7所示,。
3 初始化配置及工作流程
(1)初始化配置方式,。
1)OV7620配置。OV7620的控制采用SCCB(Serial Camera Control Bus)協(xié)議,。它是簡化的I2C協(xié)議,,SIO-1是串行時鐘輸入線,SIO-0是串行雙向數(shù)據(jù)線,,分別相當(dāng)于I2C協(xié)議的SCL和SDA,。SCCB的總線時序與I2C基本相同。OV7620功能寄存器的地址為0x00~0x7C,。通過設(shè)置相應(yīng)的寄存器,,可以使OV7620工作于不同模式。
2)ML86410配置,。對ML86410進(jìn)行配置需要對其寄存器進(jìn)行配置,,通過地址生成器產(chǎn)生地址XA0~9,然后通過數(shù)據(jù)總線XD0~15對相應(yīng)寄存器進(jìn)行寫值,。由于無線速率最高為2 Mbit·s-1,,所以一定要對Bits Rate Setting Register(0x18C)進(jìn)行設(shè)置,有可變速率壓縮和固定速率壓縮兩種方式,。
3)nRF24L01配置,。對nRF24L01進(jìn)行配置通過對其內(nèi)部的寄存器進(jìn)行寫值完成,通過SPI總線完成數(shù)據(jù)的寫入,。其需要用戶配置的寄存器地址為00~17,,共18個8 bit寄存器,當(dāng)要進(jìn)行發(fā)送和接收的切換時,,同樣要寫入相應(yīng)的寄存器值,。
(2)工作流程。
1)開機(jī)配置:首先測試無線連接,,連接成功后由PC端下傳參數(shù)模式配置命令,;下位機(jī)接到命令后,,由配置參數(shù)配置邏輯解析到參數(shù)模式后,通過控制邏輯對ML86410和OV7620進(jìn)行初始化配置,,成功后即開始視頻采集,,失敗發(fā)送錯誤到PC端。
2)視頻無線發(fā)送:視頻采集開始后,,視頻流在ML86410的控制下有序進(jìn)入FPGA緩沖,,緩沖采用乒乓緩沖操作,然后數(shù)據(jù)經(jīng)過并串轉(zhuǎn)換,,再通過SPI口送入nRF24L01無線發(fā)送,。
3)視頻無線接收:nRF24LU1+接收到視頻流后,經(jīng)過緩沖,,即送入USB2.0協(xié)議槽通過USB接口傳入PC進(jìn)行顯示,。
4)視頻顯示:PC采用VC++編寫程序調(diào)用Windows自帶的視頻播放器,同時調(diào)入MPEG-4視頻流,,解碼后顯示,。
4 上位機(jī)軟件設(shè)計
上位機(jī)采用VC++編寫成熟的視頻監(jiān)控軟件,和通用的視頻監(jiān)控軟件相同,,接收來自USB端口的數(shù)據(jù)進(jìn)行解壓縮顯示即可,。效果圖如圖9所示。
5 結(jié)束語
采用具有可靠邏輯功能的FPGA協(xié)調(diào)MPEG-4視頻流到無線數(shù)據(jù)流的轉(zhuǎn)換和發(fā)送,,可以保證無線視頻傳輸?shù)男阅?;同時在終端采用帶有無線功能和USB2.0協(xié)議的SOC芯片來實(shí)現(xiàn)與PC連接,不僅保證了無線傳輸?shù)目煽啃?,還使得電路小型化,,方便使用。測試表明,,無線速率低于2 Mbit·s-1時,,可以實(shí)現(xiàn)無線視頻的可靠傳輸。