基于雙排傳感器的循跡策略研究
第二種直道情況
- 此情況是對第一種情況的再確認,左轉大彎并經過第一種情況后,在經歷此種情況,可確認無誤前方為直道,繼續提升小車的加速能力。
- 控制程序由彎道程序切換到直線穩定程序。
第三種直道情況
- 此時采取直線穩定控制。
- 由于前兩種情況已經明確識別為直道,此種情況只是增加直道識別的成功率。
第四種直道情況
- 與第二種情況類似
- 對第五種情況的再確認,右轉轉大彎并經過第五種情況后,在經歷此種情況,可確認無誤前方為直道,繼續提升小車的加速能力。
- 控制程序由彎道程序切換到直線穩定程序。
第五種直道情況
- 如圖所示,在右轉大彎后,出彎時最可能出現的前后排傳感器檢測到黑線時的組合情況。
- 適用于右轉轉 90°彎、180°彎。
- 提前得到出彎信息,舵機向右轉動較小角度,并在此時采取加速動作,起到彌補前瞻不足的作用。
- 在賽道的s彎出現時,不滿足直道的第二種識別方式,故不會加速。
2) 直道識別,程序輔助確認
進入彎道后,隨著小車的行進,會發生振蕩,致使出彎時不一定滿足上述5種情況。為了提高直道的識別成功率,增加第二種直道判別方法。兩者同時起作用,滿足第一種后經過最多15ms確認是直道。
程序是循環執行,我們的程序執行頻率是2Khz。采用定時中斷(15ms)的方式,對前排中間3個傳感器(編號為3、4、5)使用3個計數器分別計數,每次執行程序若是其中一個檢測到黑線,相對應的計數器加1。經過計算,15ms內所能計數的最大值為31。我們設定計數的最大值,若在15ms內達到所要求的計數值,就認為是直道,切換直道程序并將計數器清零;若15ms內沒有達到所要求的計數值,計數器清零,重新計數。例如小車為2m/s的速度,小車行進3cm。我們只要判斷2~2.5cm內為直道即可。所以設最大計數值為20~25即認為是直道,跳出彎道程序。
評論