2019-05-23

慧編程 mBlock 5 簡易教學 - 上傳模式廣播 (mBot篇)


慧編程 mBlock 5以Scratch 3.0為基礎,讓大家能夠輕鬆控制mBot, 程小奔等機器人,同時增加許多新功能。

由於程式編寫分為「設備」及舞台上的「角色」,兩者程式的指令不再互相通用,所以如果希望機器人設備與舞台上的角色互動,就需要透過「變數」與廣播訊息,傳遞資訊。這樣的設計方式雖然比較不直覺(對於mBlock 3的老用戶而言更是不習慣),但是兩種主體間的程式獨立操作,除了方便不同程式語言的轉換(mBot的C++語言,舞台角色的Python語言);更棒的是程式較為單純,編譯執行也更迅速。


但是Scratch的訊息廣播與變數傳遞,需要由電腦端控制設備,不論是USB傳輸或是藍牙傳輸,都會延遲程式執行的反應時間。另外的問題就是mBot需要更新韌體,無法單獨執行程式。

為了解決mBot機器人獨立執行程式,又能回傳電腦端相關資訊,mBlock團隊發展出「上傳模式廣播」功能。

首先mBot設備及舞台上的角色都需要分別添加擴展。

接著分別針對機器人設備及角色撰寫程式,如下:


貓熊的程式很簡單,按上下鍵,就送出上傳模式廣播的訊息(分別是1與2)。

mBot機器人的程式也很簡單,收到上傳模式的廣播訊息,就點亮mCore上面的LED燈。


記得上傳程式之後,還是需要打開USB(藍牙)的「連接」!

以上的程式是單方面控制,從貓熊下令讓mBot發光。(鍵盤-->貓熊-->mBot)

那麼反向操作,希望用mBot操控貓熊呢?

改寫一下程式就OK。下面是貓熊的修改程式,


增加了一個帽子命令,「當我收到上傳模式消息STOP」,這是接收端,讓貓熊飛上天空再掉下來。

接著是mBot的程式修改:


 沒錯,加了「當mCore啟動時」的帽子命令,裡面是個重複執行,以及如果命令。

同樣請記得連接COM Port,再點擊上傳程式。

按下mBot的板載按鍵,就能夠命令貓熊跳起來。

趕快進入mBlock 5慧編程試試!下課!





沒有留言:

張貼留言

探奇歡迎大家留言討論!謝謝分享你的意見。