• {{item.name}}
SIMATIC S7-300系列 {{item.name}}
{{item2.name}}
更多
常问问题

如何使用程序读取运行中 S7-300 CPU的 IP 地址?

star star star star star
5.0 分
  • 软件编程
  • 地址
  • 指令
文档编号:81665714| 文档类型:常问问题| 发布时间:2023年12月15日
  • 0
  • 1042
  • 1628
此常问问题介绍了在S7-300 CPU 中通过调用 "RDSYSST" 指令可以读取 IP 地址。使用SSL ID = 37 (hex) 和 INDEX = 0 (hex) 来读取 S7-300 CPU 的 IP 地址。

描述
在S7-300 CPU 中通过调用 "RDSYSST" 指令可以读取 IP 地址。 通过 "RDSYSST" 指令可读取部件列表或系统状态列表的部件目录(SSL 或德语的 SZL)。 通过 SSL ID 和 INDEX 指定部件列表或部件列表中一个对象的部件列表目录及类型或者数量。使用SSL ID = 37 (hex) 和 INDEX = 0 (hex) 来读取 S7-300 CPU 的 IP 地址。

图. 01

"RDSYSST" 指令的输入/输出
表 01  "RDSYSST" 指令的输入参数.
 

参数数据类型描述
REQBOOLREQ=1: 触发执行
SSL_IDWORD将要读取的系统状态列表或部分列表的ID号SSL_ID=w#16#37: 读取 S7-300 CPU 的 IP 地址
INDEXWORD部分列表中对象的类型或编号表 01

表 02 "RDSYSST"指令的输出参数

参数数据类型描述
RET_VALINT如果执行中程序出错,RET_VAL 参数会返回故障代码。
BUSYBOOLTRUE:读指令尚未执行完毕。
SZL_HEADERSTRUCT SZL_HEADER 是个结构体。详细结构介绍在"SZL_HEADER 结构体".
DRANY读取SSL的部件列表或SSL部件列表的目录的目标区域。表 02

SZL_HEADER 结构体
SZL_Header 输出是按照以下结构定义的一个结构体:

SZL_HEADER:          STRUCT
           LENTHDR:    WORD
           N_DR:            WORD
END_STRUCT

LENTHDR 是SSL 部件列表或 SSL 部件目录的数据记录长度。

  • 如果仅读取了SSL部件列表的头信息,N_DR 包含了相关可用的数据记录的数量。
  • 否则 N_DR 包含已传送到目标数据区的数据记录数量。

SSL 部件列表的目标区域或读取 SSL 部件列表的目录
本例中读取SSL 部件列表并保存在数据块 DB2 "SZL_VALUE" 的起始地址 0 中。 S7-300 CPU 的 IP 地址由 4 个字节构成,以16进制字节形式存储在 DB2 "SZL_VALUE" 的起始地址 2 中。


图. 02

如果你已经读取到 CPU 的 IP 地址,可在程序中评估。在本例中,IP 地址按照十进制数据保存在数据块 DB1 “DATA”的起始地址 8 中。


图. 03


图. 04


图. 05


图. 06


图. 07

下载
该下载包含项目 "Read_IP_Address.zip".
拷贝 "Read_IP_Address.zip" 文件到一个单独的文件夹然后双击,之后使用 STEP 7 打开。

Read_IP_Address.zip ( 1355 KB )

详细信息
关于在 STEP 7 V12(TIA 博途)编程的详细信息请访问入口 ID 68113685

创建环境
该 FAQ 中的图片及相关下载均由 STEP 7 V12(TIA 博途)创建。


您可以前往全球资源库查看此文档:

http://support.automation.siemens.com/CN/view/zh/81665714


剩余80%未阅读,请登录后下载/查看文档

  • 评论
更多
  • 分享

    扫码分享

提示
您即将前往“全球技术资源库”。
“全球技术资源库”的用户名与本地支持中心(下载中心、技术论坛、找答案、1847工业学习平台)的用户名不通用。如果需要在全球技术资源库下载文档,您需要重新登录或注册。
确定

考证咨询点我

信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。