Robot Arm for micro:bit 機械手臂|奧斯丁國際有限公司 OURSTEAM Internationl
icon教學資源
2022/05/24

Robot Arm for micro:bit 機械手臂

介紹                  

本產品是依 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 個伺服馬達。
注意伺服馬達的線不要接反,否則會轉不動。

注意:
  1. 如果只接 micro:bit 的 USB 供電,擴展是沒有 5V 電源的,無法驅動伺服馬達。
  2. 如果接大功率的伺服馬達可能會出現供電不足的現象,需要接更多的電源。

組裝教學          

教學檔案
 
使用指南          
 
打開 Makecode 編程平台

點擊 Projects > New Project,新增一個專案。

依序點選 Advanced > Extensions,在彈出的搜尋框中輸入「https://github.com/waveshare/pxt-Servo

 
點選搜尋到的 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 通訊
logo
iconiconiconiconicon
icon  電話:04-2375-3535
icon  傳真:04-2256-9949
icon  統編:90386785
icon  E-mail:service@oursteam.com.tw
icon  LINE ID:@oursteam
Inspire every child to create