上一篇文章讲智能设备的时候我们将智能设备的GSD文件导出,然后导入到新项目中,就能实现IO控制器与智能设备的数据交换。那么什么是GSD文件呢?为什么导入GSD文件后IO控制器就能识别并与智能设备进行通信呢?今天这篇文章,我们就来聊聊这个话题。本文包括如下两个主题:
什么是GSD文件?
PROFIBUS和PROFINET的GSD文件区别
1、什么是GSD文件?
GSD是英文"General Station Description"的缩写,GSD文件翻译成中文就是"通用站描述文件"。顾名思义,GSD文件用来对站点的信息进行描述,这些信息包括:用于组态的数据、参数、模块(软件层)、诊断、报警、制造商标识(Manufacturer ID)及设备标识(Device ID)等等内容。
制造商标识(Manufacturer ID)是国际组织PI颁发的全球唯一标识。
一般来说,PROFINET产品的生产商需要申请制造商标识才能正常发布产品,也有少数小公司会使用别人的标识。在PI的官网有制造商标识的列表,除了国际知名的公司(比如西门子AG,制造商标识=42),我也看到了很多中国公司的名字,这说明我们国家在PROFINET产品开发方面的进步。限于篇幅,仅列举部分中国公司PROFINET制造商标识如下:
制造商标识
| 公司名称
| 1101
| Shenzhen Inovance Technology Co., Ltd. | 1390 | Shanghai B&A Automation System Co., Ltd. | 1419 | Shanghai Hurry Electronics Tech. Co., Ltd | 1426 | Shanghai Zhaomu Industrial Technology.LTD
| 1462
| Huangshan Flend Control Equipment Co.,Ltd | 1468 | Yantai DERON industry Co., LTD |
说明:这只是中国制造商的一部分,感兴趣的小伙伴可以去PI官网(https://www.profibus.com/IM/Man_ID_Table.xml)查看。
设备标识(Device ID)是制造商定义的产品家族标识,比如ET200S家族、ET200MP家族等等;
硬件组态列表中的模块,其实都是从GSD文件中获取的信息。有了GSD文件,编程开发工具(比如Step7)就可以组态站点的信息、对模块参数进行设置、进行在线诊断等等,IO控制器就可以通过PROFINET网络与IO设备进行通信,这也是我们在上一篇文章(智能设备)要导出GSD文件的原因。
2、PROFIBUS和PROFINET的GSD文件区别
GSD文件最早见于PROFIBUS系统,后来扩展到PROFINET系统,但是二者之间有很大的区别。
PROFIBUS系统的GSD文件是纯文本文件(ASCII文本),可以用记事本等文字编辑软件打开并编辑,其后缀名根据语言不同而有所区别,比如:.gsd表示GSD default;.gse表示GSD English;.gsg表示GSD German等等;通常使用的都是.gsd文件。
PROFINET系统使用XML语言来描述GSD文件。XML是Extensible Markup Language的缩写,即"可扩展标记语言"。它是在HTML语言的基础上,增加了可扩展的标签,适合于数据交换。PROFINET的GSD文件使用XML语言描述,因此该文件也称为GSDML文件,它的后缀名为 .xml,可以用任何文本编辑器打开。下面这张图是西门子ET200S家族中IM151-3的GSD文件截图:
图中可以看到制造商标识(VendorID)=0x002A,即42。也可以看出PI制造商ID长度为2个字节,因此理论上最大ID可以是65535;设备标识(DeviceID)=0x0301,产品家族(ProductFamily)="ET 200S";
一般我们下载到的GSDML文件中还有一个小图片,如下图所示:
这个图片就是我们在硬件组态中看到的站点的样子。
好了,关于GSD文件的内容就先介绍到这里。
我的微信视频号最近在介绍编码器的有关知识,感兴趣的小伙伴可以点击下面的视频看看: |