西门子博图GET_NAME读取IO设备或DP从站的名称

说明
“get_name”指令用于读取 io 设备或 dp 从站的名称。该名称将显示在网络视图和 io 设备或 dp 从站的属性中。在以下截图中,以 io 设备为例。
通过 profinet io 系统或 dp 主站的硬件标识符(laddr 参数中)以及 io 设备的设备编号或 dp 从站的 profibus 地址(station_nr 参数),可选择该 io 设备或 dp 从站。
指令成功执行后,io 设备或 dp 从站的名称将写入由 data 参数寻址的区域中。
所读取的名称取决于 io 设备的类型:
对于 dp 从站或 io 设备,将输出前端模块的名称。
对于智能从站或智能设备,将输出接口模块的名称。
对于 hmi 面板,将输出接口名称。
对于 pc 站,将输出接口模块的名称。
对于 gsd 设备,将显示设备接入点 (dap) 的名称(接口或前端模块的名称)。
并通过参数 len 输出该名称的长度。如果该名称的长度大于 data 参数指定的区域,则将只写入寻址区域的最大长度的部分名称。
该名称的最大长度为 128 个字符。
说明
读取的 cpu 的名称 (v 1.1)
如果参数 laddr 和 station_nr 的值均为“0”,则该指令将输出 cpu 的名称。
如果 r/h 系统处于 run-redundant 模式,则该指令将返回主 cpu 的名称。
参数
下表列出了“get_name”指令的参数:
参数 声明 数据类型 存储区 说明
laddr input hw_iosystem i、q、m、d、l 或常量 profinet io 或 dp 主站系统的硬件标识符该值来自系统常量或 profinet io 系统/ dp 主站系统的属性。
station_nr input uint i、q、m、d、l 或常量 profinet io 设备的设备编号或 dp 从站的 profibus 地址。该编号将显示在网络视图和 io 设备或 dp 从站的属性中。
data inout variant i、q、m、d、l 指向该名称待写入的目标区域的指针。
done output bool i、q、m、d、l 指令执行成功。io 设备或 dp 从站的名称已传送到 data 参数处指定的区域内。
busy output bool i、q、m、d、l 状态参数
0:指令执行完成。
1:指令的执行尚未完成。
error output bool i、q、m、d、l 状态参数
0:无错误。
1:指令执行过程中发生错误。
详细信息将在 status 参数中输出。
len output dint i、q、m、d、l io 设备或 dp 从站的名称长度(字符数)。
status output word i、q、m、d、l 状态参数
该参数设置仅维持一次调用所持续的时间。因此,要显示该状态,需将 status 复制到一个空闲数据区内。
有关有效数据类型的更多信息,请参见“有效数据类型概述”。
参数 status
错误代码* (w#16#...) 说明
0 无错误
7001 第一次调用“get_name”异步指令。指令的执行尚未完成 (busy = 1,done = 0)。
7002 另一次调用“get_name”异步指令。指令的执行尚未完成 (busy = 1,done = 0)。
8090 在 laddr 参数中指定的硬件标识符在项目中不存在。
8092 laddr 参数的值无法寻址 profinet io 系统或 dp 主站系统。
8093 指令不支持 data 参数中的数据类型。
8095 所选的 profinet io 系统中没有该设备编号(station_nr 参数),或者找不到 io 设备。
在所选的 dp 主站系统中,profibus 地址(station_nr 参数)不存在。
80b1 所用 cpu 不支持该指令。
80c3 临时资源错误:cpu 当前正在处理的同步块调用的最大数量。仅当至少一个块调用执行完成后,才能执行“get_name”。
8852 data 参数中指定的区域过短,无法写入 io 设备或 dp 从站的完整名称。只能写入最大允许长度的部分名称。
要读取完整名称,需在 data 参数处指定一个较大的数据区域。此区域的大小必须至少与 len 参数处指定的字符数相一致。
* 在程序编辑器中,错误代码将显示为整数或十六进制值。有关切换显示格式的信息,请参见“另请参见”。
示例
以下举例说明了如何读取 hmi 面板的站名称。
hmi 面板的组态:
创建以下变量,在全局数据块中进行数据存储:
为指令“get_name”分配参数:
执行指令:
在网络视图中创建站名称为“hmi_io-device”的 hmi 面板,并分配给相同 cpu 的 profinet io 系统。
在硬件配置的属性中激活该 hmi 面板的操作模式“io 设备”,并将 cpu 指定为 io 控制器。
  在“以太网地址”(ethernet addresses) 下的属性内,设置设备编号“20”
在输入参数 laddr 中,输入 io 系统(262)的硬件标识符。
在输入参数 station_nr 中,输入 hmi 面板(2)的设备编号。
  互连“get_name”指令的其它数,如下所示:
执行该指令之后,hmi 面板 (hmi_io-device) 的站名称将保存到参数 data(“modulename”)中。
并在参数 len 中输出该名称的字符个数 (13)。
  成功读取 io 设备后,如果 get_name 的执行未停止,则输出参数busy(“busy”)将显示值“true”;输出参数 status(“status”)将显示值“16#7002”。


一文详解接地和接零
最新爆料内容:iPad 9 的起售价格将会下调至299美元
PADS Router的操作页面及鼠标指令介绍
数字源表的优势在哪?
怎么为运算放大器布设电路板
西门子博图GET_NAME读取IO设备或DP从站的名称
闪络性电缆故障的测量难点总结
佳能5DsR单反相机,拥有5060万的有效像素并可实现高速高精度捕捉被摄体
人脸识别访客系统的优势_人脸识别访客系统的使用范围
引领行业标准,Uber发布业界首个“ 安全案例 ”
车身5米4,标配ABS+EBD,不把汉兰达放眼里,起售价8万
高精度四合一土壤检测仪有哪些功能
小米12Pro上市时间和价格
关于Git教程解析
麦克传感器MFE600型一体式电磁流量计介绍
基于CAN总线系统的时间动态:CAN与CANopen的实时能力与局限性
全新直播声卡方案
创新微MinewSemi低能耗UWB模块怎么样
金升阳电源模块在配网自动化中的应用案例
如何让电机的转速变慢