趙佳,李永亮,曹磊
(1.河北師范大學(xué)職業(yè)技術(shù)學(xué)院,河北石家莊,050024;2.32039部隊(duì),北京,100094)
無(wú)線通信技術(shù)與嵌入式技術(shù)的不斷發(fā)展使得兩者完美融合,并廣泛應(yīng)用于家居、工業(yè)、交通、軍事等行業(yè)。在科學(xué)技術(shù)不斷發(fā)展的今天,利用嵌入式與無(wú)線通信技術(shù)結(jié)合,只需要很少的成本就可以實(shí)現(xiàn)一套無(wú)線視頻傳輸系統(tǒng),并在其中加入無(wú)線控制有更廣闊的應(yīng)用前景[1-3]。相比于有線視頻傳輸控制,它結(jié)構(gòu)更加簡(jiǎn)單,布放設(shè)置更加容易。
本文設(shè)計(jì)的視頻無(wú)線傳輸控制系統(tǒng)是一個(gè)具有遠(yuǎn)程無(wú)線控制、遠(yuǎn)程無(wú)線視頻傳輸?shù)裙δ転橐惑w的系統(tǒng)。遠(yuǎn)程無(wú)線控制:STM32單片機(jī)接受上位機(jī)通過(guò)無(wú)線傳輸模塊發(fā)送的指令,遠(yuǎn)程控制云臺(tái)舵機(jī)等執(zhí)行機(jī)構(gòu)動(dòng)作。遠(yuǎn)程無(wú)線視頻傳輸:下位機(jī)攝像頭等傳感器的數(shù)據(jù)經(jīng)過(guò)無(wú)線模塊上傳至上位機(jī),上位機(jī)端接收并顯示。與一般視頻傳輸控制系統(tǒng)不同的是,它不僅可以通過(guò)無(wú)線信號(hào)實(shí)現(xiàn)普通視頻傳輸控制功能,還可以較方便的擴(kuò)展功能并搭載于不同平臺(tái),實(shí)現(xiàn)360度的無(wú)死角監(jiān)控。
本系統(tǒng)通過(guò)無(wú)線信號(hào)進(jìn)行系統(tǒng)的遠(yuǎn)程控制,同時(shí)將攝像頭的高清圖像通過(guò)無(wú)線信號(hào)進(jìn)行上傳,將圖像在上位機(jī)實(shí)時(shí)顯示,使系統(tǒng)在視域外也能很好的進(jìn)行工作。系統(tǒng)主要以電源模塊、控制模塊、通信模塊、傳感器模塊、執(zhí)行模塊等構(gòu)成的硬件部分和上位機(jī)軟件部分組成。系統(tǒng)主要硬件結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)硬件結(jié)構(gòu)框圖
控制模塊選用意法半導(dǎo)體公司(ST)設(shè)計(jì)生產(chǎn)的STM32 F103RCT6型號(hào)單片機(jī)。依據(jù)芯片手冊(cè)及系統(tǒng)需求,設(shè)計(jì)了時(shí)鐘電路、復(fù)位電路等外圍電路,并預(yù)留了傳感器、步進(jìn)電機(jī)等模塊的接口。該模塊負(fù)責(zé)收集傳感器數(shù)據(jù),監(jiān)測(cè)當(dāng)前環(huán)境,并接收上位機(jī)經(jīng)過(guò)WiFi發(fā)送的的控制指令,對(duì)云臺(tái)舵機(jī)、步進(jìn)電機(jī)等進(jìn)行控制。STM32外圍電路結(jié)構(gòu)如圖2所示。
圖2 STM32外圍電路結(jié)構(gòu)圖
通信模塊選用MediaTek的LinkIt 7688模塊用來(lái)實(shí)現(xiàn)無(wú)線通信[4]。LinkIt 7688包含MPU,支持C語(yǔ)言和Python等語(yǔ)言開(kāi)發(fā)[5]。LinkIt 7688與STM32單片機(jī)之間使用RS232通信協(xié)議進(jìn)行通信,使用RX、TX、GND三線實(shí)現(xiàn)全雙工通信。LinkIt 7688使用WiFi (802.11n)與上位機(jī)進(jìn)行通信。LinkIt 7688模塊還需要接收?qǐng)D像傳感器的圖像數(shù)據(jù),圖像傳感器以USB口輸出,通過(guò)串口與控制模塊連接。
傳感器模塊由圖像傳感器、微波感應(yīng)模塊、超聲波傳感器等傳感器組成,負(fù)責(zé)感知當(dāng)前環(huán)境參數(shù)轉(zhuǎn)化為電信號(hào)傳遞給控制模塊[6]。圖像傳感器上電后直接將圖像數(shù)據(jù)發(fā)送至LinkIt 7688 WiFi模塊,然后上傳至上位機(jī)。微波感應(yīng)模塊受STM32單片機(jī)控制,當(dāng)微波感應(yīng)模塊使能端置高電平時(shí)開(kāi)始測(cè)量,并將數(shù)據(jù)發(fā)送至STM32單片機(jī)。超聲波感應(yīng)模塊同樣受STM32單片機(jī)控制,單片機(jī)每隔100ms發(fā)送至超聲波感應(yīng)模塊一個(gè)18us的高電平信號(hào),超聲波模塊工作,然后由與單片機(jī)相連的ECHO端高電平時(shí)間計(jì)算得出距離[7]。該模塊框圖如圖3所示。
圖3 傳感器模塊框圖
執(zhí)行模塊由云臺(tái)舵機(jī)、步進(jìn)電機(jī)等執(zhí)行機(jī)構(gòu)組成,負(fù)責(zé)接收上位機(jī)控制指令改變攝像頭角度、實(shí)現(xiàn)系統(tǒng)移動(dòng)等功能。云臺(tái)舵機(jī)所需功率較小,直接由STM32單片機(jī)控制信號(hào)驅(qū)動(dòng),步進(jìn)電機(jī)功率較大,由STM32控制步進(jìn)電機(jī)驅(qū)動(dòng)板,步進(jìn)電機(jī)驅(qū)動(dòng)板由12V電源供電在STM32單片機(jī)控制下驅(qū)動(dòng)步進(jìn)電機(jī)。執(zhí)行模塊框圖如圖4所示。
圖4 執(zhí)行模塊框圖
本設(shè)計(jì)選用PC機(jī)作為上位機(jī),實(shí)現(xiàn)圖形化操作和顯示。上位機(jī)軟件主要實(shí)現(xiàn)接收LinkIt 7688上傳的視頻信號(hào)進(jìn)行顯示,并對(duì)下位機(jī)發(fā)送指令進(jìn)行控制。無(wú)線視頻傳輸控制功能需要使用WiFi模塊驅(qū)動(dòng)程序和C#接口程序來(lái)實(shí)現(xiàn),使用C#編程語(yǔ)言來(lái)實(shí)現(xiàn)接口程序設(shè)計(jì),并結(jié)合硬件設(shè)備嵌入式編程。控制功能通過(guò)控制Q、W、E、A、S、D六個(gè)按鈕實(shí)現(xiàn)探測(cè)車(chē)逆時(shí)針旋轉(zhuǎn)、前進(jìn)、順時(shí)針旋轉(zhuǎn)、左平移、后退、右平移動(dòng)作,舵機(jī)云臺(tái)通過(guò)方向鍵Up、Down、Left和Right鍵實(shí)現(xiàn)云臺(tái)的水平旋轉(zhuǎn)和垂直旋轉(zhuǎn)。該應(yīng)用程序具有檢索視頻信號(hào)、捕獲、顯示、遠(yuǎn)程控制等功能。上位機(jī)軟件界面如圖5所示。
圖5 上位機(jī)軟件界面
本設(shè)計(jì)基于STM32單片機(jī)設(shè)計(jì)制作了無(wú)線視頻傳輸控制系統(tǒng),完成了模塊選擇、電路設(shè)計(jì)、軟件編寫(xiě)等工作,實(shí)現(xiàn)了上位機(jī)與下位機(jī)通過(guò)無(wú)線信號(hào)傳輸圖像數(shù)據(jù)和控制指令,并在上位機(jī)顯示視頻圖像和下位機(jī)接收上位機(jī)控制指令等功能。上位機(jī)接收顯示如圖6所示,圖中顯示內(nèi)容為本設(shè)計(jì)的主要硬件部分。
圖6 上位機(jī)接收?qǐng)D像顯示
攝像頭將圖像轉(zhuǎn)化為數(shù)字信號(hào),通過(guò)USB接口將圖像數(shù)據(jù)發(fā)送至LinkIt 7688[8],LinkIt 7688將圖像數(shù)據(jù)轉(zhuǎn)化為WiFi信號(hào)上傳至上位機(jī),上位機(jī)程序偵聽(tīng)指定端口的圖像數(shù)據(jù),顯示視頻圖像。下位機(jī)端LinkIt 7688接收上位機(jī)WiFi信號(hào),將WiFi信號(hào)中包含的控制指令轉(zhuǎn)化為串口信號(hào),通過(guò)串口將其傳輸給STM32單片機(jī),STM32單片機(jī)依據(jù)控制指令做出相應(yīng)動(dòng)作。在該系統(tǒng)的實(shí)際測(cè)試中:上位機(jī)接收畫(huà)面流暢、清晰;下位機(jī)可以依據(jù)上位機(jī)指令進(jìn)行控制;視頻傳輸與控制距離可以達(dá)到最遠(yuǎn)40米。
本文開(kāi)展的無(wú)線視頻傳輸控制具有深遠(yuǎn)的意義,特別是實(shí)現(xiàn)了無(wú)線視頻傳輸和無(wú)線控制的結(jié)合,達(dá)到了預(yù)期的設(shè)計(jì)要求,實(shí)現(xiàn)了穩(wěn)定的無(wú)線視頻傳輸控制。該系統(tǒng)可以搭載在探測(cè)車(chē)、云臺(tái)探頭等多種設(shè)備上使用,可以代替人類(lèi)進(jìn)入危險(xiǎn)或未知區(qū)域進(jìn)行探測(cè)、樣本采集和實(shí)現(xiàn)智能監(jiān)測(cè)云臺(tái)等功能。有效防止了人類(lèi)進(jìn)入危險(xiǎn)地區(qū)探測(cè),降低生命財(cái)產(chǎn)損失和降低云臺(tái)檢測(cè)功耗等問(wèn)題。