将 Intel Edison 连接到 Azure IoT 中心 (C)

在本教程中,从学习如何使用 Intel Edison 的基础知识开始。 然后学习如何使用 Azure IoT 中心将设备无缝连接到云。

还没有工具包? 从 这里 开始。

准备工作

  • 安装 Intel Edison 和 Grove 模块。
  • 创建 IoT 中心。
  • 在 IoT 中心内为 Edison 注册设备。
  • 在 Edison 上运行示例应用程序,以将传感器数据发送到 IoT 中心。

将 Intel Edison 连接到创建的 IoT 中心。 然后,在 Edison 上运行示例应用程序,从 Grove 温度传感器收集温度和湿度数据。 最后,将传感器数据发送到 IoT 中心。

学习内容

  • 如何创建 Azure IoT 中心以及如何获取新的设备连接字符串。
  • 如何将 Edison 与 Grove 温度传感器连接起来。
  • 如何通过在 Edison 上运行示例应用程序收集传感器数据。
  • 如何将传感器数据发送到 IoT 中心。

需要什么

需要什么

  • Intel Edison 开发板
  • Arduino 扩展板
  • 一个有效的 Azure 订阅。 如果没有 Azure 帐户,只需花费几分钟就能创建一个 Azure 试用帐户
  • 运行 Windows 或 Linux 的 Mac 或电脑。
  • Internet 连接。
  • Micro B - Type A USB 线缆
  • 直流 (DC) 电源。 电源应符合以下条件:
    • 7-15V DC
    • 至少 1500mA
    • 中心/内部插头应为电源的正极

以下项可选:

  • Grove Base Shield V2
  • Grove - 温度传感器
  • Grove 电缆
  • 任何垫条或螺钉(随附在工具包内),其中包括两颗螺钉(用于将模块固定到扩展板上)以及四组螺钉和塑料垫片。
Note

上述项为可选项,因为代码示例支持模拟的传感器数据。

创建 IoT 中心

  1. Azure 门户中,依次单击“新建” > “物联网” > “IoT 中心”。

    在 Azure 门户中创建 IoT 中心

  2. 在“IoT 中心”窗格中,输入 IoT 中心的以下信息:

    名称:它是 IoT 中心的名称。 如果输入的名称有效,将显示一个绿色复选标记。

    定价和缩放级别:选择免费的 F1 级别。 此选项对于本演示来说已足够。 请参阅定价和缩放级别

    资源组:创建用于托管 IoT 中心的资源组,或使用现有的资源组。 请参阅使用资源组管理 Azure 资源

    位置:选择与创建的 IoT 中心最靠近的位置。

    固定仪表板:选中此选项可以方便地从仪表板访问 IoT 中心。

    填充用于创建 Azure IoT 中心的字段

  3. 单击“创建” 。 创建 IoT 中心可能需要几分钟时间。 可在“通知”窗格中查看进度。

    请查看通知,了解 IoT 中心的创建进度

  4. 创建 IoT 中心后,请在仪表板中单击它。 记下“主机名”,然后单击“共享访问策略”。

    获取 IoT 中心的主机名

  5. 在“共享访问策略”窗格中单击“iothubowner”策略,然后复制并记下 IoT 中心的连接字符串。 有关详细信息,请参阅控制对 IoT 中心的访问

    获取 IoT 中心连接字符串

在 IoT 中心为设备进行设备注册

  1. Azure 门户中打开 IoT 中心。
  2. 单击“设备资源管理器”。
  3. 在“设备资源管理器”窗格中,单击“添加”将设备添加到你的 IoT 中心。

    设备 ID:新设备的 ID。

    身份验证类型:选择“对称密钥”。

    自动生成密钥:选中此字段。

    将设备连接到 IoT 中心:单击“启用”。

    在 IoT 中心的设备资源管理器中添加设备

  4. 单击“保存” 。

  5. 创建设备后,在“设备资源管理器”窗格中打开设备。
  6. 记下连接字符串的主密钥。

    获取设备连接字符串

安装 Intel Edison

组装开发板

本部分包括将 Intel® Edison 模块连接到扩展板的步骤。

  1. 将 Intel® Edison 模块放在扩展板的白色边框内,将模块上的孔对准扩展板上的螺钉。

  2. 将手指放在 What will you make? 文字下方,按压模块,直至感觉模块已就位。

    组装开发板 2

  3. 用两颗六角螺母(随附在工具包内)将模块固定到扩展板上。

    组装开发板 3

  4. 将一颗螺钉插入扩展板上的一个角孔(共四个)。 在螺钉上放置白色塑料垫片,转动并拧紧。

    组装开发板 4

  5. 重复上述步骤安装其他三个角垫。

    组装开发板 5

现在,开发板就已组装完毕。

组装开发板

