SIEMENS西门子 触摸屏KP1200 6AV2 124-1MC01-0AX0
“OPC_UA_TranslatePathList”的参数 表格 4-77 “OPC_UA_TranslatePathList”指令的参数 参数 区域中的 声明 数据类型 含义 REQ Input BOOL 参数中的上升沿 0 → 1 可触发指令的执行。 ConnectionHdl Input DWORD 已建立连接的唯一标识符。 可使用指令“AUTOHOTSPOT”获取句柄。 BrowsePathsCount Input UINT BrowsePaths 中的元素数目(Zui多 10 个)。 BrowsePaths InOut VARIANT 指向 AUTOHOTSPOT 类型的数组的指针。 该数组包含要浏览的各个路径。 Timeout Input TIME 指令执行的Zui长时间(单位为毫秒)。 另请参见“AUTOHOTSPOT”中该参数的具体说 明。 NamespaceIndexCo unt Input UINT NamespaceIndexes 中的元素数目。
参数 区域中的 声明 数据类型 含义 NamespaceIndexes InOut VARIANT 指向 UINT 类型的数组的指针。 如果 NamespaceIndexCount 为 0,将忽略该 参数。 该数组用于转换在 BrowsePaths 参数中传递的 命名空间索引。 示例: 如果 NamespaceIndexes[4] 包含数值 10,则 会为“BrowsePaths”参数中之前命名空间索引为 4 的所有 NodeIds 分配命名空间索引 10。 TargetNodeIDs InOut VARIANT 指向 AUTOHOTSPOT 类型的数组的指针。 该数组包含找到的 NodeIds。 TargetStatusList InOut VARIANT 指向 DWORD 类型的数组的指针。 该数组包含各浏览路径的错误编号。 数组中的第一个元素是指 BrowsePaths 参数中 的第一个元素,以此类推;请参见 “TargetStatusList 的错误编号”。 Done Output BOOL 执行的状态: • 0:指令的执行中止、尚未完成或尚未开始 • 1:指令的执行已完成且未出错 Busy Output BOOL 执行状态参数: • 0:指令未在执行 • 1:指令当前正在执行 Error Output BOOL 错误显示 • 0:无错误 • 1:发生错误。请参见“Status”参数。 Status Output DWORD 错误原因,请参见下文中的“状态对应的错误 编号”“NamespacesIndexes”参数 用于转换命名空间索引的“NamespaceIndexes”参数是可选参数。 • 如果使用此参数(“NamespaceIndexCount”> 0),则会对参数“BrowsePaths”的命名空间 索引进行转换(转换为引用、BrowseNames 和起始节点)。 • 如果未按下例中的方式使用此参数(“NamespaceIndexCount”= 0),则必须正确设置 “BrowsePaths”中的命名空间索引。这意味着指令“OPC_UA_TranslatePathList”不会评估 “NamespaceIndexes"”参数。如果在下一步中调用“OPC_UA_NodeGetHandleList”指令, 则也不得转换命名空间索引,因为这些索引是Zui新的。因此,将指令 “OPC_UA_NodeGetHandleList”的“NamespaceIndexCount”参数设为 0。随后便不需要提 供“NamespaceIndexes”参数。 状态对应的错误编号 “Status”参数将提供指令执行过程中所发生错误的相关信息。 下表汇总了该指令的错误代码:错误代码 (十六进制值) 错误名称 说明 0000_0000 OpcUa_Good 指令已成功完成。 0070_0000 - 在 REQ 中没有上升沿时首次调 用,表示未开始执行作业 0070_0100 - 开始执行作业时首次调用 0070_0200 - 后续调用 8002_0000 OpcUa_BadInternalError 函数块中的内部编程错误导致发 生错误。 请联系支持人员。 8003_0000 OpcUa_BadOutOfMemory 无 OPC UA 客户端可用的内存。 由于 OPC UA 客户端和 OPC UA 服务器共用存储区,应降低服务 器的存储区要求。 此时,可执行以下操作: • 为 OPC UA 释放少量 PLC 变量 • 减少当前连接到服务器的 OPC UA 客户端的数量 • 设置更少的订阅错误代码 (十六进制值) 错误名称 说明 8009_0000 OpcUa_BadUnknownResponse 服务器未响应预期的结果数 800A_0000 OpcUa_BadTimeout 发生网络超时。 可能的原因: • 与 OPC UA 服务器的连接速度 过慢(容量不足)。 • 网络负载过高。 • OPC UA 服务器不可用。 可能的补救措施: • 检查 OPC UA 服务器的 URL • 增加超时设置(为函数块 OPC_UA_Connect 的超时参 数设置更大的值)。 800D_0000 OpcUa_BadServerNotConnected 服务器未连接或者连接句柄错误 或无效。 800F_0000 OpcUa_BadNothingToDo 不执行任何操作:OPC UA 服务 器从 OPC UA 客户端接收到一个 空表,其中不含任何指令。 8010_0000 OpcUa_BadTooManyOperations 已超出每个连接可同时调用的 “OPC_UA_TranslatePathList”指 令数量 (> 1),请参见:AUTOHOTSPOT 80AE_0000 BadConnectionClosed 与相应 ConnectionHdl 的连接处 于“ShutDown”状态(连接终 止)。连接/会话无法自动“重新 激活”。可能的原因:会话已从 服务器上删除,例如由于重启或 超时等原因。 在这种情况下,必须通过指令 “OPC_UA_Disconnect”明确关闭 连接并再次释放连接资源。在用 户程序中,必须复位已对此连接 无效的 ConnectionHdl。 随后必须与服务器建立新的连接 (参见指令 “OPC_UA_Connect”)。错误代码 (十六进制值) 错误名称 说明 80AF_0000 BadInvalidState 与相应 ConnectionHdl 的连接处 于“ConnectinError”状态(临时 连接错误,连接中断)。CPU 尝 试“重新激活”连接。如果在设 定的超时间隔 (OPC UA Session Timeout) 内未成功激活连接,连 接会进入“Shutdown”状态。状态 转换要求:CPU 可访问 OPC UA 服务器以检查会话是否仍处于活 动状态。 B080_0100 Simatic_BadType_VariantInput1 参数“BrowsePaths”的数据类型 不正确。 B080_0200 Simatic_BadType_VariantInput2 参数“NamespaceIndexes”的数 据类型不正确。 B080_0300 Simatic_BadType_VariantInput3 参数“TargetNodeIDs”的数据类 型不正确。 B080_0400 Simatic_BadType_VariantInput4 参数“TargetStatusList”的数据类 型不正确。 B080_1100 Simatic_ArrayElements_TooMan y BrowsePathscount > MAX_ELEMENTS_RELATIVEPAT H B080_3100 BadNumElements_VariantInput1 BrowsePathsCount > “BrowsePaths”参数的数组元素 数量。 B080_3200 BadNumElements_VariantInput2 NamespaceIndexCount > “NamspaceIndexes”参数的数组 元素数量。 B080_3300 BadNumElements_VariantInput3 BrowsePathsCount > “TargetNodeIDs”参数的数组元素 数量。 B080_3400 BadNumElements_VariantInput4 BrowsePathsCount > “TargetStatusList”参数的数组元 素数量。 B080_C400 Simatic_ClientNotEnabled OPC UA 客户端已禁用。错误代码 (十六进制值) 错误名称 说明 B080_C500 Simatic_NothingToDo 不执行任何操作:不提供参数 "BrowsePathsCount" ,或 “BrowsePathsCount”= 0。 B080_C600 Simatic_ClientNotAvailable 初始化客户端时出错 C080_C300 Simatic_OutOfResources 已超出可同时使用的Zui大客户端 指令数量。 可能的补救措施: • 减少同时运行的此类客户端指 令数量,请参见: AUTOHOTSPOT 更多错误代码,请参见“错误代码。