以下的 Demo 影片示範以 PFx Brick 的兩個 Motor Ports 驅動一個具有: 抓取' 抬起' 旋轉等三個動作(自由度)的搬運設備, 包含了兩個主要功能:
- 抓取機構: 將貨物 抓取後抬起 或 放下後釋放 的功能.
- 旋轉機構: 以 順時針 或 逆時針方向 旋轉抓取機構的功能.
同時配合機構的運作, 再加上音效與燈光等警示效果, 一方面可凸顯不同作業時的特性, 亦能夠模擬真實世界的作業實況, 這些都是 PFx Brick 團隊推出這項產品的企圖心.
PFx Brick的控制界面設定
PFx Brick 具有兩個 LEGO Power Functions Ports, 一個 8 Channels 的 Lighting Dock 以及一個外接喇叭, 其中 Lighting Dock 目前可以接兩種介面板, 分別是傳統 LED 與 Brickstuff 的高亮度 Pico LED, 前面影片中的警示燈即是使用此種微型 LED 燈.
PFx Brick 內建 Flash memory 用來儲存 設定資料(Profile) 與 音效檔, 不同於 SBrick 是將 Profile 存放在手機端, 會這樣設計的原因是為了要能夠同時提供 手機(BLE) 與 LEGO IR 遙控器兩種無線控制方式.
因此, 在手機上所使用的 PFx Mobile App 控制界面也是模擬目前 LEGO 兩種不同類型的 IR 遙控器, 分別如下圖左側的 8879(Speed Remote Control) 與右側的 8885 或 EV3 IR Beacon.
這兩種控制界面都具有對應 LEGO IR 遙控器相同的控制項, 所以當完成了所有控制項的設定並將 Profile 下載至 PFx Brick 之後, 則無論是使用手機 或 IR 遙控器, 操控的方式都將會是一樣.
PFx Brick 的 Profile 透過電腦端的 PFx Desktop APP 進行設定, 在示範影片中採用如下圖的 Dual Joystick 控制界面, 共有 7 個控制項, 分別對應遙控器左' 右兩邊搖桿的前推' 後拉與置中 以及 EV3 Beacon 按鍵等 7 個動作:
每個控制項包含三種設定項目: Motor Action' Light Action 以及 Audio , 以下就示範影片中兩個主要功能的設定方式進行說明:
(1) 抓取機構設定:
如下圖, 以控制界面右側的上' 下鍵分別設定為操控: 將貨物抓取後抬起 以及 放下貨物後釋放 等兩個 Actions, 這是運用單一馬達完成兩個自由度的動作(也稱為 Underactuated Mechanism), 其中向上鍵的設定內容如下圖右邊 [Edit Action - Right Joystick Forward] 畫面所示:設定的內容如下:
- Motor Action: 當持續按著向上鍵時, 接在 Port B 的馬達會以 50% 的 Speed 運轉, 此時抓取機構會開始夾住貨物, 一旦夾緊之後隨即將貨物抬起.
至於向下鍵的 放下後釋放 反向動作設定, 則只需於 [Right Joystick Forward] 控制項中將 Motor Speed 改成 -50% 即可. - Light Action: 當 Motor Action 啟動時, 8 個 Channels 的 Pico LED 會依單' 雙數順序, 以間隔 1 秒的週期交替輪流顯示, 作為抓取動作時的警示燈號.
- Audio: 當 Motor Action 啟動時, 會以外接喇叭播放 Servo2.wav 音效檔, 作為抓取機構的運轉音效.
當放開按鍵時, 會中止馬達的運轉以及關閉警示燈顯示與音效的播放, 這些動作設定於 [Right Joystick Center] 控制項中: (如下圖)
(2) 旋轉機構設定:
如下圖, 以控制界面左側的上' 下鍵分別設定為: 將機構順時針與 逆時針旋轉 等兩個 Actions, 其中向上鍵的設定內容如下圖左邊 [Edit Action - Left Joystick Forward] 畫面所示:設定的內容如下:
- Motor Action: 當持續按著向上鍵時, 接在 Port A 的馬達會以 67% 的 Speed 運轉, 此時機構會 往右以順時針方向旋轉.
至於向下鍵的逆時針旋轉動作設定, 則需於 [Left Joystick Forward] 控制項中將 Motor Speed 改成 -67% 即可. - Light Action: 當 Motor Action 啟動時, 右側的前方向燈(編號: 6' 7' 8) 與 後方向燈(編號 4) 等 4 個 Pico LED 會閃爍顯示, 作為旋轉動作時的方向指示燈號.
而向下鍵的逆時針旋轉動作, 則改為使用編號 1' 2' 3 與 5 等 4 個位於左側的 Pico LED. - Audio: 當 Motor Action 啟動時, 會以外接喇叭播放 ReverseBeep1.wav 音效檔, 作為旋轉動作時的警示音效.
當放開按鍵時, 會中止馬達的運轉以及關閉警示燈顯示與音效的播放, 這些動作設定於 [Left Joystick Center] 控制項中: (如下圖)
透過 Underactuation 增加機構自由度(DOF)的方式
PFx Brick 只有兩個 Motor Ports, 通常以兩個馬達驅動的機構至多僅能有兩個動作 (DOF 自由度), 不過由示範影片中可以看出整個機構實際上共有三個動作: 抓取' 抬起(或 放下' 釋放)與 旋轉, 這是因為在抓取機構中使用了 Under-actuation 的設計: 以一顆馬達來完成兩個動作. 運作的方式參考下圖說明:
上圖的抓取機構中, 輸入齒輪(1) 的動力來源為馬達, 再透過 惰齒輪(2) 將動力傳遞給 輸出齒輪(3), 當馬達開始運轉時, 輸出齒輪(3) 會驅動夾具機構夾緊物品, 而一旦物品被夾緊而造成 輸出齒輪 停滯(halted)時, 原 惰齒輪 的角色將會轉變成 輸出齒輪 將被夾緊的物品舉起, 因此而完成了兩個自由度的動作, 這是克服 PFx Brick 只有兩個 Motor Ports 而增加機構自由度比較簡易的方式.
另外, 也可以在同一個 Motor Port 上接兩個馬達同時運轉, 不過這樣必須考量運作的協調性, 機構設計上較複雜也更耗費電力.