LineFollow

循線

壹、瞭解mBot巡線感應器 Me Line Follower

Me Line Follower

Me Line Follower

mBot標準配備的巡線感應器有兩顆LED燈,可以感應地面所傳回來的反射光強度

地面亮度高則感應燈亮起(1)、地面亮度低則感應燈熄滅(0)。

均測到黑色、兩顆燈都不亮、等於0。

測到左黑右白、左燈不亮右燈亮、等於1。

測到左白右黑、左燈亮右燈不亮、等於2。

均測到白色、兩顆燈都亮起、等於3。


動手做

Q1 :打開mBot機器人開關,將巡線感應器分別放在白色與黑色區域,觀察燈是否會亮?

(答案在後面)


思考一下:為了要讓機器人沿著黑線前進,而且不要脫離黑線這條軌道,你該怎麼控制機器人?

何時該前進?

何時該左轉?

何時該右轉?


討論、寫出程式

均測到黑色、兩顆燈都不亮、等於0時,應該控制機器人直走。

測到左黑右白、左燈不亮右燈亮、等於1時,應該控制機器人左轉。

測到左白右黑、左燈亮右燈不亮、等於2時,應該控制機器人右轉。

均測到白色、兩顆燈都亮起、等於3時,表示機器人已經偏離黑線軌道。

策略:控制機器人後退回到軌道,以避免失控。

綜合以上分析,歸納出名稱為「基礎巡跡」的mBot程式,程式裡使用了一個「光感」變數,如右圖。

主程式「速度」=50%。

mBlock 5.3.0 基礎循跡程式範例

本例沒有執行光感等於3的後退,且速度為百分比。

動手做

1. 打開mBot機器人開關,將mBot以USB線連接到電腦,把程式上傳(載入)至mBot。

2. 將mBot擺至8字圖上、巡線感應器對準黑線、按下、鬆開板載按鈕,觀察巡跡是否正確執行。

3. 若能正確執行巡跡任務,則可將速度從50%調至最快的100%,再次執行巡跡任務。

mBot內附的8字練習圖

檢視

Q2 :將速度調到最快的100%之後,巡跡會發生什麼變化?

(答案在後面)


改良巡跡策略,上面的「基礎巡跡」程式不夠好,而且速度不能太快,勢必要加以改良。

為了減少不斷的在執行左、右轉,可以思考一下、等到快要脫軌了再來轉彎,光感等於3就是快要脫軌了,這個時候再來轉彎就行了。問題來了,等到該轉彎了,如何判斷該左轉、還是該右轉呢?這時候就需要另一個變數「上次光感」來幫忙。

當「光感」等於0,1,2時直走、「光感」等於1時「上次光感」也等於1、「光感」等於2時「上次光感」也等於2、等到「光感」等於0的時候,就可以依照所記錄的「上次光感」來決定左轉、右轉。需要轉彎時:「上次光感」等於1左轉、「上次光感」等於2右轉。

這個程式名稱為「進階巡跡」,如右圖。

mBlock5「進階巡跡」。

黑線循跡 2021_5_27 下午 02_56_21.mp4

停課不停學

黑線進階循跡

以Win10_win+G錄製。

※到這個階段都做對了,恭喜您,可以開始玩創意軌道競賽了。

咦?不對,創意軌道競賽是黑底白線,這該如何改寫巡跡程式呢?

在動手把黑線巡跡改為白線巡跡之前,再來學習一件事情,控制馬達的轉速其實是允許兩輪單獨分別控制的,單獨分別控制左右輪,可以更靈活地決定轉彎的半徑幅度。

黑線巡跡改為白線巡跡。

黑線巡跡

0 直走

1 左轉

2 右轉

3

白線巡跡

0

1 右轉

2 左轉

3 直走

此時刻意不處理脫軌(等於0)的情形,以方便做後續處理(克服特殊線路會用到)。

再來,改寫白線進階巡跡:

V5白線進階巡跡

遇到0才轉彎,否則都直走。這支程式已經可以拿來跑創意軌道競賽了。

進階實驗

Q3 :將感應器放在黑色區,以強光照射該黑色區,則感應器是亮起或是熄滅?

(答案在後面)

創意軌道競賽場地圖

比賽場地圖版權屬於圓創力科技有限公司所有,特此聲明。

mBlock 5 完整白線巡跡主、副程式。

白線循跡 2021_5_31 上午 10_36_50.mp4

停課不停學

白線進階循跡

以Win10_win+G錄製。

斷軌

使用基礎巡線方式,0直走、1左轉、2右轉,3則表示遇到斷軌。

解決方法:直走直到再度遇到黑線。

使用進階巡線方式,會造成迴轉。

直角左、右轉

使用基礎巡線方式,0直走、1左轉、2右轉,3則表示遇到斷軌或直角轉彎。

解決方法:左瞧瞧、右瞧瞧,找到黑線後再度巡線。

使用進階巡線方式,只能憑運氣,轉錯方向會造成迴轉。

十字路

使用基礎、進階巡線方式,都是0、應該會直走順利通過。


答案

Q1 :感應器放在白色區會亮起、放在黑色區則不會亮。

Q2 :發現機器人很容易失去控制。

Q3 :感應器會亮起,巡線感應器是以感應地面的反射光強度來判斷地面的顏色,當強光照到地面上時、黑白色的反射光強度都會讓巡線感應器以為測到了白色,因此燈會因誤判而亮起,場地應該避免強烈日光照射,或是自製一個光罩

光罩教學http://magiccar.let-do.com/portal.php?mod=view&aid=53