★本系列文章已集結成冊,和系列文不同的是:
- 本書使用大量的圖解來說明LED系列、多種感測器等原理。
- 補足系列文程式碼的解說,增加逐行程式碼的詳細解說!
- 全彩的書籍,用圖解的方式,讓讀者來理解Johnny-Five各種API的功能與效果,讓你不會只讀文字看到想睡覺而學不起來。
歡迎大家做出自己想要的玩具,為了樂趣而學習,讓學習變成你的樂趣!ヽ(・×・´)ゞ
讓Arduino也能用JavaScript創造出屬於自己的作品!★購書連結-天瓏網路書局:
https://www.tenlong.com.tw/products/9789864345328《IoT沒那麼難!新手用 JavaScript 入門做自己的玩具!(iT邦幫忙鐵人賽系列書)》
博客來、金石堂、momo、誠品、PChome、讀冊,均有販售喔!─=≡Σ((( つ•̀ω•́)つ
ISBN:9789864345328
續 昨天 沒講完的實作和有些不完整的地方.....<(_ _)>
使用 Johnny-Five 的 Accelerometer
物件屬性,controller
key值為選填;
Johnny-Five 附表列出目前加速度計有支援的型號,controller
填上使用的加速度器字串即可;
如果沒填寫特定的 controller
參數的話,預設值為'ANALOG'
;
使用特定的 Sensor 若對應到 Johnny-Five 清單中特定的controller
字串值,則可以填寫該 Sensor 特定選填的物件屬性。
舉例來說:
如果物件 controller
值為 'ANALOG'
,則可以填寫 Analog 選填屬性。
Accelerometer Parameters -
http://johnny-five.io/api/accelerometer/#parameters
Accelerometer
物件 返回值使用 Jonny-Five 的Accelerometer
物件,會返回 X
、Y
、Z
軸的變化數值。
其他返回的資料還有
謎之音:有看沒有懂,木sasa的(台語)...
本魯宅:沒關係,我也是搞了很久才懂QQ
如果用文字說明俯仰角、滾轉角、傾斜度(搖動軸),不吐血才怪....
我們用圖片和動圖來解釋這些這些分別代表什麼,繼續看下去~(; ・´д・´)
首先我們要先了解空間概念!
我畫了一張圖幫助解釋 X、Y、Z 軸的對應位置。
黃色方塊代表加速度計:
我們現在的視角就和左邊的立體圖一樣,用生活一點用語表示,假設現在有一個黃色物品在面對你的方向動來動去
那麼
X 軸 就是 左右方向 動
Y 軸 就是 前後方向 動
Z 軸 就是 上下方向 動
右邊的圖則是我們從上往下看黃色物品的運動方向軸,下面解析轉動的名詞各代表什麼意思。
roll 滾轉角
roll 就像小寶寶翻身滾動一樣,roll
為滾動的數值。
當物品平放向右翻轉時,值為遞增,反之當物品向左翻轉時,值為遞減;
PS:圖畫錯了...圖中的X軸為Y軸才對...Sorry
動作示意:
pitch 俯仰角
pitch 就像飛機飛起來拉升機身、降落機鼻往下機尾朝上一樣!
pitch
是指物品在平行於 X 與 Y 軸,開始運動時固定於 Y 軸, X 軸向 Z 軸運動。
俯角方向數值為正值,仰角方向轉動為負值。
PS:圖又畫錯了...圖中的X軸和Y軸交換才對...Sorry again..
動作示意:
inclination 傾角
inclination 像轉轉盤,物品垂直於 X 與 Y 軸,開始運動時固定於 Y 軸,由 X 軸向 Z 軸傾斜。
順時針方向傾斜為正值,逆時鐘方向傾斜為負值。
PS:圖又又畫錯了...圖中的X軸和Y軸交換才對...Orz..
動作示意:
恩~看動圖解析這樣應該有了解一點吧!不難只是要想一下要怎麼解釋....
本魯心之音:我只感受到痛苦...校稿時發現圖全畫錯...( ✘Д✘ )
我們就用昨天的程式碼來驗證剛剛解釋的,順便了解一下各個物件屬性。
y
& roll
當我滾動加速度感應器 - ADXL345,可以看到 y
和 roll
會隨著左右滾動數值而不同。
x
& pitch
當我改變俯仰角度的時候,可以看到 x
和 pitch
會隨著俯仰角上下數值而不同。
inclination
當我轉動加速度感應器的時候,可以看到 inclination
會隨著轉動的大小數值而不同。
這篇是以 Johnny-Five 提供的Accelerometer
物件加上硬體ADXL345 (I2C)
來說明,
希望用動圖來讓大家比較能理解三軸的定位與動作,利用這些原理來做出好玩的東西!
這樣加速度計的返回值講解的差不多了~
明天會結合前端網頁來實現看起來很狂的東西,今天講解到這了~
謝謝大家收看囉(๑´ㅂ`๑)
PS:如果有寫錯,請回文告知感謝大大們....
本篇本系列動圖最多的一篇吧....
一直看到麵包板在轉看到有點想吐....
本系列的程式碼皆會上傳到 GitHub 上開源
2019ironman-JS-IoT :
https://github.com/tinatyc/2019ironman-JS-IoT
喜歡按個星星吧~乾蝦乾蝦<(_ _)>
團隊系列文:
CSScoke - 金魚都能懂的這個網頁畫面怎麼切 - 金魚都能懂了你還怕學不會嗎
Hina Hina - 陣列大亂鬥
阿斬 - Python 程式交易 30 天新手入門
Clarence - LINE bot 好好玩 30 天玩轉 LINE API
塔塔默 - 用Python開發的網頁不能放到Github上?Lektor說可以!!
Vita Ora - 好 Js 不學嗎 !? JavaScript 入門中的入門。
同步連載於blogger-King 學習前端之人生
感覺可以 Arduino 做 Joycon,然後 Client 端用 Canvas 寫遊戲,後端靠 Socket.io 來實現 WindowXswitch or MacXswitch
施主...
饒了我QQ 怕...下一屆鐵人賽換你寫!(恩!就這樣決定了X
先讓我研究 Canvas 先 XDDD,順利的話明年再寫
你是真.勇者工程師!
(已截圖存證XDD