C# SDK 概述
Darra Profinet Slave 的 .NET 类库。程序集 DarraPnS,命名空间 Darra.PnS,目标框架 netstandard2.0。
using Darra.PnS;
真正用法是西门子式诊断:先看运行态、通道诊断、报警和过程数据质量,再按需读写过程数据。结构体映射只是辅助写法,不是主路径。
站点名、网卡、槽位由配置工具导出运行配置,交给服务加载。SDK 只负责会话启停、诊断和过程数据。周期自由配置,最低 1 ms。
安装
引用安装目录中的 DarraPnS.dll(默认 C:\DARRA\Profinet_Slave),或添加 NuGet 包:
dotnet add package Darra.PnS.SDK
把 DarraPnS.xml 与 DLL 放在同一目录,即可获得 IntelliSense 注释。
环境
| 项 | 要求 |
|---|---|
| 操作系统 | Windows 10 / 11 x64 |
| 运行时 | .NET Standard 2.0(兼容 .NET Framework 4.6.1+ / .NET 6+) |
| 权限 | 管理员 |
| 工程软件 | 西门子 TIA Portal V15.1 及以上(导入 GSDML) |
推荐入口
using Darra.PnS;
var device = DarraPnS.Connect();
if (device.Start() != PnSErrorCode.Success)
{
Console.WriteLine(device.LastServiceError);
return;
}
// 先看诊断
bool online = device.Connected;
PnSState state = device.State;
PnSRuntimeErrorCode err = device.ErrorCode;
string reason = device.ErrorMessage;
PnSDiagSnapshot snap = device.DiagSnapshot;
// 再按需读写过程数据
device.WriteInt16("IW2", 123);
short command = 0;
device.ReadInt16("QW0", out command);
device.Stop();
不要 new DarraPnS(...)。LoadConfig 只供配置解析 / 变量联想建表,不要用它启动会话。
文档结构
| 页 | 内容 |
|---|---|
| 连接与启停 | Connect / Start / Stop、生命周期、运行态属性 |
| 诊断 | 主用法:运行态、诊断快照、通道诊断、数据质量、I&M、复位 |
| 报警 | 活动报警、历史、确认、过程报警 |
| 过程数据 | 西门子 I / Q 地址读写;结构体映射仅作辅助 |
| 错误码 | 调用返回码与运行态码,两类不要混用 |