王??担愔晾?/p>
( 華北理工大學 電氣工程學院, 河北 唐山 063210)
基于stm32的移動機器人遠程控制系統(tǒng)
王福康,陳至坤
( 華北理工大學 電氣工程學院, 河北 唐山 063210)
機器人;嵌入式;視頻傳輸;遠程控制;上位機
移動機器人研究涉及到人工智能、控制理論、傳感器技術和計算機科學等多門學科。視頻傳輸通過嵌入式系統(tǒng)的外設WIFI模塊連接到無線路由器,電腦上位機連接到此無線路由器,通過一定的通信協(xié)議將攝像頭采集到的視頻數(shù)據(jù)傳輸?shù)诫娔X上。遠程控制系統(tǒng)通過WIFI模塊實現(xiàn)與手機上位機的通信,通過一定的通信協(xié)議將上位機的命令傳輸?shù)较挛粰C,通過RS232數(shù)據(jù)傳輸模塊將下位機的命令數(shù)據(jù)傳輸?shù)揭苿訖C器人,實現(xiàn)對其的遠程控制。
機器人出現(xiàn)至今得到了迅速的發(fā)展,從靜止到可移動、從爬行到學會了走路、從地面到深海和空間,在世界各個領域和人們生活的眾多方面忠誠地為人類服務,做出了不可磨滅的貢獻。并促成了機器人自身的迅速發(fā)展,現(xiàn)已發(fā)展成為一門涉及力學、機械學、電子學、生物學、控制論、計算機科學、仿生學、人工智能、系統(tǒng)工程等多個學科領域的交叉性學科-機器人學。隨著機器人學的飛速發(fā)展,機器人技術不僅只停留在軍事、工業(yè)領域得到應用,而且被廣泛地應用在日常生活中。近幾年,機器人遠程控制日益受到人們的重視。互聯(lián)網(wǎng)與機器人的合成,為控制系統(tǒng)提出了一個新的思路。如網(wǎng)絡醫(yī)療就是一個充滿希望的發(fā)展領域。建立基于互聯(lián)網(wǎng)的機器人遠程控制平臺,不僅可以使操作人員離開具有危險性的操作環(huán)境,避免造成人身傷害,而且還可順應機器人所面臨的日益復雜的應用環(huán)境。
為了讓機器人更好地為人類服務,要實現(xiàn)機器人的完全自動化。這就需要遠程控制機器人進行各種數(shù)據(jù)的采集,之后通過傳輸系統(tǒng)將視頻傳輸?shù)诫娔X上,再通過其他軟件的應用進行圖像的處理,為機器人的完全自動化打下堅實的基礎。
遠程控制系統(tǒng)包括STM32F103ZET6嵌入式開發(fā)板、上位機、WIFI模塊、RS232串口4個模塊組成。
1.1 工作原理
上位機發(fā)送指令,通過手機和嵌入式外設WIFI模塊的連接,將數(shù)據(jù)傳輸給WIFI模塊,嵌入式系統(tǒng)讀取到WIFI的接收值,進行處理指令,將處理后的數(shù)據(jù)通過RS232發(fā)送給移動機器人,移動機器人MCU接收到命令,給編碼器相應的速度量,電機開始轉(zhuǎn)動,此時編碼器進行速度信號的采集。之后將采集到的速度信號返回給MCU,如果與給定的速度不同,則進行相應的PID調(diào)節(jié)。MCU將計算值給電機,控制電機的轉(zhuǎn)動操作,完成上位機給定的指令。本系統(tǒng)的流程圖如圖1所示。
圖1 遠程控制系統(tǒng)流程圖
1.2 上位機編寫
目前比較流行的寫上位機語言有以下幾種:C++、JAVA、C#、E語言等。因為本上位機指令比較簡單,因此選用了比較簡單的E語言,E語言是中文編程語言,開發(fā)周期短,上手速度快。選取WIFI的上位機庫函數(shù),可與下位機的WIFI模塊連接,通過按鈕指令庫的調(diào)用,將上位機與下位機的指令寫入上位機,完成上下位機的數(shù)據(jù)通信。上位機通過手機的WIFI組件,與下位機的WIFI模塊進行連接,發(fā)送相應的命令,下位機收到上位機的命令,MCU會對上位機的命令進行解析,繼而發(fā)送相應的指令,機器人MCU解析命令控制電機轉(zhuǎn)動。
1.3 WIFI模塊
使用的是ESP8266高性能串口轉(zhuǎn)無線模塊,內(nèi)置TCP/UDP協(xié)議,能夠?qū)崿F(xiàn)串口與WIFI之間的轉(zhuǎn)換。ATK_ESP8266 模塊支持 STA/AP/STA+AP 3種工作模式。(1)STA模式:ESP8266模塊通過路由器連接互聯(lián)網(wǎng),手機或電腦通過互聯(lián)網(wǎng)實現(xiàn)對設備的遠程控制。(2)AP模式:默認模式 ATK_ESP8266 模塊作為熱點,實現(xiàn)手機或電腦直接與模塊通信,實現(xiàn)局域網(wǎng)無線控制。(3)STA+AP 模式:2種模式的共存模式,(STA 模式)可以通過路由器連接到互聯(lián)網(wǎng),并通過互聯(lián)網(wǎng)控制設備;(AP 模式)也可作為wifi 熱點,其他wifi設備連接到模塊。
本模塊設置為AP模式,作為一個無線熱點供手機上位機連接,進行數(shù)據(jù)通信。進而進行移動機器人的控制。
1.4 WIFI模塊傳輸距離
這里給出的是自由空間傳播的無線通信距離的計算方法:所謂自由空間傳播指天線周圍為無限大真空時的電波傳播,它是理想傳播條件。電波在自由空間傳播時,其能量既不會被障礙物所吸收,也不會產(chǎn)生發(fā)射或散射。
通信距離與發(fā)射功率、接收靈敏度和工作頻率有關。
[Lfs](dB) = 32.44 +20lgd(km) + 20lgf(MHz)
(1)
式中Lfs為傳播損耗,d為傳輸距離,頻率的單位以MHz計算。
由上式可見,自由空間中電波損耗(亦稱衰減)只與工作頻率f和傳播距離d有關,當f或d增大1倍時,[Lfs]的傳播損耗將分別增加6 dB。
通過查閱ESP8266的手冊可知,它的工作頻率為2 400 MHz,發(fā)射功率為+14 dBm,接收功率為-75 dbm(Mbps),將以上數(shù)據(jù)帶入表達式,最后的得到的結(jié)果是:0.281 8 km
理論計算是282 m,但是由于電波在自由空間傳播時,其能量會被障礙吸收、發(fā)射、散射。因此,傳輸距離會相應縮短,經(jīng)過實際測量,如果WIFI只通過一層普通障礙物時,傳輸距離約為86 m。
2.1 工作原理
通過OV2640進行視頻數(shù)據(jù)采集,將采集到的電流信號轉(zhuǎn)換為數(shù)字信號。再通過數(shù)字處理芯片進行處理。MCU獲得視頻數(shù)據(jù),此時WIFI和路由器連接,WIFI模塊將數(shù)據(jù)傳輸?shù)铰酚善魃希藭r路由器已經(jīng)和電腦的上位機通過一定的通信協(xié)議連接起來。路由器將接收到的數(shù)據(jù)傳輸?shù)揭呀?jīng)訂好協(xié)議上的上位機上,上位機可以觀察和記錄采集到視頻數(shù)據(jù)。流程如下所示。
相機讀圖像→AD數(shù)據(jù)采集→數(shù)字處理芯片(DSP)→嵌入式系統(tǒng)處理→WIFI模塊→路由器→腦上位機
2.2 視頻傳輸上位機
由于視頻傳輸使用的組件復雜,因此簡單的E語言并不能滿足要求,所以使用JAVA語言進行上位機的編寫,包括WIFI組件、包含文件模塊的組件。
以此來進行攝像頭采集數(shù)據(jù)的采集,加上一個內(nèi)存組件,來進行攝像頭數(shù)據(jù)的儲存。以便隨時調(diào)用這些數(shù)據(jù),進行數(shù)據(jù)處理的研究。
2.3 攝像頭模塊
OV2640是一個1/4寸的CMOS UXGA(1632*1232)圖像傳感器。該傳感器體積小、工作電壓低,提供單片UXGA 攝像頭和影像處理器的所有功能。通過 SCCB 總線控制,可以輸出整幀、子采樣、縮放和取窗口等方式的各種分辨率 8/10位影像數(shù)據(jù)。該產(chǎn)品 UXGA 圖像最高達到 15 幀/秒( SVGA 可達 30 幀,CIF可達60幀)。用戶可以完全控制圖像質(zhì)量、數(shù)據(jù)格式和傳輸方式。所有圖像處理功能過程包括伽瑪曲線、白平衡、對比度、色度等都可以通過 SCCB 接口編程。 OmmiVision圖像傳感器應用獨有的傳感器技術,通過減少或消除光學或電子缺陷如固定圖案噪聲、拖尾、浮散等,提高圖像質(zhì)量,得到清晰而又穩(wěn)定的彩色圖像。
攝像頭模塊是用來對視野內(nèi)的數(shù)據(jù)進行采集,通過自己內(nèi)部的AD模塊將采集到的模擬量轉(zhuǎn)換成數(shù)據(jù)量,再通過DSP數(shù)據(jù)處理芯片將采集到的數(shù)據(jù)進行處理,之后將數(shù)據(jù)傳輸?shù)絀/O口,MCU讀取相應的數(shù)字量為后期數(shù)據(jù)傳輸做準備。
2.4 WIFI模塊
無線WIFI的技術能夠達到的最大速率主要受到編碼方式、調(diào)制方式、無線頻寬等關鍵指標影響,作為主流的無線WIFI技術,802.11n最大速率能夠達到600M,比傳統(tǒng)的802.11a/g相比提高了10倍以上。因此選用由此功能的MR-09_88w8686模塊,并且此模塊采用SDIO接口進行數(shù)據(jù)傳輸,數(shù)據(jù)傳輸速度更快。
2.5 數(shù)據(jù)傳輸計算
使用攝像頭采集VGA圖像,采集一幅圖像的數(shù)據(jù)量,共有640*480個像素點,每個像素點有8位,即一個字節(jié),但是因為要采集彩色數(shù)據(jù),使用的是RGB565格式,所以數(shù)據(jù)量變?yōu)樵瓉淼?倍。數(shù)據(jù)總量是:
SUM = 640*480 *2= 614 400(byte)
進行數(shù)據(jù)轉(zhuǎn)換 SUM_KB =614 400/1 024 = 600(kB)
繼續(xù)轉(zhuǎn)換 SUM_M = 600/1 024 = 0.59(M)
一幅圖像的數(shù)據(jù)量為0.59M,STM32F407的主頻是168MHz,STM的ADC是16位的,對于每個要轉(zhuǎn)換的通道,ADC的轉(zhuǎn)換時間可以由公式(2):
Tcovn = 采樣時間+12.5個周期 (2)
其中:Tcovn為總轉(zhuǎn)換時間,
采樣時間由每個通道的SMP位設置來決定,例如,設置1.5個周期的采樣時間。則得到:Tcovn = 14個時鐘周期。
總時間 SUM_Time = 14/168 = 0.08 μs
共有640 * 480 = 307 200個AD采集時間,共需要采集時間為 Time = 307 200*0.08 = 25 ms
每秒的圖像采集量 Photo = 1 000/25 = 40(幅)
所以如果全速采集的話,MCU每秒可以采集到40幅圖像。
2.6 WIFI傳輸速度分析
WIFI模塊數(shù)據(jù)傳輸?shù)念l段是2.4G,通過OFDM調(diào)制,采用64-QAM編碼的情況實現(xiàn)的。其中影響速率的計算因子如下:
(1)802.11g采用OFDM能夠提供52個子載波信道(其中只有48個用于數(shù)據(jù)傳輸);
(2)所采用的64-QAM編碼方式能夠在每個子載波信道通過一次傳輸過程攜帶6bit的數(shù)據(jù)位;
(3)64-QAM編碼每次傳輸提供3/4的碼率(即有效數(shù)據(jù)容量);
(4)一次傳輸占用的時間固定為4微秒;
(5)根據(jù)以上的計算因子,802.11g能夠提供的最大速率計算如下:
(6)(1 s/4 μs) * (6bit * 48 *3/4) = 54 Mbit/s
802.11 n通過以下技術提高其最大速率:
802.11 n可以工作的頻帶從20 MHz變?yōu)?0 MHz,這樣OFDM所能提供的子載波信道數(shù)量從56個進一步提升為112個,其中用來傳輸數(shù)據(jù)的子信道數(shù)量為108個,最大速率變成:
(1 s/4 μs)*(6 bit * 108 * 3/4) = 121 Mbit/s
經(jīng)過上面的計算,每幅圖像的數(shù)據(jù)量為0.59 M,因此按照此WIFI模塊的傳輸效率,每秒能傳輸205.1幅圖像。
路由器的數(shù)據(jù)傳輸速率為300 Mbit/s,但是實際檢測路由器的速率是其標定值的1/8,因此上位機每秒的能接收的圖像量是 300/8/0.59 = 63.6幅。
經(jīng)過上述理論計算,上位機的每秒最多能采集像素為640*480的圖像40幅。圖3所示為WIFI模塊電路圖。
圖2 WIFI模塊電路圖
(1)該系統(tǒng)實現(xiàn)移動機器人的遠程控制,便于移動機器人進行不同場景圖像的采集。
(2)該系統(tǒng)實現(xiàn)了視頻數(shù)據(jù)的傳輸及存儲,獲得的數(shù)據(jù)可以供其他軟件進行分析處理。
[1] 蔡自興,機器人學[M],北京:清華大學出版社,2000 : 15-20.
[2] 諸靜,機器人與控制技術[M],杭州:浙江大學出版社,1991: 65-75.
[3] 湯宇松,劉景泰,利用遠程網(wǎng)絡技術的機器人遙操作系統(tǒng)分析[J],機器人,2000,24(3): 32-48.
[4] 趙明國,趙杰,崔澤等. 一種基于Internet 的遙操作機器人系統(tǒng)- Telerobot[J]. 哈爾濱工業(yè)大學學報.2005,26(4): 12-24.
[5] 趙杰,閆繼宏,蔡鶴皋. 基于 Internet 的多機器人遙操作系統(tǒng)體系結(jié)構(gòu)[J].高技術通訊.2003,32(5): 123-134.
[6] 龍曉林,蔣靜坪. 基于 Web 的多機器人遠程控制[J]. 武漢大學學報(工學版).2005(6): 69-76.
[7] Natali Ivanova, IIltemet Based Interface for Control of a Mobile Robot[C], Master Tilesis of NADA,Sweden.1995: 65-85.
[8] K.Goldberg,M.Mascha,S.Gentrt,etal.,Desktop teleoperalion Via the World Wide Web[C], Republic of Ireland ,Conference on Ro botics and Automalion, 1995: 452-476.
[9] K.Goldberg,J.SancaHomana,G.Bekey,et a1.,The Telegarden[C],Houstom ,ISEH.1995: 654-678.
[10] LUORC, CHEN T M.Development of a multibehavior based mobile robot for remote supervisory control through the Internet[J]. ASME Transanctions on Mechatronics. 2000,32(7): 147-186.
RemoteControlSystemofMobileRobotBasedonstm32
WANG Fu-kang , CHEN Zhi-kun
(College of Electrical Engineering, North China University of Science and Technology, Tangshan Hebei 063210, China)
robot; embedded; video transmission; remote control; host computer
mobile robot research involves artificial intelligence, control theory, sensor technology and computer science disciplines. The video transmission is connected to a wireless router through the peripheral module of WiFi embedded system, computer PC connected to the wireless router, transmit video data collected by the camera to the computer through the communication protocol of remote control system. Mobile phone communicates with PC through WiFi module, through a certain communication protocol to transmit command to the lower computer, through RS232 data transmission module transmits the commands to the mobile robot lower machine data, realize the remote control.
2095-2716(2017)04-0077-05
2017-05-22
2017-09-27
TP242.6
A