曹沖振 梁世友 王鳳芹 明超 李赫
摘要:在高科技快速發(fā)展的新時代,移動機(jī)器人廣泛應(yīng)用于工業(yè)、農(nóng)業(yè)、醫(yī)療、服務(wù)等行業(yè),智能小車是其研究領(lǐng)域的一個重要分支。本設(shè)計以STM32F103RCT6微控制器作為智能小車控制系統(tǒng)的核心處理器,功能設(shè)計模塊化,包括電源模塊、驅(qū)動模塊、避障模塊、無線通信模塊、速度檢測模塊、定位模塊等,實現(xiàn)小車的自主運(yùn)動、避障、定位、通信以及在復(fù)雜環(huán)境下的人工遙控等功能。
關(guān)鍵詞: 智能小車; STM32; 無線通信; 遙控
【Abstract】 In the new era of rapid development of high technology, mobile robots are widely used in industries such as industry, agriculture, medical care, and services. Smart cars are an important branch of the research field. This design uses STM32F103RCT6 microcontroller as the core processor of the intelligent car control system. Its functional design is modular, including such modules as power module, drive module, obstacle avoidance module, wireless communication module, speed detection module, positioning module, etc., which could realize obstacle avoidance, positioning, communication, and manual remote control in complex environments.
【Key words】 ?intelligent car; STM32; wireless communication; remote control
0 引 言
隨著科學(xué)技術(shù)的飛速發(fā)展,智能化早已成為人們關(guān)注的焦點,智能車在現(xiàn)代社會的各個領(lǐng)域已得到廣泛應(yīng)用。 智能小車是人工智能、自動控制、計算機(jī)等學(xué)科的交叉融合的產(chǎn)物,并在無人駕駛汽車和智能掃地機(jī)器人中起著重要作用。
控制系統(tǒng)是智能小車的關(guān)鍵部分,可以根據(jù)預(yù)定的軌跡在復(fù)雜的環(huán)境中行駛,實現(xiàn)小車的速度和位置控制,完成指定的任務(wù),并在智能小車系統(tǒng)中占有舉足輕重的位置。在實際應(yīng)用和文獻(xiàn)調(diào)研中,發(fā)現(xiàn)智能小車在運(yùn)動過程中會出現(xiàn)避障不靈敏現(xiàn)象,在復(fù)雜環(huán)境下則容易出現(xiàn)運(yùn)動紊亂、通訊延遲,以及控制系統(tǒng)的集成度不高的問題。因此,本文設(shè)計了一種以STM32微控制器為核心的四輪智能小車,其工作頻率可達(dá)72 MHz,可以實現(xiàn)復(fù)雜的計算,豐富的增強(qiáng)型I/O端口增強(qiáng)了系統(tǒng)的擴(kuò)展能力[1];通過擴(kuò)展的GPS模塊,可以對小車進(jìn)行實時定位,并通過無線通信模塊將信息傳輸給上位機(jī),以進(jìn)行實時監(jiān)控,當(dāng)小車進(jìn)入復(fù)雜環(huán)境無法工作時,可轉(zhuǎn)換為人工操作模式,從而達(dá)到預(yù)期的要求。
1 系統(tǒng)總體設(shè)計方案
該系統(tǒng)的總體設(shè)計框圖如圖1所示。
由圖1可知,該系統(tǒng)由STM32控制器模塊、電源模塊、無線通信模塊、避障模塊、定位模塊、驅(qū)動模塊、速度檢測模塊和上位機(jī)部分組成。小車采用后輪差速驅(qū)動轉(zhuǎn)向方式,電機(jī)選用永磁直流電機(jī)。電源模塊采用LM7805和LM1117芯片將+12 V電壓轉(zhuǎn)換為+5 V和+3.3 V,以為車載系統(tǒng)供電。無線通信模塊選擇PTR2000作為核心芯片,實現(xiàn)小車與上位機(jī)之間的通信。避障模塊采用紅外避障傳感器。使用GPS定位方法對小車進(jìn)行實時定位。RPR-220光電編碼器用于車速檢測。選擇L298N作為電機(jī)驅(qū)動芯片,采用增量式PID控制算法控制單片機(jī)輸出的PWM脈沖,用來控制車速,再由測速模塊檢測車速,反饋給單片機(jī),形成一個閉環(huán)控制系統(tǒng)。
2 系統(tǒng)硬件電路設(shè)計
2.1 主控制器電路設(shè)計
本控制系統(tǒng)選用的STM32F103RCT6單片機(jī)的最小系統(tǒng)圖,如圖2所示。時鐘電路的引腳為OSCIN和OSCOUT,外部8 MHz時鐘使系統(tǒng)更穩(wěn)定。NRST為復(fù)位引腳。PB6,PB7,PB8,PB9是PWM信號輸出引腳。PA2、PA3與無線通信模塊的DO、DI引腳分別相連,作為串行通信的通道,PA4、PA5與無線通信模塊的CS、TXEN引腳相連。PA7、PA8、PB0、PB1引腳與4個紅外避障傳感器相連。PB10、PB11與GPS定位模塊相連。
2.2 電源模塊電路設(shè)計
電源模塊主要為控制系統(tǒng)提供工作電壓。主控制器電源電壓為+3.3 V,而電機(jī)驅(qū)動芯片L298N需要+5 V,電機(jī)驅(qū)動電壓為+12 V,因此,選擇+12 V作為系統(tǒng)的主電源,而+5 V和+3.3 V電壓可以經(jīng)電壓轉(zhuǎn)換芯片轉(zhuǎn)換得到。本文將10個1.2 V4 500 mAh鋰電池串聯(lián)用作系統(tǒng)的電源,由此可得+12 V的電源電壓。從+12 V轉(zhuǎn)換到+5 V,選用轉(zhuǎn)換芯片LM7805,其電壓轉(zhuǎn)換電路如圖3所示。
通過圖3給出的電源電路,主控制器工作電壓+3.3 V經(jīng)電壓轉(zhuǎn)換芯片LM1117轉(zhuǎn)換得到+5 V電壓,并且在LM1117的輸入和輸出兩側(cè)添加了電容,減少了電源擾動的影響,增加了系統(tǒng)的穩(wěn)定性[2]。其電壓轉(zhuǎn)換電路如圖4所示。
2.3 驅(qū)動模塊電路設(shè)計
選擇L298N作為電機(jī)驅(qū)動芯片,這是一個具有大電流高電壓的全橋驅(qū)動芯片,一個L298N可以分別控制2臺直流電機(jī),且有控制使能端。該芯片用作電機(jī)驅(qū)動器,操作簡便,穩(wěn)定性好,可以實現(xiàn)小車速度的精確控制。驅(qū)動電路如圖5所示。
在圖5中,SA和SB引腳經(jīng)1 Ω電阻接地,作為電流反饋以實現(xiàn)系統(tǒng)的電流閉環(huán)控制。左右輪驅(qū)動電機(jī)的兩端分別連接到L298N的Out1~Out4四個輸出管腳。二極管IN5819在電路中是不可或缺的,因為電機(jī)是感性負(fù)載,在停機(jī)或換向時,會產(chǎn)生很高的反向感生電動勢,如果不加釋放就會破壞芯片內(nèi)部電路[3]。當(dāng)添加二極管后,此電動勢使二極管導(dǎo)通,釋放了電能,對電路起到了保護(hù)作用。
2.4 避障模塊設(shè)計
本設(shè)計采用紅外避障傳感器,具有環(huán)境適應(yīng)性好、抗干擾性強(qiáng)、功耗低和識別能力強(qiáng)等優(yōu)點。該紅外避障傳感器有3個引腳,分別是VCC、GND、OUT,如圖6所示。其中,傳感器的輸出引腳是OUT引腳。使用時要注意的是電源正負(fù)極不能接反,否則會燒壞芯片。
該傳感器模塊對光有很強(qiáng)的適應(yīng)性,配有一對紅外發(fā)射與接收管,發(fā)射管發(fā)射一定頻率的紅外線,遇到障礙物(反射面)反射回來被接收管接收,經(jīng)比較器電路處理后,綠色指示燈將點亮,輸出數(shù)字信號(低電平信號)[4]。該傳感器的檢測范圍能夠通過電位器調(diào)整(2~30 cm),具有干擾小、易裝配等特點,并在機(jī)器人避障、流水線計數(shù)、黑白線循跡等眾多領(lǐng)域具有很好的應(yīng)用前景,其內(nèi)部電路圖如圖7所示。
2.5 無線通信模塊設(shè)計
無線通信模塊的作用是實現(xiàn)小車與上位機(jī)之間的通信。在本設(shè)計中,選用射頻模塊PTR2000作為無線通信端口,該端口與STM32控制器的USART收發(fā)器端口連接,上位機(jī)通過MAX232電平轉(zhuǎn)換芯片與PTR2000連接,從而完成了智能小車與上位機(jī)之間的無線通信。該射頻模塊具有接收和發(fā)射數(shù)據(jù)的功能,具有接收靈敏度高、工作速率快、穩(wěn)定性高等特點。其接口電路如圖8所示。
其中,PWR端口通過電阻與電源連接,直接設(shè)定為正常工作狀態(tài),DO、DI分別與主控制器USART2的PA2和PA3引腳相連,作為串行通信的通道;CS、TXEN分別與PA4、PA5引腳相連。PTR2000是一個集成收發(fā)器芯片,可通過+3.3 V供電,與主控器無縫連接。
3 系統(tǒng)軟件設(shè)計
本系統(tǒng)編程采用模塊化編程思想。首先,編寫每個模塊應(yīng)用程序,然后在主程序中調(diào)用各模塊的程序。模塊化編寫的程序不僅便于系統(tǒng)調(diào)試,而且有利于在項目中進(jìn)行移植,并縮短了項目開發(fā)周期。
3.1 主程序設(shè)計
上電后,進(jìn)行系統(tǒng)初始化,包括系統(tǒng)時鐘、中斷分組、串口、系統(tǒng)延時函數(shù)、定時器和相應(yīng)的函數(shù)進(jìn)行初始化。智能小車設(shè)置有自動、遙控兩種模式,默認(rèn)的模式為自動模式。系統(tǒng)初始化完成后,進(jìn)入命令接收等待狀態(tài),又當(dāng)接收到模式切換命令時,小車切換到相應(yīng)的模式啟動相應(yīng)程序,使小車執(zhí)行相應(yīng)控制指令。系統(tǒng)程序流程圖如圖9所示。
3.2 驅(qū)動模塊程序設(shè)計
該模塊通過控制PWM脈沖來調(diào)節(jié)電機(jī)運(yùn)轉(zhuǎn)速率。方法為運(yùn)用算法讓主控器輸出調(diào)節(jié)車速的PWM信號,繼而把這個經(jīng)過處理的信號傳遞給L298N,使其控制電機(jī)完成啟動/停止、調(diào)速、正轉(zhuǎn)和反轉(zhuǎn)等功能。將電機(jī)兩端的輸入信號設(shè)置為一側(cè)為高電平,一側(cè)為低電平,使電動機(jī)能夠正常運(yùn)行。具體運(yùn)轉(zhuǎn)情況見表1。
3.3 無線通信程序設(shè)計
在本設(shè)計中,無線模塊PTR2000連接到單片機(jī)的USART2,首先配置接收數(shù)據(jù)輸入(RX)和發(fā)送數(shù)據(jù)輸出(TX)的引腳;串口數(shù)據(jù)傳輸頻率為1 Hz,通過定時器定時1 s進(jìn)行數(shù)據(jù)發(fā)送,當(dāng)定時器時間達(dá)到1 s時,執(zhí)行定時器溢出中斷程序并執(zhí)行數(shù)據(jù)傳輸。通過串口接收中斷完成串行端口數(shù)據(jù)接收。當(dāng)串口USART2接收數(shù)據(jù)時,串口USART2接收中斷。接收到數(shù)據(jù)后,程序退出串口USART2接收中斷,并清除定時器溢出中斷標(biāo)志。串口接收的數(shù)據(jù)保存在變量中[5]。
3.4 定位模塊程序設(shè)計
GPS模塊上電約1 min后,定位完成,此時,定位信息將通過串口輸出。只要將串口輸出引腳與單片機(jī)相應(yīng)的串口引腳連接,就可以通過單片機(jī)讀取GPS模塊的定位信息。GPS模塊連接STM32單片機(jī)的USART3串行端口,當(dāng)串口接收到GPS模塊信息時,程序進(jìn)入USART3串口接收中斷,接收到串口數(shù)據(jù)后,程序自動退出串口接收中斷,接收到的GPS數(shù)據(jù)存儲在變量中,方便使用。
4 結(jié)束語
本文設(shè)計的可遙控智能小車是以STM32單片機(jī)為控制核心,實現(xiàn)小車的自主運(yùn)動、避障、定位、通信以及在復(fù)雜環(huán)境下的人工遙控等功能,給出了具體的電路設(shè)計。智能小車通過無線通信模塊與上位機(jī)連接,上位機(jī)可以實時觀測小車的運(yùn)動情況,在復(fù)雜環(huán)境下小車可能出現(xiàn)停滯、運(yùn)動紊亂的情況,可改為人工遙控的模式,對智能小車發(fā)出控制指令,控制系統(tǒng)的設(shè)計功能基本實現(xiàn)。
參考文獻(xiàn)
[1] 周官喜. 基于STM32低功耗云臺控制系統(tǒng)設(shè)計[D]. 青島:青島理工大學(xué),2012.
[2]施小宇. 基于STM32的智能快遞系統(tǒng)研究與設(shè)計[J]. 電子技術(shù)與軟件工程,2014(1):132.
[3]夏啟. 混凝土水化熱監(jiān)控系統(tǒng)的開發(fā)與實現(xiàn)[D]. 天津:天津科技大學(xué),2017.
[4]王攀攀. 部分未知環(huán)境中移動機(jī)器人動態(tài)避障研究[D]. 哈爾濱:哈爾濱工業(yè)大學(xué),2012.
[5] 范政,何繼靖,朱永業(yè),等. 基于STM32的無線智能小車控制系統(tǒng)設(shè)計[J]. 輕工科技,2018,34(6):83.