连接 Grove Base Shield 和温度传感器

  1. 将 Grove Base Shield 放在板上。 确保所有引脚都紧紧插入板中。

    Grove Base Shield

  2. 通过 Grove 电缆将 Grove 温度传感器连接到 Grove Base Shield A0 端口。

    连接到温度传感器 Edison 和传感器连接

传感器现准备就绪。

为 Edison 接通电源

  1. 插入电源。

    插入电源

  2. 此时,绿色 LED(Arduino* 扩展板上标记为 DS1)应点亮并持续这一状态。

  3. 稍等片刻,等待开发板完成启动。

    Note

    如果没有 DC 电源,仍可通过 USB 端口为开发板供电。 有关详细信息,请参阅 Connect Edison to your computer 部分。 采用这种方式为开发板供电可能会导致开发板出现异常,尤其是在使用 Wi-Fi 或驱动电机时。

将 Edison 连接到计算机

  1. 向下拨动微动开关,使之朝向两个 micro USB 端口,将 Edison 设置为设备模式。 有关设备模式与主机模式的区别,请参阅 此处

    向下扳动微动开关

  2. 将 micro USB 电缆插入顶部的 micro USB 端口。

    顶部的 micro USB 端口

  3. 将 USB 电缆的另一端插入计算机。

    计算机 USB

  4. 如果计算机安装了新驱动器,则可确定开发板已完全初始化(就像将一张 SD 卡插入计算机)。

下载并运行配置工具

请从此链接(在 Installers 标题下列出)获取最新配置工具。 运行该工具,并按照屏幕上的说明进行操作,在需要时单击“下一步”

刷写固件

  1. Set up options页面上,单击Flash Firmware
  2. 执行以下操作之一选择要刷写到开发板上的映像:
    • 若要下载 Intel 提供的最新固件映像并使用该映像来刷写开发板,请选择 Download the latest image version xxxx
    • 若要使用计算机上已保存的映像来刷写开发板,请选择 Select the local image。 浏览到要刷写到开发板的映像并选择。
  3. 安装工具将尝试刷写开发板。 整个刷写过程最长可能需要 10 分钟。

设置密码

  1. Set up options页面上,单击Enable Security
  2. 可为 Intel® Edison 开发板设置自定义名称。 这是可选的。
  3. 为开发板键入密码,并单击 Set password
  4. 记下密码,稍后会用到此密码。

连接 Wi-Fi

  1. Set up options页面上,单击Connect Wi-Fi。 计算机将扫描可用的 Wi-Fi 网络,此过程最长可能需要 1 分钟。
  2. Detected Networks 下拉列表中,选择网络。
  3. Security 下拉列表中,选择网络的安全类型。
  4. 提供登录名和密码信息,并单击 Configure Wi-Fi
  5. 记下 IP 地址,稍后会用到此地址。
Note

确保 Edison 与计算机连接到同一网络。 计算机通过 IP 地址连接到 Edison。

连接到温度传感器

祝贺! Edison 已配置成功。

在 Intel Edison 上运行示例应用程序

准备 Azure IoT 设备 SDK

  1. 使用主计算机的以下任一 SSH 客户端连接到 Intel Edison。 IP 地址来自配置工具,密码与该工具中设置的相同。

    • PuTTY for Windows。
    • Ubuntu 或 macOS 上的内置 SSH 客户端(运行 ssh root@"the IP address")。
  2. 将示例客户端应用克隆到设备中。

    git clone https://github.com/Azure-Samples/iot-hub-c-intel-edison-client-app.git
    
  3. 然后导航到存储库文件夹,运行以下命令生成 Azure IoT SDK

    cd iot-hub-c-intel-edison-client-app
    sed -i -e 's/\r$//' buildSDK.sh
    chmod 755 buildSDK.sh
    ./buildSDK.sh
    

配置示例应用程序

  1. 通过运行以下命令,打开配置文件:

    nano config.h
    

    配置文件

    此文件中有两个可配置的宏。 第一个是 INTERVAL,它确定发送到云的两条消息之间的时间间隔。 第二个是 SIMULATED_DATA,它是一个布尔值,指示是否使用模拟的传感器数据。

    如果没有传感器,请将 SIMULATED_DATA 值设置为 1,使示例应用程序创建和使用模拟的传感器数据。

  2. 通过按“Ctrl-O”>“Enter”>“Ctrl-X”保存并退出。

生成并运行示例应用程序

  1. 通过运行以下命令,生成示例应用程序:

    cmake . && make
    

    生成输出

  2. 通过运行以下命令,生成示例应用程序:

    sudo ./app '<your Azure IoT hub device connection string>'
    
    Note

    确保将设备连接字符串复制并粘贴到单引号中。

应看到以下输出,其中显示传感器数据以及发送至 IoT 中心的消息。

输出 - 从 Intel Edison 发送到 IoT 中心的传感器数据

后续步骤

此时已运行示例应用程序,收集传感器数据并将其发送到 IoT 中心。

若要继续了解 Azure IoT 中心入门知识并浏览其他 IoT 方案,请参阅以下文章: