65.9K
CodeProject 正在变化。 阅读更多。
Home

Intel® IoT 网关与 GE PREDIX 开发人员套件

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0投票)

2017年10月25日

CPOL

12分钟阅读

viewsIcon

7474

本指南包含开始使用 Intel® IoT Gateway 连接到 GE Predix 所需的所有信息。

入门

本节介绍了设置您的英特尔® 物联网网关并连接到 PREDIX 开发者工具包页面的步骤。

  1. 打开 PREDIX 开发者工具包包装

     
  2. 从 Grove Starter Kit 中取下 Grove* Base Shield,并将其连接到 Arduino 101 板

    Grove* Base Shield
    Grove Base Shield
  3. 重要提示:确保基板的电压选择开关设置为 5V(将 VCC 开关向右拨动)

    Base Shield set to 5V
    Base Shield 设置为 5V
  4. 使用 Grove 连接线,按照下图所示,将 LCD 屏幕连接到任何 I2C 插槽,将旋转角度传感器连接到 A0 插槽,连接线在绿色盒子中

    Attach the Rotary Angle and LCD RGB Backlight to the Grove Shield
    Attach the Arduino 101 board
  5. 使用提供的 USB 数据线将 Arduino 101 板连接到英特尔物联网网关

    Intel IoT Gateway connected to ethernet and power
    连接 Arduino 101
  6. 将英特尔物联网网关连接到以太网和电源
    Connect the gateway to Ethernet and power
    物联网网关以太网和电源
  7. 按物联网网关上的电源按钮启动它。设备启动大约需要两分钟。一旦启动,网关上的默认 Node-RED* 流将运行,并在连接到 Arduino 101 板的 LCD 面板上显示网关的 IP 地址。显示的 IP 地址就是您的英特尔物联网网关的 IP 地址。在本次实验的其余部分中,您将使用此 IP 地址连接到您的网关。

    IP address on the LCD panel
    LCD 面板上的 IP 地址
  8. 显示 IP 地址后,打开您喜欢的浏览器,然后导航到上一步的 IP 地址。
  9. 如果出现隐私声明,请点击“继续”。

  10. 使用用户名登录
    用户名:gwuser
    密码:gwuser
    点击“前往”。

  11. 如果您想在公司网络中使用网关,请设置代理。
  12. 许可协议 – 点击“同意”按钮。

  13. 成功登录后,您应该会看到 PREDIX 开发者工具包页面(也称为开发者中心或“Dev Hub”)。

    开发者中心是网关的前端界面。它有 5 个主要功能:

    • 在可配置的仪表板上显示传感器数据和基本网关信息
    • 安全地将传感器数据发送到 GE Predix 云
    • 添加存储库、安装和升级软件包
    • 管理网关:访问 Node-RED 开发环境网络配置设置
    • 访问文档
  14. 边缘体验:可以使用“传感器”页面监视正在发布到仪表板的传感器数据。默认情况下,网关配置为显示连接到 Arduino 101 的旋转角度传感器(旋钮)的值。

  15. 正如叠加帮助中所建议的,您可以转动旋钮,在页面上的“设备和传感器信息”面板中查看值的变化。旋转旋钮后,您可以在 DevHub 选项卡上立即看到传感器值的变化。
  16. 您可以折叠页面顶部的“设备和传感器信息”面板,以便更容易地看到下面的其他信息,方法是单击导航栏顶部的箭头。再次单击按钮可以重新展开面板。

    折叠的面板
  17. 点击“Edge to cloud”选项卡。在这里,您将设置英特尔® NUC 以将数据发送到 GE Predix 云。点击“开始”。
  18. 注册设备:此步骤将在 Predix 云上注册英特尔® NUC 作为资产。它将获取 predix machine 发送数据到云的安全配置参数。
  19. 输入任何设备名称和组名以在 Predix 云上注册您的设备。点击“注册设备”按钮。
  20. 您将被重定向到 predix 页面,并要求输入凭据。输入您的 predix 账户凭据。如果您没有 predix 账户,则需要先创建一个。
  21. 您将看到以下屏幕

    如果未看到此屏幕,请等待 15-20 秒后刷新页面。这是完成注册过程所需的时间。您应该会看到一个小的 gif 显示数据正在发送到 Predix。
  22. 点击“在云中查看”按钮,在 Predix 云应用程序中查看正在流动的旋转传感器数据。
  23. 您将再次被要求输入凭据。输入您的 predix 账户凭据。您将被重定向到 predix 云应用程序。此应用程序已在 Predix 云的共享空间中预先创建。
  24. 点击“Kit Data”。根据您注册时提供的组名查找您的 NUC。您将以百分比形式看到旋转角度传感器数据。请注意您的组名(在本例中为“DocUser”)和设备名称(在本例中为 WR-IDP-F237)(框中已高亮显示)。
  25. 点击“刷新频率”按钮,然后选择页面刷新频率。
  26. 完成初始演练后,您可以获取此共享云应用程序,并将其移植到您的个人云应用程序空间,请遵循以下教程:https://www.predix.io/resources/tutorials/tutorial-details.html?tutorial_id=1475&tag=2365&journey=Predix%20Developer%20Kit&environment=workshop&resources=1475,2368
  27. 或者,您可以自定义 Predix Machine,将其指向您的个人时间序列和不同的 predix 云应用程序。点击“自定义 Predix Machine”开始。
  28. 在使用“自定义 Predix Machine”或“个人云应用程序”后,如果您想恢复到出厂设置(共享云应用程序),可以在 DevHub 上使用“重置设备”功能。重新注册您的设备。

