連接到 MCS
Last updated
Last updated
以下範例將介紹如何使用 MCS 函式庫提供的 MCSDevice 類別連接到 MCS 伺服器,並透過 MCS 網頁控制介面操縱 LinkIt 7697 板上的 USR LED。
開啟 MCS 網頁控制介面建立新的產品原型、資料通道、以及測試裝置。在本範例中,需要建立兩個資料通道:
一個 "開/關" 類型的控制器通道。
以及一個 "開/關" 類型的顯示器通道。
若不清楚如何產生產品原型、資料通道、以及測試裝置,請參考 MCS 入門導覽頁面。
完成設置後,會產生如下的測試裝置頁面。需特別留意 Data channel Id、DeviceId、和 DeviceKey 欄位 (如下圖箭頭所指),後續撰寫程式碼的過程中會使用這些資訊。
下列步驟將說明如何在程式裡,使用 device key 和 device ID 產生 MCSDevice 物件,並設置對應的資料通道,以連接到 MCS 平台服務。
1.點選 Arduino IDE 的 File > Examples > MCS > LED_control 選單。
2.由於需要 Wi-Fi 網路以連接 MCS,請依照使用的 AP 設定修改程式中的 Wi-Fi SSID 與 password 資訊
3.將 device ID 與 device key 填入 MCSDevice 類別的建構函式中:
Device ID 和 device key 可從上述的 MCS 測試裝置頁面取得:
4.同樣地將 channel ID 填入資料通道類別的建構函式:
Channel IDs 可在 MCS 測試裝置頁面的資料通道資訊下方取得:
1.點選 Upload 按鈕並等待 Done Uploading 訊息顯示完成。
2.點選工具列的 Serial Monitor 按鈕開啟 Serial Monitor 視窗並將 Baud rate 設定為 9,600。
3.此時可操作 MCS 網頁控制介面的開/關控制器通道來開啟、或關閉開發板上的 LED。在開發板 LED 狀態變化的同時,開/關顯示器通道的顯示狀態也會隨之變化
4.對應 MCS 網頁控制介面的操縱,開發板上的 USR LED 將會開啟或關閉。
在以上範例中,使用了 MCS 函式庫處理開發板與 MCS 伺服器之間的連線。使用函式庫需先加入 MCS 的 header file:
接著建立 MCSControllerOnOff 與 MCSDisplayOnOff 類別實體,用來控制事先在 MCS 網頁控制介面定義的兩個開/關資料通道 (控制器與顯示器)。建立時需將各資料通道所對應的 channel ID 傳入類別建構函式當中。
下一步利用 device ID 與 device key 產生 MCSDevice 類別實體,使開發板對應到之前在 MCS 網頁控制介面產生的測試裝置。
相關實體建立完成後,使用 addChannel()
將資料通道加入至測試裝置,並呼叫 connect()
來連接至 MCS 伺服器。
在 Arduino 的 loop() 裡,呼叫 updated()
檢查是否有來自開/關控制器通道的新資料,若有新的資料,則根據該數值設定 LED_PIN 所對應的 LED 明滅,並同時更新顯示器通道的數值,以在網頁控制介面正確呈現出開發板的狀態。
更多 MCS 函式庫的使用說明,請參考 MCS 函式庫 API 手冊。