工控网首页
>

应用设计

>

如何在STEP 7 V5.5用户程序里读取出S7-300 CPU的IP地址?

如何在STEP 7 V5.5用户程序里读取出S7-300 CPU的IP地址?

2016/4/14 10:48:47

描述   这个条目讲解了在STEP 7 V5.5的软件中,如何在用户程序中读取S7-300 CPU 的IP地址。为了这个目的,可以在用户程序中调用系统功能块SFC51 "RDSYSST" 。 通过使用系统功能块 SFC51“RDSYSST” 可以读出系统状态列表的部分列表或部分列表摘要 (SSL 或 德语简称 SZL)。通过SSLID和索引,对于某些部分列表或部分列表摘录,必须指定对象类型或对象编号。使用SSL ID = 37(十六进制)和索引=0(十六进制)的地址读取 S7-300 CPU的IP地址。

  这个例子是在功能块FB1中调用系统功能块SFC51 "RDSYSST"。在OB1中调用 FB1。

图 01

系统功能块 SFC51 "RDSYSST" 的输入输出定义 表01列举出系统功能块 SFC51 "RDSYSST" 的输入定义。  

表 02 

SZL_HEADER结构 SZL_HEADER 的输出被定义为如下结构:

SZL_HEADER:    STRUCT    LENTHDR:    WORD     N_DR:       WORD END_STRUCT

LENTHDR 定义为SZL列表的数据记录部分或者摘录部分的长度。

如果仅读取SZL部分列表的头部信息,N_DR指的是相关联数据记录的数量。

否则,N_DR指的是转移到目标区域的数据记录的数量。

用于读取 SSL 部分列表或摘录部分的目标区域 在这个例子中,读取SSL部分列表被保存在数据块 DB100 "SYS_DATA" 起始地址0开始。S7-300 CPU的IP地址占了4个字节,存储在DB100 "SYS_DATA"地址2开始的地址中,十六进制存储格式。

图 02

当读出了CPU的IP地址,可以在用户程序中使用它。在这个例子中,IP地址以十进制值存储在FB1的背景数据块DB1中。

图 03

图 04

图 05

图 06

图 07

审核编辑(
王静
)
投诉建议

提交

查看更多评论
其他资讯

查看更多

超越传统直觉,MATLAB/Simulink助力重型机械的智能化转型

新大陆自动识别精彩亮相2024华南国际工业博览会

派拓网络被Forrester评为XDR领域领导者

智能工控,存储强基 | 海康威视带来精彩主题演讲

展会|Lubeworks路博流体供料系统精彩亮相AMTS展会