0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样连接到IBM Watson IoT

454398 来源:网络整理 作者:网络整理 2019-11-25 15:56 次阅读

步骤1:开始之前

确保已存在以下内容:

您已经完成了本教程的第1部分。

一个Bluemix帐户。

爱迪生中已安装Node-Red Watson IoT节点模块。为此,请查看官方文档。

步骤2:Watson IoT Application

此处的入口部分是创建Bluemix应用程序它将收集设备的数据,在这种情况下为LED状态。为此,请转到Bluemix目录并选择Internet of Things Platform Starter样板,如果愿意,请转到此链接并创建您的应用程序。

https://console.ng.bluemix.net/catalog/starters/internet-of-things-platform-starter/

请注意,通过此样板,您可以将Node.js运行时,物联网平台和Cloudant NoSQL DB服务绑定到该应用程序。我们对本教程感兴趣的是物联网平台和Node.js,因为它带有Node-Red。

创建应用程序后,转到物联网平台服务仪表板。在其中,您会找到按钮启动仪表板。单击它

在Watson IoT Platform仪表板中,转到设备,然后选择设备类型选项卡并创建设备类型。

在设备页面中,现在选择浏览标签,然后点击添加设备。选择您刚刚创建的设备类型并为其设置一个名称。完成向导,然后在结果页面中保存设备的详细信息,因为您需要它们来连接物理设备(此数据无法恢复)。要存储的重要数据是:

组织ID。

设备类型。

设备ID。

身份验证令牌。

步骤3:将电路连接到IoT

怎样连接到IBM Watson IoT

将电路连接到IoT

在本部分中,您将在Edison中修改Node-Red中的流,以现在就可以从IoT实例向IoT实例发送数据和接收命令,并从IoT实例接收命令,从而使其可以从Internet(而不是互联网)进行控制

此外,本节还假定Watson IoT节点已安装在Edison的Node-Red中。如果没有,请按照此处的说明

https://www.npmjs.com/package/node-red-contrib-ibm 。..

在爱迪生中启动Node-Red添加和配置Watson IoT连接。在这里,LED将连接到IoT平台,因此它可以从设备收集数据并发送命令以通过Internet打开和关闭它。

步骤4:读取LED状态

在输入抽屉中,选择 gpio 节点并将其拖放到画布上。双击它并指定:

电路板:您在第1部分中配置的电路板。

类型:数字(0/1)。

引脚:我使用了引脚6。

名称:ReadLED。

步骤5:形成Watson IoT的消息

Watson IoT期望一个非常特殊的消息。基本上,您需要从有效负载中读取LED的状态,并将其分配给Watson IoT期望的属性,这是JSON消息中的d属性。

为此,请使用 功能抽屉中的“功能”节点,然后在其中输入以下代码(不要忘记双击它)。

var ledState = msg.payload;

msg.payload = {

“d”: {

“led_state”: ledState

}

};

return msg;

现在

步骤6:将数据发送到IoT

选择 Watson IoT 从 Output 抽屉中将其拖放到画布上。双击它。

在将数据发送到IoT平台之前,您需要配置连接。为此,请点击凭据字段中的铅笔图标。在生成的表单中,输入本教程的 Watson IoT应用程序部分中创建设备时获得的凭据的信息。

一旦配置了凭据,请指定其余字段:

连接为:设备

已注册:应选择已注册的无线电

凭据:您刚刚配置的凭据

事件类型:事件

格式:json

单击完成,连接功能和该节点并部署更改。如果一切配置正确,ReadLED(如上图)和Watson IoT节点都将有一个指示灯,指示它们已正确连接。

步骤7:从IoT读取命令

现在将LED数据发送到IoT平台。但是,尚无法从Internet对其进行操作。基本上,它只是数据源,没有采取任何措施。现在可以从Internet读取状态并将其反映在LED上。这就是命令。

在输入抽屉中,找到 Watson IoT 节点并将其拖放到画布上。双击它并指定以下内容:

连接为:设备

凭据:您刚刚使用的凭据配置

命令:闪烁

保存节点。

步骤8:格式化传入消息

由于来自Watson IoT的传入消息具有特定格式,因此您需要提取要反映在物理LED中的状态。从 Functions 抽屉中拖放 function 节点,然后输入以下代码。

var ledState = msg.payload.d.led_state;

msg.payload = ledState;

return msg;

连接两个节点。最后,将功能节点与在本教程的第1部分中创建的LED节点连接起来。

最后,如果您遵循第1部分和第2部分中的这一部分,那么Edison中的流程应类似于此步骤中的图像。此图像的前两行节点已在第1部分中完成,而最后一行已在本节中完成。

