全国服务热线 15801815554

SIEMENS西门子 触摸屏 MTP1000 6AV21283KB060AX0

更新时间:2024-07-04 08:00:00
价格:请来电询价
西门子:代理经销商
精智面板:全新原装 假一罚十
德国:现货 实体经营
联系电话:15801815554
联系手机:15801815554
联系人:邓经理
让卖家联系我
详细介绍


              "OPC_UA_ServerMethodPost" 的参数 表格 4-96 “OPC_UA_ServerMethodPost”指令的参数 参数 声明 数据类型 含义 Done Output BOOL 执行的状态: • 0:指令的执行中止、尚未完 成或尚未开始 • 1:指令的执行已完成且未出 错 Busy Output BOOL 执行状态参数: • 0:指令未在执行 • 1:指令当前正在执行 Error Output BOOL 错误显示 • 0:无错误 • 1:发生错误。请参见“状 态”参数。 Status Output DWORD 错误原因,请参见下文中的“状 态的错误代码”。 UAMethod_Result Input DWORD 用户程序提供的 OPC UA 服务器 错误代码 建议:使用以 0xFF 开头的错误 代码反馈消息。对于 OPC UA, 将定义以下区域: • Good:0x0000_0000 到 0x3FFF_ FFFF • Uncertain:0x4000_0000 到 0x7FFF_FFFF • Bad:0x8000_0000 到 0xFFFF_FFFF 区域“Good”和“Uncertain”的代码 可能不输出,具体取决于客户 端。 UAMethod_Finished Input BOOL 如果已执行提供的方法,则将参 数值设为 TRUE。 UAMethod_OutParamet ers InOut VARIANT 指向包含所提供方法输出参数的 变量的指针。

             以下几点声明至关重要: • 创建“OPC_UA_ServerMethodPost”指令,作为调用函数块中的多重实例。 说明 多重实例的名称 多重实例必须命名为“OPC_UA_ServerMethodPost_Instance”,否则不会在服务器上创建 方法。 使用拖放功能将指令从“指令 > 通信 > OPC UA > OPC UA 服务器”(Instructions > Communication > OPC UA > OPC UA Server) 文件夹移动到编辑器中。然后,单击“多重 实例”(Multi-instance)。 • 如果服务器方法具有一个或多个输出参数,则需声明一个名为 “UAMethod_OutParameters”的变量。 首先,为服务器方法的输出参数创建一个 PLC 数据类型 (UDT)。 然后将此 UDT 用于变量“UAMethod_OutParameters”。 在该示例中,数据类型名为“UDT_OpenDoorOutArguments”;唯一的输出参数为 Result。 或者: 也可以向变量“UAMethod_OutParameters”分配数据类型“Struct”。然后,根据服务器 方法的输出参数创建该数据类型的元素(相同名称和数据类型)。变量声明 调用指令 通过指令“OPC_UA_ServerMethodPost”,可通知操作系统服务器方法已执行且输出参数值有 效。数据类型的分配 (SIMATIC – OPC UA) 有关方法的输入和输出类型,请参见“AUTOHOTSPOT”部分中可用数据类型的规则说明。 说明 包含有嵌套数组的结构化数据类型 如果结构化数据类型 (Struct/UDT) 中包含一个数组,则 OPC UA 服务器无法提供该数组的长 度信息。 如果将一个结构用作服务器方法的输入或输出参数,则需确保该方法在调用时所嵌套的数组 长度正确。 如果长度错误,则方法调用失败且错误代码为“BadInvalidArgument”。   为 OPC UA 客户端提供方法的示例程序 (S7-1200, S7-1500) 固件版本 V3.1 及以上版本的新指令版本 V1.1 在固件版本 V3.1 及以上版本中,支持新指令版本 V1.1。 下文中所述的示例程序,无法使用指令版本 V1.1 运行。因此,请勿在指令版本 V1.1 及以上 版本中使用。 更多信息,请参见“S7-1500/ET 200MP、S7-1500R/H 文档中的产品信息服务器方法的示例程序 在本章节中,将介绍程序示例“OpenDoor”的完整程序代码。 该示例介绍用户程序如何使用指令“OPC_UA_ServerMethodPre”和 “OPC_UA_ServerMethodPost”。 有关这些指令的说明,请参见“OPC_UA_ServerMethodPre:准备进行服务器方法调用 (页 5963) ”和“OPC_UA_ServerMethodPost:服务器方法调用的后处理 (页 5967)”部分。 该程序为 OPC UA 客户端提供服务器方法:如果输入参数“Number”的值为 1,则程序将输出 参数“Result”的值设置为“1”。 为了确保该示例简单明了,在此未包括详细的错误评估(参数“Status”)。程序结构 该程序分为以下几个部分: 1. 调用指令“OPC_UA_ServerMethodPre”,确定客户端是否调用了该服务器方法。 2. 如果已调用服务器方法,则执行服务器方法。在此,定义了 OPC UA 客户端调用该方法时的 实际功能。 3. 该服务器方法执行完成后,将调用指令“OPC_UA_ServerMethodPost”。该指令将通知操作系 统服务器方法已执行。 声明 下图显示了示例程序中局部变量的声明:程序 在以下程序中,显示了如何使用 OPC UA 指令为用户程序中所执行的 OPC UA 客户端提供一 个方法(服务器方法)。 调用“OPC_UA_ServerMethodPre”指令 首先,调用指令“OPC_UA_ServerMethodPre”,在操作系统中查询 OPC UA 客户端是否调用了 该服务器方法。 如果该服务器方法已调用,则变量“#Method_Called”为“TRUE”。如果指令“OPC_UA_ServerMethodPre”也已执行成功 (#Pre_Done = TRUE),则将变量 “#Started”的值设置为“TRUE”。 服务器方法 如果变量“#Started”的值为“TRUE”,则开始执行实际用户程序。 在该部分,可使用各种不同的编程方式:读入或输出过程值、访问全局数据块、调用函数和 函数块等。 该应用程序可能需要执行多个循环。 如需指示用户程序结束,则需要将变量“#Method_Finished”设置为“TRUE”。 通过“#Method_Result”,可传送指令“OPC_UA_ServerMethodPost”中块参数 “UAMethod_Result”内使用的自定义错误代码。 调用“OPC_UA_ServerMethodPost”指令 通过设置变量“#Method_Finished”,可保存该用户程序的执行状态。 在指令“OPC_UA_ServerMethodPost”中,可通过该变量通知操作系统服务器方法是否已执行。

联系方式

  • 地址:上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
  • 邮编:201100
  • 电话:15801815554
  • 联系人:邓经理
  • 手机:15801815554
  • 微信:15801815554
  • QQ:190755061