阮俊輝
浙江師范大學(xué) 工學(xué)院 浙江 金華 321000
智能化發(fā)展十分迅速。一方面隨著機(jī)器人日益集成化和操作的日益簡(jiǎn)單化,因此會(huì)朝著技術(shù)和裝備成套化的方向穩(wěn)步地發(fā)展;另一方面,機(jī)器人仍有朝著非制造業(yè)應(yīng)用以及微小型方向發(fā)展的趨勢(shì)。智能避障小車是機(jī)器人的一個(gè)特例,是一種由電子元件組裝而成的微型機(jī)器人,可以手動(dòng)編程來實(shí)現(xiàn)特定的項(xiàng)目。研究并設(shè)計(jì)智能小車,能夠?yàn)樵O(shè)計(jì)新的機(jī)器人提供經(jīng)驗(yàn),具有廣泛的遷移價(jià)值,可以大大提高人民的生活水平和生活質(zhì)量,也是人類未來發(fā)展中不可或缺的組成部分。
其中,UllahSaleem[1]以Arduino為主控芯片開發(fā)的汽車控制系統(tǒng),利用手的運(yùn)動(dòng)和位置,將它轉(zhuǎn)換成不同的角度值發(fā)送給主控芯片,并做出對(duì)應(yīng)的指令。Ujjwal Gulati[2]在介紹了一種語(yǔ)音控制汽車,具有智能障礙檢測(cè)能力,方便身體殘疾患者。徐友春[3]等人提出了一種智能車輛轉(zhuǎn)向控制模型。該模型采用路標(biāo)的方向偏差和距離偏差作為輸入?yún)?shù),輸出前輪轉(zhuǎn)向角;采用了狀態(tài)控制法。
上訴研究者對(duì)智能小車控制技術(shù)已經(jīng)有所研究,然而,對(duì)人機(jī)交互性及可操作性卻處于滯后的狀態(tài)。本文提出自動(dòng)避障/手動(dòng)遙控雙模式的智能小車設(shè)計(jì),提高了小車的交互性及智能化水平。
設(shè)計(jì)一款具有自動(dòng)避障功能的智能小車,小車必須可實(shí)現(xiàn)紅外模式和自動(dòng)避障模式的切換。自動(dòng)避障模式下,小車低于安全距離自動(dòng)避障,在紅外遙控模式下,可以遙控指揮小車運(yùn)行。系統(tǒng)具體設(shè)計(jì)要求如下[4-5]:①利用穩(wěn)壓芯片為單片機(jī)電路系統(tǒng)提供穩(wěn)定電壓;②利用電機(jī)驅(qū)動(dòng)模塊實(shí)現(xiàn)直流減速電機(jī)的啟、停、正、反控制;③通過直流減速電機(jī),實(shí)現(xiàn)小車前后左右的運(yùn)行;④利用超聲波模塊測(cè)量避障距離,并且實(shí)現(xiàn)小車避障;⑤利用紅外遙控器和紅外接收頭現(xiàn)實(shí)小車遙控控制;⑥通過編程實(shí)現(xiàn)系統(tǒng)程序的模塊化設(shè)計(jì)。
功能描述,該系統(tǒng)中小車整體車身采用的設(shè)計(jì)是前兩輪分別驅(qū)動(dòng),后萬(wàn)向輪轉(zhuǎn)向的三輪車型,電路采用STC89C52微控制器作為系統(tǒng)的主控芯片,L293D為電機(jī)驅(qū)動(dòng)芯片,通過pwm提供使能信號(hào)可同時(shí)控制小車的前兩輪的轉(zhuǎn)速,提供小車的運(yùn)行方式。
系統(tǒng)采用STC89C52單片機(jī)作為核心控制單元,主要包括了紅外控制模塊,避障模塊,按鍵輸入,7805穩(wěn)壓電路,l298電機(jī)驅(qū)動(dòng)模塊,聲光報(bào)警模塊,1602液晶顯示模塊等。避障小車可通過按鍵自由切換小車的運(yùn)行模式,在紅外控制模塊下(即手動(dòng)控制模式),用HS0038B集成電路解碼遙控器的按鍵碼,分別可控制小車的前后左右4個(gè)方向的運(yùn)轉(zhuǎn)[6]。按鍵切換模式后可進(jìn)入自動(dòng)避障模式(即自動(dòng)駕駛模式),在該模式下,可通過LCD1602直接顯示小車的瞬時(shí)速度,避障距離等參數(shù)。所有操作步驟都可以通過LCD1602液晶顯示相應(yīng)的步驟過程。
利用BUZZER的高低電平驅(qū)動(dòng)蜂鳴器,蜂鳴器產(chǎn)生的轟鳴聲較輕,因此設(shè)計(jì)重新加上了8550三極管,通過三極管放大信號(hào),增強(qiáng)的聲音的穿透力,符合聲光報(bào)警的要求。如圖2所示。
圖2 聲光警報(bào)模塊電路
紅外控制接收電路設(shè)計(jì)采的是HS0038B集成電路,紅外遙控是包含紅外遙控器和紅外接收頭兩部分[7]。本設(shè)計(jì)中不同按鍵對(duì)應(yīng)不同編碼紅外信號(hào)波,信號(hào)“搭載”8KHZ的載波,與主控連接的HS0038B紅外接收頭解碼處理遙控器發(fā)出的紅外信號(hào)波并把數(shù)據(jù)傳送到單片機(jī),主控識(shí)別分析信號(hào)并做出相對(duì)應(yīng)的指令編寫。搭建的電路如圖3所示。
圖3 紅外控制接收電路
本次設(shè)計(jì)采用的是獨(dú)立式按鍵,結(jié)合小車的功能只需要3個(gè)獨(dú)立按鍵接口簡(jiǎn)單,編程容易。按鍵電路硬件接線圖如圖4所示,按鍵功能如表1所示。
圖4 按鍵電路
表1 按鍵功能介紹表
電機(jī)驅(qū)動(dòng)電路采的是以L293D芯片為核心搭建的電路,電路如圖5所示。
圖5 L293D電機(jī)驅(qū)動(dòng)電路
M1和M2對(duì)應(yīng)的是小車的兩個(gè)直流減速電機(jī),可通過L293D芯片驅(qū)動(dòng)。其中該芯片可以通過脈寬調(diào)整(PWM)驅(qū)動(dòng)使能信號(hào),且L293D芯片可以同時(shí)控制一對(duì)電機(jī)。
避障模塊采用超聲波避障,接口電路如圖6所示。
圖6 超聲波模塊電路
超聲波模塊的設(shè)計(jì)采用的是HC-SR04超聲波模塊,該模塊允許非接觸式檢測(cè)距離約2cm-400cm,測(cè)試距離精度為3mm。該模塊由3部分組成:超聲波發(fā)射機(jī)、接收機(jī)和控制電路[8]。該模塊會(huì)自動(dòng)發(fā)送8個(gè)40khz的方波,等待接收聲波返回信號(hào),若檢測(cè)到聲波返回信號(hào),Echo便自動(dòng)產(chǎn)生低電平,通過單片機(jī)識(shí)別并記錄信號(hào)往返的時(shí)間。
該系統(tǒng)的軟件部分是通過Keil4平臺(tái)的基于C語(yǔ)言編程。進(jìn)行所有程序的初始化,初始化后各個(gè)模塊正常工作。通過按鍵1切換紅外模式和自動(dòng)避障模式。
程序進(jìn)入紅外模式時(shí),可通過遙控器的“#”,“*”,“↑”“↓”“←”“→”按鍵分別控制小車速度增加,速度減小,前進(jìn),后退,左轉(zhuǎn),右轉(zhuǎn)。
程序進(jìn)入自動(dòng)避障模式時(shí),可判斷按鍵2是否按下,選擇進(jìn)入避障設(shè)備界面,或者以默認(rèn)安全距離為25cm的狀態(tài)下自動(dòng)駕駛。在避障設(shè)置中,可通過按鍵加減安全距離的長(zhǎng)度,參數(shù)設(shè)置成功,則可跳轉(zhuǎn)至自動(dòng)避障狀態(tài)。
圖7 主程序流程圖
系統(tǒng)功能測(cè)試主要分為3個(gè)部分,分別為實(shí)物展示,外紅遙控功能測(cè)試,避障功能測(cè)試。
本次設(shè)計(jì)采用的是前兩輪分別驅(qū)動(dòng),后萬(wàn)向輪轉(zhuǎn)向的三輪車模,各部分模塊電路集成在一塊簡(jiǎn)易的洞洞板面。實(shí)物如圖8,小車初始化界面如圖9所示。
圖8 實(shí)物圖1
圖9 實(shí)物圖2
單片機(jī)初始化后,液晶屏幕上顯示的參數(shù)有速度,與障礙物實(shí)時(shí)距離,系統(tǒng)運(yùn)行時(shí)間,速度百分比4個(gè)部分。左上角為瞬時(shí)速度顯示,初始化后小車為停止?fàn)顟B(tài),顯示的速度為0km/h。右上角顯示的參數(shù)是與障礙物的實(shí)時(shí)距離。左下角顯示的是系統(tǒng)執(zhí)行時(shí)間,當(dāng)前顯示的是3秒。右下角顯示的參數(shù)是當(dāng)前可執(zhí)行速度值,默認(rèn)狀態(tài)下為40%,該參數(shù)是通過改變pwm的占空比從而調(diào)節(jié)速度比值,調(diào)節(jié)的范圍為0~100%。當(dāng)前顯示參數(shù)正常。
可通過按鍵1自動(dòng)切換小車運(yùn)行模式。按壓遙控器上“#”,“*”,“↑”“↓”“←”“→”分別對(duì)應(yīng)的是小車速度增加,速度減小,前進(jìn),后退,左轉(zhuǎn),右轉(zhuǎn)。記錄并觀察小車的運(yùn)行動(dòng)作,如圖10所示。
圖1 系統(tǒng)框圖
圖10 小車速度設(shè)置
小車初始化之后的速度默認(rèn)為40%,每按下“#”數(shù)值會(huì)相應(yīng)增加1%,同理當(dāng)按下“*”數(shù)值會(huì)相應(yīng)降低1%。配合加速和減速的按鈕,可調(diào)節(jié)速度在0~100%之間。同時(shí),小車可做出四個(gè)運(yùn)行動(dòng)作,分別為小車前進(jìn),后退,左轉(zhuǎn),右轉(zhuǎn)。轉(zhuǎn)向動(dòng)作是采用單輪不轉(zhuǎn),另外一輪前向轉(zhuǎn)動(dòng)完成的。紅外遙控的6個(gè)按鍵完全滿足了設(shè)計(jì)要求。
按鍵1可自動(dòng)切換小車避障模式,默認(rèn)的安全避障距離為25cm,按下按鍵2可直接啟動(dòng)小車,當(dāng)與障礙物小于25cm時(shí)自動(dòng)進(jìn)行聲光警報(bào)并且避障,反之小車正常運(yùn)行。
在默認(rèn)避障安全距離為25cm下,按下按鍵2的小車正常行駛狀況。小車通過超聲波測(cè)量出的避障距離為47cm大于默認(rèn)安全距離25cm,故小車正常行駛且瞬時(shí)速度為2.1km/h,當(dāng)小于安全避障距離時(shí),小車自動(dòng)發(fā)出聲光警報(bào),即刺耳的蜂鳴聲和尖銳的紅色彩燈,當(dāng)前小車速度為0km/h,即停車。然后小車自動(dòng)按當(dāng)前速度后退一秒,停頓兩秒后,左轉(zhuǎn)相應(yīng)角度,繼續(xù)行駛直到遇到小于安全距離時(shí)重新進(jìn)入上述循環(huán),從而做到自動(dòng)避障。
同時(shí)可自行設(shè)置小車的安全避障距離,當(dāng)小車按下按鍵3時(shí)自動(dòng)轉(zhuǎn)入避障設(shè)置界面,如圖11、圖12所示。
圖11 默認(rèn)避障距離設(shè)置界面
圖12 安全距離設(shè)置界面
圖11為小車安全距離設(shè)置界面,“L-H”可設(shè)置安全距離的增減。并且可看出系統(tǒng)默認(rèn)的安全距離為25cm。在該界面下,可通過按鍵1和按鍵2調(diào)節(jié)小車的安全距離設(shè)置。按鍵1、2可增加減小安全距離的數(shù)值參數(shù)。當(dāng)安全距離設(shè)置完成時(shí),可重新按下按鍵3,保存參數(shù)并且跳出設(shè)置界面,重新回到原來的界面。
本設(shè)計(jì)是以STC89C52單片機(jī)作為整個(gè)系統(tǒng)的核心,用其控制小車的運(yùn)行方式,以實(shí)現(xiàn)其既定的性能指標(biāo)。是一個(gè)具有測(cè)距功能,并能夠設(shè)置避障距離的紅外遙控小車的設(shè)計(jì)。小車具有避障提醒功能,能夠自動(dòng)避障,避障靈敏度高。本設(shè)計(jì)中仍然存在不足:電路板設(shè)計(jì)不理想,電源擺放影響小車平衡;超聲波識(shí)別距離的頻段過短;小車速度設(shè)置的范圍過窄,且不能液晶顯示。
下步展望:通過方案論證、資料查詢及電路設(shè)計(jì)和反復(fù)調(diào)試等步驟,融合RFID技術(shù)、深度強(qiáng)化學(xué)習(xí)進(jìn)一步提高小車信息化及智能化水平。