步骤9:从IoT读取和控制设备

一旦设备通过Edison中的Node-Red连接到Watson IoT平台,就该在Bluemix应用程序中创建流以接收该信息并将命令发送到打开和关闭LED。这将使用与第1部分中使用的HTTP请求非常相似的HTTP请求来完成。

首先,您需要在Bluemix中启动Node-Red应用程序。为此,请转到Bluemix仪表板,然后在所有应用程序中单击应用程序的 Route 。出现的页面上有一个大按钮,显示转到您的Node-RED流编辑器。单击它,Node-Red编辑器将准备就绪,可以开始创建流了。

步骤10:读取数据

这是一项琐碎的任务在Watson IoT节点中已经预先安装了Watson IoT节点,因此可以在Bluemix中使用。就像从 Input 抽屉中添加 Watson IoT 节点并指定以下属性一样简单:

身份验证:Bluemix服务

输入:设备事件

设备类型:您在凭证中使用的那个。

设备ID :您在凭据中使用的设备

事件:+

Format :json

我将此节点连接到 debug 节点,只是为了在 Debug 窗格,但是通常的想法是,当设备将数据发送到IoT实例时,您应该适当地对待它,可能会向移动设备或电子邮件发送通知,或者可能会向连接到IoT的设备触发命令。

步骤11:HTTP请求

在Node-Red的 Input 抽屉中,选择 HTTP 节点,将其拖放到画布上。双击画布中的节点并指定以下参数

方法:GET

URL :/led/:state

步骤12:从HTTP请求中提取操作

您可以在上面的URL中看到,操作作为URL的最后一部分传递。因此,我们需要提取它。 Node-Red使您可以使用标准Express API从请求中获取变量。

从 Function 抽屉中选择 function 节点并拖动并将其拖放到画布上。双击并放置以下JavaScript代码。

if (msg.req.path == “/led/on”) {

msg.payload = 1;

msg.httpMsg = “On”

} else if (msg.req.path == “/led/off”) {

msg.payload = 0;

msg.httpMsg = “Off”

} else {

msg = null;

}

return msg;

输入代码后,单击完成并连接两个节点。

步骤13:将命令发送到设备

消息正确形成后,您可以将该命令发送到设备。从“输出”抽屉中拖放一个Watson IoT节点,然后双击它。指定以下内容:

身份验证:Bluemix服务

输出类型:设备命令

设备类型:您凭据中的一个

设备ID :您凭据中的一个

命令 类型:闪烁

格式:json

数据:{“ d” :{“错误”:“有错误”}}

单击完成并将功能连接到该节点。

注意 Data 属性正在使用形成的JSON消息。只要其中具有 d 属性,该消息就会被替换。基本上是在说如果在消息中没有找到 d 属性,然后将错误消息发送到设备。在功能节点中,我们确保消息中存在该属性。

步骤14:发回响应

因为此请求是通过以下方式发起的:一个HTTP请求,您必须以HTTP响应完成它。为此,在 Output 抽屉中选择一个 HTTP Response 节点并将其拖放到画布上。将该节点连接到先前创建的功能以形成客户端消息。

单击部署以使流程栩栩如生。

第15步:测试流程

现在已经创建了流程,您可以使用网站了浏览器或处理HTTP请求(例如cURL或WGET)的任何其他程序来对其进行测试。

打开Web浏览器并使用这两个URL之一。就我而言,我的Bluemix应用程序的地址是https://vsiotll.mybluemix.net

https://vsiotll.mybluemix.net/led/on

https://vsiotll.mybluemix.net/led/off

注意:随着我将自己的空间用于自己的空间,此网址很快就会消失教育目的。

第16步:结论

使用适当的平台和工具,可以带给您永久的价值。相对轻松地实现生活中任何疯狂的想法。今天,与硬件和软件进行交互非常简单,此外,构建有趣的东西可以帮助您使生活更轻松:也许是一种能够感应到植物的水分或湿度,然后在需要时浇水的设备,或者是一种宠物饲养设备,单击移动设备中的按钮即可触发。可能性是无止境的!

您应该牢记的一件重要事情是:安全是一个大话题,永远不可低估。这是诸如IBM Watson IoT之类的平台帮助您保护和管理设备的机会。
责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IBM
    IBM
    +关注

    关注

    3

    文章

    1666

    浏览量

    74257
