基于TMS320LF2407 DSP的自動(dòng)避障小車
趙曉軍 劉孟哲 曹建坤 高旭光
摘要: 本設(shè)計(jì)是以TI公司生產(chǎn)的TMS320LF2407型DSP為核心,,采集環(huán)境信息并控制智能小車,,3個(gè)紅外發(fā)收傳感器檢測(cè)智能小車前方的障礙物,,并且根據(jù)障礙物位置進(jìn)行自動(dòng)避障,。
Abstract:
Key words :
近年來研究移動(dòng)機(jī)器人倍受重視,,仿照生物功能發(fā)明的各種移動(dòng)機(jī)器人越來越多,,小到娛樂機(jī)器人玩具,、家用服務(wù)機(jī)器人,,大到礦產(chǎn)勘測(cè),、工程探險(xiǎn),、軍事偵察機(jī)器人等。避障小車是一種移動(dòng)機(jī)器人,,它通過傳感器系統(tǒng)感知外界環(huán)境,,在復(fù)雜環(huán)境中自主移動(dòng)并完成避障,一般采用超聲波,、紅外,、激光,、CCD等傳感器設(shè)計(jì)。由于紅外傳感器探測(cè)視角小,。方向性強(qiáng),,測(cè)量精度高,價(jià)格便宜,,而且可在夜間工作,,因此紅外傳感器作為視覺應(yīng)用于移動(dòng)機(jī)器人避障。本設(shè)計(jì)是以TI公司生產(chǎn)的TMS320LF2407型DSP為核心,,采集環(huán)境信息并控制智能小車,,3個(gè)紅外發(fā)收傳感器檢測(cè)智能小車前方的障礙物,并且根據(jù)障礙物位置進(jìn)行自動(dòng)避障,。
1 自動(dòng)避障小車總體設(shè)計(jì)
該系統(tǒng)主要由DSP控制,、電機(jī)驅(qū)動(dòng)、電源,、測(cè)速以及視覺等模塊組成,,其結(jié)構(gòu)如圖1所示。
小車為3輪結(jié)構(gòu),,前面2個(gè)輪分別由2個(gè)電機(jī)獨(dú)立驅(qū)動(dòng)控制,,后面1個(gè)萬向輪作為支撐輪。小車安裝有3個(gè)紅外傳感器,,分別位于車頭的左,、中、右部位,,用于采集環(huán)境信息。車體規(guī)格為:車身板距地7.5 cm,,車長(zhǎng)25 cm,,車寬12 cm,車輪半徑5.5 cm,。速度控制采用定頻調(diào)寬的PWM調(diào)速,,并應(yīng)用速度反饋和閉環(huán)PID控制,從而實(shí)現(xiàn)小車精確的速度和位置控制,。
2 自動(dòng)避障小車的硬件設(shè)計(jì)
該系統(tǒng)以DSP TMS320LF2407A為核心,,該DSP片內(nèi)資源豐富,具有電機(jī)控制的獨(dú)特資源,,12路脈寬調(diào)制(PWM)輸出,。視覺模塊采用E3FDS3-0P1型紅外傳感器,有效探測(cè)距離為30 cm,,探測(cè)角度30°,。將3個(gè)紅外傳感器分別接至I/OPE接口的I/OPE4,、I/OPE5和I/OPE6。由于光電開關(guān)正常狀態(tài)時(shí)信號(hào)高電平為5 V,,而DSP標(biāo)準(zhǔn)高電平為3.3 V,,所以應(yīng)在光電開關(guān)與DSP之間串聯(lián)分壓電阻。電源采用12 V蓄電池供電,。DSP是以+3.3 V電壓供電,,因此必須將+12 V標(biāo)準(zhǔn)電壓轉(zhuǎn)換成+3.3 V。該系統(tǒng)采用LM7805與MAX604作為電源轉(zhuǎn)換器,。12 V電源首先經(jīng)LM7805調(diào)壓到5 V,,先將5 V電壓送入紅外傳感器,再送入MAX604降壓為3.3 V,,如圖2所示,。
采用L298驅(qū)動(dòng)電機(jī),0UTl,,0UT2分別與小車的一個(gè)電機(jī)的正負(fù)極相連,;OUT3,OUT4分別與小車的另一個(gè)電機(jī)的正負(fù)極相連,;L298的INl和IN2引腳分別與DSP的IOPE0(方向4),、IOPE1(方向3)引腳連接,用于接收主控器件輸出的轉(zhuǎn)向電機(jī)的動(dòng)作指令,,并通過0UTl和OUT2控制左電機(jī)的正轉(zhuǎn)與反轉(zhuǎn),,L298的IN3,IN4引腳分別與DSP的IOPE2(方向2),、IOPE3(方向1)引腳連接,,用于接收主控器件輸出的驅(qū)動(dòng)電機(jī)的動(dòng)作指令,并通過0U113,,OUT4控制前方右電機(jī)的正轉(zhuǎn)與反轉(zhuǎn),,而ENA和ENB引腳分別連接到DSP的IOPE0(PWM3)、IOPEl(PWM4)引腳,,用于控制電機(jī)的速度,,
其電路原理圖如圖3所示。
L298分別控制并調(diào)整前面2個(gè)電機(jī)的旋轉(zhuǎn)方向,,控制小車的前進(jìn),、后退、向左,、向右,、停止。由于小車采用三輪結(jié)構(gòu),,前面2個(gè)輪既是動(dòng)力輪又是方向輪,,當(dāng)INl,、IN2、ENA分別為l,、0,、1,同時(shí)IN3,、IN4,、ENB分別為0、l,、l時(shí),,小車前進(jìn);當(dāng)INl,、IN2,、ENA分別為1、O,、l,,同時(shí)IN3、IN4,、ENB分別為l,、0、l時(shí),,小車右轉(zhuǎn),;當(dāng)INl、IN2,、ENA分別為0,、1,1,,同時(shí)IN3,、IN4、ENB分別為1,、0、1時(shí),,小車左轉(zhuǎn),。
采用測(cè)速電機(jī)測(cè)量電機(jī)轉(zhuǎn)速,以此判斷速度,。電機(jī)轉(zhuǎn)速轉(zhuǎn)換為電脈沖信號(hào),,其輸出經(jīng)過HD74HCl4P(HD74HCl4P內(nèi)部有若干反相器電路,可完成寄存器復(fù)位),,送至DSP的PA3(CAPl)和PA4(CAP2)引腳,,根據(jù)軟件設(shè)置使計(jì)數(shù)器對(duì)脈沖信號(hào)上升沿進(jìn)行遞增計(jì)數(shù),。如圖4所示。
3 自動(dòng)避障小車的軟件設(shè)計(jì)
DSP每隔一段時(shí)間對(duì)I/OPE4,,I/OPE5,,I/OPE6這3個(gè)端口進(jìn)行查詢,沒有障礙物時(shí)這3個(gè)端口為高電平,。即111,,左邊有障礙物時(shí)為011,右邊有障礙物時(shí)為110,。前方有障礙物時(shí)則為010,。小車根據(jù)紅外傳感器接收的信號(hào)判斷前方障礙物的分布并做出相應(yīng)的動(dòng)作,如表1所示,。
小車在普通情況下(無障礙物)處于前進(jìn)狀態(tài),,當(dāng)T3定時(shí)器發(fā)生周期中斷時(shí),進(jìn)入程序開始檢測(cè)光電開關(guān)的信號(hào)線端口,,如果有障礙物則從避障程序中選擇一個(gè)執(zhí)行(左轉(zhuǎn),、右轉(zhuǎn)、后轉(zhuǎn)),,進(jìn)行避障動(dòng)作,,如果沒有障礙物則小車?yán)^續(xù)前進(jìn)并且等待定時(shí)器的下一次中斷,其程序流程如圖5所示,。
調(diào)節(jié)PID參數(shù)不僅可實(shí)現(xiàn)系統(tǒng)穩(wěn)定,。還能兼顧系統(tǒng)的帶載能力和抗擾能力。首先應(yīng)找出小車的理想速度,,這是PID調(diào)節(jié)的前提,,也是加入測(cè)速的原因。由于測(cè)速電機(jī)測(cè)得的是小車右輪實(shí)際速度,。先給小車右輪電機(jī)一個(gè)初始速度,,讓小車以給定的初始速度運(yùn)轉(zhuǎn)起來。然后利用PID算法調(diào)速:在給定速度不變的情況下,,每掃描一次程序,。小車的實(shí)際反饋速度便與理想速度相比較,利用PID算法便可更新給定值,。這樣,,不斷更新給定值,直到實(shí)際速度與理想速度保持一致或者到下一次賦值則停止更新(ek=O),。程序流程如圖6所示,,圖6中,設(shè)右輪給定速度v對(duì)應(yīng)的理想速度為V,,僅限右輪電機(jī),,b’為給定速度b對(duì)應(yīng)的實(shí)際速度,。
4 試驗(yàn)
避障小車安裝調(diào)試完成后,對(duì)小車性能進(jìn)行測(cè)試:
1)小車的避障能力試驗(yàn)測(cè)試 錯(cuò)落擺放障礙物,,讓小車向障礙物方向前進(jìn),,當(dāng)距障礙物約25 cm時(shí),小車左轉(zhuǎn),,然后再向前(左方?jīng)]有障礙物),。試驗(yàn)發(fā)現(xiàn)小車的傳感器對(duì)亮色反映比較明顯,比如遇到白色障礙物,,小車會(huì)在30 cm外就發(fā)現(xiàn)障礙物并產(chǎn)生動(dòng)作,;當(dāng)小車遇到黑色障礙物時(shí),一般約在15 cm時(shí)才能感應(yīng)到障礙物,。
2)PID算法和PWM方法測(cè)試 分3次對(duì)小車進(jìn)行測(cè)試,,每次要求避開10個(gè)黑色障礙物。采用不加入PID程序和PWM程序的小車進(jìn)行測(cè)試,,小車3次分別避開6,、7、7個(gè)障礙物,;而采用加入PID程序和PWM程序的小車進(jìn)行測(cè)試,,小車3次分別避開9、10,、9個(gè)障礙物,。試驗(yàn)表明加入PID算法和PWM方法的小車在調(diào)速方面明顯優(yōu)于不加入程序的,并在遇到障礙物時(shí)和避開障礙物后都能夠快速調(diào)速,,使小車避障能力大大提高,。
5 結(jié)論
本文對(duì)避障小車的設(shè)計(jì)進(jìn)行分析后,提出了在DSP TMS320LF2407技術(shù)平臺(tái)上實(shí)現(xiàn)小車自動(dòng)檢測(cè)前方障礙物,,并給出躲避動(dòng)作方法,。避障車最終實(shí)現(xiàn)了從無障礙地區(qū)啟動(dòng)前進(jìn),利用車體前端傳感器感應(yīng)前進(jìn)路線上的障礙物后,,并且根據(jù)障礙物的位置選擇下一步行進(jìn)方向,,避開障礙物。由于紅外傳感器探測(cè)信息有限(只能探測(cè)障礙物的有無,,無法得到距離信息),,不能夠判斷障礙物的距離、大小及形狀等,。如果使用攝像頭作為視覺探測(cè)系統(tǒng),則可使避障小車性能更好,,應(yīng)用范圍更廣泛,。這也是后續(xù)研究方向,。
來源:電子設(shè)計(jì)工程
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。