楊科普
摘要
本設(shè)計主要研究基于云端的水下監(jiān)測系統(tǒng),利用無線傳輸模塊和攝像模塊采集水下的圖像,將數(shù)據(jù)通過以MT7620芯片構(gòu)建的Wi-Fi模塊傳遞到上位機(jī)中顯示,并且上位機(jī)通過Wi-Fi傳輸指令到以Cortex-M3為核心的STM32處理器來控制船體的移動。
【關(guān)鍵詞】MT7620芯片 Cortex-M3 視頻監(jiān)控
1 引言
隨著當(dāng)今社會的發(fā)展,物聯(lián)網(wǎng)的普及,自動化、智能化產(chǎn)業(yè)越來越受人們的關(guān)注,更多的智能設(shè)備代替了人工,進(jìn)行一些危險或是高強(qiáng)度的工作。對于水質(zhì)勘察、水下打撈等領(lǐng)域,水下監(jiān)測系統(tǒng)的出現(xiàn)具有重要的意義。本文介紹了以stm32控制的系統(tǒng)通過Wi-Fi把由水下攝像頭拍攝到的圖像通傳輸?shù)缴衔粰C(jī)進(jìn)行視頻監(jiān)控的設(shè)計方案。
2 系統(tǒng)功能與設(shè)計
根據(jù)系統(tǒng)的要求設(shè)計下位機(jī)的數(shù)據(jù)處理、上位機(jī)的數(shù)據(jù)處理、數(shù)字信號的傳輸、模擬信號的傳輸?shù)人膫€方面,體現(xiàn)智能化、小型化等特點(diǎn),其目的是在于收集水下的情況,動態(tài)拍攝水下環(huán)境等數(shù)字信息量,通過Wi-Fi通信傳輸?shù)缴衔粰C(jī)中顯示,再配合上位機(jī)通過Wi-Fi傳過來的指令控制下位機(jī)的I/O口輸出的PWM的大小,從而驅(qū)動船體的移動和攝像模塊的移動。系統(tǒng)簡單的流程如圖1。
2.1 硬件系統(tǒng)設(shè)計
硬件部分主要由無線傳輸模塊,水下攝像模塊以及MCU處理器組成。由于需要考慮水下的因素和需要傳輸大量視頻圖像,所以無線傳輸方式選用Wi-Fi傳輸,保證了數(shù)據(jù)傳輸?shù)姆€(wěn)定性和時效性。而在水中攝像和地面上拍攝不一樣,對攝像相模塊的要求較高,所以我們采用了一款免驅(qū)動的USB的水下攝像頭。MCU處理器選用STM32處理器,作為下位機(jī)的核心。
2.1.1 無線傳輸模塊
對于當(dāng)前主流的無線傳輸方式都有NRF射頻傳輸,藍(lán)牙傳輸,Wi-Fi傳輸?shù)?。在本次設(shè)計中我們對它們進(jìn)行了測試,得出了以下結(jié)論:NRF24L01+無線發(fā)射接收模塊在空氣最大速率1Mbps——2Mbps達(dá)不到標(biāo)準(zhǔn)要求。藍(lán)牙傳輸更容易收到干擾,在水中不是很穩(wěn)定。但是Wi-Fi傳輸相對來說速率更高,穩(wěn)定性更強(qiáng)。我們選用的是Openwrt7620路由,其主芯片MTK7620是一個高度集成的芯片。該模塊符合國際標(biāo)準(zhǔn)的802.11.b/g/n協(xié)議,采用DSSS,OFDM,DPSK,CCK和QAM基帶調(diào)制技術(shù),最大速率可達(dá)300Mbps.
2.1.2 水下攝像模塊
攝像頭是本系統(tǒng)“眼睛”,故而要進(jìn)行水下圖像拍攝,所采用的攝像模塊的防水性和抗干擾能力要求會很強(qiáng),而且為了減輕整個系統(tǒng)的重量,我們采取了一款免驅(qū)動的USB的水下攝像頭。
水下攝像頭經(jīng)過光學(xué)成像以后投影到圖像傳感器上,編碼成為數(shù)字信號送入數(shù)字信號處理器中(DSP)進(jìn)行數(shù)據(jù)的壓縮,得到的壓縮數(shù)據(jù)再通過USB協(xié)議傳輸?shù)絎i-Fi路由系統(tǒng)中去。
2.1.3 MCU模塊
本系統(tǒng)采用STM32F103C8T6處理器,工作頻率為72MHZ具有高速的時效性,具有較大的Flash和SRAM空間幾乎不會因為內(nèi)部空間不足而出現(xiàn)死機(jī)或卡頓,有37個I/O輸出口,3個通用定時器,芯片電壓為3.3V,支持全雙工串口通信,可以成功的接收上位機(jī)命令。當(dāng)其完成數(shù)據(jù)處理后通過USAR7再發(fā)送到上位機(jī)中,并且可以根據(jù)接受到的命令控制電機(jī)轉(zhuǎn)動的速率和方向。
2.2 軟件系統(tǒng)的設(shè)計
本系統(tǒng)的軟件主要涉及到兩個部分的程序設(shè)計:下位機(jī)程序的設(shè)計和上位機(jī)的設(shè)計。
2.2.1 下位機(jī)的程序設(shè)計
下位機(jī)程序主要有數(shù)據(jù)傳輸,串口通信,數(shù)據(jù)處理三部分構(gòu)成。其中串口通信是其關(guān)鍵的部分,正是由它收到命令的準(zhǔn)確性和時效性,決定了數(shù)據(jù)處理的方式和數(shù)據(jù)發(fā)送的內(nèi)容。當(dāng)命令通過串口通信發(fā)送過來,由MCU進(jìn)行信息解析,然后改變輸出PWM,從而改變電機(jī)的速率和轉(zhuǎn)動的方向。
2.2.2 上位機(jī)的程序設(shè)計
上位機(jī)由VB語言進(jìn)行編寫,其中包括界面處理和程序邏輯框架,其主要是實現(xiàn)數(shù)據(jù)的接受和發(fā)送,以及圖像的呈現(xiàn)兩部分。圖像數(shù)據(jù)通過攝像頭模塊收集,由Wi-Fi模塊把數(shù)據(jù)傳送出來,上位機(jī)開始接受數(shù)據(jù),按照事先設(shè)好的協(xié)議進(jìn)行解析,然后把圖像清晰呈現(xiàn)在Android的APP上面,并且操作APP發(fā)送命令,下位機(jī)隨之改變。
3 系統(tǒng)調(diào)試
在編譯和下載中,我們開始完成整個系統(tǒng)的測試,將硬件部分和軟件部分結(jié)合其來,然后按照系統(tǒng)流程圖,一點(diǎn)點(diǎn)進(jìn)行編譯和下載,完成好系統(tǒng)的每一個部分,盡可能完善每一個地點(diǎn),測試了設(shè)備在水下的圖像情況和在水中的靈活性,觀察圖像通信的時效性和準(zhǔn)確性,其結(jié)果滿足系統(tǒng)的主要目的,達(dá)到了數(shù)據(jù)傳輸?shù)臉?biāo)準(zhǔn)。在完成基本功能之后,我們還完善了人機(jī)交互界面。
4 結(jié)語
本文通過以Cortex-M3為核心的STM32F103C8T6處理器設(shè)計了一個基本的水下監(jiān)測系統(tǒng)。經(jīng)測試,成品基本上可以監(jiān)測淺水區(qū)水下的情況,并且隨著觀察物體移動,完成了人工的工作。相信隨著物聯(lián)網(wǎng)的發(fā)展,它在未來物聯(lián)網(wǎng)時代具有更加遼闊的前景!
參考文獻(xiàn)
[1]康華光.電子技術(shù)基礎(chǔ)模擬部分/數(shù)字部分[M].北京:高等教育出版社,2006.
[2]吳杰,王冬梅.基于多波束系統(tǒng)和ADCP的水下施工動態(tài)監(jiān)測[J].長江科學(xué)院院報,2004(04).
[3]徐亞卿,金德鵬.嵌入式移動終端內(nèi)置Wi-Fi的低功耗設(shè)計[J].微計算機(jī)信息,2008(23).