[ EdgeX ] 透過 EdgeX Export Service 傳送數據至 MCS Cloud - MQTT

目錄

學習目標

  • MediaTek Cloud Sandbox (MCS) Cloud 使用
  • Device Service API 串接

前置準備作業

  1. 可上網的電腦

  2. 已安裝完成 EdgeX

  3. 已完成 Core Service 程式撰寫


示意圖


MCS Cloud 端

Step 1. 帳號註冊

網址 https://mcs.mediatek.com/zh-TW/


Step 2. 建立產品原型

❖ 2.1  點選 【 開始 】


❖ 2.2  點選 【 創建 】


❖ 2.3 設定產品名稱等資訊
      ㊟ 相關資訊如下圖所示


Step 3. 設定資料通道

❖ 3.1  點選 【 詳情 】


❖ 3.2  點選 【 新增 】


❖ 3.3  點選 【 新增 】


❖ 3.4  輸入資料通道資訊
       ㊟ 相關資訊如下圖所示


Step 4. 創建測試裝置

❖ 4.1  點選 【 創建測試裝置 】


❖ 4.2  新增裝置名稱


Step 5. 取得 Device ID 與 Device Key

❖ 5.1  點選 【 測試裝置 】


❖ 5.2   取得 Device ID 與 Device Key
        ㊟ 之後程式會使用到這兩個


Step 6. 建立 Registration 資訊

❖ 6.1   在 Postman 輸入下方資訊
        POST http://EdgeX-IP:48071/api/v1/registration 
        Body
{
    "name":"myMqttPublisher",
    "addressable":{
        "name":"MCSMqttBroker",
        "protocol":"tcp",
        "address":"mqtt.mcs.mediatek.com",
        "port":1883,
        "publisher":"EdgeXExportPublisher",
        "user":"",
        "password":"",
        "topic":"mcs/DeviceId/DeviceKey/資料通道Id"
    },
    "format":"JSON",
    "encryption":{
        "encryptionAlgorithm":"",
        "encryptionKey":"",
        "initializingVector":""
    },
    "enable":true,
    "destination":"MQTT_TOPIC"
}

        ㊟ 請修改 topic 中的 DeviceId、DeviceKey、資料通道Id


Step 7. 建立從 MCS Cloud 的 MQTT Subscribe 程式

❖ 7.1   從 MCS Cloud 取得設備端所上傳的資訊
        撰寫 Python 程式
        ㊟ 修改第 8 行的 deviceId,為 MCS 所使用的 deviceId
        ㊟ 修改第 9 行的 deviceKey,為 MCS 所使用的 deviceKey
        ㊟ 並將程式存檔為 ooo.py,此處的 ooo 可自行命名,在本範例中將名稱命名為 get_mcs,完整程式名稱為 get_mcs.py


❖ 6.3  在終端機輸入下方指令以執行程式
       python ooo.py
       ㊟ 本範例中的程式名稱為 get_mcs.py,故執行指令為 python get_mcs.py


Step 7. 測試是否有成功上傳到 MCS Cloud

❖ 7.1  重新執行 pub.py
       ㊟ 此時在 get_mcs.py 的視窗中會看到所上傳的資訊


Reference
GitHub
List of blogs
ALL RIGHTS RESERVED. COPYRIGHT © 2018. Designed and Coded by Makee.io