故事情節:
接下來要讓竊賊的車能夠自己移動,也就是說要脫離跟電腦間的連線,車子將不再受到電腦有線或無線的控制。
所以,我們必須將程式存儲到車內,讓車子能透過感應器的感應後,自行判斷出其應該如何前進,透過程式的撰寫來達到智慧型自走車的功能!
所以,我們必須將程式存儲到車內,讓車子能透過感應器的感應後,自行判斷出其應該如何前進,透過程式的撰寫來達到智慧型自走車的功能!
學習目標:
1.學習使用巡線感應器。
2.利用簡易的判斷,讓車子在黑線上移動。
3.學會使用心智圖或程式流程圖。
4.將程式碼上傳到車子。
3.學會使用心智圖或程式流程圖。
4.將程式碼上傳到車子。
巡線感應器的運用:
mBot巡線感應器其實是灰度感應器,只能判斷黑色與白色,將判斷所得傳回4個值,分別為0、1、2、3。這4個數值代表著不同的偏移狀況!
0代表巡線感應器完全處在黑線上!
1代表巡線感應器右邊偏離黑線,未處於黑線上,此時巡線感應器右邊會亮燈提醒使用者!
2代表巡線感應器左邊偏離黑線,未處於黑線上,此時巡線感應器左邊會亮燈提醒使用者!
3代表巡線感應器完全離開黑線,偏離軌道了!此時巡線感應器兩邊會亮燈提醒使用者!
為了達到車子能沿著黑線走的效果,我們需要能讓車子識別黑線和白紙,在獲得訊號並得知前方的狀況時,如何進行小車行進狀態的調整呢?
0代表車子在黑線上,需繼續往前進。
1代表車子偏向右邊,須往左轉。
2代表車子偏向左邊,須往右轉。
3代表車子完全偏離黑線,但此時是該往哪邊轉呢?
該往左轉或該往右轉需要一個小技巧。就是判斷車子上一次的轉向,若上一次車子是向右轉而造成車子完全離開黑線就讓車子大左轉來修正車子行進方向。
我們來繪製屬個人的心智圖或程式流程圖吧!
依照流程圖,完成下列程式:
完成程式後,將程式上傳到arduino!
此時,mBlock程式視窗將開啟"arduino IDE"編輯模式,點"上傳到Arduino",等待上傳100%完成即可。
車子將不再受到電腦控制
0代表巡線感應器完全處在黑線上!
1代表巡線感應器右邊偏離黑線,未處於黑線上,此時巡線感應器右邊會亮燈提醒使用者!
2代表巡線感應器左邊偏離黑線,未處於黑線上,此時巡線感應器左邊會亮燈提醒使用者!
3代表巡線感應器完全離開黑線,偏離軌道了!此時巡線感應器兩邊會亮燈提醒使用者!
為了達到車子能沿著黑線走的效果,我們需要能讓車子識別黑線和白紙,在獲得訊號並得知前方的狀況時,如何進行小車行進狀態的調整呢?
0代表車子在黑線上,需繼續往前進。
1代表車子偏向右邊,須往左轉。
2代表車子偏向左邊,須往右轉。
3代表車子完全偏離黑線,但此時是該往哪邊轉呢?
該往左轉或該往右轉需要一個小技巧。就是判斷車子上一次的轉向,若上一次車子是向右轉而造成車子完全離開黑線就讓車子大左轉來修正車子行進方向。
我們來繪製屬個人的心智圖或程式流程圖吧!
依照流程圖,完成下列程式:
完成程式後,將程式上傳到arduino!
此時,mBlock程式視窗將開啟"arduino IDE"編輯模式,點"上傳到Arduino",等待上傳100%完成即可。
車子將不再受到電腦控制
在"arduino IDE"編輯模式下,下列類別的積木是不能使用的。
要回復一般編輯模式,請點選"編輯",點"Arduino mode",取消勾選狀態。
試著測試你的車子是否能順利沿線前進!
如果你的車子一直跑出線外,你應如何修正你的程式?是馬達轉速太快嗎?還是你的場地黑線太細了呢?
挑戰題:
1.想一想,透過巡線感應器車子能在黑線上自行移動,可是當車子進入隧道後,車子該如何行進呢?你如何透過其他方式達成目的?
2.如果車子到了十字路,右邊有障礙物,你如何讓車子順利地避開障礙物,又能繼續往前行進呢?
2.如果車子到了十字路,右邊有障礙物,你如何讓車子順利地避開障礙物,又能繼續往前行進呢?
延伸題:
除了使用巡線感應器外,試著搭配其他感應器,創作出屬於你的個人機器人!
提示:
動動腦:
日常生活中,你看過那些市售產品能夠自行執行人類賦予它的任務?
提示:
iRobot吸塵器......
1 則留言:
你能提供答案嗎?
如何使用mBlock編程, 謝謝
挑戰題:
1.想一想,透過巡線感應器車子能在黑線上自行移動,可是當車子進入隧道後,車子該如何行進呢?你如何透過其他方式達成目的?
2.如果車子到了十字路,右邊有障礙物,你如何讓車子順利地避開障礙物,又能繼續往前行進呢?
張貼留言