感謝Raspberry Pi台灣樹莓派Sosorry的邀請,筆者將擔任MakerConf 2016工作坊的其中一位講師,工作坊的各個議程與講師群,請參閱MakerConf 2016首頁介紹。筆者的工作坊主題是「ESP8266與Node.js物聯網開發實作」。
Arduino 4×4薄膜鍵盤模組實驗(三):結合LCD顯示器的密碼輸入介面
本文將結合4×4薄膜按鍵以及文字型LCD顯示器,製作一個密碼輸入介面。程式一開始在LCD顯示兩列文字,第0列始終顯示“Knock, knock…”(敲、敲…)。第1列提示用戶輸入密碼(pin number):
Arduino 4×4薄膜鍵盤模組實驗(二):減少佔用Arduino的數位接腳
連接一個4×4薄膜鍵盤要佔用8個數位腳,若數位腳不夠用,有一種簡單、經濟的解決方法:使用數個電阻構成分壓電路,不同的按鍵將產生不同的電壓輸出,因此只須佔用一個Arduino的類比輸入腳。
Arduino 4×4薄膜鍵盤模組實驗(一):按鍵掃描程式原理說明
下圖左是一款常見的薄膜按鍵模組(hex keypad),有4×4或3×4(少了最右邊一行的A, B, C, D鍵),它的內部如同下圖右邊的電路所示,是由16個按鍵(開關)交織而成。有些按鍵模組直接使用按鍵(微觸)開關組裝,連接電路與程式都和本文相同。
在ESP8266的SPIFFS檔案系統存放網頁檔案(三):Wi-Fi無線網路燈光控制與調光器
本單元的程式修改自《超圖解物聯網IoT實作入門》第13章「使用ESP-01模組開發Arduino物聯網」單元,程式架構不變,只是把原本引用自CDN網路的jQuery程式和CSS樣式,改成存入ESP8266控制板的SPIFFS記憶體區域。
在ESP8266的SPIFFS檔案系統存放網頁檔案(二)
上一篇貼文的網站伺服器程式,需要手動處理檔案路徑和內容類型,本單元將加入自動判斷資源內容類型,並且自動傳送指定路徑的資源的程式。
在ESP8266的SPIFFS檔案系統存放網頁檔案(一)
本文旨在補充《超圖解物聯網IoT實作入門》第12章「在程式記憶體區儲存靜態網頁」一節(12-31頁),書本的範例把HTML網頁透過C++的Raw String語法存入快閃記憶體。本單元將採用ESP8266的FS.h檔案系統,將網頁和相關資源(如:圖像和JavaScript程式檔)存入快閃記憶體的SPIFFS區域。
建立Arduino的Socket即時通訊程式(二)
本單元的程式修改自Socket.io-v1.x-Library程式庫的“Hello_time”範例,Arduino和Node.js的socket.io建立連線之後,將每隔5秒發送一個事件訊息詢問Node.js目前的時間,Node.js將在收到訊息之後回覆一個事件訊息給Arduino。
建立Arduino的Socket即時通訊程式(一)
本文旨在補充《超圖解物聯網IoT實作入門》第5章「使用Socket.io建立即時連線」一節,書本的範例採用Node.js的Socket.io套件,搭配瀏覽器建立即時、雙向連線程式。本文將使用Arduino控制板加上W5100乙太網路擴展板,直接和Node.js的Socket.io即時通訊。
從Arduino透過POST方法傳遞JSON資料給Node.js伺服器程式的補充說明
本文旨在補充《超圖解物聯網IoT實作入門》第3章「接收與處理POST資料」一節,說明從Arduino控制板以POST方法傳送JSON資料給Node.js網站伺服器解析的程式寫法。使用ESP8266控制板,經由Wi-Fi無線網路以POST方法傳遞JSON資料的語法,和本文不同,實作方式請參閱《超圖解物聯網IoT實作入門》第12章「使用POST方法傳遞JSON資料」一節(12-44頁)。
Arduino UNO WiFi = Arduino UNO板 + ESP8266
這張控制板的尺寸和UNO一樣,板子上整合了Arduino UNO和ESP8266(具備Wi-Fi網路連線的系統級晶片)。它採用ATmega328微控器執行Arduino程式,並且同樣採用ATmega16U2作為USB序列埠通訊晶片。控制板上的16M bit(2MB)快閃記憶體,用於儲存ESP8266的韌體,此網路晶片的預設工作模式為AP+STA,也就是同時充當網路基地台(Access Point)和無線終端設備(Station)。
《超圖解物聯網IoT實作入門:使用JavaScript/Node.JS/Arduino/Raspberry Pi/ESP8266/Espruino》零件清單
本文列舉《超圖解物聯網IoT實作入門》書本所使用的電子零組件。底下是假設採用麵包板組裝,重複使用零件所需要的最少數量。相較於《超圖解Arduino互動設計入門》,本書更著重於程式設計,所以電子零件比較少而且盡量使用現成的模組,但微電腦控制板的款式比較多樣。