Upload
others
View
2
Download
1
Embed Size (px)
Citation preview
目錄 RPG Maker MV:做出自己的角色扮演遊戲 ........................................................... 1
mBot 單元一:認識 mBot 自走車 .............................................................................. 5
工業機器人 ....................................................................................................................... 5
什麼是 mBot ..................................................................................................................... 5
mBot 零件 ......................................................................................................................... 6
mCore 主控板 ................................................................................................................... 6
規格 ................................................................................................................................... 7
硬體連接 ........................................................................................................................... 7
USB 連線 .......................................................................................................................... 8
安裝驅動 ........................................................................................................................... 8
2.4G 連線 .......................................................................................................................... 9
想一想 ............................................................................................................................... 9
mBot 單元二:mBlock 的整合開發環境 ................................................................. 10
mBlock 操作介面 ........................................................................................................... 10
常用指令區(顔色) .......................................................................................................... 11
mBot 常用積木 ............................................................................................................... 12
mBlock 積木類型(外形) ................................................................................................. 12
想一想 ............................................................................................................................. 13
mBot 單元三:程式流程控制 ................................................................................... 14
循序結構 ......................................................................................................................... 14
分岔結構 ......................................................................................................................... 15
迴圏結構 ......................................................................................................................... 16
想一想 ............................................................................................................................. 17
mBot 單元四:mBot 動起來了 ................................................................................. 18
前進測試 ......................................................................................................................... 18
馬達控制指令 ................................................................................................................. 18
想一想 ............................................................................................................................. 19
mBot 單元五:變數與副程式 ................................................................................... 20
變數 ................................................................................................................................. 20
副程式 ............................................................................................................................. 22
想一想 ............................................................................................................................. 23
mBot 單元六:光線感測器與 LED 燈 ..................................................................... 24
光驅動 mBot ................................................................................................................... 24
燈光秀 ............................................................................................................................. 25
想一想 ............................................................................................................................. 26
mBot 單元七:mBot 音樂會 ..................................................................................... 27
唱名、音名與頻率 ......................................................................................................... 27
節拍 ................................................................................................................................. 29
想一想 ............................................................................................................................. 30
mBot 單元八:超音波與巡線感測器 ....................................................................... 32
超音波感測器原理 ......................................................................................................... 32
超音波感測器測試 ......................................................................................................... 33
巡線感測器原理 ............................................................................................................. 34
巡線感測器應用 ............................................................................................................. 34
想一想 ............................................................................................................................. 35
mBot 單元九:mBot 自走車 ..................................................................................... 36
上傳 Arduino 程式 ........................................................................................................ 36
自走車實作 ..................................................................................................................... 36
想一想 ............................................................................................................................. 39
Arduino 的奇思妙想 .................................................................................................. 40
Arduino 模擬器 .......................................................................................................... 41
認識 arduino 電路板 .................................................................................................. 44
認識麵包板與電阻器.................................................................................................. 46
認識 LED .................................................................................................................... 47
RGB 三色 LED ........................................................................................................... 49
按鈕 .............................................................................................................................. 50
蜂鳴器與超音波感應器.............................................................................................. 51
伺服馬達 servo ........................................................................................................... 53
可變電阻器 .................................................................................................................. 54
程式碼上傳 arduion 晶片 .......................................................................................... 56
NKNU-Scartch 4060 小車 ......................................................................................... 57
1
RPG Maker MV:做出自己的角色扮演遊戲
一、 開關
1. 在地圖編輯模式(畫面上没有一個個的格子),可選取 A、B、C 層圖塊中的圖形,在
地圖上以左鍵拖曳複製出之前所選取的圖形。亦可在地圖上以右鍵選取再以左鍵拖
曳來貼上所選取的圖形。
2. 先在功能表列以滑鼠點選事件編輯模式的圖示(如 1),然後在地圖上的任何一個格子
(如 2)雙擊滑鼠左鍵即可進入事件編輯器頁面。
3. 如你所操控的角色想和一個非玩家角色【 NPC 】的男孩說話,男孩說 :「你好」,
接著設定男孩身上的 0001 開關這時被開啟,如果你再跟男孩說話,他就不會再說
「你好」,而是改說 0001 開關被打開時所要說的「很高興再次見到你」。
(1) 首先切換到事件編輯模式,雙擊一個空格新增一個人物事件男孩,在事件編輯器
中選取男孩圖片。點擊內容→分頁 1→訊息→【 顯示文字 】,點選頭像後
輸入文字:你好。點內容→分頁 1→遊戲進度→【 控制開關 】,開關選單
個 0001,操作選 ON。
2
(2) 新增事件頁面,條件選當開關 0001 打開時,執行內容→分頁 1→訊息→顯示文
字,文字欄輸入:很高興再次見到你。
(3) 開機如同按鈕,可切換事件模式(變更欲執行的事件頁面)。當一個事件進行到一
個地方,若打開了一個開關如開闢 0001,就像按下了一個編號 0001 的按鈕一樣,
可以執行一個條件開關 0001 被打開的內容頁面,但一個事件只會執行一個事件
頁面的內容,並會選擇一個編號數字大的且合乎條件的事件頁面執行。
開關是跨事件處理的,如在男孩身上開啟 0001 開關,若在女孩身上也設定開啟 0001
開關,那麼女孩也會受到 0001 開關的影響。如果要避免開關被打開後影響到其他事
件,可勾選【 獨立開關 】。
二、 開關實作
1. 檔案→新增專案。Project1 上按右鍵→讀取→兩個地圖範本。將原本 MAP001 刪除。
2. 工具→資料庫→系統→起始隊伍,將玩家角色改為 1 人。
3. 選第 1 個地圖→事件模式→設定玩家起始位置。
4. 選第 1 個地圖→事件模式→快速事件創建→轉移玩家至第 2 個地圖的一個位置。
5. 轉移處前方新增一個門(如!door2)。新增事件頁面,條件選當開關 0001 被打開時,
不放門的圖片(相當於開關 0001 ON 時,門消失)。
6. 門旁邊設一個開關(如!Switch1)。點內容→分頁 1→遊戲進度→控制開關,開關選單
個 0001,操作選 ON。
三、 變數
1. 在功能表列【檔案】→新增專案,然後在 Projet1 上按右鍵→讀取【房子 1】以及【房
子 2】。
3
2. 在房子 1 的桌子旁,雙擊一個空格新增一個 People4 圖片,點內容→分頁 1→訊息→
顯示文字,於文字欄輸入:到水晶前可取得出口密碼。
3. 在房子 1 中牆邊,雙擊一個空格新增一個!Crystal 圖片。
(1) 點內容→分頁 1→訊息→【 顯示選擇 】,選擇 1:按下去,選擇 2:不要
輕舉妄動。
(2) 當按下去,點內容→分頁 1→訊息→顯示文字,於文字欄輸入:出口密碼為 1234。
(3) 當不要輕舉妄動,點內容→分頁 1→訊息→顯示文字,於文字欄輸入:什麼事
都沒發生。
4. 在房子 1 的出口處,雙擊一個空格新增一個!Door2 圖片。
(1) 點內容→分頁 1→訊息→【 輸入數字 】,變數選 0001,數位設定 4 位。
(2) 點內容→分頁 1→流程控制→【 條件分支 】,設定變數 0001,等於常數
1234。
(3) 點內容→分頁 1→遊戲進度→【 控制開關 】,開關選單個,操作選 ON。
(4) 新增事件頁面,條件將開關 0001 打開,圖形無。
5. 在房子 1 的出口處,按右鍵設定快速事件創建→【 轉移 】至房子 2。
四、 寶箱實作
1. 事件模式→快速事件創建→寶箱,內容金幣 100。
2. 雙擊寶箱→內容→點【設置移動路線】→分頁 1→訊息→輸入數字,變數選 0001,
數位設定 6 位。
3. 內容→點【設置移動路線】→分頁 1→流程控制→條件分支,設定變數 0001,等於
常數 123456。勾選創建其他分支。
4. 將原先程式碼(設置移動路線至找到 100G)剪下貼到若的下一行。在其他的下一行,
→分頁 1→訊息→顯示文字,輸入文字:密碼錯誤!寶箱打不開!
5. 設定完之後,事件內容如下:
4
五、 序幕
1. 在功表上點工具→資料庫→系統→起始隊伍,按右鍵刪除所有角色。新增一張没有
任何圖案的地圖,在地圖中間定出玩家的起始位置。
2. 在左上角的其中一個格子,新增一事件頁面,於觸發器設定【 自動執行 】。
(1) 點內容→分頁 2→畫面→【 著色畫面 】,色調選(-255,-255,-255,0) (黑色)。
(2) 點內容→分頁 1→訊息→顯示滾動文字,於文字欄輸入:描述劇情的序幕文字。
(3) 點內容→分頁 2→移動→轉移玩家,將玩家直接指定至序幕後出場的地圖上位
置(如房子 1 上的某一位置)。
(4) 點內容→分頁 1→隊伍→【 變更隊伍成員 】,將欲出場的角色加回來。
(5) 點內容→分頁 2→畫面→【 著色畫面 】,色調選(0,0,0,0)。
六、 儲存專案與部署
1. 作品告一段落可點檔案→儲存專案,在文件→Games 資料夾中可找到所存的專案。
2. 作品完成後可點檔案→部署,選擇支援的平臺輸出,創件發行後可上傳至伺服器
(www)或單機執行(Game.exe)。
七、 分組學習
1. 和同組組員討論後決定一個可以 RPGMV 實作的遊戲主題。
2. 參考劇本範例檔案,和同組組員分工完成遊戲劇本的編寫。
3. 和同組組員合作完成 RPG 遊戲的製作。
4. 作品發表與全班同學分享。
5
mBot 單元一:認識 mBot 自走車
工業機器人
工業機器人是自動執行工作的機器裝置,是靠自身動力和控制能力來實現各種功能
的一種機器,它可以接受人類指揮,也可以按照預先編排的程序運行,現代的工業機器
人還可以根據人工智慧技術制定的原則綱領行動(維基百科)。工業機器人系統由三大部
分:感測部分【 】、機械部分【 】以及控制部分【 】所組成。
圖片來源 https://www.ctimes.com.tw/art/2015/12/251013351950/p2.jpg
什麼是mBot
mBot 是一款可以體驗動手編輯程式、學習電子與機器人學的多功能解決方案﹐透
過執行完整融合 Scratch 2.0 的 mBlock﹐你可以使用藍芽或 2.4G 無線模組與 mBot 連線﹐
而且容易組裝的特性﹐讓你在學習 STEM(科學 Science、技術 Technology、工程學
Engineering、數學 Mathematics)上有無限可能(http://www.smart-robot.com.tw)。
6
mBot零件
mCore主控板
7
規格
程式編輯 透過以 Scratch 2.0 為基礎架構的 mBlock
輸入 【 】、按鈕、紅外線接收器、【 】、【 】
輸出 【 】、【 】、紅外線發射器、 【 】
微處理器 以 ArduinoUNO 為基礎
電源 3.7VDC 鋰電池(可連線充電)或 4 個 1.5V 三號電池(自行更換)
無線連接 藍牙或 2.4GHz 無線連接
外形尺寸 17×13×9 cm 重量 400g 可擴展性 電子零件和開源的 Arduino 相容,可以應用其他的機械零件和電子零件
來製作自己想像中的機器人。
硬體連接
可使用有線或無線方式與 mBot 連接!
【 】 【 】
8
USB連線
可用 USB 連線方式來測試積木執行結果,此時電腦與 mBot 連線進行互動測試,綠旗積
木可以同時有二個以上,可同時執行二個程式,但並未將程式碼寫入 Arduino,且電力
由電腦供給。若是要讓 mBot 車子在地上自走,則需將設計好的程式碼上傳(燒錄、寫入)
到 Arduino,且只能寫入一個主程式,離線自走時電力需由電池供給。
安裝驅動
第二次就不再安裝了喔!
9
2.4G連線
2.4G 傳輸模組是指傳輸電波為 2.4GHz,每組都經過配對,不會相互干擾。
想一想
1. 看完工業機器人影片,想一想未來一旦機器人取代許多人工,我們應如何因應?
2. 想想 mBot 自走車預設的或經過擴充後,可應用在生活上的那些事物上。
3. 如何清除之前 mBot 自走車的設定?
10
mBot 單元二:mBlock 的整合開發環境
mBlock 是以 Scratch2.0 為基礎的圖形化軟體開發環境,擴充 50 多個 Makeblock 機器人
控制指令,支援 Arduino 程式語言及 Makeblock 公司機器人套件,透過拖曳、組合各種
「指令積木」就能完成程式,讓使用者可以更輕鬆的方式創造出互動的應用程式。
mBlock操作介面
11
常用指令區(顔色)
12
mBot常用積木
mBlock積木類型(外形)
類別 形狀 功能
帽子積木
【 】執行程式
堆疊積木
【 】上下積木
布林積木
【 】布林運算的結果(真、假)
C 形積木
控制程式流程
報告積木
傳回偵測的結果(數值或字串)
底部積木
應用於程式【 】
13
想一想
1. 下列兩個程式那裡不一樣?請分別由事件、控制、偵測指令以及執行後的結果加以
分析。
2. 下列兩個帽子積木用途有何不同?
14
mBot 單元三:程式流程控制
mBlock 程式的執行通常是由上而下逐一執行圖形積木【 】,或者設定條件反
覆執行某些區塊【 】,但有時會因為判斷結果的不同而選擇不同的執行路徑
【 】。
循序結構
程式由上至下逐一執行一連串的拼圖程式,其間並沒有分岔及迴圈的情況,常用的拼圖
方塊如下:
1. 等待條件成立
2. 持續前一個動作
3. 停止指定的程式
15
範例 1:
1. 點擊綠旗
2. 初始小熊貓的位置於(0,0)
3. 初始小熊貓的方向為向右
4. 等待使用者按下【上移鍵】
5. 【 】
6. 【 】
7. 【 】
8. 停止程式的執行
分岔結構
根據條件式的成立與否來選擇不同的執行路徑,常見下列兩類型:
1. 單一分岔結構:當條件成立(為真)時,就執行中間積木的成立敘述區塊,當條件不成
立(為假)時,則跳開單一分岔結構區塊,往下繼續執行。
2. 雙重分岔結構:當條件成立(為真)時,就執行成立(為真)的敘述區塊,當條件不成立
(為假)時,則執行不成立(為假)的敘述區塊。
16
迴圏結構
重覆執行某些程式區塊,常見迴圈積木類型如下:
1. 有限迴圈:會重複執行數次(如 10 次)所包含的敘述區塊。
2. 無窮迴圈:會不斷重複執行所包含的敘述區塊。
3. 條件迴圈:重複執行中間的敘述區塊直到條件成立(為真)時,就跳出迴圈往下繼續執
行。亦即先行判斷條件是否成立,若成立就跳出迴圈否則就執行中間的敘述區塊。
17
範例 2:
1. 點擊綠旗
2. 初始小熊貓的位置於(0,0)
3. 初始小熊貓的方向為向右
4. 初始小熊貓的旋轉為左右
5. 初始小熊貓右轉 15 度
6. 【 】
7. 小熊貓移動到舞台邊緣就反彈
8. 如果【 】
9. 說碰到我
10. 小熊貓顏色改變
11. 否則
12. 【 】
13. 【 】
14. 【 】
15. 【 】
想一想
下列程式點選綠旗接著按右移鍵後,小熊貓是否會向右移動?考慮 mBlock 一般程式執
行預設是採用循序結構,請問要如何改進?
18
mBot 單元四:mBot 動起來了
mBot 基本配備的是直流馬達,分別在左右兩側,以電壓大小控制馬達轉速,並透過改
變電流正負方向,控制馬達順時鐘或逆時鐘轉動(https://n.sfs.tw/content/index/10845)。
前進測試
mBot 輸子直徑 6.5 公分,輪子轉一圏 6.5*3.14=20.41 公分,若以轉速 100 持續 6 秒
可移動約 100 公分,但因直流電給予馬達的電力大小不一,雖前進轉速設定為 100,
實際上兩個馬達的轉速稍有不同,因此仍無法走出一直線。
馬達控制指令
1. 雙馬達同步控制指令
可以設定二個馬達同時運轉,前進、後退、左轉、右轉。
2. 單馬達控制指令
可以分別設定左側與右側馬達的轉速。
如果右側馬達的轉速>左側馬達轉速,就會【 】。
如果右側馬達的轉速
19
範例 1:讓 mBot 走正方形 (使用雙馬達同步控制指令)
範例 2:讓 mBot 走三角形 (使用單馬達控制指令)
想一想
1. 讓自走車可以按下某一按鈕後往前;按下另一按鈕則往後;按下另一個按鈕則停止,
想一想怎麼做?若可以,想辦法讓前進與後退皆能是直線。
2. 在不管速度的情況下,請讓你的自走車由起點線往前一秒鐘後,再自行退後一秒鐘,
如此動作做三次後停止。
20
mBot 單元五:變數與副程式
變數是一個「容器」,可以在程式進行中把不同的數值放進去,相對於常數是一個固定
的值,不能被改變。因此變數的「內容」會隨著程式而改變。而副程式是由一段程式敘
述所組成,為具有特定功能的程式片段。副程式並不會自動執行,只有在被別人呼叫時,
副程式才會被執行。mBlock 中善用變數與副程式,可讓程式更具閱讀性、易於維護。
變數
1. 程式區/資料和指令/做一個變數
2. 宣告一個新變數名稱,如速度。其中「適用所有的角色」為「全域變數」,「僅適用
本角色」為「區域變數」。
3. 宣告變數之後在「資料和指令」區可找到之前宣告的變數相關積木,可將變數的值
指定為一個數,亦可透過增加或減少一個數將變數原本的值改變為新的值。
21
範例 1:宣告兩個變數,將兩個變數的值隨機指定,並作為左右馬達的轉速重複執行。
22
副程式
1. 程式區/資料和指令/新增積木指令
2. 給副程式取名,如前進。
3. 定義副程式
4. 呼叫副程式
23
範例 2:宣告一個變數「速度」,並新增一個副程式「減速」,當按下綠旗後,mBot 前
進的轉速由一開始的 200,以每秒下降 40 的速度一直遞減到 0,最後停止。
想一想
如何應用變數與副程式,可在按下自定的不同鍵後,讓 mBot 分別執行前進、後退、左
轉、右轉以及停止等動作?
24
mBot 單元六:光線感測器與 LED 燈
光線感測器(Light Sensor)可偵測光值的強度,傳回值為 0~1023,受光愈強,數值愈大,
藉由讀取光線感測器不同的光值,可以程式積木讓 mBot 進行不同的動作。而發光二極
體(LED)是一種能發光的半導體電子元件,mBot 上有兩個 RGB LED 燈,其中 LED1 為
板載 LED(左),LED2 為板載 LED(右),可分別控制紅、綠、藍 LED 發光的強度(0~255)
以混合出各種色光。
光驅動mBot
1. 將紙張在光線感器的上方移動,觀察光線感測器傳回數值的變化。
2. 以光線感測器的光值(0~1023)來決定 mBot 的馬達轉速(0~255)。
25
範例 1:以手電筒模擬日光,以光線照射 mBot 達一定程度時(如光線值大於 800)自動前
進,移開光源時停止。
燈光秀
1. 紅(Red )、綠(Green)、藍(Blue),此三色均不能再分解,無法再由其他色光混合出來,
稱為色光三原色,在電視螢光幕和電腦顯示器上看到的色彩,均是由 RGB 組成,數
字愈大代表色彩愈亮(255 最亮),所以 RGB 三種色光混合便可以得出不同顏色的光。
彩虹七色的 RGB 值
紅:255,0,0 橙:255,165,0 黃:255,255,0 綠:0,255,0 藍:0,0,255 靛:6,82,121 紫:139,0,255
26
2. 紅綠燈:紅 1 秒,綠 2 秒,黃 0.5 秒。
範例 2:光線亮度小餘某一個數(如 600)時,給予不停地閃紅燈提醒;光線大於某一個數
時,則讓一邊的燈號亮藍燈,另一邊的燈號亮黃燈。
想一想
如何實作具智慧功能的路燈,在白天明亮時關閉 LED,日落昏暗時(如光線值小於 400)
自動開啓路燈。
27
mBot 單元七:mBot 音樂會
mCore 主控板上的蜂鳴器可透過不同的振動頻率發出不同的高低聲音,而使用 mBlock
可設定音樂的音調與節拍,其中音調是聲音的高低,節拍是播放的長短,如此我們就可
輕易地讓 mBot 演奏出優美的音樂!
唱名、音名與頻率
1. 鋼琴鍵盤位置
大調音階音程:全-全-半-全-全-全-半,其中 E-F,B-C;3-4,7-1 半音
28
2. C 大調唱名、音名、頻率對照表
唱名 1 (Do) 2 (Re) 3 (Mi) 4 (Fa) 5 (Sol) 6 (La) 7 (Si) 音名 C2 D2 E2 F2 G2 A2 B2 頻率 65.4 73.4 82.4 87.3 98.0 110.0 123.5 音名 C3 D3 E3 F3 G3 A3 B3 頻率 130.8 146.8 164.8 174.6 196.0 220.0 246.9 音名 C4 D4 E4 F4 G4 A4 B4 頻率 261.6 293.6 329.6 349.2 392.0 440.0 493.9 音名 C5 D5 E5 F5 G5 A5 B5 頻率 523.2 587.3 659.3 698.5 784.0 880.0 987.8 音名 C6 D6 E6 F6 G6 A6 B6 頻率 1046.5 1174.7 1318.5 1397.0 1568.0 1760.0 1975.5 音名 C7 D7 E7 F7 G7 A7 B7 頻率 2093.0 2349.3 2637.0 2793.8 3136.0 3520.0 3951.1 音名 C8 D8 E8 F8 G8 A8 B8 頻率 4186.0 4698.6 5274.0 5587.7 6271.9 7040.0 7902.1
3. 1 = b B 大調唱名、音名、頻率對照表
唱名 1 (Do) 2 (Re) 3 (Mi) 4 (Fa) 5 (Sol) 6 (La) 7 (Si) 音名 b B3 C4 D4 bE4 F4 G4 A4 頻率 234 261.6 293.6 313 349.2 392.0 440.0 音名 bB4 C5 D5 bE5 F5 G5 A5 頻率 467 523.2 587.3 623 698.5 784.0 880.0
※全-全-半-全-全-全-半;E-F,B-C;3-4,7-1 半音
4. 1=F 大調唱名、音名、頻率對照表
唱名 1 (Do) 2 (Re) 3 (Mi) 4 (Fa) 5 (Sol) 6 (La) 7 (Si) 音名 F4 G4 A4 bB4 C5 D5 E5 頻率 349.2 392.0 440.0 467 523.2 587.3 659.3 音名 F5 G5 A5 bB5 C6 D6 E6 頻率 698.5 784.0 880.0 934 1046.5 1174.7 1318.5
※全-全-半-全-全-全-半;E-F,B-C;3-4,7-1 半音
29
節拍
1. 2/2:以二分音符為一拍,每小節有兩拍; 2/4:以四分音符為一拍,每小節有兩拍;
2/8:以八分音符為一拍,每小節有二拍; 3/2:以二分音符為一拍,每小節有三拍;
3/4:以四分音符為一拍,每小節有三拍; 3/8 以八分音符為一拍,每小節有三拍。
2. 音符
範例 1:讓 mBot 來唱一首「小星星」
30
程式積木:
想一想
1. 用摩爾斯電碼發出 SOS 求救信號,是國際通用的緊急求救方式,電碼將 S 表示為”…”
即 3 個短信號,O 表示為”— — —“即 3 個長信號,SOS 就可以用“三短、三長、
三短”的任何信號來表示。試想如何以 mBot 發出求救的信號。
2. 可參考下列「感恩的心」的簡譜、自己喜歡的歌曲,或者是自行創作的曲子,設法
讓 mBot 來演奏。
31
32
mBot 單元八:超音波與巡線感測器
超音波感測器是用來偵測前面障礙物體的距離,透過左邊發射端發出超音波,再根據右
邊接收端所接到反射回來超音波的時間差,就可量得與前方障礙物的距離。而巡線感測
器主要是利用紅外線的發射與接收,將紅外線反射結果判斷為黑色或白色,藉此讓 mBot
沿著黑色或白色行走。
超音波感測器原理
距離=音速(V)*行進時間(T/2)
可檢測範圍:3cm ~ 400cm
33
超音波感測器測試
1. 將手放在超音波感測器前方以測量距離。
2. 讓 mBot 一直往前走,若偵測前方 5 公分處有障礙物時就會停止。
3. 讓 mBot 一直往前走,若偵測前方 20 公分處有障礙物時就會隨機左轉或右轉。
34
巡線感測器原理
巡線感測器的左右兩側各有一組反射式紅外線感測器,透過發射與偵測反射的紅外線來
判斷前方路面為【 】或【 】的狀況。
巡線感測器應用
1. 巡線感測器只能判斷黑色與白色,其判斷所得的回傳值共有以下四種情況:
2. 巡線感測器四種狀態處理方式
(參考 https://mbotandstem.blogspot.tw/2017/04/mbot-line-follow-car.html)
狀態 0(左黑右黑):表示仍在軌道內,應該【 】。
狀態 1(左黑右白):表示車身向右偏離軌道,應該【 】回軌道。
狀態 2(左白右黑):表示車身向左偏離軌道,應該【 】回軌道。
狀態 3(左白右白):表示車身完全偏離軌道,應該【 】。
35
範例:mBot 直線行進時其巡線感測器四種狀態實作 (※轉速請依實際狀況調整)
1. 點擊綠旗
2. 重複執行以下區塊
3. 將巡線感測器值給變
數【 】
4. 如果巡線感測器值=0
就【 】
5. 如果巡線感測器值=1
就【 】
6. 如果巡線感測器值=2
就【 】
7. 如果巡線感測器值=3
就【 】
想一想
如何設定距離障礙物越近時,mBot 車速漸慢且警笛聲與警示燈變快?
36
mBot 單元九:mBot 自走車
我們可事先將寫好的程式碼儲存到 mCore 主控板內,讓 mBot 能在不必受到電腦有線或
無線的控制下,依據各種感測器的感應結果,保持高度的靈敏度自行判斷應該如何避開
障礙物、找出正確的方向前進,以達到具備智慧型自走車的功能!
上傳 Arduino 程式
1. 將 USB 連接線與 mBot 連接,打開 mCore 上電源開關後,點選 mBlock 畫面上的連
接→序列埠→選擇正確的 COM 埠
2. 將之前【當綠旗被點一下】等事件積木,改成機器人模組的【mBot 主程式】,並
依據需求添加自走車的啟動模組如【等待】、【板載按鈕】等積木。
3. 程式積木完成後點選【mBot 主程式】按「上傳到 Arduino」,如此就可以離線的
方式讓 mBot 自走。
自走車實作
1. 構想
(1) 載板按鈕被按下後,mBot 沿著橢圓形黑色線以逆時針方向自走。
(2) 距離前方障礙物小於 5公分時停止。
(3) 使用變數記錄上一次前進、左轉與右轉的狀態。
(4) 應用副程式將程式碼依功能作區分。
(5) 後退副程式應考慮之前轉向狀態,修正左右轉後再作後退。
(6) 實作程式前先以圖形、文字、符號描述想法。
37
2. 流程圖
mBot主程式
按鈕是否按下?
是
與前方障礙物距離小於5公分
是停止
否
巡線感測器值=0是
前進副程式
否
巡線感測器值=1 左轉副程式
巡線感測器值=2
巡線感測器值=3
右轉副程式
後退副程式
是
是
是
否
否
否
38
3. 程式設計
39
想一想
1. 除了以載板按鈕啟動 mBot 外,是否可以其他方式驅動自走車。
2. 如果要讓 mBot 沿著白線自走,上述自走車實作程式應如何作俢改。
3. 思考如何將 mBot 運用於遊戲競賽、走迷宫或其他專題的製作。
40
Arduino 的奇思妙想
一、 創客精神
1. 創客風潮-從「 」到「 」 2. 「創客」英文是__________,是當代潮流趨勢中最被熱烈討論的一
環,同時也被視為是啟動未來創新的重要角色。 3. 過去單向「想」的學習模式,欠缺「實作」,今日創意創新成為競爭
主體的時代來到,翻轉了傳統觀念。
二、 什麼是 arduino
1. 源自義大利米蘭互動設計學院。 2. 是一個開放原始碼的單晶片微控制器,它使用了 Atmel AVR 單晶
片,採用了開放原始碼的軟硬體平台,建構於簡易輸出/輸入(simple I/O)介面板,並且具有使用類似 Java、C 語言的Processing/Wiring 開發環境。
3. 他們保持開放原始碼的原則下,將設計稿放上網路,並在___________許可下,任何人都被允許生產印刷電路板的複製品,還能重新設計,甚至銷售原設計的複製品,所以目前仿間有很多不同
種類的 arduino 板,下圖為三種不同的 arduino 晶片組,分別為LilyPad Arduino、Arduino UNO、Arduino Mega。
LilyPad Arduino Arduino UNO Arduino Mega
想一想:arduino 可以運用在那些電子產品?
41
Arduino 模擬器
一、 Tinkercad 1、 Tinkercad 是一個免費的線上軟體工具集合,可以幫助世界各地的人
們思考、創造和製作,如 3D 設計、電路與程式編寫等。 2、 網址 https://www.tinkercad.com 3、 註冊後方能使用
➀按下註冊按鈕
➁選擇台灣與填寫出生年月日 ➂需有電子信箱方能註冊
➃注意密碼格式 ➄經註冊成功了
42
4、 登入
➀輸入註冊之電子信箱 ➁輸入設定之密碼
➂登入成功畫面
二、 使用模擬器
1、創建一個新的 circuits
點選 circuitscreate new circuit
43
2、模擬畫面
3、程式編撰
按下 code 可進行程式編撰 按 可將程式碼放入 arduino 編輯器
檔名
感測器
模擬執行
模擬區
44
認識 arduino 電路板
一、 Arduino uno
二、 USB 連接介紹
三、 基本控制與檢測
數量:有__________腳位 功能:____________腳位 有~的是_____________腳
位,其功能為
_____________________
數量:有__________腳位 功能:____________腳位
GND:________________ 比一比,二個同是 UNO 有
什麼不同?
45
四、 MBlock 與 arduino
➀安裝完 mblock 後,點選桌面上 mblock 的圖示
➁增加 arduino Uno 的控制板 ➂與電腦連接
(每位同學 COM 不一樣相同喔!)
➃可透過更新韌體,讓連接更順利 ➄積木中多了 ardunio 程式
小試身手
說一說,左邊圖示中紅色區會發生什麼現象?
想一想,高、低電位分別是什麼意思?
46
認識麵包板與電阻器
一、 麵包板
1、功能 麵包板是不需要經過焊接過程,就可以將電路中所使用的電子元件加
以連接。由於不需要焊接,所以在元件裝配過程中,具有快速、易於
更換零件的特性。 2、麵包板連接元件接腳的原理
請參考上圖,想一想,是否相通?
二、 電阻器
1、 功能 控制某一部份電路的電壓和電流比例。電阻越_____,電流越難通過,電阻越______,電流越容易通過。換言之,電阻器是使通過電路的電流保持固定,並根據需要進行調整的元件。電阻器還可以用於降低電壓、
分割電壓。 2、 電阻大小
將塑膠板拆除後,內部線路圖
電阻使用的時機為何?
想一想
47
認識 LED
一、 什麼是 LED
1、 發光二極體(Light Emitting Diode),簡稱為 LED 2、 單向導通時會發光,體積 小 大、不發熱、消耗功率 高 低 3、 廣泛用於各種 3C 中,具警示、通知等功能,例如:_______________
二、 觀察
長腳:______極
腳位:________
短腳:______極
腳位:________
燈光秀
(1) 說明:讓二個以上的燈泡輪來回閃爍
(2) 接腳:請任意決定二個以上燈泡的接腳(0~13)
(3) 注意: 要接地 長腳為正極(0~13)
短腳為負極(GND) 在執行任何移除、拔線動作時,
皆需將電源拔除 三個以上的燈泡建議創立一個新
的變數
小試身手
48
小試身手
搶答燈
(1) 說明: 設置二個不同顏色的燈泡,讓比賽的二方按下不同按鍵,先按
者燈亮,後按者燈不亮 結合鍵盤上的任二個按鈕
(2) 接腳:請任意決定二個燈泡的接腳(0~13) (3) 注意: 長腳為正極(0~13)
短腳為負極(GND) 選擇二個不同的按鍵觸發事件,當一燈亮時則停止程式
(4) 提示:請利用重複與判斷積木
你是否順利完成了呢?
我在製作的過程中遇到______________________問題。
我的解決方法是________________________________。
(5) 奇思妙想:你還可以利用所學的 LED 製作出什麼樣的功能或效果?請發揮你的想像,將你的構圖與說明畫於下面表格中。
49
RGB 三色 LED
一、 說明
一顆 RGB 三色 LED 裡面就有 RGB(紅、綠、藍)三種顏色的 LED。
二、 觀察
四支腳中最長的腳要接地,其他三支腳分別控制 R、G、B 三個顏色。
小試身手
實作
(1) 說明:透過 RGB 數值的調整來讓燈泡展現出不同顏色的變化 (2) 接腳:請有 PWM 的三個接腳(~) (3) 注意: 要接地 RGB 的腳位不要混淆 在執行任何移除、拔線動作時,皆需將電源拔除 建議創立三個新的變數,分別代表 RGB 三個顏色
(4) 提示:
50
按鈕
一、 說明
可以控制通路或斷路的開關,一般使用為按下不放為通路,放開為斷路。
二、 觀察
四腳的開關要注意方向,翻開背面,以中間的溝槽為分界,AB 相連,CD相連,AB 和 CD_______________。
小試身手
利用按鈕控制燈泡的開關
(1) 說明:加入按鈕控制,當按下按鈕時燈炮才發光 (2) 接腳:請任意決定接腳(0~13) (3) 注意:
要接地 按鈕的腳位不可有誤 在執行任何移除、拔線動作時,皆需將電源拔除 建議加入電阻,以免燈泡燒毀
(4) 提示:
51
蜂鳴器與超音波感應器
一、 蜂鳴器
1、 說明 蜂鳴器(Buzzer)是產生聲音的信號裝置,應用包括警笛,報警裝置,火災警報器,防空警報器,防盜器,定時器等。
2、 觀察
二、 超音波感應器
1、 說明 主要有一個超音波發射器和一個接收器組成。HCSR04 超音波感測器特性: (1) 感應角度:不大於________度 (2) 探測距離:______cm~______cm
2、 觀察 感測器有四個接腳:接線方式為 Vcc 接 5V,Gnd 接地,Trig(控制端)和 Echo(接收端)。
_______極,可接
在________腳位
VCC,接在________腳位 GND,接在________腳位
Trig,接在________腳位 Echo,接在________腳位
可以籍由「+」符
號,來判別正負極
_______極,可接
在________腳位
52
小試身手
倒車雷達
(1) 說明:車子後的倒車雷達在什麼時候發出聲響,其製作的原理為何?請結合超音波感應器與蜂鳴器進行製作
(2) 接腳:請任意決定接腳 (3) 注意: 超音波有距離限制 注意接線是否脫落
(4) 提示: 距離愈近,數值愈小,聲響間隔愈短,聲音快 距離愈遠,數值愈大,聲響間隔就長,聲音慢 藉由音調和節拍設定高低音與快慢
(5) 想一想,找一找,你會用到那個積程式?
(6) 程式流程圖
53
伺服馬達 servo
一、 說明
伺服馬達之所以叫做「伺服」馬達,是因為馬達會依照指示命令動作,由
程式控制馬達轉幾度,但伺服馬達有機械結構上的限制,旋轉的角度是 180 度,但並非完全的 180 度,可能是 1 度到 180 度,或是 -2 度到 177 度都有可能。
二、 觀察
由於伺服馬達需要的電流量較大,因此必須採用獨立電源或是直接使用開
發板上頭的 VCC,才能供應伺服馬達足夠的電流量,伺服馬達具有三條電線。 1、 ________:紅色(5V); 2、 ________:黑或棕色; 3、 ________:白、黃、橘、藍,甚至是黑色。 伺服馬達轉到指定角度後會固定在那裡,不可強制轉開,否則馬達裡的齒
輪組會損壞。 三、想一想,以下程式的撰寫會發生什麼事?如何解決?
小試身手 停車管制柵門
(1) 說明:結合超音波感應器與伺服馬達進行製作車輛管制柵門,當車著靠進時,柵門自動開啟。
(2) 接腳:注意伺服器馬達的接腳。 (3) 注意: 超音波有距離限制 注意接線是否脫落 切勿讓馬達不停轉動,以免過熱燒毀
(4) 提示:
54
可變電阻器
一、 說明
可變電阻器可以通過轉軸角度來改變電阻值,通常也被稱為電位器。
二、 觀察
為類比訊號,訊號線置於_____________。
三、 資訊轉換
輸入的電壓是 0 到 5V,讀到的數值為_____到_____,顯示時需要做公式轉換:(電阻 顯示區間)/1023 所以若想讓其值顯示 0~255 可用以下公式:(電阻 ________)/1023
想讓其值顯示 0~180 可用以下公式:(電阻 ________)/1023 想讓其值顯示-2~+2 可用以下公式:((電阻 ________)/1023)_______
四、 類比訊號 vs 數位訊號
類比訊號 數位訊號
訊號數值
波形
特性
範例
55
小試身手
遊戲
(1) 說明:利用可變電阻的電力轉換,來控制小熊貓的左右移動,來接取上方掉取物遊戲。
(2) 接腳:注意伺服器馬達的接腳與類比訊號。 (3) 注意: 馬達容易燒毀,請注意接腳
(4) 提示:
舞台 x、y 座標
掉落物程式 可變電阻程式
(5) 延申思考:這是一個遊戲的胚型,若要增加遊戲的有趣性,你還可以怎麼做?
56
程式碼上傳 arduion 晶片
環保再利用 黑色接負極,紅色接正極,另一條是偵
測風扇轉動速度 黑色線接 GND,紅色線接 D11,另一條
色線接類比腳 A0 PWM 輸出為模擬電壓非真正電壓
資料來源:竹林資訊站 http://blog.ilc.edu.tw/blog/blog/868/post/93477/614292
資訊整合
運用所學玩創意
二人一組利用 LED 燈創作一個作品 遊戲:打地鼠、猜顏色、電流急急棒、投籃機 文字圖形:廣告看板 模擬生活情境:呼吸燈、紅綠燈 手作機器人
57
NKNU-Scartch 4060 小車
資料來源:新市國小蘇建誠老師
58
59
60
61