


价格:面议
0
联系人:
电话:
地址:
西门子S7-200全国总代理、
西门子S7-200全国总代理作为西门子授权代理商,西门子模块代理商,西门子一级代理商,西门子PLC代理商,西门子PLC模块代理商,供应全国西门子工控设备,本公司坐落于松江工业区西部科技园,西边和全球著名芯片制造商台积电毗邻OPC UA 方法是“远程过程调用”的实现,为不同通信节点之间的交互提供了有效机制。该
机制提供作业确认和反馈值,因此用户无需再编程握手机制。
例如,使用 OPC UA 方法,可以持续传输数据,而无需触发位/握手或触发控制器上的特定操
作。
OPC UA 方法的工作原理
通常,OPC UA 方法的工作原理与运行系统中由外部 OPC UA 客户端调用的受专有技术保护
函数块的原理类似。
OPC UA 客户端仅“监视”已定义的输入和输出。函数块、方法或算法的内容对外部 OPC UA
客户端不可见。OPC UA 客户端接收成功执行的反馈以及函数块(方法)返回的值,或者,如
果执行不成功,则收到错误消息。
作为程序员,对 OPC UA 方法运行的程序环境负有责任并具有完全控制权。
编程方法和运行系统行为的规则
• 确保 OPC UA 方法返回的值与 OPC UA 客户端提供的输入值一致。
• 遵守分配参数名称和结构的规则以及允许的数据类型(请参见 OPC UA 服务器指令的描
述)。
• 运行期间的行为:对于每个实例,OPC UA 服务器均接受一次调用。在调用由用户程序处
理或调用超时之前,方法实例不可用于其它 OPC UA 客户端。
实现用户程序(作为服务器方法)的基本步骤如下。
服务器方法的实现
用于实现服务器方法的程序(函数块)具有如下结构:
1. 使用 OPC_UA_ServerMethodPre 查询服务器方法调用
先在用户程序中(即服务器方法中)调用“OPC_UA_ServerMethodPre”指令。
该指令将执行以下任务:
– 通过该指令询问 CPU 的 OPC UA 服务器是否已通过 OPC UA 客户端调用服务器方法。
– 如果已调用方法,并且服务器方法具有输入参数,服务器方法现在会接收到输入参数。
服务器方法的输入参数来自调用 OPC UA 客户端。
2. 编辑服务器方法
在这部分服务器方法中,用户提供实际用户程序。
选项与其它任何用户程序中的选项相同(例如访问其它函数块或全局数据块)。
如果服务器方法使用输入参数,则可使用这些参数。
仅当 OPC UA 客户端已调用服务器方法时,才可执行服务器方法的这一部分。
成功执行方法后,需要设置服务器方法的输出参数(如果方法具有输出参数)。
3. 使用 OPC_UA_ServerMethodPost 响应服务器方法
要完成服务器方法,应调用“OPC_UA_ServerMethodPost”指令。
使用参数通知“OPC_UA_ServerMethodPost”指令是否已处理用户程序。
如果用户程序已成功执行,则通过相关参数通知 OPC UA 服务器。OPC UA 服务器随后将服务
器方法的输出参数发送到 OPC UA 客户端。 无论用户程序是由“OPC_UA_ServerMethodPre”和“OPC_UA_ServerMethodPost”指令处理还
是在下一个周期继续执行,始终以成对的形式调用这两个指令。
有关实现服务器方法的示例,请参见 STEP 7 在线帮助。
集成服务器方法
下图显示了 OPC UA 客户端 (A) 如何调用服务器方法“Cool”:
CPU 在循环用户程序 ⑥ 中执行服务器方法“Cool”的实例“Cool1”。
CPU 首先使用指令“OPC_UA_ServerMethodPre”查询 ④ OPC UA
客户端是否调用了服务器方法“Cool”①。
• 如果尚未调用服务器方法,则程序执行将通过 ④ 和 ⑥ 直接返回至循环用户程序。在
“Cool1”之后,CPU 恢复循环用户程序。
• 如果已调用服务器方法,则该信息将通过 ④ 返回至服务器方法“Cool”。实际功能现在会
在 Cool 服务器方法中执行,请参见图中的“<方法功能>”(