教程

本节包含教程,引导您查看传感器数据、添加新传感器、将传感器数据发送到云端等。

有关详细信息,请参阅以下链接

本地查看传感器数据

  1. 开发者中心的“传感器”页面可用于监视正在发布到仪表板的传感器数据。默认情况下,网关配置为显示连接到 Arduino 101*(美国以外品牌为 Genuino 101*)板的 Grove* 旋转角度传感器(旋转旋钮)的值。

  2. 点击“帮助”以启用叠加帮助。这将为您在开发者中心导航时提供指导。

  3. 正如叠加帮助中所建议的,您可以转动 Grove 旋转角度传感器上的旋钮,在页面上的“设备和传感器信息”面板中查看值的变化。

  4. 旋转旋钮后,您可以在开发者中心立即看到传感器值的变化。

  5. 您可以折叠页面顶部的“设备和传感器信息”面板,以便更容易地看到下面的其他信息。单击导航栏顶部的箭头。再次单击按钮可以重新展开面板。

    Collapsed panel in the Developer Hub

将传感器数据发送到云端

您的英特尔® 物联网网关(英特尔® NUC)通过部署在英特尔 NUC 上的 OSGi 容器 Predix Machine* 与 GE Predix* 进行通信。Predix Machine 确保硬件与云之间的安全通信。

  1. 点击“Edge to cloud”选项卡。在这里,您将设置英特尔 NUC 以将数据发送到 GE Predix。点击“开始”。

  2. 接下来,您将在 Predix 上注册英特尔 NUC 作为资产。这提供了 Predix Machine 安全发送数据到云所需配置参数。

  3. 在“Group Device”字段中键入一个组名。点击“Register Device”以在 Predix 上注册您的设备。

  4. 您将被重定向到 Predix 页面,并要求输入凭据。输入您的 Predix 账户凭据。如果您没有 predix 账户,则需要先创建一个。

  5. 接下来,您将看到以下屏幕



    如果您未看到此屏幕,请等待 15-20 秒后刷新页面。这是完成注册过程所需的时间。您应该会看到一个小的 gif 显示数据正在发送到 Predix,如下图所示。

  6. 点击“View in Cloud”以查看正在流入 Predix 云应用程序的旋转传感器数据。

  7. 当提示时,再次输入您的 Predix 账户凭据。您将被重定向到 Predix 云应用程序。此应用程序已在 Predix 云的共享空间中预先创建。

  8. 点击“Kit Data”。根据您注册时提供的组名查找您的英特尔 NUC。

    您将看到以百分比形式显示的旋转角度传感器数据。请注意您的组名(在本例中为 DocUser)和设备名称(在本例中为 WR-IDP-F237),它们应该显示在应用程序的左上区域,如下图所示。



    点击“Refresh Frequency”,然后选择您希望页面刷新的频率。

概述

本教程提供了一个如何创建新的 Node-RED* 流的配方,以连接新的传感器并将传感器数据发送到 GE Predix*。教程中使用 Grove* Starter Kit 中的 Grove* 温度传感器作为示例传感器。

将温度传感器连接到 Arduino 101*(美国以外品牌为 Genuino 101*)

使用 grove 连接线将温度传感器连接到 Arduino 101*(美国以外品牌为 Genuino 101*)板的 A1 插槽,如下图所示。连接线在绿色盒子中。请勿移除旋转传感器和 LCD,以保留 IP 地址流。

硬件设置

从开发者中心访问 Node-RED* 环境

  1. 在您的互联网浏览器中输入英特尔® NUC 的 IP 地址以访问开发者中心。在开发者中心的“管理员”选项卡上,点击“Node-RED Launch”按钮。

    定位 Node-RED
  2. 当提示时,输入您的登录凭据。
    用户名:gwuser
    密码: gwuser
    然后点击“登录”。
    登录 Node-RED 环境

默认 Node-RED* 流

  1. 默认的 Node-RED 流可以显示 Grove* LCD RGB 背光上的 IP 地址,并将数据发送到 Predix。

    默认 Node-RED 流

