谢谢您的订阅!
当新的内容发布后您将开始接收邮件。您也可以点击邮件内的链接随时取消订阅。关闭Close

将树莓派4打造为一个边缘网关:第二部分

by liam zheng on 17 March 2020

第一部分教程中,我们已经在树莓派4上安装和配置好了EdgeX foundry以将其打造为一个边缘网关。今天的教程将介绍把网关连接到到虚拟的IoT(物联网)设备上。这些虚拟的设备是使用软件模拟的。模拟的虚拟设备将通过托管在云端的MQTT消息服务器发送随机的消息,这些信息将被转发到已订阅接收消息的MQTT客户端上。

连接Southbound

设备端与边缘网关的物联网数据流被称之为Southbound。在EdgeX中,物联网设备和网关之间的通信被称为设备服务。一个设备服务就是由诸如Modbus,OPC-UA,REST,BLT,Zigbee,MQTT,BACNet,SNMP等等的物联网通信协议的接口实现的一个微服务

虚拟设备服务的设定是方便进行配置和调试树莓派4边缘网关。它允许在不连接实际设备的情况下进行测试。基于这种方式,边缘网关上运行的微服务在不连接物联网设备的情况下进行配置和诊断。虚拟设备服务还模拟虚拟物联网设备,这些设备会生成和传输不同类型的随机数:整数,无符号整数,布尔值和浮点数。

虚拟设备服务可以很容易地通过以下命令开启:

sudo snap set edgexfoundry device-virtual=on

开启后,模拟的服务和虚拟设备可通过EdgeX浏览器管理界面显示。

在云端创建一个MQTT服务器

边缘网关是设备和服务器间的连接点。现在,我们将在云端配置一个自定义的MQTT消息接收服务器。MQTT消息接收服务器将接收来自虚拟设备的消息。这些消息将被发送到已订阅的客户端设备上。

我们在AWS创建了一个运行Ubuntu 18.04的实例,上面已安装MQTT消息接收服务器。在Ubuntu上可使用snap方式方便地安装MQTT。命令如下:

sudo snap install mqtt

查询消息接收服务器的状态:

sudo systemctl status snap.mosquitto.mosquitto.service

连接Northbound

有了云端MQTT服务器,还需要在树莓派4网关和服务器之间建立一个northbound连接。EdgeX 导出服务(EdgeX Export Service)是一个将设备服务已收集的数据传输到云端服务器的微服务。导出服务可以使用下面命令创建:

sudo snap set edgexfoundry export-client=on
sudo snap set edgexfoundry export-distro=on

通过上述命令激活后,MQTT服务器的数据传输已配置好。下面截图展示了如服务器IP地址,端口,通信协议,数据格式,主题和加密等参数。

保存后,导出服务将连接到MQTT消息服务器,然后创建一个主题。导出服务将把从虚拟设备端收集的数据通过该主题发布出去。

读取虚拟物联网数据流

通过以上操作,你有了一个监听虚拟物联网设备的树莓派4网关,它不断地把设备端收集到的数据转发到云上的MQTT服务器上。

现在,任何运行MQTT客户端的设备将可接收来自虚拟设备的物联网数据流。 客户端只需订阅来自于MQTT服务器相关的主题即可。

要读取这个数据流,我们需要在Ubuntu桌面上安装一个MQTT客户端,然后订阅通过导出服务创建的主题。当然,这个数据流可以通过任何桌面设备上的MQTT客户端进行访问。

sudo snap install mqtt
mosquitto_sub -h <your_ip_adress_here> -t <topic_name_here>

当然,你也可以在终端查看虚拟物联网数据流。流与虚拟设备产生的数据的响应,格式为导出服务指定的格式。如下图:

资源列表

下一步

本系列教程的第三部分将把网关与一个物联网实体设备连接。我们也会测试EdgeX foundry的设备管理兼容性。

订阅博客文章

订阅您感兴趣的主题

在提交此表格的同时,我确认已阅读和同意的隐私声明隐私政策。

查看更多内容

Ubuntu Core 正式登陆 MediaTek Genio平台

这是首款针对 MediaTek Genio 350、510、700 和 1200 平台深度优化的 Ubuntu Core 镜像,由 Canonical 与 MediaTek Inc 达成战略合作正式商用交付。  Ubuntu 系统发行商 Canonical 与联发科技 MediaTek Inc. 共同宣布正式推出专为 MediaTek Genio 平台打造的首发深度优化版 Ubuntu Core 系统。开发者现可下载专为 MediaTek Genio 350、510、700、1200 平台深度优化的 Ubuntu Core 镜像,并将其作为 IoT 开发的基础起点。基于 Ubuntu Core 在 MediaTek Genio 平台的深度支持,开发者可探索开发覆盖零售、机 […]

Ubuntu 20.04 LTS 标准支持周期终止 — 激活 ESM

ESM 确保设备集群的安全与运行性能 Focal Fossa 的标准支持周期将于 2025 年 5 月终止,也称生命周期终止(EOL)。Ubuntu 20.04 LTS 已然成为全球数百万物联网和嵌入式设备的关键组件,广泛应用于自助服务终端、数字引导牌、工业设备以及机器人系统等设备。该版本是医疗保健到制造业等各行业的企业进行创新的基础。与其他所有迎来标准支持周期终止的 Ubuntu LTS 版本一样,Focal Fossa 将转为扩展安全维护(EOL)模式。本文将为开发者和企业介绍相关选择,并说明如何启用 ESM 以持续获得支持。 在深入探讨之前,我们先来回顾一下 Ubuntu 版本为何存在生命周期终止(EOL)。 Ubuntu 版本为何存在 EOL? 每个 Ubuntu […]

NVIDIA Jetson Thor 将支持运行 Ubuntu

Ubuntu 系统即将对 NVIDIA 的 Jetson Thor 系列产品提供官方支持,将与 NVIDIA 继续展开战略合作,共同推动边缘 AI 创新。Canonical 的官方支持将提供优化的 Ubuntu 镜像以及企业级的稳定性与安全性保障。该长期支持及安全更新承诺,可以确保 Ubuntu 系统与 NVIDIA Jetson 系统级模块的组合具备企业级的稳定性与可靠性。 NVIDIA Jetson Thor:一款适用于物理 AI 和机器人技术的强大边缘平台 NVIDIA 近期宣布推出 Jetson AGX Thor 开发人员套件及 Jetson Thor™ 系列模块。NVIDIA Jetson AGX Thor 开发人员套件是一款面向人形机器人技术与物理 AI 应用 […]