安徽財(cái)經(jīng)大學(xué)管理科學(xué)與工程學(xué)院 張勝寶
基于增強(qiáng)型STC12C5A60S2循跡小車的設(shè)計(jì)
安徽財(cái)經(jīng)大學(xué)管理科學(xué)與工程學(xué)院 張勝寶
文章旨在基于增強(qiáng)型STC12C5A60S2單片機(jī)設(shè)計(jì)一款速度快、行駛穩(wěn)定、循跡精度高的智能小車,對(duì)于路面狀況信息的收集,我們主要利用光電對(duì)管的技術(shù)來(lái)實(shí)現(xiàn);我們利用光電開(kāi)關(guān)設(shè)置來(lái)采集道路障礙物信息;然后,將收集到的不能被單片機(jī)識(shí)別的模擬信息量轉(zhuǎn)化為能夠被單片機(jī)識(shí)別的數(shù)字信號(hào)量;其次,我們使用STC12C5A60S2單片機(jī)為主控芯片,根據(jù)收集到的路面狀況信息,對(duì)智能小車的各個(gè)模塊進(jìn)行控制,做出適當(dāng)?shù)膽?yīng)對(duì)反應(yīng),調(diào)整直流電動(dòng)機(jī)的脈寬,控制智能小車的前進(jìn),后退和停止。為了解決由于因單一光電管帶來(lái)的智能小車轉(zhuǎn)彎角度判斷不精確的問(wèn)題,我們特意在小車底盤(pán)部分安裝多個(gè)不同角度的光點(diǎn)對(duì)管,根據(jù)收集到的彎道角度信息并通過(guò)調(diào)整PWM波形的占空比來(lái)控制舵機(jī),使小車精準(zhǔn)地沿既定路線穩(wěn)定行駛。
智能循跡小車;STC12C5A60S2;PWM控制;單片機(jī)
隨著科學(xué)技術(shù)的不斷提升,人類生活水平不斷提高,進(jìn)而勞動(dòng)力成本不斷加大,其次,由于某些特殊行業(yè)存在較大的危險(xiǎn)性,例如消防行業(yè),刑偵行業(yè)等,在這些行業(yè)中,人工作業(yè)的危險(xiǎn)性系數(shù)過(guò)大,因此催生了智能化機(jī)器設(shè)備,自動(dòng)循跡智能小車就屬于這一類產(chǎn)品。其適合在一些特殊環(huán)境中工作,因其成本低廉,目前已在許多工業(yè)場(chǎng)合獲得廣泛應(yīng)用[1-2]。智能產(chǎn)品的應(yīng)用已經(jīng)深入到我們生產(chǎn)生活的大部分領(lǐng)域。相對(duì)于傳統(tǒng)汽車而言,智能小車是一個(gè)擁有環(huán)境感知、規(guī)劃決策、自動(dòng)行駛等功能的智能化產(chǎn)品,具有較高的安全性與自動(dòng)化性能。它集中地運(yùn)用了計(jì)算機(jī)、傳感、信息、通訊及自動(dòng)控制等技術(shù),是典型的高新技術(shù)綜合體[3-4]?;谑袌?chǎng)調(diào)查研究,對(duì)于智能車的開(kāi)發(fā)和生產(chǎn)對(duì)社會(huì)發(fā)展具有重要意義,本文所論述的智能車的設(shè)計(jì)將對(duì)工廠自動(dòng)運(yùn)輸車,景點(diǎn)觀光車,惡劣地形偵察車的研發(fā)提供思路與方法。
2.1 核心控制板
說(shuō)到整個(gè)智能循跡小車的核心,那就非單片機(jī)莫屬。單片機(jī)是整個(gè)智能車系統(tǒng)的大腦。由于本文中論述設(shè)計(jì)的智能車在功能要求中不僅需要使用到兩路的PWM脈沖調(diào)制、較快的數(shù)據(jù)處理能力,還需要較大的Flash存儲(chǔ)空間,所以我們決定使用采用了高密度非易失性存儲(chǔ)器技術(shù)制造,具有高速、低功耗、超強(qiáng)抗干擾優(yōu)點(diǎn)的新一代8051單片機(jī)——STC12C5A60S2單片機(jī)。STC12C5A60S2單片機(jī),指令代碼完全兼容傳統(tǒng)8051,但速度比傳統(tǒng)51系列單片機(jī)快8至12倍。另外,對(duì)于智能車控制而言,STC12C5A60S2單片機(jī)具有得天獨(dú)厚的優(yōu)勢(shì),其具有控制簡(jiǎn)單,方便,易更改等優(yōu)點(diǎn)。此外,該款單片機(jī)的嵌入式可編程性也使得STC12C5A60S2為眾多嵌入式控制應(yīng)用系統(tǒng)提高靈活超有效的解決方案[5]。
2.2 電源管理模塊
考慮到,小車在運(yùn)行過(guò)程中,大部分模塊均需要供電,為了保障整個(gè)小車的電源充足持久且不給小車增加較多的載重負(fù)擔(dān)。小車使用較大型號(hào)電池——6V蓄電池為整個(gè)智能車系統(tǒng)供電。另外,考慮到主控芯片的功耗較小且不適宜較大電壓供電,所以我們采取3.3V電源單獨(dú)為其供電;其次,小車舵機(jī)供電范圍我們控制為在5.5V左右,信號(hào)采集模塊及電機(jī)驅(qū)動(dòng)模塊我們采用5V供電。為了更穩(wěn)定地為智能車各個(gè)模塊供電,我們?cè)O(shè)計(jì)了基于LM1117-3V3、LM2941T和TPS76850的穩(wěn)壓電路。該電路設(shè)計(jì)簡(jiǎn)單合理,使用方便,能夠較好地服務(wù)于智能車在運(yùn)行時(shí)的電源供給。
2.3 信號(hào)采集模塊
本設(shè)計(jì)是基于智能循跡小車,所謂循跡,是按照一定的軌跡運(yùn)動(dòng),本設(shè)計(jì)中是在白色的跑道中設(shè)計(jì)一條黑線,旨在讓小車沿著黑線行駛。
由于不同顏色的物體對(duì)紅外線的吸收程度不一樣。根據(jù)這一特性,讓固定在智能小車上的紅外對(duì)管不停地向規(guī)定跑道發(fā)射紅外線,由于白色反射各種顏色的光,所以當(dāng)紅光照到跑道的白色區(qū)域時(shí),紅外對(duì)管發(fā)出的光被反射,反射回來(lái)的光線被安裝在智能車上的紅外線接收器感應(yīng)并接受;由于黑色吸收各種顏色的光,所以當(dāng)紅光照到跑道上的黑色區(qū)域時(shí),紅光被黑色跑道完全吸收,不能反射紅光,所以,紅外線接收器檢測(cè)不到紅光。因此,根據(jù)紅外線接收器是否接收到紅光即可判斷小車是否在按照既定軌道行駛,從而據(jù)此來(lái)調(diào)整小車是否需要轉(zhuǎn)彎,變速。
2.4 電機(jī)驅(qū)動(dòng)模塊
智能小車的設(shè)計(jì)離不開(kāi)電機(jī),本設(shè)計(jì)中需要使用舵機(jī)和伺服電機(jī),為了使智能車擁有更強(qiáng)大的動(dòng)力,我們采用雙機(jī)驅(qū)動(dòng),即利用兩個(gè)伺服電機(jī)來(lái)為智能車提供動(dòng)力,其中伺服電機(jī)采用PWM信號(hào)與電機(jī)驅(qū)動(dòng)電路相結(jié)合的方式驅(qū)動(dòng)。在驅(qū)動(dòng)電路的設(shè)計(jì)上,若MOS管搭建驅(qū)動(dòng)電路的方式使得電路過(guò)于復(fù)雜,可靠性不高;傳統(tǒng)的集成半橋驅(qū)動(dòng)芯片搭建驅(qū)動(dòng)電路,則造成驅(qū)動(dòng)電路使用驅(qū)動(dòng)芯片過(guò)多,設(shè)計(jì)復(fù)雜低效。綜上考慮,ST公司的專用驅(qū)動(dòng)芯片L298N便成為類本設(shè)計(jì)電機(jī)驅(qū)動(dòng)芯片的首選,L298N芯片能承受高電壓大電流,響應(yīng)頻率高,兩個(gè)直流電機(jī)僅需要一片L298N就可以進(jìn)行控制,從而減少了驅(qū)動(dòng)電路中的芯片數(shù)量,使得電路更加簡(jiǎn)單高效。此外,使用該芯片搭建電機(jī)驅(qū)動(dòng),驅(qū)動(dòng)能力大,穩(wěn)定性好,性能優(yōu)良,可以極大程度地滿足各種復(fù)雜電路需要。
本設(shè)計(jì)所使用的軟件平臺(tái)包括單片機(jī)模擬仿真軟件proteus和單片機(jī)集成開(kāi)發(fā)環(huán)境keil5,其中單片機(jī)模擬仿真軟件proteus是一款專業(yè)的單片機(jī)仿真軟件,集成了電路仿真,PCB設(shè)計(jì)和虛擬模型仿真三大軟件特點(diǎn),軟件能夠從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,該軟件在我們對(duì)部分元器件的使用進(jìn)行測(cè)試時(shí)起到了很大的作用,此外,我們使用keil5作為集成開(kāi)發(fā)的編程環(huán)境,該軟件使用簡(jiǎn)單,利用keil5生成的代碼緊湊,效率高,非常適合于智能小車內(nèi)部程序的編寫(xiě)。
在編程語(yǔ)言的選擇上,我們利用可編程性高級(jí)語(yǔ)言C語(yǔ)言作為智能小車的程序語(yǔ)言,與其他匯編語(yǔ)言相比,C語(yǔ)言的學(xué)習(xí)和使用更加簡(jiǎn)單,其代碼效率較高,并且C語(yǔ)言自身提供了強(qiáng)大的庫(kù)函數(shù),使得編程變得簡(jiǎn)單,易于理解。
在整個(gè)智能車的設(shè)計(jì)過(guò)程中,最棘手的問(wèn)題要數(shù)如何控制小車的速度,本設(shè)計(jì)采用PID算法解決此問(wèn)題。
根據(jù)安裝在小車車頭的紅外線接收器探測(cè)獲取小車的位置信息,利用PD算法來(lái)控制小車的位置偏差;對(duì)小車的速度則采取PID閉環(huán)算法,根據(jù)小車后輪(驅(qū)動(dòng)輪)來(lái)獲得小車的行駛速度,當(dāng)小車處于直線行駛時(shí),主控芯片應(yīng)當(dāng)調(diào)節(jié)占空比來(lái)給定小車最大速度,當(dāng)小車處于轉(zhuǎn)彎狀態(tài)時(shí),應(yīng)減小速度量,使得小車能夠順利通過(guò)彎道,通過(guò)彎道后,適當(dāng)?shù)闹饾u增加速度量,加快小車的行駛速度。
PID算法從根本上實(shí)現(xiàn)了智能小車的智能變速功能,從而使得智能小車更加的接近智能化,自動(dòng)化。
本文所設(shè)計(jì)的基于增強(qiáng)型STC12C5A60S2單片機(jī)的智能小車具有核心控制板、電源模塊、電機(jī)驅(qū)動(dòng)模塊、信號(hào)量采集模塊等幾大模塊,在各個(gè)模塊的設(shè)計(jì)上均本著經(jīng)濟(jì)與實(shí)用的原則,做到合理科學(xué)的設(shè)計(jì),利用電源模塊分別為主控芯片、舵機(jī)、伺服電機(jī)供電;利用信號(hào)采集模塊對(duì)跑道信息進(jìn)行收集采樣并將采集到的模擬信號(hào)裝換成數(shù)字信號(hào);利用電機(jī)模塊為智能小車提供動(dòng)力支持;利用主控芯片對(duì)收集到的跑道信息進(jìn)行分析處理并對(duì)此控制小車作出應(yīng)對(duì)反應(yīng)。
其中兩個(gè)關(guān)鍵技術(shù)便是PD算法和PID算法:根據(jù)PD算法控制小車在跑道上的左右位置,使得小車能夠沿著黑線行駛;使用PID算法控制小車在不同道路狀況下的行駛速度,使得小車能夠合理地控制速度,平穩(wěn)快速地行駛。
隨著科學(xué)技術(shù)的不斷進(jìn)步,智能車的升級(jí)改良也必將不斷地延續(xù),并且逐步制造出更多的更加符合人們使用要求的智能車。
[1]王晶.智能小車運(yùn)動(dòng)控制技術(shù)的研究[D].武漢:武漢理工大學(xué),2009.
[2]尹杰,楊宗帥,聶海,等.基于紅外反射式智能循跡遙控小車系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2013(23):178-184.
[3]李波,楊衛(wèi),張文棟,等.一種智能小車自主尋/循跡系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2012(10):2798-2801.
[4]陳鳳東,洪炳熔.基于特征地圖的移動(dòng)機(jī)器人全局定位與自主泊位方法[J].電子學(xué)報(bào),2010,38(6):1256-1261.
[5]黃春平,萬(wàn)其明,葉林.基于51單片機(jī)的智能循跡小車的設(shè)計(jì)[J].儀表技術(shù),2011(2):54-56.
[6]左敏,曾廣平,涂序彥.無(wú)人變電站智能機(jī)器人的視覺(jué)導(dǎo)航研究[J].電子學(xué)報(bào),2011(10):2464-2468.
本文系“安徽財(cái)經(jīng)大學(xué)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃資助(項(xiàng)目編號(hào):201610378582)”。