使用温度传感器创建新流

  1. 点击 + 打开一个新的 Node-RED 流。

    添加新流
  2. 从节点面板(Node-RED 界面的最左侧列)的 UPM_Sensors 组中,将一个 Grove Temperature Sensor 拖到 Flow 2 的可视化编辑器中。然后双击新节点,并按如下方式设置属性。点击“完成”按钮以保存更改。

    注意:10000 毫秒的间隔实际上意味着温度每 10 秒才更新一次。通过将数字降低到 5000 毫秒甚至 1000 毫秒,您可以加快此速度。
    • 平台:Firmata
    • 引脚:A1
    • 单位:原始值
    • 间隔(毫秒):10000
       
    添加 Grove 温度传感器
  3. 从函数组将一个函数节点添加到 Flow 2,并将其放置在现有温度节点旁边,如下图所示。双击新的函数节点,并按如下方式完成属性。点击“完成”按钮以保存更改。

    注意:此函数的目的是在传感器使用 5V 电源读取时提供正确的温度。该传感器默认按 3.3V 工作。
    • 名称:数据转换
    • 函数:使用以下代码
      var rawVal = Number(msg.payload.value);
      rawVal = rawVal * 3.3 / 5;
      var B = 4275.0; // value of the thermistor
      var R0 = 100000.0; // 100k
      var R = R0 * (1023.0 - rawVal) / rawVal; // resistance of the sensor which tells us the temperature value
       
      // Convert temperature value from resistance to Celsius:
      var T =  1.0 / ( (Math.log(R/R0))/B + 1.0/298.15 ) - 273.15;
      //Convert to Fahrenheit
      T = 32 + (T*9)/5; // Comment this line for readings in Celsius
      msg.payload.value = T; 
      return msg;
    • 输出:1
    数据转换函数
  4. 通过从温度节点右端的方框拖到数据转换节点左边缘的方框,将现有的温度节点连接到新的数据转换函数节点。
  5. 为了在开发者中心绘制温度传感器数据图,需要三个节点。按如下方式创建它们:
    1. 首先,从函数组中,将一个模板节点添加到 Flow 2,并将其放置在现有温度节点下方,如下图所示。双击新的模板节点,并按如下方式完成属性。点击“完成”按钮以保存更改。

      注意:此格式的目的是从 payload 中获取温度数据。
      • 名称:格式
      • 设置属性:msg.payload
      • 函数:使用以下代码
        {{payload.value}}
      • 格式:Mustache 模板
         
      添加格式节点
    2. 从函数组中,将一个图表标签节点添加到 Flow 2,并将其放置在现有格式节点旁边,如下图所示。双击新的图表标签节点,并按如下方式完成属性。点击“完成”按钮以保存更改。

      注意:图表标签节点允许用户决定图表类型、范围等。
      • 标题:温度
      • 类型:折线图
      • 单位:华氏度
      • 范围:0-100
         
      添加图表标签
    3. 从输出组中,将一个 mqtt 节点添加到 Flow 2,并将其放置在现有温度节点旁边,如下图所示。双击新的 mqtt 节点,并按如下方式完成属性。点击“完成”按钮以保存更改。

      注意:此 mqtt 节点的目的是通过 mqtt 将传感器数据发送到图表。
      • 服务器:localhost:1883
      • 主题:/sensors
      • 名称:Temp chart
      添加 mqtt 节点
  6. 要将数据发送到图表组件,请将现有数据转换节点连接到格式节点,然后将格式节点连接到温度节点,最后将温度节点连接到 Temp Chart 节点。


    连接节点
  7. 要将温度传感器数据发送到 Predix 云,请从输出组中将一个 Predix Edge 节点添加到 Flow 2,并将其放置在现有格式节点下方,如下图所示。双击新的 Predix Edge 节点以编辑 Server 属性。
    添加 Predix Edge 节点

    在新窗口中,设置属性如下:
    • 服务器:localhost
    • 端口:1883
    • 保持在线时间:60

    点击“添加”按钮保存更改。然后点击下一个窗口的“完成”。

    mqtt Broker 配置
  8. 将数据转换节点连接到 Predix Edge 节点,以分别将数据发送到 Predix 云。按照下图所示连接节点。

    连接节点
  9. 通过单击 Node-RED 窗口右上角的“部署”来部署新流。

    部署
  10. 当温度流成功部署后,开发者中心的仪表板上会添加一个温度图表,位于旋转传感器图表之前。该图表显示实时温度传感器值,如下图所示。

    DevHub 上的温度数据
  11. 要查看发送到 Predix 的温度数据,请点击开发者中心的“Edge to Cloud”选项卡上的“View on Cloud”按钮。这将打开一个新的 Predix 云应用程序页面。点击“Kit Data”查看图表。

    云中查看按钮

    温度传感器数据通过 Predix Machine 安全地发送到共享云应用程序。一个用于绘制英特尔® NUC 温度数据的图表已添加到旋转传感器图表旁边。Grove Starter Kit 中传感器的图表已为 Predix 共享云应用程序配置。这有助于开发人员立即在共享云应用程序中看到来自基础套件中传感器的数据。

故障排除

  1. 如果云应用程序未显示传感器数据,请确保点击“View Log”,并确认温度和旋转数据都在 Predix Machine 日志中。
    查看日志

    Predix Machine 日志

使用 Predix* Studio 获取洞察

有关 Predix* Studio 的详细信息,请访问此链接:http://sc.ge.com/*WorkshopStudioExperience

在 GE Predix* 中设置个人云应用程序

有关步骤,请参阅以下内容:https://www.predix.io/resources/tutorials/tutorial-details.html?tutorial_id=1475&tag=2365&journey=Predix%20Developer%20Kit&environment=dev

© . All rights reserved.