上海邑斯自动化科技有限公司
2022/12/14 13:37:59一
S7-1200调用环境功能
1、调用环境功能介绍
举例:编写一个控制电机启停的函数块FB1,在OB1中调用两次FB1,并目分别对FB1赋值不同的实参控制两个电机,如图1所示。
图1 函数块的调用
在调试阶段,我们需要单独对每个电机进行调试,但是打开FB1进行监控时,仅仅是对函数块内部通用的程序的监控,并不针对具体其一个背景数据块。因此,监控状态并不能反映特定的电机的实际状态。
基于这种应用,我们需要使用调用环境功能来监控特定电机的状态。该功能需要S7-1200 V4.0及其以上的固件版本才可以支持。
2、调用环境功能的操作步骤
1. 当函数块FB1已经打开时,可以单击项目右侧的“测试”任务卡,单击“更改”按钮,如图2所示,进行调用环境的设置。
图2“测试”任务卡
弹出“块的调用环境”对话框,如图3所示,进行相应设置:
图3 调用环境的设置
2. “背景数据块”:通过右侧的下拉菜单选择背景数据块。当函数块和选定的背景数据块一起调用时,显示这个函数块的程序状态。
3. “调用环境”:当块和特定块一起调用或者从特定路径调用块时,显示这个块的程序状态。
4. 转换到“手动调节”:通过该按钮,转换“调用环境”中选定的数据进一步编辑。此后使用特定块调用某个块或从特定路径调用该块时,则仅显示该块的程序状态。
5. “手动调节调用环境”:激活转换到“手动调整的调用路径”选项后,可以在这个区域中手动输入所需要的调用环境。
二
S7-1200 OPC UA 服务器方法实例
下文以具体实例说明,S7-1200如何使用OPC UA服务器方法功能以及在使用过程中需要注意的事项。
1、任务目标、所用硬件和软件
实现功能:
1200作为OPC UA服务器,通过指令编程提供服务器方法;
UA Exper作为OPC UA客户端调用服务器方法;
当变量B0为1的时候,服务器方法的输入参数传送给服务器方法的输出参数;
当变量B0为0的时候,服务器方法的输入输出不进行传送,报错16#ffffffff。
实例中所用硬件及软件如表1所示
表1 硬件及软件
2、 硬件组态
1. 创建新项目,添加CPU1215 DC/DC/DC V4.5的CPU。在弹出的PLC安全设置中进行组态设置。此实例分别将保护机密的PLC数据设置为禁用;将PG/ PC和HMI的通信模式设置为支持传送的和安全的PG/PC通信;PLC访问保护设置为完*访问权限,如图4所示。
图4 PLC安全设置
2. 在CPU属性中的以太网地址属性中,添加新子网PN/E_1,设置IP地址为192.168.0.125,设置子网掩码为255.255.255.0。如图5所示。
图5 设置以太网地址
3. 在CPU属性>OPC UA>服务器,访问服务器中,勾选复选框激活OPC UA服务器;在选件>常规中设置端口号,按照默认设置为4840,由此设置产生的 URL为OPC.TCP://192.168.0.125:4840,如图6所示。
其他OPC UA服务器属性,保持默认设置不变。
图6 激活OPCUA服务器并设置端口号
4. CPU属性>运行系统许可证>OPC UA中,购买的许可证为SIMATIC OPC UA S7-1200basic,如图7所示。
图7 设置运行系统许可证
三
S7-1200固件V4.5版本的新功能
OPC UA 的改进和增强
支持服务器方法调用
OPC UA方法是“远程过程调用”的实现,为不同通信节点之间的交互提供了有效机制,该机制提供作业确认和反馈值,因此无需再编程握手机制。OPC UA方法的工作原理与运行系统中由外部OPC UA客户端调用受专有技术保护函数块的原理类似,OPC UA客户端仅“监视”已定义的输入和输出,函数块、方法或算法的内容对OPC UA客户端不可见,OPC UA客户端接收成功执行的反馈以及函数块(方法)返回的值;如果执行不成功,则收到错误消息。
S7-1200CPU固件从V4.5版本开始,TIAPortal从V17版本开始,可以通过指令编程的方式提供OPC UA服务器方法,OPC UA服务器方法所需指令如图8所示。使用OPC_UA_ServerMethodPre查询服务器方法调用,OPC_UA_ServerMethodPost响应服务器方法。
图8 OPC UA 服务器
支持结构化和数组数据类型
S7-1200CPU固件V4.5版本前,不支持结构化和数组数据类型,但映射到基本节点类型的SIMATIC 数据类型是受支持的节点类型。例如,S7-1200 OPC UA服务器不支持数组"Array[10.9] of int"的访问,但是支持数组里的单个元素[0],[1]...的访问。
V4.5版本开始支持结构化和数组数据类型,服务器接口的配置如图9所示。
图9 支持结构化和数组数据类型
在OPC UA客户端中也可以直接访问结构化和数组数据类型的数据,例如,如图10所示,在UaExpert客户端的Data Access View中可以直接查看结构化和数组数据类型变量。
图10 UaExpert中直接查看结构化和数组数据类型
诊断功能
在CPU属件中可以激活OPC UA诊断信息,在CPU的诊断缓冲区可以看到OPC UA相关事件发生时的诊断,在发生错误时,可以更快地分析与OPC UA相关的信息。如图11所示,支持的诊断为:状态更改诊断、其它事件诊断、诊断汇总。
图11 OPCUA诊断
提升了会话、订阅,最大节点的数量。会话数由5个提升为10个,订阅数由5个提升为50个,最大节点数由1000个提升为2000个。