如何在主站与Anybus compactcom 30/40 PROFINET模块建立通信的过程中初始化参数型ADI

08 4月 2024
本文介绍了如何在Anybus compactcom 30/40 PROFINET模块与PROFIENT主站建立周期性通信的时候初始化参数型ADI的值,并举例说明。

适用产品

Anybus CompactCom 30 PROFINET

Anybus CompactCom 40 PROFINET

 

注意事项

本文描述的操作建立在Anybus compactcom 30/40 PROFINET模块已经正常初始化并运行,并且生成了可用的GSD文件。

 

 

背景介绍

在PROFINET通信中,主站可以通过Record Data服务设置参数型ADI的值,但是有些参数的值要求在主站与从站建立起周期性I/O通信之前就由主站自动完成参数初始化操作。

 

解决方案

1、在已经生成的模块GSD文件中,添加一个关于参数型ADI的说明,并设置一个默认值即可,示例如下,添加一个<RecordDataList>区。

<RecordDataList>
<ParameterRecordDataItem Index="3" Length="2" TransferSequence="0">
<Name TextId="T_ID_EXAMPLE"/>
<Ref DataType="Unsigned16" ByteOffset="0" DefaultValue=”5”
AllowedValues="0..65535" TextId="T_ID_EXAMPLE_PRM"/>
</ParameterRecordDataItem>
</RecordDataList>

2、主要参数说明:

Index="12" : ADI number(ADI实例号)

Length="4": 该ADI所占的字节长度

DefaultValue="5" :默认初始值

 

3、GSD文件中的添加位置如图所示:

4、完成上诉操作后, 在<ExternalTextList>" 段中添加该参数ADI的一些描述,如名称及该参数含义等。

<Text TextId="T_ID_EXAMPLE" Value="TEST"/>
<Text TextId="T_ID_EXAMPLE_PRM" Value="Test Record Parameter 1"/>

 

 

测试

1、启动Anybus compactcom 30/40 PROFINET模块,随后通过浏览器访问模块内置网页,可以看到该参数值为0

2024-04-10_09h44_30.png

 

2、以HMS PROFIENT Master simulator软件测试为例,操作参考下方视频。

 

initrecdata.gif

 

在模块与主站通信成功后,再次观察网页界面,可以看到ADI3已经被初始化。