ParticleIO 集成

Prev Next

轻松将 Tulip 与 ParticleIO 设备连接

请在此处参考 Particle 社区的集成指南(内容完全一致):Particle <> Tulip 社区集成

设置

配置 Tulip 机器端点

在 Tulip 中创建机器需要以下内容:* API 凭据* 机器类型* 机器

API 凭据:::(Info) (Feature rename)
Prior to r383, Service Accounts were called "API Tokens".
:::

前往“设置” --> “Tulip API”,创建一个具有读取/写入机器及属性权限的服务账户image.png

机器类型转至“车间” → “机器” → “机器类型”,创建新的机器类型。创建机器属性以映射 ParticleIO 发布的事件。注意:数据类型必须为字符串。image.png

设备:在新创建的设备类型下创建新设备;在配置中,将设备属性映射到 Tulip 设备 API,并记录 MachineId 和 AttributeIdimage.png

启用集成

**Particle 控制台:**现在您已完成所有必要的预配置,可以开始在 Particle 控制台上启用 Tulip 集成。

首先,点击侧边栏中的集成图标()进入集成中心,或直接点击此链接。 若要为某款产品启用集成,您需要访问该产品的集成中心。操作方法是:点击侧边栏中的“产品”图标(),找到您的产品,然后在产品详情页中点击“集成”图标()。

进入集成中心后,点击“新建集成”按钮。在可用集成列表中,点击“Webhook”。

下一步是配置 Webhook。请填写以下字段:

  • 事件名称:触发向 Tulip Machine 发布事件的事件名称。这是您在固件中调用 Particle.publish() 时事件的名称。
  • URL:Tulip Machine API 的完整网址。示例:https://[instance].tulip.co/api/v3/attributes/report
  • 请求类型:Tulip 服务器预期接收 POST 请求,因此请确保选择此选项。
  • 请求格式:默认是 Web 表单,但我们将发送 JSON 数据,因此请确保将其更改为 JSON。

您需要点击“高级设置”区域来填写自定义 JSON 格式。可按以下方式填写:

{ "attributes": [ { "machineId": "machineID", "attributeId": "attributeID", "value": "{{{PARTICLE_EVENT_VALUE}}}" } ]}

身份验证最后,您需要使用 API 密钥和密钥密文对向 Tulip 进行身份验证。如下图所示。tulip_api_auth.jpg

在此示例中,使用的是基本认证(Basic Auth)。

点击“创建 Webhook”。现在,您已成功配置 Particle 云,使其通过 MachineAPI 将数据流式传输至 Tulip!

现在是时候开始处理您的固件了!

固件

既然已在 Particle 云中启用了集成,要让数据流向 Tulip 的最后一步,就是向设备烧录能发布目标事件的固件。请转到 Particle Web IDE、本地 IDE 或您用于固件开发的任何 IDE。

如果您已经在开发固件应用程序,只需确保包含一个 Particle.publish() 调用,其事件名称需与上文用于启用 Google Cloud Platform 集成时所用的事件名称一致。否则,如果您需要一些固件示例,请将以下代码粘贴到您的固件应用程序中:


void loop() {

// 随机数据 String data = String((rand()%100)+1); // 触发集成 Particle.publish("temperature", data, PRIVATE); // 等待 6 秒 delay(6000);}```上述代码将每 6 秒发布一次事件,其中会生成一个随机数,然后将其发布到 webook 事件中。

请继续将包含 Particle.publish() 的固件烧录到设备中,这将触发与 Particle 设备的集成。

恭喜!只需这些步骤,您就能实现端到端的集成。您的设备现在将开始发布目标事件,该事件会通知 Particle 云将事件内容流式传输到您的 Tulip 实例。

### 确认数据已到达 Tulip

为确保数据已成功发布到 Tulip,您可以在“Shop Floor”→“Machines”区域查看机器更新

![image.png](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/image%28202%29.png){height="" width=""}

注意:该属性可能需要先以字符串格式存储,随后再进行转换。

### 示例用例

在 Wi-Fi 信号较弱的情况下,使用 Boron404x 等 ParticleIO 开发板是理想的选择,此时蜂窝网络可作为更快的设备连接替代方案。典型应用场景包括:\* 物料追踪\* 设备监控\* 实时质量更新