孫恒 谷君豪 羅紅梅 劉亮 孟德強
摘 要:隨著電子技術(shù)的發(fā)展,無線遙控小車得到日益廣泛的推廣和應(yīng)用,在現(xiàn)代社會中發(fā)展了巨大的作用。文章設(shè)計了無線遙控小車的上位機系統(tǒng)與下位機系統(tǒng)。上位機系統(tǒng)用來發(fā)送控制指令,通過點擊軟件界面的虛擬按鍵,借助USB轉(zhuǎn)NRF24L01模塊發(fā)送相應(yīng)的指令,而下位機系統(tǒng)以MK60FN1M0VLQ15單片機為核心單元,負(fù)責(zé)接收控制系統(tǒng)的動作指令,實現(xiàn)小車的運動以及自動避障功能。
關(guān)鍵詞:無線遙控;NRF24L01模塊;自動避障
中圖分類號:U284.48+2? 文獻(xiàn)標(biāo)識碼:A? 文章編號:1671-7988(2020)15-25-04
Abstract: With the development of electronic technology, wireless remote control cars have been increasingly promoted and applied, and have developed a huge role in modern society. This paper designs the upper computer system and the lower computer system of the wireless remote control car. The upper computer system is used to send control commands. By clicking the virtual buttons on the software interface, the corresponding commands are sent by means of the USB-to- NRF24L01 module. The lower computer system uses the MK60FN1M0VLQ15 microcomputer as the core unit and is responsible for receiving the control system's action commands to realize the movement of the car and automatic obstacle avoidance function.
Keywords: Wireless remote control; NRF24L01 module; Automatic obstacle avoidance
CLC NO.: U284.48+2? Document Code: A? Article ID: 1671-7988(2020)15-25-04
前言
隨著無線通信技術(shù)和電子技術(shù)的發(fā)展,無線遙控小車在環(huán)境偵察、疫情監(jiān)控等方面得到日益廣泛的應(yīng)用[1]。本文主要論述基于NRF24L01模塊的無線遙控小車設(shè)計,包括上位機系統(tǒng)設(shè)計、硬件系統(tǒng)設(shè)計。上位機系統(tǒng)借助Visual Studio 2015實現(xiàn)虛擬按鍵設(shè)計,并通過USB轉(zhuǎn)NRF24L01模塊發(fā)送控制指令,硬件系統(tǒng)則負(fù)責(zé)響應(yīng)相應(yīng)的指令,從而實現(xiàn)對無線遙控小車運動的控制。
1 無線遙控小車系統(tǒng)的整體設(shè)計
本文所設(shè)計的遙控小車系統(tǒng)從整體上分為上位機系統(tǒng)和下位機系統(tǒng)。上位機從PC端發(fā)出控制信號,然后由USB轉(zhuǎn)NRF24L01模塊將控制信號發(fā)送出去,下位機系統(tǒng)以K60單片機作為下位機控制單元,根據(jù)上位機的指令控制I/O端口的輸出電平,從而控制驅(qū)動小車的電機的轉(zhuǎn)向和轉(zhuǎn)速,或者控制負(fù)責(zé)小車前進(jìn)方向控制的舵機打舵量,并可在緊急狀況下實現(xiàn)自動避障。
上位機系統(tǒng)主要由控制軟件和USB轉(zhuǎn)NRF24L01模塊組成,在控制軟件界面中設(shè)計5個按鍵,分別用于控制小車的前后行進(jìn)、左右轉(zhuǎn)向與停止,鼠標(biāo)點擊不同的按鍵后就由USB轉(zhuǎn)NRF24L01模塊發(fā)送指令數(shù)據(jù)出去。
下位機系統(tǒng)主要由電源模塊、K60單片機、NRF24L01模塊、電機驅(qū)動模塊、直流電機、舵機、超聲波測距模塊組成。電源模塊將7.2V的電池電壓分別調(diào)節(jié)成5V、6V和12V電壓,然后分別提供給K60核心板、舵機和驅(qū)動芯片作為VCC信號。K60單片機作為下位機系統(tǒng)的控制單元,根據(jù)上位機發(fā)送的指令控制驅(qū)動小車的電機和決定小車前進(jìn)方向的舵機,并能夠接收超聲波測距模塊的回傳信號,實時計算遙控小車當(dāng)前情況下與障礙物的距離,在小車與障礙物之間的距離小于本系統(tǒng)設(shè)計的緊急避障閾值時,做出相應(yīng)的響應(yīng)自動控制舵機,使小車不至于因操作人員操作不當(dāng)或注意力分散等意外情況下小車碰撞障礙物。NRF24L01模塊作為無線通信的射頻收發(fā)器件,可實現(xiàn)上位機與下位機之間的無線通信,從而實現(xiàn)對小車的遙控控制。直流電機的作用為驅(qū)動小車,在下位機通過I/O端口輸出PWM信號[2]時可以實現(xiàn)前進(jìn)、后退等各種動作。在本文的遙控小車的設(shè)計中,控制小車前進(jìn)方向的舵機安裝在遙控小車的前端,并通過舵機支架與舵機圓盤與小車的轉(zhuǎn)向拉桿進(jìn)行連接。超聲波測距模塊主要負(fù)責(zé)自動測量小車與障礙物之間的距離,單片機根據(jù)得到的距離信息決策是否需要緊急避障。
無線遙控小車的系統(tǒng)框圖如圖1所示。
2 系統(tǒng)硬件設(shè)計
2.1 單片機模塊
本文設(shè)計的無線遙控小車的硬件控制單元采用K60核心板,該核心板將MK60FN1M0VLQ15單片機的引腳使用排針及插座全部引接出來,方便使用者與其他器件連接,省去焊接引腳的精力。該核心板的尺寸為40*32.5mm,JTAG接口為雙排針標(biāo)準(zhǔn)插接件,該板子的額定工作電壓為5V±5%,板子的主頻晶振為50M,工作溫度范圍為-40℃-105℃。單片機模塊原理圖如圖2所示。
2.2 NRF24L01模塊
本無線遙控小車的設(shè)計采用NRF24L01模塊,如圖3所示。該模塊是由NORDIC公司生產(chǎn)的一種用于無線通信的芯片,它工作在2.4-2.5GHz的ISM頻段內(nèi),在芯片的內(nèi)部有位于挪威的研發(fā)公司的自己的Enhanced short Burst協(xié)議,可以方便的實現(xiàn)一點對一點或者一點對多點的通信。
2.3 電機驅(qū)動模塊
本設(shè)計的電機驅(qū)動芯片采用HIP4082芯片,通過H橋電路[3]和單片機輸出的PWM信號實現(xiàn)對電機的控制,包括電機正轉(zhuǎn)、反轉(zhuǎn)、加速和減速。電機驅(qū)動模塊的原理圖如圖4所示。
驅(qū)動電路有兩個輸入端和四個輸出端,其中,PTC1和PTC2為控制信號輸入端,AHO1、ALO1、BHO1、BLO1為信號輸出端,用來控制電機的正反轉(zhuǎn)和加減速。
2.4 電源模塊
由于電機驅(qū)動模塊需要12V電壓,單片機模塊需要5V電壓,舵機則需要6V電壓供,因此電源模塊的設(shè)計要能夠提供三種電壓,來分別滿足下位機系統(tǒng)主要模塊的供電要求。
TPS7350芯片內(nèi)部含有過熱保護(hù)電路、電流限制電路、靜態(tài)電流降低電路、電池反接和反插入保護(hù)電路,能夠使電壓穩(wěn)定在5V,使得單片機穩(wěn)定運行,因此本設(shè)計中選擇TPS7350芯片將7.2V的電池電壓降壓為5V??紤]到電機可能需要提供一定的大電流,同時在靜態(tài)的時候希望靜態(tài)消耗小,因此選擇MC34063芯片將電壓升為12V。除此以外,本設(shè)計選擇AS1015芯片將7.2V的電池電壓降壓為6V,相應(yīng)的穩(wěn)壓電路原理圖如下所示。
2.5 舵機模塊
舵機與轉(zhuǎn)向拉桿相連接,用于控制小車的前進(jìn)方向,本設(shè)計采用了輝盛公司生產(chǎn)的SG-5010型號的舵機,如圖8所示。
本無線遙控小車所選舵機有三根信號線,分別是VCC電源線,接6V電壓,GND線,接地線,信號線,接單片機的PTD2端口。與驅(qū)動模塊的控制方式類似,舵機也采用PWM信號控制。
2.6 超聲波測距模塊
由于操作人員存在操作失誤或注意力分散等情況,小車在運行過程中存在碰撞風(fēng)險。超聲波測距模塊可實時發(fā)出超聲波,測量無線遙控小車與障礙物的距離,在小車與障礙物之間的距離小于碰撞閾值時,小車能夠自動剎車,實現(xiàn)自動避障。在本設(shè)計中,采用HC-SR04超聲波避障模塊,如圖9所示。
通過MK60FN1M0VLQ15單片機給予超聲波測距模塊的Trig端口10us高電平信號,作為測距觸發(fā)信號,該模塊在接收觸發(fā)信號后,自動發(fā)射8個40KHz方波,并自動檢測是否有信號返回。在信號返回時,通過超聲波測距模塊的Echo端口輸出高電平,根據(jù)公式(1)即可計算此時無線遙控小車與障礙物的距離。
式中:l為無線遙控小車與障礙物的距離,單位為m;s為Echo端口高電平持續(xù)的時間,單位為s。
在本設(shè)計中,碰撞閾值設(shè)置為0.2m。
3 系統(tǒng)軟件設(shè)計
3.1 控制軟件界面及控制邏輯
控制軟件使用Visual Studio 2015開發(fā),在Visual Studio 2015建立基于對話框的項目,然后放置5個按鍵和其他控件,點擊軟件界面的按鍵則可發(fā)送相應(yīng)的控制指令,如圖10所示。
圖11與圖12所示的流程圖展示了控制軟件的控制邏輯,打開軟件后,判斷是否有按鍵被點擊,如果沒有按鍵被按下則繼續(xù)檢查有無按鍵按下。如果有按鍵被按下,將按鍵的ID放到NRF24L01模塊的發(fā)送緩沖區(qū)中,通過該模塊將控制指令發(fā)送到下位機。
4 結(jié)論
本文設(shè)計了一種新型的無線遙控小車,該系統(tǒng)借助集成開發(fā)環(huán)境Visual Studio 2015設(shè)計了控制軟件,通過點擊控制軟件界面的按鍵,可向下位機發(fā)送控制指令,下位機可在20ms內(nèi)對指令進(jìn)行響應(yīng),控制無線遙控小車的前進(jìn)、后退以及轉(zhuǎn)向,還可在緊急情況下實現(xiàn)自動避障。經(jīng)過多次實驗,本文設(shè)計的無線遙控小車工作穩(wěn)定可靠,為新型無線遙控小車的設(shè)計與實現(xiàn)提供了新的可借鑒方案。
參考文獻(xiàn)
[1] 葉鄭凱,朱建鴻,李琳,王幼琴.基于單片機的無線遙控智能小車的設(shè)計與實現(xiàn)[J].計算機與現(xiàn)代化,2012(10):65-67.
[2] 陳煒煒,詹躍東.基于單片機的直流電機PWM調(diào)速系統(tǒng)[J].化工自動化及儀表,2019,46(03):218-222.
[3] 戴貽康,焦運良,范晶.H橋式電路驅(qū)動無刷直流電機的設(shè)計[J].信息技術(shù)與網(wǎng)絡(luò)安全,2019,38(08):58-63.