張翔宇
【摘要】 一種基于WiFi通信網(wǎng)絡的智能小車,智能小車由WiFi模塊控制器、電機驅動器、減速電機、電池組、開關、上位機控制界面所組成。智能小車通過上位機的操縱界面利用無線網(wǎng)絡任意的控制小車的行走路線。
【關鍵詞】 智能小車 WiFi通信 Arduino 智能控制
一、引言
隨著時代的發(fā)展,無線網(wǎng)絡得到了迅速的發(fā)展,利用無線技術所制造的無線終端產(chǎn)品也越來越多。由于本人對于電子產(chǎn)品有著非常濃厚的興趣,所以利用課余時間通過學習制作了一個基于WiFi通信網(wǎng)絡的智能小車,能夠實現(xiàn)通過上位機界面控制智能小車的運動。
二、智能小車工作過程
一種基于WiFi通信網(wǎng)絡的智能小車,智能小車由WiFi模塊控制器、電機驅動器、減速電機、電池組、開關、上位機控制界面所組成,當智能小車上電后,WiFi模塊會自動尋找在控制器程序中所設定要連接的無線網(wǎng)絡名稱,當WiFi模塊連接到上位機控制界面時,控制界面會顯示當前所連接到主機的WiFi模塊的IP地址,建立起通信連接之后,就可以通過上位機界面控制WiFi小車任意的運動了,智能小車的控制器我選擇的是基于Arduino的wido控制器,其本身自帶WiFi模塊,并帶有AVR單片機,具有6路數(shù)字可控IO口,4路模擬IO口,最大限度的滿足了控制系統(tǒng)的需要,同時Arduino有大量封裝好的類庫,語言也不像C語言不易理解,它非常適合初級電子玩家制作一些電子產(chǎn)品。
三、系統(tǒng)數(shù)據(jù)的處理
上位機和智能小車之間的通信利用的是TCP/IP協(xié)議,TCP/IP是一種網(wǎng)絡通信協(xié)議,它規(guī)范了網(wǎng)絡上的所有通信設備,尤其是一個主機與另一個主機之間的數(shù)據(jù)往來格式以及傳送方式。TCP/IP是INTERNET的基礎協(xié)議,也是一種電腦數(shù)據(jù)打包和尋址的標準方法。在數(shù)據(jù)傳輸中,可以形象地理解為有兩個信封,TCP和IP就像是信封,要傳遞的信息被劃分成若干段,每一段塞入一個TCP信封,并在該信封面上記錄有分段號的信息,再將 TCP信封塞入IP大信封,發(fā)送上網(wǎng)。在接受端,一個TCP軟件包收集信封,抽出數(shù)據(jù),按發(fā)送前的順序還原,并加以校驗,若發(fā)現(xiàn)差錯,TCP將會要求重發(fā)。因此,TCP/IP在INTERNET中幾乎可以無差錯地傳送數(shù)據(jù),當上位機給智能小車發(fā)送命令時,會將控制命令封裝在數(shù)據(jù)包中,智能小車通過WiFi模塊接收數(shù)據(jù),并將數(shù)據(jù)發(fā)送給單片機,單片機通過內(nèi)部程序解析數(shù)據(jù)包。
智能小車的控制:當解析完上位機所發(fā)來的數(shù)據(jù)包后,控制器會將命令與程序內(nèi)部命令做比較,從而智能的通過控制電機驅動器控制小車運動,通過控制器可以實現(xiàn)智能小車加速、減速、左轉、右轉、自動行駛等多種功能,同時由于智能小車每個輪子之間都有細微的差別,導致當發(fā)送前進命令時小車并不走直線,故此采用了PID的控制方式,我選擇的電機驅動器內(nèi)部自帶PID參數(shù)的自整定功能,這樣就大大簡化了代碼的復雜性,四個電機的編碼器將四個輪子實時的速度反饋給驅動器,若反饋回來的速度值有偏差,驅動器將調整PWM脈沖的占空比,保證四個輪子速度的一致性,從而保證小車的直線行駛。
四、實物圖
圖1。
五、結束語
本項目創(chuàng)新的使用了當前流行的WiFi控制方式,成功的實現(xiàn)了對智能小車的控制,通過此次項目的實現(xiàn),極大的激發(fā)了個人的創(chuàng)新意識,使自己愛上了制作電子產(chǎn)品,愛上了科技創(chuàng)新,并為成為一名創(chuàng)客奠定了良好的基礎。
參 考 文 獻
[1]龔建偉,熊光明.Visual C++/Turbo C串口通信編程實踐[M].北京:電子工業(yè)出版,2007.
[2]白瑞林,吳廣霖.嵌入式TCP/IP協(xié)議棧多線程應用的實現(xiàn)[J].計算機應用研究,32(18):84.
[3]周立功.ARM微控制器基礎與實戰(zhàn)(第二板)[M].北京:北京航空航天大學出版社,2005.