收藏 人收藏

    评论

    相关推荐

    如何将LED连接到Arduino板并使其闪烁

     在本快速入门指南中,您将学习如何将 LED 连接到 Arduino 板并使其闪烁。
    的头像 发表于 02-11 10:53 837次阅读
    如何将LED<b class='flag-5'>连接到</b>Arduino板并使其闪烁

    当一个电源的正接到另一个电源的负会怎样?为什么?

    当一个电源的正接到另一个电源的负会怎样?为什么? 当一个电源的正极连接到另一个电源的负极时,会发生短路现象。这是因为在电路中,电源的正极提供电子,而负极接收电子,并将其送回电源。 当两个电源直接
    的头像 发表于 01-16 11:06 636次阅读

    怎样把navicat连接到eclipse

    将Navicat连接到Eclipse是一个简单的过程,只需要按照以下步骤完成即可。 第一步:下载和安装Navicat 首先,你需要从Navicat官方网站(http://www.navicat.cn
    的头像 发表于 12-06 11:08 707次阅读

    IBM 专家观点:IBM 大模型揭秘

    ,是 IBM 认证的大数据架构师和 Watson 开发者,专长是大数据、人工智能等领域。他是 IBM Developer 的大师级作者,已经发表了 40 余篇技术文章
    的头像 发表于 11-21 20:40 489次阅读
    <b class='flag-5'>IBM</b> 专家观点:<b class='flag-5'>IBM</b> 大模型揭秘

    连接到您最喜欢的数据库集

    DbVisualizer连接到所有流行的数据库,并支持特定于数据库的对象类型等。
    的头像 发表于 08-11 16:45 325次阅读

    IoT PCR:连接到互联网的低成本DNA复制

    电子发烧友网站提供《IoT PCR:连接到互联网的低成本DNA复制.zip》资料免费下载
    发表于 07-05 11:26 0次下载
    <b class='flag-5'>IoT</b> PCR:<b class='flag-5'>连接到</b>互联网的低成本DNA复制

    连接到AWS IoT的RIOT-OS应用程序

    电子发烧友网站提供《连接到AWS IoT的RIOT-OS应用程序.zip》资料免费下载
    发表于 06-29 09:15 0次下载
    <b class='flag-5'>连接到</b>AWS <b class='flag-5'>IoT</b>的RIOT-OS应用程序

    从Web浏览器连接到蓝牙设备

    电子发烧友网站提供《从Web浏览器连接到蓝牙设备.zip》资料免费下载
    发表于 06-28 11:26 0次下载
    从Web浏览器<b class='flag-5'>连接到</b>蓝牙设备

    将伺服电机连接到Arduino

    电子发烧友网站提供《将伺服电机连接到Arduino.zip》资料免费下载
    发表于 06-28 09:38 1次下载
    将伺服电机<b class='flag-5'>连接到</b>Arduino

    将量子计算机连接到Arduino

    电子发烧友网站提供《将量子计算机连接到Arduino.zip》资料免费下载
    发表于 06-25 15:09 1次下载
    将量子计算机<b class='flag-5'>连接到</b>Arduino

    如何安全地将Arduino MKR GSM 1400板与GCP IoT Core结合使用

    设备可以使用 HTTP 或MQTT连接到 GCP IoT Core 。本教程将带您了解如何使用 MQTT 客户端将Arduino MKR GSM 1400开发板安全地连接到 GCP IoT
    发表于 06-21 16:11 0次下载
    如何安全地将Arduino MKR GSM 1400板与GCP <b class='flag-5'>IoT</b> Core结合使用

    如何使用W5100S EVB Pico连接到Azure IoT Central

    电子发烧友网站提供《如何使用W5100S EVB Pico连接到Azure IoT Central.zip》资料免费下载
    发表于 06-14 10:53 0次下载
    如何使用W5100S EVB Pico<b class='flag-5'>连接到</b>Azure <b class='flag-5'>IoT</b> Central

    将WizFi360 EVB Pico连接到Azure IoT Cloud

    电子发烧友网站提供《将WizFi360 EVB Pico连接到Azure IoT Cloud.zip》资料免费下载
    发表于 06-09 14:25 0次下载
    将WizFi360 EVB Pico<b class='flag-5'>连接到</b>Azure <b class='flag-5'>IoT</b> Cloud

    SAP将把IBM Watson人工智能技术嵌入SAP解决方案中

    SAP SE(NYSE: SAP)和 IBM(NYSE: IBM)日前宣布,将把 IBM Watson 人工智能技术嵌入到 SAP 解决方案中,以便提供新的 AI 驱动型洞察与自动化,
    的头像 发表于 05-17 17:38 896次阅读

    IoTDemo不再连接iot.espressif.cn是为什么?

    过去,我构建了所有 IoTDemo 设备和其他设备,它们连接到我在 iot.espressif.cn 上的帐户。现在他们都不会连接。该帐户仍然有效,我仍然可以使用适当的 curl 命令下载旧数据。但
    发表于 05-15 08:30