亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 工业技术

Azure IoT Edge 和 PLCnext

Azure IoT Edge 可以将云分析和成本逻辑移动到“边缘”,在我们的例子中是我们的 PLCnext 设备。这在减少使用的带宽和延迟方面有一些好处。使用 Azure IoT Edge,您可以从中央云应用程序开发和部署自己的应用程序。在本博客中,您将了解如何设置 Azure IoT Edge 及其一些基本原则。

简介

对于 Makersblog 来说,解释 Azure IoT Edge 解决方案的全部内容可能会走得很远,但在继续此博客之前,请务必先阅读自己的内容。在此门户上,您可以找到了解我们在此博客中所做工作所需的所有信息。我们去安装运行时吧。

安装

创建 Azure IoT 中心并创建设备

在我们开始之前,我们首先需要在 azure 门户中设置一些东西。我假设你已经设置了一个 Azure 帐户。

我们要做的第一件事是创建一个资源组并给它一个描述性的名称。单击创建一个新的资源组。如果未列出,您可以按“+”按钮并搜索新的资源组。

创建新的 IoT 中心服务。您可以拥有 1 个免费的 IoT Hub 服务,您可能希望将类型从标准更改为免费!否则,将所有内容保留为默认设置并继续部署服务。我们的最后一步是创建物联网设备。打开服务并在窗口的左侧面板中搜索 IoT Edge。单击它并创建一个新的 IoT Edge 设备。给设备一个ID,其他所有设置都可以保留默认值。

单击新创建的设备并记下“主连接字符串”,我们将在下一步中使用此字符串来配置我们的设备。

安装 Azure IoT Edge 运行时

依次执行以下命令,总能在这里找到最新版本。

git clone https://github.com/pxcbe/azure-iot-edge.git
cd azure-iot-edge/install
sudo passwd root
su
chmod +x SetupEdge.sh 
./SetupEdge.sh

下一步是配置我们的设备。可以半自动化甚至全自动进行。您可以在 infoportal 上找到更多相关信息。在你的 shell 中输入下一个命令,然后将你的连接字符串粘贴到 yaml 文件的第 55 行。(用 ctrl +s ctrl +x 关闭)

nano /etc/iotedge/config.yaml

重启控制器以使更改生效。

reboot

验证安装

以 root 身份运行下一个命令:

iotedge check --verbose 

如果您没有收到任何错误,我们可以继续!你有错误吗?查看 GitHub 存储库,也许有可用的修复程序。否则可以随意创建问题!

部署模块

只有运行时对我们没有任何好处。让我们开始部署一些模块!单击“设置模块”,然后单击运行时设置。这里我们需要更改“Hostport”以便从运行在 PLCnext 上的 NGINX 服务器中清除。最后添加一个名为“模拟温度传感器”的市场模块。按“review + create”,将模块部署到PLCnext设备。

设置应如下所示:

{
"HostConfig": {
"PortBindings": {
"443/tcp": [
{
"HostPort": "444"
}
],
"5671/tcp": [
{
"HostPort": "5671"
}
],
"8883/tcp": [
{
"HostPort": "8883"
}
]
}
}
}

观看遥测消息

验证消息是否进入。请按照此过程在 Visual Studio Code 中安装 Azure IoT 工具。 (您需要登录 Azure,因此如果您使用证书,请确保它们也在您的开发计算机上)。

将 PLCnext 数据获取到 IoT 中心

下一步是将我们的 PLCnext Engineer 数据带到云端。有几种方法可以做到这一点。您可以使用 Modbus 模块并在您的 PLCnext 项目中创建一个 Modbus 服务器。您可以将 REST 服务和 GET 请求与自定义模块一起使用,我们在 Marketplace 上找到适合您需求的模块。我将解释如何设置 OPC Publisher 让您开始从 PLCnext 的嵌入式 OPC UA 服务器发布数据。

更新:目前看来 OPC Publisher 模块存在错误,请暂时尝试其他方法。

免责声明:对于此博客,我们将禁用 PLCnext 安全功能,请不要在生产中使用它!

在继续之前禁用 PLCnext 设备的 WBM 上的用户身份验证。

以与使用“模拟温度传感器”相同的方式从 Marketplace 添加 OPCPublisher。单击模块并转到容器创建选项。在容器创建选项下的窗口中复制粘贴下一个设置。

{
"Hostname": "publisher",
"Cmd": [
"publisher",
"--pf=/appdata/publishednodes.json",
"--di=60",
"--to",
"--aa",
"--si=10",
"--ms=262144"
],
"HostConfig": {
"Binds": [
"/iiotedge:/appdata"
],
"PortBindings": {
"62222/tcp": [
{
"HostPort": "62222"
}
]
},
"ExtraHosts": [
"localhost:127.0.0.1"
]
}
}

修改下一个配置以适合您的节点 ID,创建文件夹 /appdata 并创建一个名为“publishednodes.json”的文件,其中包含您的新配置。

[
{
"EndpointUrl": "opc.tcp://192.168.10.10:4840",
"UseSecurity": false,
"OpcNodes": [
{
"Id": "ns=3;s=Counter",
"OpcSamplingInterval": 2000,
"OpcPublishingInterval": 5000
},
{
"Id": "ns=3;s=Sinusoid",
"OpcSamplingInterval": 2000,
"OpcPublishingInterval": 5000
}
]
}
]


如果一切顺利,您应该会在 Azure IoT Tools for Visual Studio 中看到数据!

仍有问题?
你可以使用下一个命令来看看发生了什么。

iotedge logs -f "namemode"

学分

特别感谢 Oliver Warneke 的工作,我可以在此基础上再接再厉,感谢他花时间让我跟上进度!

联系方式

遇到问题,还是想了解更多?请联系[email protected]

参考文献

https://docs.microsoft.com/en-us/azure/iot-edge/about-iot-edge?view=iotedge-2018-06

工业技术

  1. 为什么是物联网边缘计算?
  2. MCU 的目标是安全的物联网端点和边缘设计
  3. 利用从边缘到云端再返回的物联网数据
  4. 边缘和物联网:来自物联网世界 2019 的见解
  5. Sprint 和爱立信合作开发网络边缘智能
  6. PCB 和物联网指南
  7. 对新兴技术、边缘和物联网的思考
  8. 为边缘和物联网成功而设计
  9. 物联网与边缘计算的关系
  10. 开源推动物联网和边缘计算的采用
  11. 什么是边缘设备以及为什么它对物联网至关重要?
  12. 物联网制造:定义、功能和示例