共用方式為


設定測試用的模擬感應器 (預覽版)

[本文是發行前文件,可能會有所變動。]

如果您想在不安裝任何實體感應器的情況下,測試感應器資料智慧,您可以使用 Raspberry PI Azure IoT 線上模擬器服務來模擬感應器訊號並將其傳送到 Microsoft Azure 上的物聯網 (IoT) 解決方案。 有關模擬器的詳細資訊,請參閱將 Raspberry Pi 線上模擬器連接到 Azure IoT 中樞 (Node.js)

影片說明

以下影片展示如何設定測試用模擬感應器。 本文的其他部分以文字型格式提供相同的說明。

在 Azure IoT 中樞建立裝置

您必須先設定裝置以對傳送至 Azure IoT 中樞的感應器訊號進行驗證。

  1. 在 Azure 中,移至為與感應器資料 Intelligence 結合使用而建立的資源群組的資源清單。 (如需詳細資訊,請參閱在 Azure 上部署 IoT 解決方案。)

  2. 在資源清單中,找到類型欄位設定為 IoT 中樞的記錄。 在名稱行,選取名稱以開啟資源的詳細資訊頁面。

  3. 在左側瀏覽窗格中選取裝置

  4. 裝置頁面上,選取新增裝置

  5. 建立裝置頁面,設定以下欄位:

    • 裝置識別碼 – 輸入新裝置的名稱 (例如 My-IoT-Device)。
    • 驗證類型 – 選取對稱金鑰
    • 自動產生金鑰 – 選取此核取方塊。
    • 將此裝置連接到 IoT 中樞 - 選取啟用
  6. 選取儲存以返回 裝置頁面。

  7. 在清單中找到新裝置。 在裝置識別碼行,選取名稱以開啟裝置的詳細資訊頁面。 如果您在清單中沒有看到新裝置,請重新整理頁面。

  8. 複製主連接字串值 (例如,透過選取複製到剪貼簿按鈕)。 稍後當您設定 Raspberry Pi IoT 模擬器來模擬感應器訊號時,您將需要此值。 因此,請考慮現在將其貼到文字檔中。

將 Azure 連接字串新增至 Raspberry Pi IoT 模擬器

請依照下列步驟將 Azure IoT 中樞內裝置的連線字串新增至 Raspberry 服務中的指令碼。

  1. 開啟 Raspberry Pi IoT 模擬器

  2. 在程式碼編輯器窗格中,找到包含下列命令的行。

    const connectionString = '[Your IoT hub device connection string]';

  3. 將說明文字 (包含括號) 替換成您在上一節中複製的主連接字串值。 結果應該會類似於以下範例。

    const connectionString = 'HostName=XXX;DeviceId=YYY;SharedAccessKey=ZZZ';

將感應器識別碼和值新增到 Raspberry Pi IoT 模擬器中的承載

現在您必須使用模擬感應器以及它們將作為承載發送的值來設定 Raspberry Pi IoT 模擬器。

  • 在 Raspberry Pi IoT 模擬器的程式碼編輯器中,找到 getMessage 函數,並對其進行編輯,使其與以下程式碼相符。 (感應器設定在cb() 行上。)

    function getMessage(cb) {
        messageId++;
        sensor.readSensorData()
        .then(function (data) {
            cb(JSON.stringify({ value: 1, sensorId: 'MachineStatus' }), false);
            cb(JSON.stringify({ value: 70, sensorId: 'Quality' }), false);
            cb(JSON.stringify({ value: 1, sensorId: 'AssetMaintenance' }), false);
            cb(JSON.stringify({ value: 1, sensorId: 'ProductionDelay' }), false);
            cb(JSON.stringify({ value: 20, sensorId: 'AssetDowntime' }), false);
        })
        .catch(function (err) {
            console.error('Failed to read out sensor data: ' + err);
        });
    }
    

    重要

    在 Raspberry Pi IoT 模擬器的程式碼編輯器中定義的感應器識別碼必須與您稍後為 Supply Chain Management 中案例指定的感應器識別碼相同。 前面的範例程式碼使用人類可讀的感應器識別碼。 但是,在實際案例中,感應器識別碼將會是由感應器製造商提供的全域唯一識別碼 (GUID) 值。 此範例程式碼中所使用的人類可讀感應器識別碼也用於產品品質案例資產維護案例生產延遲案例資產停機案例機器狀態案例)。 因此,如果您要處理這些案例,請使用此程式碼。

編輯發送感應器訊號的間隔

現在您必須設定 Raspberry Pi IoT 模擬器發送模擬感應器訊號的時間間隔。

  1. 在 Raspberry Pi IoT 模擬器的程式碼編輯器中,找到以下函數呼叫。

    setInterval(sendMessage, 2000);

  2. 根據預設,Raspberry Pi IoT 模擬器每 2,000 毫秒 (兩秒) 會發送一次感應器訊號。 您可以根據要求調整此值。

執行 Raspberry Pi IoT 模擬器

  • 選取執行以啟動模擬器並開始發送模擬感應器資料。