Webduino 顧名思義,就是 Web + Arduino 的合稱,早在 2012 年就已經有這個名詞出現,但一直都停留在撰寫 Arduino 韌體程式,網頁程式只是輔助的階段,開發模式仍然得透過 USB 連線燒錄,無法真正發揮 Web 的強大功能,即便是藉由一些 Wi-Fi 晶片讓 Arduino 上網,但仍然脫離不了傳統的晶片韌體開發模式。
直到 2015 年,使用 Webduino 技術的開發板,終於可以純粹使用 Web 的技術來控制,除了可以讓原本的 Arduino 上網,更可以「雲端更新韌體程式」,「用各種程式語言開發」以及「使用 Wi-Fi 控制」,不再只需要 C/C++ 才能進行開發,更因為網頁技術原本就是可以跨平台、跨裝置,所以也就不受限於 Arduino,舉凡 Resberry Pi、esp8266...等之類的開發板也都適用,正因如此,開始有更多的網頁工程師們參與開發,也才能讓「物聯網」這三個字發揮出出真正的價值與意義。
要說是 Webduino 開發模式,不如說是「Web 開發模式」,簡單來說就是如果要「透過網頁」控制物聯網的開發板,就必須在網頁裡頭載入對應的 JavaScript,這樣才能使用對應的 API 來操控 開發板的腳位 ( 其實就跟網頁載入 JQuery 一模一樣 ),舉例來說,當我們已經載入了對應的 JavaScript,只要網頁裡綁定一個 led.on()
的事件,對應的 led 燈就會亮起。
常見的物聯網連線控制的方法有四種:**網際網路控制 ( W-Fi )、區域網路控制 ( WebSocket )、藍芽 ( Bluetooth ) 和序列埠 ( Serial Port ),**這四種方式各有各的好處,舉例來說要在台灣控制美國的裝置,就必須使用 Wi-Fi 控制,如果要一次穩定的控制「手邊的」多台裝置,就可以考慮 WebSocket 和 Bluetooth 連線,如果只想單純接線控制,就可以採用 Serial Port 的做法。
優點
缺點
不過雖然說網頁很依賴網路,但透過「藍芽」或是「序列埠」的方式,仍然可以在沒有網路的情形下,打開「本機的網頁」運行,但相對的就沒有跨地區以及遠端控制的能力了,以上介紹的幾種控制方式,現在ˋ市面上許多物聯網的開發板也陸續都有支援,而在這系列的文章裡,使用的是 Webduino 開發板,以下提供一些 Webduino 的開發資源,有興趣的人就可以參考看看。
最後補上一張 Webduino 和 Arduino 的差異圖給大家參考,下一篇將會開始智慧插座的組裝囉!
謝謝你的分享!
我本身是寫前端的,幾個月前開始接觸到Arduino,這個月自己買了一個Arduino UNO,
正想怎麼用javascript 和 前端技術結合XD!
謝謝你的分享!
我本身是寫前端的,幾個月前開始接觸到Arduino,這個月自己買了一個Arduino UNO,
正想怎麼用javascript 和 前端技術結合XD!
/images/emoticon/emoticon58.gif