搖桿

在許多遊戲機裡,搖桿是標準的遊戲機配件,一個搖桿可以發出三種訊號,分別是左右、前後以及按下去的時候,我們可以透過 Webduino 來偵測搖桿的訊號,進一步就可以用搖桿控制車子、機器人或一些實體裝置,做出許多有趣的應用。

範例影片展示

接線與實作

搖桿總共有五支接腳,分別是 GND、5V、VRx、VRy 和 SW,VRx 和 VRy 要接類比腳,這裏分別接在 A4 與 A5,SW 接 10 號腳,我們可以想像 SW 是一顆按鈕,因此接法在 GND 與 5V 之間必須加入電阻,避免按下按鈕的時候短路,但又因受限於搖桿本身的電路設計,必須採用上拉電阻的做法,也就是電阻接在 5V 的地方,訊號源也跟 5V 相連接。

由於 Webduino 支援開發板種類只會越來越多,接線圖先使用 Fly 示範,對於其他開發板來說,只要 VRx、VRy 接類比腳,SW 接數位腳 ( 數字 ),仍會一樣的效果

接線示意圖:

Fly 接線搖桿

實際接線照片:

Fly 接線搖桿

Fly 接線搖桿

基本操作

打開 Webduino Blockly 編輯工具 ( https://blockly.webduino.io ),因為這個範例會用網頁「顯示文字」來顯示搖桿動作的訊號,所以要先打開 Webduino Blockly 的網頁互動測試區,下拉選單選擇「顯示文字」,此時在右下角會出現對應的積木功能可以選擇。

網頁互動區

把開發板放到編輯畫面裡,填入對應的 Webduino 開發板名稱,開發板內放搖桿的積木,名稱設定為 joystick,腳位 X 設定為 A4、Y 設定為 A5、SW 設定為 10。

搖桿相關功能積木,在「輸入輸出 > 搖桿」目錄下。

搖桿積木

放入「joystick 開始偵測」以及「顯示」的積木,在搖桿有動作的時候,將 X 軸的數值顯示在網頁中。

搖桿顯示數值

因為搖桿會回傳五個數值 ( X、Y、SW ),但文字顯示欄位只有一個,為了可以一次將所有數值顯示出來,所以要使用「建立字串」的積木,利用藍色小齒輪,增加三個缺口,這樣就可以一次顯示三個數值。

建立字串的積木在「基本功能 > 文字」目錄下。

建立字串

把建立字串的三個缺口分別放入 X、Y 和 SW 的數值,執行之後就會顯示三個數值在網頁上。

取得搖桿數值

但是只有數值不夠,更好一點應該標示出數值的意義,所以這邊要用到二層的「建立字串」積木,裡面放入搖桿數值名稱,至於要取出何種數值,可以透過下拉選單選擇,如果覺得字體太大,可以設定文字大小,這裏設定為 20。

文字輸入在「基本功能 > 文字」目錄下,字體大小在左側最下方「顯示文字」目錄下,<br/>表示換行。

搖桿數值顯示

因為 X 和 Y 都是類比訊號,會出現很多小數點,如果不想要這麼多小數點,可以對數字四捨五入,看起來的數字就會漂亮許多。

四捨五入的積木在「進階功能 > 數值轉換」目錄下。

搖桿數值轉換

填入裝置 Device ID,確認開發板上線,點選右上方紅色按鈕執行,用手指操控搖桿,就可以看到網頁的數值發生變化了。

範例解答 ( 雲端平台 ):https://blocklypro.webduino.io/?demo=demo-area-01#kEqjMOb9mj

範例解答 ( 體驗版 ):https://goo.gl/so99DU

相關參考