大多数自动化工程师知晓 OPC UA 客户端可通过 OPC UA 标签与 PLC 交换数据。但您知道 OPC UA 客户端还可使用 方法 向 PLC 中功能块实例传入数据并接收输出数据吗? 若想知如何在项目中实现,查看 GitHub 上这份分步教程:https://github.com/PLCnext/OpcUaMethods
PLCnext 控制器支持多种连接云服务方式。可用 IOT 库的 IEC 功能块、构建自己的 .NET 应用、写 Python 脚本或编译 GoLang 连接器。若想写代码,选项很多。但如果出于某种原因不想写代码呢?可能是首个项目,或许久未写代码?本博客展示如何构建 IoT Web 应用,不写一行代码! 好吧,说不写一行代码可能有点夸张。当然我们需要某种方式告诉 PLCnext 控制器和云服务我们想要什么。为此我们只用图形界面,所以我猜技术上说不写一行代码是对的?总之这种方法叫 “低代码”。 先介绍本博客用到的不同元素或服务。 简介 PLCnext 控制器,这不需多介绍。若对其能力仍不确定请
本教程展示如何为 PLCnext Control 设备创建简单的 “Hello World” 控制台应用。应用用 C# 编写,目标 .NET Core。 注意:本教程针对完全在 PLCnext Runtime 外部运行的 C# 应用。针对面向 eCLR 的 C# 应用,请参阅 PLCnext Info Center 的 eCLR 章节。 安装教程展示了如何在 PLC 上安装 .NET Core。那种情况下,多个目标 .NET Core 的应用可在 PLC 运行,最小化公共 .NET dll 重复。 另一种方式,可在未安装 .NET Core 框架的 PLC 上运行 .NET Core 应用。此
大家好。一段时间前我需要简单访问 AXC F 2152 变量。我写了一个简单的 Python 库解决此问题。 欢迎贡献此项目。 https://github.com/AlexanderSkachkov/pyPLCn 警告!此库处于测试/测试状态!
本 Maker 博客文章讨论 Com Server 为 PLCnext 平台提供的可能性和优势。 简介 Phoenix Contact 为其 PLC 提供的扩展模块包括串口适配器,如: AXL F RS UNI IB IL RS 232-PRO IB IL RS 485 IB IL RS UNI … 所有扩展模块共同点:可通过过程数据周期性访问。这提供从实时应用直接与串口设备交互的可能性。 某些情况下这非所需。我们想复用现有 (C/C++) 库且不需要实时上下文。但这些库通常编程为直接访问 COM 或 TTY 接口。 为 PLCnext Control 创建 TTY 接口有两种选择: 实
什么是 Wake-on-LAN? Wake-on-LAN (WoL) 是远程从极低功耗模式唤醒计算机的行业标准协议。“低功耗模式”定义随时间变化,但可理解为计算机“关机”且有电源接入时。 在 PLCnext 上安装 wakeonlan 我们将使用 wakeonlan python 包 执行 UDP 数据报唤醒目标 MAC 地址。 在此之前需在控制器安装 ipk、Python 和 pip 包管理器。确保有以太网连接。 以 Root 登录执行以下命令。 安装使用 ipkg 的命令。 wget -O - https://ipkg.nslu2-linux.org/optware-ng/bootstra
OpenCV 是最常用的计算机视觉库之一。可用于人脸识别、物体追踪、条码扫描,对本博客更重要的是检测指示灯亮灭。本博客帮助您在 PLCnext 上开始使用 OpenCV 和 Python,并展示红灯检测图像预处理的小代码示例。这是早期博客文章中解释的在 PLCnext 控制器上使用 OpenCV 的替代方式。 先决条件 今天用 AXC F 2152 控制器,但同过程适用 AXC F 1152,AXC F 3152 和 RFC 4072s 过程类似。唯一前提是控制器安装了 Balena-Engine。Balena-Engine 成功安装步骤见 PLCnext Github 页面。建议用 8GB
分享来自 Phoenix Contact 西班牙解决方案工程专家 Ignacio Aláez 的一个应用案例,可能对 PLCnext 社区有参考价值。 项目中遇到问题:当 IP 通过 DHCP 分配时,如何访问 PLCnext Web 服务器。 我们找到变通方法,使用免费服务 DuckDNS:https://www.duckdns.org/ 有多种登录方式,如通过 Google 账号。获取令牌后可选择域名如:https:// yourdomainforplcnext.duckdns.org。 该服务有 API 可在 PLCnext Engineer 中使用。 借助 FB PBCL_SysN
PLCnext REST 接口是向后端系统展示和接收数据的绝佳工具。REST,即表述性状态转移,是创建可扩展 Web 服务的指导原则和最佳实践的软件架构风格。PLCnext 信息门户 已有大量优质信息,请查阅!固件提供的 URI 适合从零构建系统。但若想在 PLCnext 上改造现有 REST 接口则不理想。本博客展示如何搭建自己的 URI 并通过反向代理连接变量。从小例子入手! 先决条件 我用 AXC F 2152 控制器,FW2020.6 和 PLCnext Engineer 2020.6。但 2020.0 后版本应同样可行。我用 PuTTY 建立 SSH 连接,Postman 处理 HT
几周前我收到这样一个问题。需用运行在 ESM 中的程序,通过 SFTP 服务器上传日志文件。SSH 文件传输协议 (SFTP) 是一种网络协议,提供通过任何可靠数据流的文件访问、传输和管理。由互联网工程任务组 (IETF) 设计为 Secure Shell 协议 (SSH) 2.0 版本的扩展,提供安全文件传输能力。 SFTP 包含在 PLCnext 固件中,这不应成问题。 步骤 1:我用结构化文本创建日志文件。示例见: https://www.plcnext-community.net/en/hn-makers-blog/438-datalogging-in-iec-61131-3-the-
摘要 本文解释如何在 C++ 中定义复杂 GDS 端口(如数据结构)并将其连接到 IEC 代码中的 GDS 端口。 数据结构 如何声明数据结构。看 C++。 #pragma once #include Arp/System/Core/Arp.h #include Arp/Plc/Commons/PlcTypes.h namespace MyComponent { class MyData { public: MyData() = default; ~MyData() = default; public: Arp::boolean Valid = false; Arp::int16 Intege
摘要 您知道 PLCnext Common Classes 内置支持 XML 序列化吗?本文展示如何使用 IXmlSerializable 接口填充 C++ 类数据。 接口描述见 PLCnext Common Classes 的 API 文档。 要求 本文基于以下环境编写: PLCnext Firmware: 2020.6 LTS PLCnext C++ SDK for Linux 64 Bit 2020.6 LTS 数据 我们要用以下配置文件填充类。 <?xml version=1.0 encoding=UTF-8?> <MyConfigDocument schemaVer
摘要 本文解释如何使用 catch2 进行单元测试。 如何构建 构建源码需从 https://github.com/catchorg/Catch2/tags 下载发布版。现可用 gcc 编译源码。以下代码片段展示编译的 cmake script: #Please set the environment variables to your needs cmake \ -G Unix Malkefiles \ -D CMAKE_BUILD_TYPE=Release \ -D BUILD_TESTING=OFF \ -D BUILD_SHARED_LIBS=ON \ -D CMAKE_STAGIN
摘要 本文解释如何使用 linq 处理数据。该库支持过滤、选择、聚合、分组等操作。完整支持需要 clang 或 gcc,及 boost。 如何使用 这是一个 Header only 库。只需将 C++ header 集成到项目环境。完成后即可使用 linq 函数。 Select result {3,6,12} //extension form auto r = v | linq::select([](int x) { return x * 3; }); OrderBy result {8,4,2} Where result {4} //extension form auto r =
摘要 本文解释如何使用 pugixml 处理 XML 数据。该处理库可使用 DOM 解析器读取和操作节点,并用 XPATH 表示法查询节点。 如何构建 构建源码需从 https://github.com/zeux/pugixml/tags 下载发布版。现可用 Phoenix Contact 提供的 PLCnext 工具链交叉编译源码。以下代码片段展示交叉编译的 cmake script: #Please set the environment variables to your needs cmake \ -G Unix Malkefiles \ -D CMAKE_BUILD_TYPE=Re
这是 2018 年 11 月首发文章的更新版。 所有 PLCnext Controls 均含嵌入式 OPC UA 服务器。此服务器像所有 OPC UA 服务器一样,包含使用公钥加密与客户端建立安全连接的选项。本指南描述如何使用自己的安全证书(含私钥)与 PLCnext Control 建立安全 OPC UA 连接。 管理 OPC UA 服务器证书的一般信息请参阅: PLCnext Engineer 集成帮助系统的 OPC UA Settings 章节。 PLCnext Info Center: 嵌入式 OPC UA 服务器 (eUA) 证书认证。 简介 PLCnext Control
此视频简要介绍每个 PLCnext Control 设备内置的 SNMP 代理。 演示使用 FL Network Manager 软件作为 SNMP 管理器。 更多 FL Network Manager 使用信息见: SNMP 脚本 (视频) 如何用 FL Network Manager 给管理型交换机分配 IP 地址? (视频) 如何更新管理型交换机的配置文件和固件? (视频) 欢迎在 PLCnext Community 论坛就此主题提问。 .
嵌入式 数据记录器 是创建工艺数据数据库的绝佳工具。通知管理器和记录器 则完美记录用户操作或特定事件。您可通过修改 GitHub 上的示例创建自己的通知。开发甚至生产中,您不想每次查看数据或新日志都要登录 sFTP 服务器复制文件。本博客展示如何用 GoLang 创建静态文件服务器,通过浏览正确 URI 直接获取所需文件。 更多在 PLCnext 上使用 Go 的信息见之前的博客。本博客仅用一条命令为 AXC F 1152 或 AXC F 2152 构建代码。 文件服务器源代码很短,见此处。 将源文件复制到开发机并在终端打开。进入正确目录运行: env GOOS=linux GOARCH=ar
如果您离不开微软,且喜欢在 Windows 上用 PowerShell,可能有兴趣知道 PowerShell 也可安装在 PLCnext Control 设备上。 请注意微软警告:此版本 PowerShell 仅为实验性。 本演示针对 AXC F 1152 或 2152,类似过程应适用于其他 PLCnext Control 设备。 过程 使用 ssh (Linux) 或 PuTTY (Windows),以 “admin” 登录 PLC。 下载最新 tar.gz 文件:wget https://github.com/PowerShell/PowerShell/releases/download
程序员的生活已够艰难。为什么不把项目的版本控制外包给专门服务让生活更轻松?大多数 IT 程序员熟悉 Git,但对本社区一些 OT 程序员,这是全新概念。与不同同事协作同一项目时共享代码更麻烦,GitHub 等服务让协作共享变得简单。本博客引导您迈出使用 Git 和 GitHub 管理代码和项目的第一步。 本博客使用 GitHub 和 GitHub Windows 客户端,但请注意还有其他选择如 GitLab。我只是喜欢 GitHub Client 的易用性! 在 GitHub 上建立仓库 步骤 1 - 下载安装 GitHub Windows 客户端 实际上第一步是创建 GitHub 账号,
工业技术