micro:bit
  • micro:bit全攻略
  • micro:bit基礎實習
  • 認識micro:bit
  • 開始使用micro:bit
  • 計數器實作
  • 麵包板及電源模組的使用
  • LED(燈光)顯示功能
  • 電子輪盤遊戲實作(內建LED篇)
  • 隨機數的應用–猜大小
  • 使用序列埠輸出資訊
  • 三色 RGB LED實習
  • 伺服馬達基礎實習
  • 光敏電阻基礎實習
  • 繼電器基礎實習
  • OLED顯示器實習
  • 超音波測距實習
  • 音樂積木用的接頭
  • 遙控小車硬體組裝及程式入門
  • 小車程式實作
  • 小車遙控程式
  • 開始使用MicroPython
  • MicroPython程式簡易入門
  • MicroPython按鈕控制
  • MicroPython操作每一顆LED
  • MicroPython亂數的應用
  • MicroPython電子輪盤遊戲實作
  • MicroPython輸出入接腳控制
  • MicroPython飄落的雪花及避障遊戲
  • 上傳檔案到micro:bit
  • MicroPython物件導向程式設計
  • MicroPython無線電通訊
  • MicroPython SSD1306 oled實作
  • MicroPython DHT11溫濕度感測器
  • MicroPython光感測器模組
  • MicroPython繼電器應用
  • MicroPython超音波HC-SR04
  • MicroPython伺服馬達操作
  • 專題--燈籠牆實作
Powered by GitBook
On this page
  • 遙控小車簡介
  • 小車驅動積木的安裝
  • 讓小車開始前進
  • 遙控車版本
  • 遙控器micro:bit製作
  • 車子上的micro:bit
  • 比賽影片

遙控小車硬體組裝及程式入門

遙控車有許多種型式,在本單元中我們使用的是現成的套件,在組裝完成之後,直接利用micro:bit的積木就可以馬上驅動,非常方便喔。

Previous音樂積木用的接頭Next小車程式實作

Last updated 6 years ago

遙控小車簡介

本單元使用的遙控小車,是由moto:bit所驅動控制的套件模組。它的規格如下:

我們組裝完成之後,從上面看起來是這個樣子:

近一點看的話,如下:

它的底下有3個紅外線感測器,可以用來做自車循跡之用:

整個架構還有許多的空間,可以讓我們多加裝一些裝置上去,之後我們會再教如何新增額外的感測器以及裝置:

小車驅動積木的安裝

由於這台小車的開發公司已經做好了一些現成的積木可以使用,所以我們要做的只是先把他們做好的積木拿進來使用就可以了,請到micro:bit的環境,找到「擴展」積木的功能,如下:

在擴展積木的介面中輸入moto:bit搜尋,即可找到控制小車用的積木:

點選這個積木之後,回到程式設計環境,就可以看到多出來的控制積木了,如下所示:

在moto:bit的積木中總共有3個積木可以使用,分別用來控制馬達的開以及關,還有左右馬達前進還是後退的速度,以及設定馬達的轉向等。

讓小車開始前進

假設我們想要讓小車在按下A按鈕是左轉一圈,B按鈕時右轉一圈,則可以設計以下的程式積木:

上面的程式燒錄完成之後,小車就會在按下按鈕之後進行原地迴圈的功能。但是,如果要讓小車遶大一點的圈圈的話,那麼另外一輪就不能都不動,而是要跟著動,但是要慢一些,由於比較大圈了,所以中間暫停的時間也就可以改長一點,程式修改如下:

接下來,我們也可以加上同時按下A和B按鈕時,車子可以直行前進,程式積木如下:

在充分練習之後,同學們自己是否可以想出更多有趣的組合了呢?以下是一個繞S形的版本,同學們也可以試試看自己的版本喔。

遙控車版本

由於 micro:bit本身即具有無線電廣播的能力,因此拿另外一片來當做遙控器是再好不過了。接下來我們來看看如何達成遙控的功能。

遙控器micro:bit製作

要做一台遙控車,除了車子本身要有被遙控的能力之外,當然還要有遙控器才能夠用來控制車子。因為micro:bit預設有無線電廣播的功能,因此可以很簡單地就製作出搖控器。micro:bit的廣播積木有以下這幾種:

由於板子可能會同時很多片在附近,因此要使用無線電廣播的第一件事,就是讓兩片或多片彼此想要通訊的板子使用相同的廣播群組,這個設定的工作,請在一開始「當啟動時」的積木中設定使用,如下所示:

所以,在這個例子中,搖控器和車子上的板子,都要設定如上所示的相同群組。而廣播的內容可主要有三種型式,第一種是傳送一個數字,第二種是傳送一個「鍵--值」對,第三種則是傳送一段文字。為了簡化示範的內容,在這個例子中我們只打算傳送數字,利用不同的數字內容,來決定要如何控制車子的行動。

在此,我們定義的控制鍵如下:

遙控器操作

傳送之數字

代表意義

A

1

左轉

B

2

右轉

A+B

3

前進

雖然在上面的表格中我們列出當按下A按鈕時會左轉,但是在遙控器的動作其實只是廣播數字1出去而已,真正左轉的動作,是在車子上的micro:bit板子中要做的回應操作,另外兩個按鈕方式也是同樣的情形。

遙控器上的完成程式積木如下:

遙控器的程式就這麼簡單喔。

車子上的micro:bit

前面的遙控器只是負責下命令,真正要讓車子前進或轉彎的操作,是在車子上的板子來完成的。對於車子上的micro:bit而言,第一件事也是要設定和遙控器上相同的廣播群組,接著就根據收到的數字,決定要進行的操作。設定廣播群組的積木如下:

為了簡化程式的設計,先來分別設計出左轉、右轉、和前進的函式。建立函式的位置如下:

在按下建立一個函式按鈕時,micro:bit會詢問我們要建立的函式名稱,我們可以使用中文名字「左轉」來命名。命名完畢之後,就可以看到「左轉」這個函式了:

接下來依序建立右轉以及前進這兩個函式,如下所示:

當函式名稱命名之後,就可以在程式設計區分別為這些函式進行定義,前進的函式定義如下:

上面這段程式積木可以讓車子前進0.5秒。接著左轉:

以及右轉:

同學們可以分出它們之間的差異嗎?

有了這些積木之後,接著就可以利用廣播所收到的數字,決定要驅動哪一個動作了,程式如下所示:

同學可以修改上述程式積木的數字,實際上遙控看看喔。

比賽影片

https://www.facebook.com/wesleyscratch/videos/506461176498336/
micro:bot kit for micro:bit-v2.0 機器人自走車套件 SparkFun原廠台灣物聯科技 TaiwanIOT Studio
Logo