樊一航,史鈺博,陳 垚,吳 凡,黃 帥
(西安石油大學(xué)電子工程學(xué)院 陜西 西安 710065)
紅外循跡智能小車主要由單片機(jī)模塊、傳感器模塊、電機(jī)驅(qū)動(dòng)模塊以及電源模塊組成。該小車擁有自主循跡功能和避障功能。本研究我們采用的主控芯片為STC89C52單片機(jī),該設(shè)計(jì)的傳感器模塊分為避障模塊與循跡模塊,循跡模塊均采用基于紅外光學(xué)反射原理的光電對(duì)管和集成放大器實(shí)現(xiàn),能夠識(shí)別黑白兩種顏色的路面,避障模塊由紅外避障模塊和超聲波測(cè)距模塊組成,能夠測(cè)量小車與前方障礙物的距離[1],并傳輸給控制模塊。本設(shè)計(jì)的動(dòng)力單元由電機(jī)驅(qū)動(dòng)模塊L293B驅(qū)動(dòng)芯片以及4個(gè)帶有減速齒輪組的直流電機(jī)構(gòu)成,供電單元采用兩塊3.7V直流電池串聯(lián),將這些單元集成在一起,實(shí)現(xiàn)了小車的自動(dòng)避障和自動(dòng)循跡的功能。
智能小車的控制單元作為小車運(yùn)行的核心部分,其作用為控制小車的運(yùn)動(dòng)。本越障小車采用的MCU是STC89C52單片機(jī),見圖1??刂茊卧O(shè)計(jì)包括單片機(jī)的啟振電路和功能選擇電路。單片機(jī)啟動(dòng)運(yùn)行時(shí),需要用按鍵進(jìn)行功能選擇,以實(shí)現(xiàn)小車的功能切換,電路原理圖見圖2。單片機(jī)晶振使用外接晶體和電容組成的并聯(lián)諧振回路。為了使控制更加精確便捷,我們選用的晶振頻率為12.000 MHz。
因?yàn)閱纹瑱C(jī)的輸出信號(hào)電壓偏低,且負(fù)載能力不足以用來(lái)驅(qū)動(dòng)直流電動(dòng)機(jī),因此采用L293B驅(qū)動(dòng)芯片完成電機(jī)的驅(qū)動(dòng)工作。L293B驅(qū)動(dòng)芯片是一款性能卓越的直流電機(jī)驅(qū)動(dòng)芯片,它可以同時(shí)驅(qū)動(dòng)4個(gè)直流電機(jī)。在4~6 V的電壓下,每個(gè)輸出口均可輸出1A左右的電流。并且L293B芯片還具有過熱自動(dòng)關(guān)斷的功能和單獨(dú)的邏輯供應(yīng)功能,以及高噪聲免疫力[2]。L293B芯片可以將單片機(jī)輸出的信號(hào)進(jìn)行功率的放大,以此來(lái)驅(qū)動(dòng)4個(gè)電機(jī)正常工作。電路圖見圖1。
圖1 驅(qū)動(dòng)部分電路圖
小車采用了4位共陽(yáng)極數(shù)碼管顯示,它有4個(gè)位選,由于本實(shí)驗(yàn)只需要顯示小車停止行駛的時(shí)間,因而值需要選通一位位選線,當(dāng)各段陰極上的電平為“0”時(shí),該段點(diǎn)亮,電平為“1”時(shí),該段熄滅。
DHT11確保產(chǎn)品具有極高的可靠性與卓越的長(zhǎng)期穩(wěn)定性。如果探測(cè)到黑線,紅外對(duì)管接收端接收到黑白線反射回來(lái)的紅外光,其輸出經(jīng)過LM393電壓比較器后立即發(fā)生高低電平的轉(zhuǎn)換,此信號(hào)經(jīng)過放大之后送到單片機(jī)進(jìn)行處理,隨后將結(jié)果發(fā)送到電機(jī)的驅(qū)動(dòng)單元,完成路徑的校正[3]。
在運(yùn)動(dòng)過程中,車體不可避免地偏離運(yùn)動(dòng)軌跡,為了使車體在車體偏離后仍可自動(dòng)調(diào)整方向,重新回到運(yùn)動(dòng)軌跡上,我們采用了3個(gè)集成的紅外對(duì)管,這樣便可以保證始終有兩個(gè)對(duì)管始終可以檢測(cè)到運(yùn)動(dòng)軌跡。電路圖見圖2。
圖2 紅外循跡模塊電路圖
傳感器對(duì)環(huán)境光線有著很強(qiáng)的適應(yīng)能力,具有一個(gè)紅外發(fā)射管和一個(gè)紅外接收管。其原理為發(fā)射管先發(fā)射出紅外線,當(dāng)紅外線的探測(cè)范圍內(nèi)發(fā)現(xiàn)障礙物時(shí),隨后由接收管接受反射回來(lái)的紅外線,經(jīng)過集成放大器電路處理后,此時(shí)信號(hào)指示燈會(huì)亮起,并且數(shù)字信號(hào)輸出端會(huì)輸出一個(gè)低電平信號(hào),MCU得到一個(gè)避障的信號(hào)。此外,該模塊可以利用電位器旋轉(zhuǎn)按鈕調(diào)節(jié)探測(cè)靈敏度。調(diào)節(jié)范圍為2~30cm,工作電壓為3.3~5 V。
超聲波模塊將采購(gòu)現(xiàn)有的HC-SR04超聲波測(cè)距模塊,該模塊可以給我們提供2~400 cm的傳輸距離和時(shí)間的計(jì)算功能,并進(jìn)行精確的計(jì)算,測(cè)量距離的精確度可以達(dá)到3mm左右。此單元包含了控制電路、超聲波發(fā)射和接收三大部分。此模塊的工作原理為:模塊的測(cè)距方法是使用TRIG端子觸發(fā),發(fā)出的高電平電信號(hào)至少10 us;TRIG自動(dòng)發(fā)送8個(gè)頻率40 kHz的方波,遇到障礙物以后,自動(dòng)檢測(cè)有無(wú)返回的信號(hào),當(dāng)檢測(cè)到有信號(hào)返回時(shí),超聲波的另一個(gè)端ECHO會(huì)有一個(gè)高電平輸出,從超過聲波發(fā)出到聲波返回至ECHO口的時(shí)間即為高電平持續(xù)的時(shí)間。其中,VCC電源接口連接進(jìn)入單片機(jī)5 V接口供5 V電源,GND接入整個(gè)電路的接地連線,并與單片機(jī)接地模塊連接,TRIG觸發(fā)控制電信號(hào)輸入,ECHO回響電信號(hào)輸出等四支線[4]。
測(cè)試距離=[高電平時(shí)間*聲速(340M/S)]/2。
本設(shè)計(jì)部分為電源模塊,使用的是LM7805穩(wěn)壓芯片(5V穩(wěn)壓)。使用此芯片搭建電路有以下幾個(gè)優(yōu)點(diǎn):實(shí)用且性能良好,完全可以支持本智能越障小車中控部分單片機(jī)輸入輸出電路的供電需求,以及電機(jī)驅(qū)動(dòng)部分包括L298B芯片的供電需求。此芯片共有輸入端IN(最大12 V),輸出端口OUT(5 V)以及接地端GND。當(dāng)然,接地端可以作為整個(gè)越障小車的控制電路的接地部分連入電源5 V電源接口。在正常工作的情況下可以輸出1.5 A左右的電流,其自身的散熱能力足以支持其輸出大于1.5 A的電流。LM7805穩(wěn)壓芯片的輸入電壓范圍為9~15 V左右,輸出端口可以保持5 V的穩(wěn)定輸出電壓,其輸出電壓波動(dòng)范圍不超過±0.2 V,最大程度上保證了單片機(jī)最小系統(tǒng)的供電穩(wěn)定情況以及達(dá)到了保護(hù)電路不過載的效果。根據(jù)電機(jī)驅(qū)動(dòng)模塊的電壓需求,我們選擇了12 V的電源作為小車動(dòng)力源;既能保證電流電壓的穩(wěn)定度,又可以達(dá)到保護(hù)整個(gè)電路的目的。
經(jīng)過小組成員的反復(fù)實(shí)驗(yàn)及討論驗(yàn)證,我們決定采用四輪驅(qū)動(dòng)汽車模型,即4個(gè)輪子都用轉(zhuǎn)速比和力矩基本相同的直流減速電機(jī)進(jìn)行驅(qū)動(dòng)。這樣,當(dāng)兩邊直流電機(jī)向相反方向進(jìn)行轉(zhuǎn)動(dòng),并且當(dāng)轉(zhuǎn)速基本相同時(shí),就可以實(shí)現(xiàn)智能越障小車的原地自轉(zhuǎn),就可以擁有更大的靈活度,由此可以輕松實(shí)現(xiàn)小車坐標(biāo)不變的90度以及180度的原地轉(zhuǎn)彎。
小車越障主要需要兩個(gè)部分配合完成,其一是由舵機(jī)和機(jī)械支架組成杠桿模塊,需要在小車遇到障礙物后將機(jī)械支架翻轉(zhuǎn)到車下方,架空小車的前端部分,此時(shí)小車仍處在行進(jìn)中,后輪的驅(qū)動(dòng)可使小車爬上障礙物,此時(shí)收起支架,完成小車的越障操作。其二,小車在前輪懸空狀態(tài)下需要后輪的驅(qū)動(dòng)力足夠大,所以需要合理配置電機(jī)驅(qū)動(dòng)部分,保證小車可以翻越障礙物[5]。
一般小型舵機(jī)接線有3根,分別為電源線、控制線和地線,電源線和地線直接和小車電機(jī)驅(qū)動(dòng)部分連接,控制線則接入單片機(jī)的控制管腳上,控制線的輸入是一個(gè)寬度可調(diào)節(jié)的周期性方波信號(hào)。當(dāng)方波脈沖寬度改變時(shí),舵機(jī)轉(zhuǎn)動(dòng)的角度也隨之變化,角度變化與脈寬成正比。因此,采用PWM脈寬調(diào)制最為合適。
舵機(jī):DS3230(30 kg),工作電壓4.8~8.4 V。
圖3 所選擇舵機(jī)實(shí)物圖
機(jī)械支架:長(zhǎng)大約800 mm,可將小車前輪抬起200 mm左右。
紅外模塊:TCRT5000。
小車底盤:亞克力智能小車底盤(長(zhǎng):260 mm,寬:140 mm)。
車輪:直徑約65 mm,重約40 g。
電機(jī):直流減速電機(jī)(減速比1:48)。
電機(jī)驅(qū)動(dòng)芯片:L293D。
軟件部分流程圖見圖4。
圖4 軟件設(shè)計(jì)流程圖
需要配合小車前端的紅外測(cè)距模塊,遇到障礙物后,在機(jī)械支架作用范圍放下支架,幫助小車進(jìn)行越障操作;支架轉(zhuǎn)動(dòng)的角度需要靠與其相連的舵機(jī)進(jìn)行控制,利用PWM調(diào)速的方式對(duì)舵機(jī)轉(zhuǎn)動(dòng)角度進(jìn)行控制,確保小車不會(huì)發(fā)生翻轉(zhuǎn)現(xiàn)象。如果紅外模塊一直檢測(cè)到障礙物,說(shuō)明未成功翻過障礙物,此時(shí)小車進(jìn)入避障程序,向右后方行駛,避開障礙物。程序流程圖見圖5。
圖5 越障程序流程圖
本文設(shè)計(jì)了基于52單片機(jī)控制的智能小車的控制電路、驅(qū)動(dòng)電路、傳感器電路以及越障方案。越障小車通過對(duì)地面黑色引導(dǎo)線的識(shí)別,進(jìn)而將其轉(zhuǎn)化為控制電路的輸入信號(hào),最后再由核心控制電路控制電機(jī)的轉(zhuǎn)停從而實(shí)現(xiàn)循跡。此外還增設(shè)了越障小車的越障功能,能夠有效防止小車不必要的損壞。整個(gè)系統(tǒng)穩(wěn)定性高,紅外反射光電傳感器布局合理、運(yùn)行穩(wěn)定。