介紹
本產品是依 micro:bit 開發的 PWM/伺服馬達擴充板,透過 PCA9685 晶片擴展 16 路伺服馬達控制或者 PWM 輸出,每個通道 12 為分辨率。
透過 I2C 接口控制,無需佔用額外的引腳。搭載 5V 穩壓晶片,可接電池供電,最大輸出電流 3A 電流。適合用於控制機械手臂,以及各種伺服馬達機器人。 產品特性 - 輸入電壓:6V~12V
- 伺服馬達電壓:5V
- 邏輯電壓:3.3V
- 驅動晶片:PCA9685
- 控制接口:I2C
- 產品尺寸:65mm x 36mm
- 固定孔孔徑:3mm
硬體介紹 板子可透過左邊綠色端子 VIN 接電池供電,輸入電壓範圍 6V~12V。內建的 5V 穩壓晶片最大輸出為 3V 電流;也可透過右邊 USB 接口供電,輸入電壓為 5V。
5V 電源經過 3.3V 穩壓再給 micro:bit 供電。
最上面的排針是伺服馬達接口;黑色排針是 GND(大部分伺服馬達對應的是褐色線);紅色排針是 5V 電源;黃色排針是 PWM 信號線,有 0~15 個通道,可以同時接 16 個伺服馬達。
注意伺服馬達的線不要接反,否則會轉不動。
注意: - 如果只接 micro:bit 的 USB 供電,擴展是沒有 5V 電源的,無法驅動伺服馬達。
- 如果接大功率的伺服馬達可能會出現供電不足的現象,需要接更多的電源。
組裝教學 使用指南
點選搜尋到的 Servo 專案,點選新增就可以透過積木控制擴充板了
※若是無法新增,請手動擴充積木,步驟如下:點選右上角齒輪,選擇「Project Settings」
選擇「Edit Settings As text」
新增擴充積木文字代碼
"Servo": "github:Waveshare/pxt-Servo""microphone":
"*", 後面記得加
逗點,
文字代碼新增後按
F5或
網頁重新整理鍵即可完成擴充
※此步驟請自行key in不要複製,以免因字型或空格位置跑掉造成擴充失敗※新增完成後,左側選單會出現 servo 選項,右邊有兩組可控制伺服馬積木。 下圖為控制伺服馬達角度的積木,範圍是 0~180 度,可選擇 0~15 個通道。 也可透過下面這個積木設定脈寬,範圍是 500~2500。啟動脈寬和角度的對應關係如下:
500 -------0度
1000 -------45度
1500 -------90度
2000 -------135度
2500 -------180度
控制伺服馬達非常簡單,直接設定通道和角度或者脈衝就可以了。
以下程序就是設定 0 和 1 通道的伺服馬達為 90 度。運行程序後伺服馬達會轉動到 90 度的位置,如果伺服馬達已經是 90 度,則伺服馬達會不動繼續保持在 90 度的位置。
編程示範操作 在此提供數個範例,程序是 HEX 文件,可直接複製到 micro:bit 或是使用 Makecode 編程平台查看。 範例一:microbit-Servo
控制 16 個通道的伺服馬達在 0~180 度範圍內不斷轉動。
item 變量表示當前的角度。Flag 每次轉動的步長:正數表示正轉;負數表示反轉。每 20ms 轉動一次。
0~15 通道的伺服馬達從 0 度轉動到 180 度,然後又從 180 度轉動到 0 度,不斷重覆。改變程序中的延時函數可以調整伺服馬達的轉動速度。
範例二:microbit-Servo-Key
透過 AB 鍵控制 0 號伺服馬達正反轉,按 A 鍵正轉;按 B 鍵反轉。
pos 變量表示當前的角度。step 每次轉動的步長:正數表示正轉;負數表示反轉。每 20ms 轉動一次。調節延時函數可改變伺服馬達的轉動速度。
將程序下載到 micro:bit 中,伺服馬達連接到 0 號通道就可以透過 AB 鍵控制轉動了。
範例三:microbit-Servo-Bluetooth
透過藍芽遙控 0~4 個通道的伺服馬達轉動,如果將伺服馬達安裝到機械手臂上就可以透過手機 APP 控制機械手臂了。
以上是藍芽遙控程序,其中 pos0~pos3 表示當前通道 0~3 的角度,step0~step3 表示步長:正數表示正轉;負數表示反轉;0 表示停止轉動。
當 micro:bit 接收到 app 發出的指令,則設定對應的 step 值控制伺服馬達轉動。step 不為 0 時修改當前角度 pos,並控制伺服馬達轉道對應的角度。(注意要控制 pos 角度在 0~180 度範圍內)
※僅支援 Android 系統※
安卓藍芽控制 App
打開 APP,典籍右上角的選項進入設定。將 Filter unpaired micro:bit from scan result? 不勾選。否則搜索列表會過濾掉沒有配對的設備,噵致搜尋不到 micro:bit。
搜尋 BBC micro:bit 並連接。成功後點擊類似遊戲手柄的圖標進入控制頁面。
操控介面有八個按鍵,可控制 0~3 通道的伺服馬達正反轉。注意:新增藍芽需要點選右上角設定圖標選擇 project settings。選擇 No Pairing Required: Anyone can connect via Bluetooth。表示連接前不需要配對。
範例四:microbit-Servo-Radion
透過 micro:bit 的 2.4G 通訊遙控伺服馬達。2.4G 通訊需要兩個 micro:bit,一個接 Joystick for micro:bit 手柄作為發送端;另外一個接到 servo Driver for micro:bit 作為接收端控制伺服馬達或機械手臂。發送端程序:接收端程序:程序含藍芽程序類似,pos0~pos3 表示當前通道 0~3 的角度,step0~step3 表示步長:正數表示正轉;負數表示反轉;0 表示停止轉動。
遙控端下載發送程序,伺服馬達控制端下載接收程序,就可透過 Joystick for micro:bit 手柄控制轉動。
藍芽和 2.4G 更詳細的教學可以參考 KitBot for micro:bit 教學
藍芽控制
2.4G 通訊