GSDml结构
1. 如何方便的看到GSDml的结构
- 在github上找到一个很好用的开源工具以及它的开源汉化,叫
xml notepad
,可以很好的看到设备树视图。
[2.9.0.8官方下载地址]
[汉化插件]
2. 文件结构
- 总体就是
header
和Body
两个部分
ISO15745Profile
|
+--ProfileHeader
+--ProfileBody
|
+--DeviceIdentity
| |
| +--InfoText
| +--VendorName
|
+--DeviceFunction
| |
| +--Family
|
+--ApplicationProcess
|
+--DeviceAccessPointList
+--ModuleList
+--SubmoduleList
+--ValueList
+--ChannelDiagList
+--UnitDiagTypeList
+--GraphicsList
+--CategoryList
+--ExternalTextList
3. 设备访问点
- DeviceAccessPoint是设备描述点,简称DAP。设备描述的重要信息在里面。
PNIO_Version="V2.4": GSDml文件版本
RequiredSchemaVersion="V2.4": 需要的架构版本
ID="IM 155-6 PN R1 V6.0 Redundant":
PhysicalSlots="0..66": 槽实际槽数,DAP位于0
ModuleIdentNumber="0x00104753": 模块ID
MinDeviceInterval="8": 数据刷新最小时间间隔
ImplementationType="ERTEC200P":
DNS_CompatibleName="ET200SP": DNS站名
AllowedInSlots="0 1":
FixedInSlots="0 1": DAP模块始终位于插槽0
ObjectUUID_LocalIndex="1":
MultipleWriteSupported="true":允许单个请求多次写入
MaxSupportedRecordSize="12288":
ParameterizationSpeedupSupported="false": 不支持快速启动
PowerOnToCommReady="3000": 启动首次数据交换时间
DeviceAccessSupported="true":
SharedDeviceSupported="false": 不支持共享设备
CheckDeviceID_Allowed="true":
NameOfStationNotTransferable="false":
LLDP_NoD_Supported="true": 支持LLDP
PhysicalSubslots="32769..32770":
ResetToFactoryModes="2":
NumberOfDeviceAccessAR="6": 访问设备的连接数
PrmBeginPrmEndSequenceSupported="true":
CIR_Supported="false":
NumberOfSubmodules="256":
AddressAssignment="DCP": 地址分配使用的通信协议
4.具体的IO模块结构
VirtualSubmoduleList
作为具体的输入输出子模块,基本结构如下:
VirtualSubmoduleList
|
+--VirtualSubmoduleItem
|
+--IOData
| |
| +--Input
| | |
| | +--DataItem
| |
| +--Output
| |
| +--DataItem
| |
| +--BitDataItem
|
+--RecordDataList
| |
| +--ParameterRecordDataItem
| |
| +--Name
| +--Ref
| +--Const
| +--MenuItem
| |
| +--MenuItem
| |
| +--Name
| +--MenuRef
| +--ParameterRef
|
+--ModuleInfo
|
+--Name
+--InfoText
+--OrderNumber
- 模块列表的层级结构:
ID="DI 16x24VDC ST_01": 模块标识
ModuleIdentNumber="0x00004D40": 模块标识号
SoftwareRelease: 软件版本
HardwareRelease: 硬件版本
VirtualSubmoduleList: 子模块列表
VirtualSubmoduleItem: 子模块成员
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)