摘 要: 該智能小車設(shè)計采用雙輪差速的機械結(jié)構(gòu),,利用紅外反射式光電傳感器采集地面引導(dǎo)黑線信息。針對車體機械結(jié)構(gòu)和巡線算法的設(shè)計與改進做出了詳細的分析與論證,。分析了車體的前瞻和車輪間距對轉(zhuǎn)彎速度的影響,,其控制算法采用加權(quán)掃描探尋黑線信息并輔以PID算法反饋控制小車的行進方向,使小車按照既定的路線前進,。
關(guān)鍵詞: 智能小車,;機械結(jié)構(gòu);加權(quán)掃描,;PID
0 引言
智能機器人技術(shù)涉及電子,、機械、傳感器,、計算機,、自動化、信息處理等多門學(xué)科[1],。智能小車在倉庫智能管理,、高壓線路除冰等領(lǐng)域有著廣闊的應(yīng)用前景[2]。機械結(jié)構(gòu)作為小車的基礎(chǔ),,在行走的穩(wěn)定度,、靈敏度等指標上起到了舉足輕重的作用。本文將機械結(jié)構(gòu),、加權(quán)掃描算法與PID算法相結(jié)合,,使小車能夠更快速、更穩(wěn)定地按照既定的路線行駛,,并且根據(jù)路況信息實時控制行進的速度與方向,。
1 車體結(jié)構(gòu)設(shè)計
1.1 車體結(jié)構(gòu)簡介
車體基本結(jié)構(gòu)如圖1所示。小車前端為8路單排紅外對管巡線電路板,,可以利用它獲取地面引導(dǎo)黑線的信息,;中間為一對直流減速電機和車輪,這是整個小車的動力來源,,可以通過控制這兩個車輪的轉(zhuǎn)動方向和速度控制小車的前進,、后退、轉(zhuǎn)向等,;車尾為兩個可自由轉(zhuǎn)動的萬向輪,,它們的主要作用是支撐小車,使車體穩(wěn)定,由于萬向輪擁有多個自由度[3],,它們不會對小車的運動造成明顯影響,。
1.2 影響小車行進的因素
在設(shè)計小車基本結(jié)構(gòu)時,很多人往往只注重功能的實現(xiàn)和外型的美觀,,其實車體各部分結(jié)構(gòu)分布對小車運行效果的影響是相當大的,。如果車體各部分布局進入誤區(qū),即使后面使用再好的控制方案也很難取得理想的效果,;反之,,如果車體各部分布局合理,在軟件調(diào)試的過程中將達到事半功倍的效果,。
1.2.1 前瞻D1
如圖1所示,,紅外巡線電路板與動力車輪的輪軸之間的距離為D1,這個距離通常被稱為前瞻,,它表示小車提前感知引導(dǎo)黑線的距離長度,。在控制小車時控制電路和執(zhí)行設(shè)備都需要相應(yīng)的反應(yīng)處理時間,適當?shù)那罢澳苁笴PU提前獲取導(dǎo)航黑線信息并及時地做出運動反應(yīng),,從而達到減小甚至消除反應(yīng)延遲的作用,。
假設(shè)車體前瞻D1,電機最大轉(zhuǎn)速wmax,,車輪直徑d,。小車全速前進時,前瞻留給車體的反應(yīng)時間T為:
T=D1+[wmax×(d÷2)](1)
由式(1)可見,,選擇一個合適的前瞻D1可以為小車爭取一定的反應(yīng)時間,,使小車循跡效果更好。但是D1值也不能過大,,如果D1值過大,小車在轉(zhuǎn)彎時,,由于單片機檢測到路況信息變化過早,,小車可能提前轉(zhuǎn)彎從而影響小車的正確行使。
1.2.2 車輪間距D2
在設(shè)計車體結(jié)構(gòu)時,,兩個驅(qū)動車輪的間距也是一個必須考慮的參數(shù),,它將關(guān)系到小車轉(zhuǎn)彎角度的大小。實驗小車采用差速轉(zhuǎn)彎方式實現(xiàn)小車轉(zhuǎn)彎功能,,其具體轉(zhuǎn)動的角度可由以下算法得到,。
小車差速轉(zhuǎn)彎模型如圖2所示。小車的左輪角速度為w1,,右輪角速度為w2,,且w1<w2,即差速向左轉(zhuǎn)彎,兩個驅(qū)動車輪的間距為D2(如圖2直線BC的長度),,車輪直徑為d,。設(shè)小車左輪在Δt時間內(nèi)走過的路程為S1(如圖2弧線AB的長度),右輪在Δt時間內(nèi)走過的路程為S2(如圖2弧線CE的長度),,在Δt時間內(nèi)轉(zhuǎn)動的角度為Δ(如圖2從A點做BC的平行線交CE于D,,AE與AD的夾角即為Δ),L為小車轉(zhuǎn)過的弧度長(如圖2弧線FE的長度),。
當Δt→0時,,有:
由式(8)可以看出,當w1=0時,,θ達到最大,,即:
很明顯由式(8)可以得出,在車輪角速度w1,、w2和車輪直徑d確定的情況下,,小車轉(zhuǎn)彎角度大小由車輪間距D2唯一確定。所以在設(shè)計車體時,,要使小車能夠達到較好的工作效果,,車輪間距是必須考慮的參量。
2 控制算法設(shè)計
2.1 巡線方式
小車采用8路紅外對管(ST188反射式紅外對管)采集路況信息,。8路紅外對管采用最常用的一字型布局,,此布局方式簡單,可以很容易地檢測到路面的信息,,其布局如圖3所示,。
小車通過設(shè)定傳感器閾值來分辨黑、白,。設(shè)Ci=0和1分別代表第i個紅外對管檢測到白色和黑色,。單片機通過各個傳感器反饋回來的信息判斷小車的具體位置,并通過PID算法及時調(diào)整小車的行進方向,,避免小車偏離黑線過多,,超出傳感器檢測的范圍而脫離軌道。具體巡線算法如下:
將8個傳感器依次加權(quán)Ai(i=1,,2…8),,表達式如下:
各權(quán)值大小可根據(jù)控制算法和調(diào)試效果適當修改,不一定要為等差分布,。設(shè)定小車在既定的正確路線時的目標值goal=0,,小車行駛的當前值為now,小車當前行駛的位置與既定目標的偏移量為offset,。則小車的當前值由以下公式可以算出:
偏移量offset為:
offset=now-goal=now(12)
例如當3號和4號傳感器檢測到黑線時,,由式(11)、(12)可知:
offset=now=3
將計算出來的偏移量送入PID算法,反饋控制小車的行進方向,、速度,,從而使小車順利地沿著黑線行走。
采用加權(quán)掃描法增強了巡線小車抗環(huán)境干擾的能力,。在采用傳統(tǒng)掃描判斷方式時,,需要將實際過程中的各種情況都羅列出來才能保證小車持續(xù)平穩(wěn)運行。但是采用這種方式通過簡短的程序就可以讀出所有狀態(tài),;同時,,采用本方法獲取引導(dǎo)黑線信息時可以明顯減小干擾信號的影響,從而增強小車的抗干擾能力,。此外,,這種方式巡線可以在一定程度上忽略導(dǎo)航黑線的寬度對小車巡線的影響,使巡線方式更加可靠,。
2.2 PID算法簡介
采用加權(quán)掃描法雖然可以增強小車的抗干擾能力,,但是如果控制系統(tǒng)中沒有反饋系統(tǒng)時,小車將不知道當前行進的具體情況,。為此,,提出了在加權(quán)掃描的基礎(chǔ)上輔以PID算法,根據(jù)傳感器反饋給單片機的信息及時地做出相應(yīng)的處理,。PID是控制中最經(jīng)典的一種控制算法,,又稱為比例-積分-微分控制。PID控制是一個負反饋閉環(huán)控制系統(tǒng),,也稱為誤差調(diào)節(jié)器,。其系統(tǒng)框圖如圖4所示。
數(shù)字式PID控制算法可以分為位置式PID和增量式PID控制算法[4],。采用增量式算法時,,計算機輸出的控制量Δuk對應(yīng)的是本次執(zhí)行機構(gòu)位置的增量,而不是對應(yīng)執(zhí)行機構(gòu)的實際位置,,因此要求執(zhí)行機構(gòu)必須具有對控制量增量的累積功能,,才能完成對被控對象的控制操作,所以操作相對復(fù)雜,。考慮到小車實際情況以及操作的簡便性,,本文采用位置式PID控制算法,,其算法如下:
其中:k為采樣序號,k=0,,1,,2,…;uk為第k次采樣時刻的計算機輸出,;ek為第k次采樣時刻輸入的偏差值,;ek-1為第k-1次采樣時刻輸入的偏差;Ti為控制器的積分時間,,也稱積分系數(shù),;Td為控制器的微分時間,也稱微分系數(shù),;Kp為控制器的比例系數(shù),;Ki為積分系數(shù),Ki=Kp×T/Ti,;Kd為微分系數(shù),,Kd=Kp×Td/T。
2.3 PID算法在循線小車系統(tǒng)中的應(yīng)用
本文采用PWM脈寬調(diào)制方式控制電機轉(zhuǎn)速,,PID算法實現(xiàn)公式如下:
其中,,PWML為控制左電機的PWM波脈寬,PWMR為控制右電機的PWM波脈寬,,Xnow為小車當前偏移量,,Xold為小車上一讀取周期偏移量,X0為目標值,。P,、I、D依次為調(diào)節(jié)的比例,、積分,、微分系數(shù)。按上述公式可以同時調(diào)節(jié)左右兩個電機的轉(zhuǎn)速,,并根據(jù)實際調(diào)試進行微調(diào),,可以使小車平穩(wěn)且快速地按照既定的路線行駛。
3 結(jié)束語
本文完成了對智能小車在機械結(jié)構(gòu)以及巡線算法兩方面的優(yōu)化設(shè)計,。提出了合適的前瞻以及車輪間距,,能提高小車的巡線速度以及穩(wěn)定性,并建立數(shù)學(xué)模型對其進行了理論推導(dǎo),,證明其有效性,。提出了加權(quán)掃描算法與PID算法相結(jié)合的方式完成小車的巡線功能。經(jīng)實驗證明利用以上機械結(jié)構(gòu)和算法能使小車平穩(wěn)并迅速地按照既定路線行駛,。
參考文獻
[1] 孫麗飛,,王法能,王寬仁,,等.基于模糊PID控制的智能巡線機器人的設(shè)計與研究[J].儀器儀表用戶,,2008,,15(6):29-30.
[2] 張鍇,李世光,,朱曉莉,,等.基于STM32的智能巡線小車[J].電子測量技術(shù),2012,,35(2):105-107.
[3] 余主正,,張力.基于S3C2440+ATmega16的雙核探路小車設(shè)計[J].制造業(yè)自動化,2012,,34(8):59-61.
[4] 劉彬,,譚建平,黃長征.一種改進PID控制算法的研究與應(yīng)用[J].微計算機信息,,2007,,23(16):15-17.