类 Eni
java.lang.Object
com.darra.ethercat.utils.Eni
ENI (EtherCAT Network Information) 配置解析
ETG.2100 ENI 标准格式:
<EtherCATConfig>
<Config>
<Master>...</Master>
<Slave>...</Slave>
...
</Config>
</EtherCATConfig>
对应 C# Master/Utils/Xml.cs::LoadENIConfiguration.
注: SaveENI 当前 DLL 未导出 EcEni_Save, Java 端暂不实现导出 (TODO).-
嵌套类概要
嵌套类修饰符和类型类说明static classENI 完整结果static classENI 主站配置摘要static classENI 从站配置摘要 -
方法概要
修饰符和类型方法说明static Eni.EniConfiguration加载 ENI XML 文件 (对齐 C# Xml.cs::LoadENIConfiguration)static booleansaveENI(EtherCATMaster master, String filePath) 保存 ENI 文件 (基于运行时主站, managed XML 生成, 对齐 C# SaveENI(DarraEtherCAT, string)).static booleansaveENI(String filePath, Eni.EniConfiguration config) 保存 ENI 文件 (基于 EniConfiguration 配置, managed XML 生成).
-
方法详细资料
-
loadENI
加载 ENI XML 文件 (对齐 C# Xml.cs::LoadENIConfiguration)- 参数:
filePath- ENI 文件路径- 返回:
- 解析结果, null=失败
-
saveENI
保存 ENI 文件 (基于 EniConfiguration 配置, managed XML 生成).实装 (Phase 4 Java): 直接用 javax.xml DOM + Transformer 生成 ETG.2100 EtherCATConfig 根节点 XML, 不再依赖 DLL EcEni_Save 导出. 与 C# Master/Utils/ESI.cs::SaveENI (line 2895-3030) 对齐.
字段来源: EniConfiguration.master (CycleTime / DcCycleTime / ExpectedSlaveCount) 与 EniConfiguration.slaves (Name / VendorId / ProductCode / RevisionNo / PhysAddr / AutoIncAddr / AliasAddr / DC AssignActivate). DC offset / SM offset 等运行时字段 不在 ENI 静态视图内 (ETG.2100 §4 设计 ENI 为 IDE 输出的"配置文件", 由 master 在线 扫描后回填), 仅输出 SII 已知量.
- 参数:
filePath- 输出 ENI 文件路径config- ENI 配置 (managed 端组装好的 EniConfiguration)- 返回:
- 写盘成功返回 true; 参数错误或 IO 失败返回 false
-
saveENI
保存 ENI 文件 (基于运行时主站, managed XML 生成, 对齐 C# SaveENI(DarraEtherCAT, string)).从 master 内部状态自动收集 SII 字段 (VendorId / ProductId / RevId / ConfigAddr / AliasAddress / Name) 与 LoopCycle, 调用
saveENI(String, EniConfiguration)完成 XML 写盘.- 参数:
master- 主站实例filePath- 输出 ENI 文件路径- 返回:
- true=成功, false=参数错误/写入失败
-