從 Zero 開始(4)- 設定Raspberry Pi的網路與遠端連線
準備與確認工作
PiCommander包含嵌入式、Android與網頁應用程式,經由雲端即時資料庫Fireabase,建立快速、即時與靈活的遠端監控系統。這些應用程式都會和雲端即時資料庫執行互動,所以需要先瞭解與建立好需要的Firebase 雲端即時資料庫服務。這個階段需要準備好下列的項目:
Hello! Firebase!
Firebase是一家在2011年成立的公司,主要的產品是提供即時的雲端資料庫服務,Firebase提供各種技術使用的API,讓開發人員很容易在應用程式加入即時雲端資料庫的功能。
Google在2014年已經併購Firebase,Firebase原來的開發團隊併入Google Cloud,藉由Google豐富的資源,可以快速加強與擴充Firebase的服務。Firebase在2015年已經整合Google帳戶,使用者可以使用Google帳戶登入與管理Firebase即時雲端資料庫的服務。
Firebase即時雲端資料庫,可以提供Raspberry Pi運作的嵌入式應用程式下列的功能:
- 偵測連接的感應設備,在固定間隔的時間,或是偵測的資訊發生變化時,把資訊儲存在Firebase雲端資料庫。
- 根據連接的控制設備與零件,監聽Firebase雲端資料庫特定的節點,接收到控制的資訊以後,依照資訊的內容控制設備與零件。
- 在特定的時間或狀況,讀取儲存在Firebase雲端資料庫的資訊,根據資訊的內容控制設備與零件。
在Android和網頁應用程式提供下列的功能:
- 依照使用者需要的資訊,監聽Firebase雲端資料庫特定的節點,根據接收到資訊顯示設備與零件的即時狀態。
- 在特定的時間或狀況,讀取儲存在Firebase雲端資料庫的資訊,根據資訊的內容執行需要的工作。
- 依照使用者需要執行的控制項目,在使用者執行控制操作以後,把資訊儲存在Firebase雲端資料庫。
建立 Firebase 專案
Firebase提供免費與付費幾種不同的方案,使用免費服務方案就可以讓PiCommander系統運作。使用Firebase 雲端即時資料庫服務之前,必須先建立一個PiCommander系統使用的Firebase專案:
- 開啟瀏覽器,在www.google.com網站使用Google帳號登入。
- 開啟http://firebase.google.com:
-
選擇右上角的「Go to console」:
-
選擇「建立新專案」:
-
在專案名稱輸入自己取的名稱,例如「hellofirebase」,在國家/地區選擇「台灣」,最後選擇「建立專案」:
設定 Firebase 專案使用權限
新建立的Firebase專案,預設必須登入後才可以使用。接下來執行關閉使用者驗證的設定:
-
選擇「Database」:
-
選擇「規則」:
-
預設的內容需要登入的使用者才可以使用:
-
參考下面的畫面修改設定檔:
-
修改完成後選擇「發佈」:
-
Firebase會提醒你,目前這個Fireabase專案是公開的狀態,選擇「關閉」可以關掉這個提醒。最後選擇「資料」:
-
回到資料內容以後,畫面上像是網址的內容,就是這個專案的Firebase URL:
下載 Firebase 專案金鑰檔案
嵌入式應用程式需要使用Firebase專案,執行讀取與儲存資料的工作,必須取得這個專案的金鑰檔案:
-
選擇左上角的設定圖示:
-
選擇「權限」:
-
選擇「服務帳戶」:
-
選擇「建立服務帳戶」:
-
在服務帳戶名稱輸入自己取的名稱,例如「helloraspb」,角色選擇「專案->擁有者」,勾選「提供一組新的私密金鑰」,金鑰類型選擇「JSON」,最後選擇「建立」,儲存下載的檔案並保存好:
-
選擇「關閉」:
匯入資料到 Firebase
依照下列的步驟,執行匯入PiCommander系統資料的工作:
- http://github.com/macdidi5/PiComFire2
-
選擇「Clone or download」後選擇「Download ZIP」:
-
儲存下載的檔案並解壓縮。
-
選擇「Database」:
-
選擇功能表圖示:
-
選擇「匯入JSON」:
-
選擇「瀏覽」,選擇「儲存檔案的資料夾\PiComFire2-master\resources\picom-export.json」:
-
選擇「匯入」:
-
匯入完成後的畫面:
測試 Firebase 即時資料庫
建立與設定好需要的Firebase專案以後,依照下列的步驟執行測試:
-
開啟Firebase專案,選擇「Database」:
-
啟動命令提示字元,執行下列的指令:
cd 儲存檔案的資料夾\PiComFire2-master\projects\HelloFirebase
java -jar HelloFirebase.jar Firebase專案URL 金鑰檔案名稱
-
執行測試程式以後,稍候片刻就可以看到畫面出現「Data saved successfully.」訊息,應用程式會儲存資料到Firebase資料庫:
-
回到Firebase Database畫面,就可以看到儲存的資料:
-
應用程式停留在偵測「raspb」節點的狀態,使用滑鼠在「raspb」節點的資料上點一下,把裡面的內容改為「"PiCommander"」後按「Enter」鍵:
-
應用程式的畫面就會接收到剛才輸入的內容:
-
你可以輸入其它的內容,每一次改變以後,應用程式都會接收並顯示最新的內容。完成測試以後,把內容修改為「"exit"」:
-
應用程式接收到「exit」就會結束:
下一步
完成系統需要的Firebase專案建立、設定與測試,接下來在Raspberry Pi安裝嵌入式應用程式,連接與測試基本的LED與開關零件。
後續 >> 從 Zero 開始(6)- 認識 Raspberry Pi GPIO 與基本零件
|