蔣文娟, 繆盛澤
(1、江蘇海事職業(yè)技術學院 電氣與自動化工程學院, 江蘇 南京 211170; 2、南京林業(yè)大學, 江蘇 南京211110)
我國在2013年成功發(fā)射了嫦娥三號無人登月探測器,完成月球探測、考察、收集和分析樣品等復雜任務。其組成部分的玉兔號巡視車便是一臺執(zhí)行太空任務的智能視頻小車。
實際上,除了能執(zhí)行太空任務以外,智能小車的應用領域還十分廣泛,比如說在戰(zhàn)場上,智能車輛能掃除路邊炸彈、尋找和銷毀地雷,從而減少士兵的傷亡;民用方面,可以探測化學泄漏物質,可以進行地鐵滅火以及在強烈地震發(fā)生后到廢墟中尋找被埋人員等;在家庭中,可以用智能小車遠程控制家中的家用電器、室溫等等。正因為智能小車能廣泛應用于各個領域,目前許多國家都在積極進行智能小車的研究和設計開發(fā)。
本文介紹的智能視頻小車具有能夠在手機屏幕上看到小車拍攝的實時畫面,同時能夠通過手機APP控制小車運行的特點,它是通過手機APP控制、WI-FI視頻模塊的通訊轉發(fā)、單片機控制小車移動來實現的。
手機APP控制的智能視頻小車系統(tǒng)由機械部分和電路部分組成,如圖1所示。其中機械部分包括金屬履帶底盤和驅動電機,電路部分包括單片機開發(fā)板、L298N雙H橋電機驅動模塊、驅動電源、穩(wěn)壓模塊、UVC攝像頭和WI-FI模塊。
金屬履帶底盤選用的是T200銀色版/鋁合金坦克底盤,為整個平臺提供牢固的底座,能夠為平臺在
圖1 智能視頻小車系統(tǒng)組成圖
不同的場地更換不同的執(zhí)行機構提供保證。驅動電機選用的是GM25電機,其額定工作電壓12 V,大扭力,堵轉力矩高達13 kg.cm,空載輸出轉速為330 轉每分鐘,帶有機械變速齒輪箱,可以通過機械降速提升扭矩,增大整個底盤的驅動力。電機驅動模塊,如圖2所示。
圖2 智能視頻小車系統(tǒng)電路圖
其中安卓APP作為上位機控制端,能夠發(fā)送信號指令;WI-FI視頻模塊用于連接攝像頭轉發(fā)給手機APP的視頻數據,同時發(fā)送串口信號給單片機開發(fā)板;單片機開發(fā)板是用來接收WI-FI模塊轉發(fā)的串口指令,并且通過I/O口給直流電機驅動板發(fā)送邏輯信號;直流12 V電源是用于給整個系統(tǒng)的各個部分供電;電機驅動模塊是用于接收邏輯信號控制驅動兩臺直流電機。
單片機開發(fā)板采用STC89C52為控制芯片的酷道51單片機開發(fā)板,利用串行通信口和4個I/O口(用于驅動板邏輯信號)來控制;L298N雙H橋電機驅動模塊能夠驅動智能視頻小車的直流電機,提供高電壓、大電流,能同時驅動兩個電機并且能實現正反轉[1];驅動電源采用12 V、6000 mAh鋰電池組,經過測驗,帶有此電池組的智能視頻小車待機可達14小時,長時間連續(xù)驅動電機可達3 小時以上。
選用的LM2596S-ADJ DC-DC可調降壓模塊,將驅動電源12 V、6000 mAh鋰電池組提供的12 V電源變成5 V電源,用來給邏輯控制部分和攝像頭供電。UVC攝像頭既能滿足系統(tǒng)回傳清晰的數據,又同時滿足圖傳通信協(xié)議的簡易性以及接口的通用性。通過高通AR9331芯片的WI-FI視頻模塊,可以將控制信號通過WI-FI從手機端轉發(fā)到視頻模塊上,再從路由模塊的串口轉發(fā)至單片機的串口上,并且把攝像頭采集到的視頻信號從視頻模塊回傳到手機APP。
智能視頻小車系統(tǒng)采用安卓應用程序作為控制軟件,通過http://192.168.1.1:8080/?action=stream 地址訪問WI-FI視頻模塊并且把攝像頭拍攝到的畫面實時顯示到APP的主頁面,然后把觸發(fā)APP上的按鍵發(fā)出的控制信號經路由轉發(fā)到單片機串口,達到圖像界面顯示和控制的目的。手機屏幕上會顯示小車系統(tǒng)的控制鍵以及攝像頭拍攝回傳的畫面,如圖3所示。
圖3 手機APP顯示畫面圖片
APP控制軟件完成以后,需要把手機控制軟件的控制信號轉發(fā)到單片機上,從而控制整個平臺。系統(tǒng)中采用openwrt系統(tǒng)的路由作為轉發(fā)單元,是一個高度模塊化、高度自動化的嵌入式Linux系統(tǒng),提供100多個已編譯好的軟件,能夠利用上傳軟件包來增加新功能的系統(tǒng),直接安裝新的功能軟件包即可[2]。
單片機控制程序主要的作用是與WI-FI視頻模塊連接并接收其發(fā)出的串口數據,通過接收到的指令去控制I/O端口,從而去控制小車的前進、后退、左轉、右轉和停止動作[3]。單片機控制程序基本框圖如圖4所示。
圖4 單片機控制程序基本框圖
本文以小車的前進動作為例給出編寫的單片機程序。
void main(void)
{
TMOD=0x20;
TH1=0XFd;
TL1=0xFd;
SCON=0x50;
PCON=0x00;
TR1=1;
ES=1;
EA=1;
ShowPort=LedShowData[11];
While(1)
{
unsigned int s;
if(flag_REC==1)
{
Flag_REC=0;
if(buff[0]==′0′&&buff[1]==′N′)
switch(buff[2])
{
Case up: //前進
Send_str();
run(); //調用前進子函數
ShowPort=LedShowData[1];
break;
void run(void)
{
P1_0=0;
P1_1=1;
P1_2=0;
P1_3=1;
}
void backrun(void)
}
}
}
}
當程序case到up相當于接受到了串口傳輸來的字符A。此時程序進入up小循環(huán),調用子函數run();給接電機驅動板四位邏輯信號端口P1.0、P1.1、P1.2、P1.3賦值,被賦值后的電機驅動板正向導通驅動兩個電機正轉,實現小車的前進動作。
在進行機械結構的組裝時一定要把可安裝的孔位對正,用螺絲牢固的固定相關的材料。更重要的是要為電路板等線路的安裝鋪設預留可用位置,避免返工。
對于線路的連接,有壓線槽的連接處盡量用壓線槽,不要焊接,便于后期的改造或換線。對于要焊接的地方,要注意焊點的大小,避免過大不牢固、過小焊不到位等錯誤,最重要的是防止焊錫過多造成連接處與周圍的焊點短路,引起不必要的損失。
在硬件機械結構安裝和基本電路焊接好以后,需要對電路的軟件部分進行調試。在調試過程中,首先是給執(zhí)行機構的單片機燒錄程序,該過程不會一遍就成功或者成功燒錄后會有部分的BUG出現,這時只要對單片機程序做微調重新燒錄即可。
其次是對WI-FI視頻模塊進行一些參數的設置以及調整攝像頭的分辨率,這個過程需要耐心調整,出錯就再輸入一遍命令代碼。
最后在一切軟件安裝和參數設置完成以后通電。必須待模塊完全啟動,啟動過程大約30 秒,否則系統(tǒng)會出現死機,必須重啟以解決。綠色指示燈亮后,再用手機APP連接視頻小車模塊,進行操作測試。
最后對整個應用平臺進行綜合調試結束后,智能視頻小車能夠通過手機APP控制運行,能夠在手機屏幕上看到拍攝的實時畫面。
本文介紹的智能視頻小車運用到家庭視頻監(jiān)控領域可以逐漸替代傳統(tǒng)的家用網絡攝像頭,具有可以任意控制或移動不受固定機位控制的優(yōu)勢,如果對小車的前端添加執(zhí)行機構,它可以應用到安全、消防、勘測等各種危險場所以及各種工作人員不方便到達的領域,例如無人拆彈、狹小空間勘察、遠程監(jiān)控、無人消防等。