Darra PnSlave
PROFINET IO Device(从站)· RT Class 1 · 6 语言 SDK
Darra PnSlave 是 PROFINET IO Device(从站)SDK。设备侧接入西门子等 PROFINET IO 控制器,用 C# / Java / Python / C / C++ / Rust 读写过程数据。实时主路径映射驱动过程映像,不经 HTTP。RT Class 1,不支持 IRT。内测免费。
PnSlave 官网:https://profinet.darra.xyz
内测免费
当前内测阶段,免费使用。 暂不对外售卖;商业发布另行通知。
- 获取方式见 下载。
- 反馈:技术交流群 / 仓库 Issue。
规格
| 项 | 规格 |
|---|---|
| 产品 | Darra PnSlave |
| 角色 | PROFINET IO Device(从站) |
| 实时等级 | RT Class 1(常规周期报文)。不支持 IRT。不承诺硬实时 |
| 协议栈 | 基于 p-net(第三方栈,不是产品名) |
| 实时主路径 | Connect() 无 host,映射 \Device\DarraRT_Pnet_GlobalIO。不打开 \\.\DarraRT_Pnet |
| WebAPI 备用 | Connect("127.0.0.1"),端口 18840 固定。WebAPI 是 SDK 一部分,不是主力 |
| 周期 | 无用户周期。Start = 连接实例 + 启动 IO + 允许输出。Stop = 释放实例;无连接时驱动/服务停 IO |
| I / Q | I(设备→控制器)只写;Q(控制器→设备)只读。测法:写 I,看 Q。前 4 字节回写是主站行为。写 Q = NotSupported |
| 在连约束 | 在连禁止 POST /api/stop |
| 平台 | Windows 10/11 x64(NDIS 协议驱动 + 服务 + GUI) |
| 配置 | GUI 导出 GSDML + 运行配置 XML;SDK 不做配置 |
| 不是 | 不是硬实时产品,不是 MES |
六语言 + WebAPI 入口
| 入口 | 文档 |
|---|---|
| C# | api/csharp |
| C | api/c |
| C++ | api/cpp |
| Java | api/java |
| Python | api/python |
| Rust | api/rust |
| WebAPI(备用) | api/webapi |
C#: using DarraPnet.Pnet; var pnet = DarraPnet.Connect();
Java: 见 Java SDK
Python: 见 Python SDK
C: #include "pnet.h"
C++: #include "pnet.hpp"
Rust: 见 Rust SDK
WebAPI: DarraPnet.Connect("127.0.0.1") // 端口 18840
实时主路径
using DarraPnet.Pnet;
var pnet = DarraPnet.Connect(); // 无 host,不走 WebAPI
pnet.Start(); // 映射 GlobalIO;连接实例 + 启动 IO + 允许输出
pnet.Write(new byte[] { 0x11, 0x22, 0x33, 0x44 }); // 写 I(设备→控制器)
pnet.Read(out byte[] fromPlc); // 读 Q(控制器→设备)
// 测法:写 I,看 Q。前 4 字节回写是主站行为,不是从站把 Q 抄回 I。
// pnet.Write*("QB0", ...) → NotSupported(Q 只读)
pnet.Stop(); // 释放实例。在连不 POST /api/stop
WebAPI 备用(GUI / 诊断 / 报警 / I&M,不是实时主力):
var pnet = DarraPnet.Connect("127.0.0.1"); // 端口 18840 固定
交付物
| # | 交付物 | 说明 | 文档 |
|---|---|---|---|
| ① | 驱动 | NDIS 协议驱动;过程映像 \Device\DarraRT_Pnet_GlobalIO | 快速开始 |
| ② | 服务 | Windows Service 控制面;WebAPI 18840 备用 | 快速开始 |
| ③ | GUI | 设备 / 槽位配置,输出 GSDML + 运行配置 XML | 快速开始 |
| ④ | SDK | 6 语言。实时主路径 Connect();WebAPI 备用 | C# API |
| ⑤ | 测试 | 驱动 / SDK / 配置回读 / GUI 冒烟 | 概念说明 |
| ⑥ | 安装包 | 安装向导 + netcfg 装驱动 + 服务 | 快速开始 |
环境
- Windows 10/11 x64;驱动安装需管理员
- .NET 8(服务 / C# SDK / GUI)
- 西门子 TIA Portal V15+(导入 GSDML)
后续阅读
- 快速开始 — 装驱动 → 启服务 → GUI 生成 GSDML → TIA 导入 → 写 I 看 Q
- PROFINET 从站概念 — 槽位 / 过程映像 / IOPS / IOCS
- RT Class 1 — 0x8892 周期帧(简化级)