WiFi物聯(lián)網(wǎng)小車設(shè)計方案,采用電腦上位機軟件通過無線WiFi 控制小車的運動,采集小車的信息。與傳統(tǒng)的“智能小車”相比,主要特點在于使用32 位高性能單片機控制、互聯(lián)網(wǎng)通信機制和電腦上位機軟件控制。此方案融合了電腦軟件、網(wǎng)絡(luò)通信、圖像處理、圖形顯示、運動控制、速度采集和溫度采集等技術(shù),具有“物聯(lián)網(wǎng)”的相關(guān)特點。傳統(tǒng)的小車控制大多使用紅外通信,使用遙控器進行控制,不但受到距離的限制,而且遠沒有電腦軟件直觀美觀。互聯(lián)網(wǎng)通信使小車具備遠程控制的能力,這是紅外通信望塵莫及的。此外,本方案小車控制芯片采用Cortex-M3單片機,該單片機具有極豐富的外設(shè),這給小車以后功能升級和擴展奠定了基礎(chǔ)。
1 總體設(shè)計方案
WiFi 物聯(lián)網(wǎng)小車設(shè)計方案需要達到的目的是使用電腦軟件(簡稱上位機)通過互聯(lián)網(wǎng)與小車控制端(簡稱下位機) 進行通信,從而控制小車的運動,采集小車的速度、溫度以及視頻監(jiān)控等功能??傮w設(shè)計方案如圖1 所示。圖中有2 種通信模式可選,其中“WiFi 局域網(wǎng)小車控制”是采用局域網(wǎng)的方式,將上位機、無線路由器和小車組成一個局域網(wǎng),實現(xiàn)上位機控制小車的目的?!盎ヂ?lián)網(wǎng)遠程小車控制方案”是采用遠程互聯(lián)網(wǎng)的方式,將上位機與小車組成一個互聯(lián)網(wǎng),從而實現(xiàn)遠程控制小車的目的。2 種方案的技術(shù)類似,由于受到實驗條件的限制,本設(shè)計以局域網(wǎng)小車控制為例進行講解說明。
圖1 總體方案設(shè)計
從通信的角度來講,無線路由器是上位機和下位機的數(shù)據(jù)中心,上位機通過Winsocket 套接字編程創(chuàng)建一個網(wǎng)絡(luò)接口與路由器進行連接,小車端通過一個串口轉(zhuǎn)WiFi 模塊,將串口數(shù)據(jù)通過WiFi 模塊轉(zhuǎn)換成WiFi 信號與路由器交互。此過程中,上位機和下位機WiFi 模塊均有一個獨立的局域網(wǎng)IP 地址。通過這個IP 地址上位機和下位機便可以實現(xiàn)網(wǎng)絡(luò)通信。
從控制的角度來講,上位機是小車的控制中心,上位機通過“按鍵”發(fā)出指令給小車,小車收到指令后回傳相關(guān)數(shù)據(jù)給上位機,上位機收到小車回傳的數(shù)據(jù),經(jīng)過解析,將其顯示出來。
1.1 上位機軟件設(shè)計
上位機主要功能是控制小車運動,顯示小車的速度、周圍的溫度以及小車采集的攝像。如圖2 所示,這些功能由2 個線程來完成分別是“圖像、聲音處理線程”和“小車運動控制,速度、溫度采集線程”等。前一個線程主要負責接收并處理有小車WiFi攝像頭傳過來的圖像信息和音頻信息,此部分主要涉及到DirectShow 相關(guān)技術(shù)。后一個線程主要負責小車運動的控制,包括“前進、后退、左轉(zhuǎn)、右轉(zhuǎn)、停止、加速、減速、轉(zhuǎn)向燈和喇叭”以及接收處理小車回傳的溫度和速度信息等,并用虛擬圖表顯示出來。上位機軟件2 個線程都創(chuàng)建了一個互不相干的套接字,前者用于與小車WiFi 攝像頭進行數(shù)據(jù)交互,后者用于與小車串口轉(zhuǎn)WiFi 模塊進行數(shù)據(jù)交互。
圖2 上位機軟件設(shè)計方案
1.2 下位機軟件設(shè)計
下位機軟件設(shè)計,即Cortex-M3 核心處理器的程序設(shè)計,如圖3 所示。設(shè)計方案主要包括:攝像的控制、小車4 個電機的控制、DS18B20 溫度數(shù)據(jù)的采集、紅外對管速度模塊數(shù)據(jù)的采集以及采集到數(shù)據(jù)后數(shù)據(jù)的處理打包發(fā)送等內(nèi)容。其中攝像的控制、電機控制以及溫度和速度的采集均以函數(shù)的形式獲取,當下位機收到上位機的相關(guān)命令后,便調(diào)用相應的函數(shù)獲取到結(jié)果后用固定的格式發(fā)送給上位機。
圖3 下位機軟件方案
下位機實現(xiàn)WiFi 與無線路由器通信的核心是串口轉(zhuǎn)WiFi 模塊,通過這個模塊可以將下位機發(fā)送的串口數(shù)據(jù)直接轉(zhuǎn)換成WiFi 信號發(fā)射出去。在使用此模塊之前可以通過多種方式進行配置,只要配置好了,便可以與制定的WiFi 接入點進行網(wǎng)絡(luò)通信。
2 設(shè)計方案特點及擴展說明
2.1 特點介紹
本方案是基于將電腦軟件、互聯(lián)網(wǎng)通信以及單片機技術(shù)相結(jié)合的理念構(gòu)想設(shè)計的。從單片機的選型、通信方案的確定以及上位機軟件的設(shè)計等都與傳統(tǒng)的“智能小車”有很大的特別之處。以下是本設(shè)計方案的3 大特色:
?、?小車的控制芯片采用功能強大的Cortex-M332 位高性能、低功耗的處理器,該芯片具有豐富的外設(shè),芯片還支持ARM 公司提供的RLTx 實時操作系統(tǒng),使用起來非常方便;
?、?通信方式采用TCP / IP 通信協(xié)議,使用無線WiFi 技術(shù),實現(xiàn)對小車的控制。此通信方案(如圖1),在具有私有IP 的情況下可以連接遠程網(wǎng)絡(luò),可以通過遠程網(wǎng)絡(luò)遙控小車,這在“智能家居”和“遠程醫(yī)療”等領(lǐng)域?qū)胁诲e的使用價值;
?、?利用電腦上位機管理軟件,使單片機控制、網(wǎng)絡(luò)通信和計算機軟件有效地結(jié)合。此方案設(shè)計上位機軟件來管理小車,符合將復雜的控制簡單化、界面化的設(shè)計理念。
2.2 擴展說明
Cortex-M3 單片機強大豐富的外設(shè)資源為本設(shè)計的擴展奠定了強大的基礎(chǔ)。除了已實現(xiàn)的功能外,單片機還剩下2 個串口未用,這使小車還可以添加如下功能:GPS 導航功能、語音功能以及GSM/GPRS 發(fā)短信、打電話和無線上網(wǎng)功能。
3 方案難點及關(guān)鍵技術(shù)
方案難點有:
?、?上位機控制小車的運動對實時性的要求很高,而采集小車的速度并用表盤顯示出來,這對通信的穩(wěn)定性又提出了要求,而對于本來就存在延時的TCP / IP 通信來說更是難上加難;
?、?圖像處理主要是借鑒網(wǎng)上DirectShow 開發(fā)指南中提供的技術(shù),很多內(nèi)部的處理機制和信號過濾器的使用是難點;
?、?上位機速度表盤顯示速度不連貫,偶爾還有“卡死”的現(xiàn)象。
關(guān)鍵技術(shù)有:① 通信協(xié)議的制定;② 下位機采集并處理信息的方法;③ 上位機套接字編程,速度表盤動態(tài)顯示速度;④ 上位機顯示小車監(jiān)控視屏;⑤ 小車作為WiFi 接入點接入網(wǎng)絡(luò)。
4 系統(tǒng)仿真結(jié)果分析
4.1 WiFi 物聯(lián)網(wǎng)小車整體外觀
小車整體外觀如圖4 和圖5 所示,系統(tǒng)由上位機和小車組成,小車控制電路放在小車上。小車控制器主要包括:電機控制、測速、測溫、通信、圖像采集和無線路由等。
圖4 WiFi 物聯(lián)網(wǎng)小車
圖5 小車俯視圖
4.2 系統(tǒng)整體調(diào)試
WiFi 物聯(lián)網(wǎng)小車控制系統(tǒng)上位機界面主要包括:網(wǎng)絡(luò)設(shè)置、功能設(shè)置、視屏監(jiān)控區(qū)、運動控制區(qū)、速度顯示區(qū)、溫度顯示區(qū)以及調(diào)試窗口。網(wǎng)絡(luò)設(shè)置用于上位機與小車進行網(wǎng)絡(luò)連接,輸入小車IP 地址,點擊“連接”即可。視頻監(jiān)控功能需要小車端安裝WiFi攝像頭,通過點擊視頻顯示框下面的“Call”按鈕可以連接WiFi 攝像頭的IP 地址,連接成功即可獲取攝像頭采集到的圖像。運動控制區(qū)用于控制小車的運動和顯示小車的轉(zhuǎn)向燈、喇叭等。速度顯示區(qū)是一個速度表盤用于顯示小車的實時速度。溫度顯示區(qū)是一個溫度計的圖形界面,可以顯示小車上DS18B20 傳感器的溫度值。通信調(diào)試窗口在調(diào)試程序時使用。
4.2.1 網(wǎng)絡(luò)連接
網(wǎng)絡(luò)連接調(diào)試使用網(wǎng)上下載的TCP網(wǎng)絡(luò)調(diào)試助手,首先設(shè)置TCP調(diào)試助手為服務器模式,設(shè)置服務器監(jiān)聽IP為192.168.16.110,端口設(shè)為345,連接網(wǎng)絡(luò),此IP 地址和端口號是UART 轉(zhuǎn)WiFi 模塊的IP地址和端口號,通過單片機用AT 指令設(shè)定。網(wǎng)絡(luò)連接成功后,小車上位機會不斷的發(fā)送“014,SR1,TE1,029.6”,表示小車端當前的溫度是29.6 ℃。
4.2.2 小車運動
小車運動控制部分的調(diào)試同樣采用上位機和TCP 網(wǎng)絡(luò)調(diào)試助手進行調(diào)試。連接好網(wǎng)絡(luò)后,在上位機上分別點擊“↑”,“↓”,“←”,“→”,“█”,“加速”,“減速”。在調(diào)試助手接收窗口上依次接收到 “:014,SG1,UP1,;” 、“:014,SG1,DO1,;”、“:014,SG1, LE1,;”、“: 014, SG1, RI1,;”、“: 014, SG1,ST1,;”、“: 014, SG1, AD1,;” 和“: 014, SG1,SU1,;”,分別表示“前進”,“后退”,“左轉(zhuǎn)”,“右轉(zhuǎn)”,“停止”,“加速”和“減速”。
4.2.3 溫度和速度的顯示
溫度和速度的測試直接在小車的實際運動過程中進行測試。打開小車,連接上位機,用手捂住小車上的 DS18B20,觀察上位機上溫度顯示區(qū)模擬溫度計的度數(shù)變化,然后用手轉(zhuǎn)動小車的輪子觀察上位機速度顯示區(qū)速度表盤指針的變化,改變溫度和速度的大小,發(fā)現(xiàn)速度表盤指針和溫度指示相應發(fā)生變化,因此可以判斷溫度和速度的傳輸沒有問題。
5 結(jié)束語
通過反復調(diào)試和修改代碼,可以實現(xiàn)預想的功能。通信穩(wěn)定,小車的控制可靠,數(shù)據(jù)采集的準確度和靈敏度達到要求。在不涉及到遠程聯(lián)網(wǎng)控制的情況下,系統(tǒng)的穩(wěn)定性和可靠性已經(jīng)遠遠超過普通的紅外遙控小車和無線射頻遙控小車。方案的意義在于將電腦軟件技術(shù)、網(wǎng)絡(luò)技術(shù)和單片機技術(shù)有效結(jié)合,突出體現(xiàn)并且深化了“物聯(lián)網(wǎng)”的含義,未來必將廣泛應用于社會生活和生產(chǎn)中。方案的應用領(lǐng)域主要有無人駕駛、遠程監(jiān)控和智能家居等。
評論
查看更多