1
幸 程式 技奇機
福科國中機器人課程營隊講義
主題 內容
機器人聲光動
1. 認識 mbot 與小影片欣賞
2. mblock 介面操作與連接
3. 聲音、七彩色光
4. 走正方形,前進轉彎後退。(燒入程式與離線自走)
聽音辨位
1. 超音波介紹,說出值,用手掌控制燈光變化。
2. 互動一:與舞台互動,超音波琴或超音波打氣筒。
3. 互動二:遇到障礙物(手),煞車後退轉彎,進階:隨
機轉彎。(離線自走)
4. 互動三:請跟我來~從盲目亂走到保持距離自動跟
隨!(離線自走)
黑與白~循跡1. 循跡感測器介紹。
2. 任務一:我怕黑,困在黑線裡。
3. 任務二:我愛黑(循線), 8 字或軌道。
2
機器人課程入門 認識 mbot
一、簡介 mBot 構造
mBot 出廠預設值:A(紅外線遙控)、B(自走避障)、C(自動循線)三種模式
影片欣賞:http://n.sfs.tw/10777
3
二、mBot 軟體--- mblock 介面操作與連接
mBlock 是一款基於 Scratch2.0 開源的圖形化程式設計軟體,它不僅繼承了
scratch 的全部特性,還新增多個和 mBot 溝通的積木指令使得其可以快速
和 OpenSource 硬體系統進行溝通。下載連結:http://mblock.cc/download/
mBot 操作介面~ 舞台模式
Arduino 模式
4
利用 mBlock 操控 mBot 預備工作:
a. 電腦安裝 Arduino 驅動程式 b. mBot 更新軔體 c. mBot 恢復出厰值
利用 USB 連線方式,讓電腦即時跟 mBot 進行互動測試。
USB 用途: 鋰電池充電、更新韌體、恢復出廠程序、程式上傳
亮紅燈表示”尚未連線”
以 USB 連接線為例,用 USB 將電腦與 MBOT 連接,並勾選連接埠。
5
連線成功會出現綠燈
常見狀況排除:
1. 確認 mBot的電源是否有開啟。
2. USB線是否已正確連接至電腦及 mBot
上面
3. 確認軟體序列埠連接上面的 COM埠,
學校是出現 COM3或 COM4。點選。
4. 直到顯示已連結或是出現綠燈。 5. 若是仍不行,則重新安裝安裝 Arduino
驅動
課程結束之後:
下課前務必將 mBot 恢復為
出廠設定值,以便教師檢
查確認 mBot 正常無損,再
行收回 mBot!。將寫好的程
式儲存成.sb2,並在 USB 連
接狀態下將 mbot 回復原廠
設定。
6
機器人課程(一) 機器人聲光動~LED+蜂鳴器+馬達
mbot 上面有一個蜂鳴器,利用蜂鳴器讓 mbot 在行走時發出單音警示,或是讓
機器人將不同音調的單音組合來唱歌。
使 mBot 發出不同頻率的聲音。 啟動 mBot 程式,開始執行指令。
蜂鳴器 按鈕
唱名音名與簡譜 mBlock 程式
聲音對應:積木上顯示的是音名,從
C2 到 D8 ( 試試看,數字越大代表音調
越高還是越低?)
一拍=1 秒=1000 毫秒。
1/4 拍=250ms (0.25 秒)
唱名 Do Re Mi Fa So Ra Si
音名 C4 D4 E4 F4 G4 A4 B4
簡譜 1 2 3 4 5 6 7
小提醒:這裡利用的是機器人模組裡的藍色積木,不是 scratch 裡的聲音積木。
7
活動一:會唱歌的 mBot 機器人
七彩霓虹機器人
功能: LED 燈會顯示 RGB 各種不同顏色。
LED 燈
利用 http://edson.tw/share/light036.html 說明 0~255,以及混色概念。練習調出不
同色光。下方橫桿可以滑動,改變顏色 0~255。圓圈可以拖曳,看到疊色情
形。並且可以比較顏料與色光三原色的差異。
mbot 的 LED 亮度很高,參數勿設定過高(60~100 也可)。勿長時間直視 LED,
以免傷視力。各顏色 RGB 值參考表
練習:讓LED發出彩虹色光。
想一想:要怎樣讓LED熄滅?
當使用者按下「按鈕」時, mBot 機器人會唱出「小星星」。
也可以挑自己喜歡的歌曲喔~
8
RGB 概念
挑戰:搭配變數,讓兩個發光 LED 隨機發出彩色光
這一格所有的也可以填上
數字,0 代表所有的,1 代
表右邊,2 代表右邊,搭配
變數或運算。利用亂數或加
減運算,製造出豐富的色彩
變化。
搭配變數,讓兩個發光 LED 隨機發出彩色光
光的三原色是紅、綠和藍
三色光
(亮度值:0~255)
紅色+綠色=黃色
綠色+藍色=青色
紅色+藍色=紫色
紅色+綠色+藍色=白色
9
mbot 的直流馬達介紹
mbot 基本配備的是直流馬達,分別在左側(M1)右側(M2)。以電壓大小控
制馬達轉速,並透過改變電流正負方向,控制馬達順時鐘或逆時鐘轉動。
第一種 雙馬達控制積木 第二種 單馬達控制積木
可以設定二個馬達同時運轉,
前進、後退、左轉、右轉。
代表停止
可分別設定左側(M1)與右側(M
2)馬達轉速,進行較精確的轉彎動
作。
參數控制:-255~255 (0 代表停止,負數代表反方向,數值越大,轉速
越快。)
進入 Arduino 模式,編寫程式
離線自走練習~畫出正方形軌跡
為什麼轉彎轉速 100 要持續 0.65?
如果持續 3 秒會怎樣? 調整參數,
試試結果有什麼不同?
10
用於離線自走,需寫入 Arduino。只能寫入一個主程式。
指的是讓動作持續一秒。如果沒有這個指令積木,馬達將會持續
動作。Mbot 認識的不是積木,而是 Arduino IDE。進到 Arduino 模式,右側就
可以看到 IDE 語言。點選上傳 Arduino 的按鈕即可。
請注意!!!
完成程式上傳之後才能拔除 usb 線,否則會造成 mBlock 發生錯誤,無法再次連
線到 mBot,需要重新啟動 mBlock 才能再次上傳程式!
課程結束之後:
下課前務必將 mBot 恢復為
出廠設定值,以便教師檢查
確認 mBot 正常無損,再行
收回 mBot!。將寫好的程式
儲存成.sb2,並在 USB 連接
狀態下將 mbot 回復原廠設
定。
mBot 離線模式:
完成所有程式後,點擊
「mBot 主程式」,使用
「上傳 Arduino 程式」的
方式來離線操控 mBot。
11
機器人課程(二) 超音波感應器
超音波感測器:偵測與前面障礙物體的距離,可做為避障、跟隨或是偵測前方
是否有障礙物,在迷宮裡是很重要的偵測工具。
功能:偵測機器人前方是否有「障礙物」或「目標物」,以讓機器人
進行不同的指令動作。
超音波感測器
超音波感應器前端部分為「發射」(標示 T)與「接收」(標示 R),超
音波發射後,經過障礙物反射回到接收端,利用其時間差,即可求
出「感應器與物體」之間的距離(1~400cm)。
12
測試超音波模組偵測範圍:
讓簡單程式說出數值,作為檢驗學生手上的機器人是否正常,能做到~才進行下
一步驟。用手掌在超音波模組前方移動,觀察數值變化情形。最大多大? 最小多
小?
在 mBlock 舞台模式偵測超音波感應器的距離。
超音波模組預設接到 mCore 連接埠 3 ,回傳值的單位是公分(cm),量測範圍在
cm~400cm。數值可以取到小數第三位,通常會搭配四捨五入的運算積木。在應
用上,也常設為變數,因為需要不斷偵測,所以要加上不停重複的積木。
注意:如果不能正常執行,重新檢查連接、程式與驅動。
13
超音波互動遊戲~打氣球
透過 mBot 與 Scratch 之間的軟硬結合,可以玩出更多各式各樣的可能性。
主要角色的 mBlock 程式
小挑戰 - 打氣筒遊戲
1. 在舞台上畫出一個氣球角色
2. 使用 mbot 的超音波感應器功能,模擬做出打氣筒打氣的動作,每
一次氣球就會漲大一點。
3. 討論打氣筒的判定方式,程式上怎麼才樣算打了一次氣?
4. 什麼樣的條件可以結束這個遊戲?
5. 打氣筒的上下動作要如何使用感應的方式來測定呢?
14
練習(一)遇到障礙物就煞車
按下按鈕後,mBot 開始前進,在障礙物前方 5 公分時,緊急煞車。
或
練習(二)遇到障礙物就煞車,先後退然後右轉
按下按鈕後,超音波偵測到前方 5 公分有障礙物時,先後退再直角右轉繼續走
或
15
練習(三)遇到障礙物隨機左右轉
如何做到隨機呢?方法好幾種。這裡只提供其中一種參考。
超音波偵測到前方 5 公分有障礙物時,後退隨機左右轉
挑戰參考~超音波計數器
一定的距離內,如果有障礙物通過就會自動計數。
16
挑戰參考~ 隔空拉琴 超音波琴
改變手掌與 mbot 前端距離,使機器人發出不同音調與各色燈光。
17
挑戰參考~自動跟隨並保持距離
車子原本靜止,在手掌移到車子前方距離 20 公分處,進入跟隨模式,調整前進
後退,太近就後退,拉遠就前進,始終與手掌保持 10 公分的距離。(先不考慮
跟隨轉彎)
mbolck 程式
18
機器人課程(三) 循線感應器的使用
巡線感應器主要是利用紅外線的發射與接收。在 mbot 裡是套裝元件,包含二組
紅外線發射接收。紅外線無法用肉眼看到,但透過 webcam(或手機)的鏡頭可看
到前端粉紅色亮點。當藍色 LED 指示燈亮起,表示接收到反射的紅外線(白色)。
功能:偵測地板上不同顏色線條(如白與黑),讓機器人循著黑或白線行走。
循線感應器
說明:循線感應器的前端,依照 mBot 機器人前進方向來看,左、右兩邊各有
一個紅外線感應器(左邊為 Sensor1,右邊為 Sensor2)。
測試循線感應器的回傳值:
循線主要運用積木有二種,也可以
單獨判斷左邊與右邊的黑與白。
19
mBot 循線感應器只能判斷黑色與白色,其判斷所得的回傳值共有四種情況:
Sensor1(左邊) Sensor2(右邊) 回傳值
黑 黑 0
黑 白 1
白 黑 2
白 白 3
回傳值=0 回傳值=1 回傳值=2 回傳值=3
活動一 我怕黑之密室脫逃篇
在黑框之中有個白色缺口,你能成功逃脫嗎? 修改之前超音波的任務,我們製
作一個簡易版黑線迷宮,將偵測器改用循線感應器的回傳值來控制。在途徑上
如果遇到黑線(0)就停止,然後隨機轉彎。該怎麼做?
如果遇到黑線(0)就停止 如果遇到黑線(0)就停止後退隨機轉彎
20
挑戰參考~遇到黑線就數數,數到第三條就停止
遇到黑線就數數,數到第三條就停止
21
活動二 我愛黑之跟著黑線走
沿著黑線走(只用 012) 3 的應用~回傳 3,大幅往反向轉回
想想或試試:回傳值是 3 的時候該
如何呢? 可不可以後退?
試試看,讓 mbot 機器人走 8 字黑線! 如果有時間,分組來製作軌道,然後把
它們接起來,來玩軌道車!
課程結束之後:
下課前務必將 mBot 恢復為
出廠設定值,以便教師檢查
確認 mBot 正常無損,再行
收回 mBot!。將寫好的程式
儲存成.sb2,並在 USB 連接
狀態下將 mbot 回復原廠設
定。