SIEMENS西门子 操作屏连接盒 6AV2125-2AE13-0AX0

供应商
浔之漫智控技术(上海)有限公司
认证
西门子
代理经销商
精智面板
全新原装 假一罚十
德国
正品现货 实体经营
联系电话
15801815554
手机号
15801815554
联系人
邓经理
所在地
上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
更新时间
2024-06-29 08:00

详细介绍


             下文中将介绍如何使用该指令此部分通过程序示例来说明指令“opc_ua_writelist”在为 plc 变量设置新值的用户程序中的 使用方法。 要求以下说明假定: • 已创建了一个客户端接口,参见“autohotspot”。 • 已创建并组态与 opc ua服务器的连接,请参见“autohotspot”。 • 如果要使用·cpu 作为 opc ua 客户端在 opc ua服务器中读取和写入结构:opc ua 服 务器需要支持 opc ua 规范版本 v1.04。使用“opc_ua_writelist”指令还必须满足以下要求: • 提供与 opc ua 服务器建立连接的句柄。通过指令“autohotspot”,可获取连接句柄。 • 命名空间的索引,要求命名空间包含用户要通过客户端写入的变量。 用户可从autohotspot 指令获取索引。 • 用于各变量的句柄列表,其变量值均要在 opc ua 服务器中设置。 用户可从autohotspot 指令获取此句柄列表。 在以下程序示例中,调用了一次该指令,向 opc ua 服务器发送一个使能信号。 块的功能可使用“opc_ua_writelist”指令来写入 opc ua 服务器中的变量值。 需要哪些信息? 该函数需要以下信息: •要写入其值的变量的句柄(“nodehdls”参数) • 要传输的各变量的值(“variable”参数) 为此,请参考以下实例: –如果使用的客户端接口具有写入列表,step 7 会自动创建与需要传输的变量对应的系 统数据类型。 –如果不使用客户端接口,必须为“variable”参数创建 plc 数据类型 (udt) 或结构 (struct)。根据需要传输的变量定义该 udt 的分量。 使用与相应 opc ua 数据类型兼容的 simatic数据类型,请参见“autohotspot”。

              指令会返回哪些信息?该指令返回以下信息: • 错误消息列表(“nodestatuslist”参数)。此表中的每条错误消息都与“nodehdls”参数中的对应句柄相关。 对于各变量(“nodehdl”),用户需要检查 opc ua服务器是否能接受新值。 已组态连接的使用方法 1. 在“项目树”(project tree) 区域中,选择作为客户端的 cpu。 2.在“程序块”(program blocks) 文件夹中,选择要用于执行客户端指令的函数块。在该示例中,函数块名为“writetoproductionline”。 选择的语言:scl。 3.使用拖放功能将“opc_ua_writelist”指令从“指令 > 通信 > opc ua > opc ua 客户端”(instructions > communication > opc ua > opc ua client)文件夹移到编辑器。 4. 选择该调用,作为多重实例。 step 7创建该指令的实例并将其命名为“opc_ua_writelist_instance”。 5.单击“opc_ua_writelist_instance”。 step 7 将打开“组态”(configuration)。 6.在“选择用于 opc ua 接口的客户端接口”(select client interface for opc uainterface) 下,选 择要为指令使用的客户端接口。 在该示例中,客户端接口名为“productionline”,(请参见“autohotspot”和“autohotspot”)。 7. 单击“数据访问”(dataaccess),然后选择写入列表。 在该示例中,读取列表名为“writeliststatus”。 step 7现在将自动为指令参数提供已为客户端接口组态的值。 8. 单击“块参数”(blockparameters),然后将变量手动分配给剩余参数 req、busy、done、 error、status。 step 7会将所选变量添加到函数调用中。 调用指令(首次调用) 有关完整的程序,请参见“autohotspot”部分。程序示例使用的写入列表“writeliststatus”包含以下 plc 变量: • productionenabled程序将该变量的新值写入服务器。 “autohotspot”部分介绍了如何创建客户端接口以及如何为其添加包含 plc 变量的写入列表。示例程序由 case 指令分为多个程序段(实例)。指令调用说明(首次调用) 上例所示为示例 4。 在示例程序中,该实例仅为一个 plc变量分配新值。在用户应用程序中,可为大量 plc 变量 分配新值。如果“#setproductionenabled”变量包含值“true”,则新值设为 true。由于初始化仅运行一次(在第一个周期中),因此随后会将“#setproductionenabled”设为 false。“opc_ua_writelist”指令将新值写入 opc ua 服务器中的 plc变量“productionenabled”。指令调用说明(故障排除) 如果发生错误,输出参数“error”的值将设为 true,这会将“#state”变量的值设为 100。该实例将保留以接受故障排除。示例程序还调用了“opc_ua_writelist”指令,以将 req 参数设为 false。如果输出参数“done”为 true,说明指令执行成功。注:该指令可能已成功执行(“error”参数未置位,“done”参数置位),但不能设置 plc 变量。因此,在示例中,会对 plc变量进行检查,以确定程序是否能够设置有效值: • 如果服务器能够将新值分配给第一个 plc变量,则“nodestatuslist”参数所指向数组的第 一个元素包含值 0。 在本示例中,仅使用一个变量。状态代码位于“productionline_data"."writeliststatus".nodestatuslist[0]”中。 无法设置plc 变量时,程序会输出错误消息。 “#state”变量的值加 1。这意味着将在下一周期执行下一程序段(示例 5:releasehandle list)。 参见 客户端程序中的 opc ua 指令 (页 5724)opc_ua_nodereleasehandlelist:释放用于读写访问的句柄。使用 opc_ua_writelist 写入数组区段(s7-1500) 简介 本部分基于“opc_ua_writelist”;请参见“opc_ua_writelist:写入变量(页 5808)”。 本部分介绍如何使用“opc_ua_writelist”指令为数组的一部分分配(写入)新值。 写入opc ua 服务器数组的一部分的基本方法如下:以下说明假定: • 已组态一个 cpu 作为 opc ua 服务器。该服务器提供的数组可由 opc ua 客户端写入。 在该示例中,使用 "productionline" cpu 为 opc ua客户端提供数据块 “data_from_opc_ua_clients”: • 已组态一个 cpu 作为 opc ua 客户端。在客户端,已创建了一个客户端接口,参见“autohotspot”。 客户端接口包含一个数组形式的写入列表。该数组中只有一部分用于写入服务器上的数组。在本示例中,使用包含“writeliststatus”写入列表的“productionline”客户端接口:在服务器的“serial_number”数组中,新值将写入“serial_number[5]" ”到“serial_number[9]”。 调整写入列表数据类型和写入列表 db“opc_ua_writelist”显示了如何使用“opc_ua_writelist”指令向整个标量(包含单个值的变量)和数组(包含多个值的变量)中写入新值。 以下部分提供使用 opc_ua_writelist 向数组的一部分写入新值时需要使用的“opc_ua_writelist”的更多详细信息。 步骤 1:复制并调整写入列表数据类型 首先,更改变量的数据类型,即为写入 opcua 服务器提供数值的变量。 必须进行此更改,因为 step 7 生成的数据类型过长。由于只向数组的一部分(而非整个数组)分配新值,所以数据类型过长。在本示例中,访问包含十个元素的数组 "serial_number”。因此,step 7 会生成含十个元素的数据类型。 要缩短数据类型,请按以下步骤操作: 1. 在“项目树”中,打开“plc数据类型”(plc data types) 文件夹。 2. 打开“系统数据类型”(system data types) 文件夹。 3.复制数据类型“.”。 在本示例中,数据类型名为“"productionline.writeliststatus”。 4.将复制的数据类型粘贴到“plc 数据类型”(plc data types) 文件夹。 5.更改插入的数据类型的名称,使其在项目中具有意义。在本示例中,该名称改为“myudtproductionline.writeliststatus”。 6. 更改数组的数据类型。在本示例中,我们要将 serial_number[5] 到 serial_number[9] 中的值写入 opc ua 服务器。因此,将数据类型从“array[0..9] of lint”缩短至“array[0..4] of lintl”。 在本示例中: 第 2步:复制写入列表 db,并为其应用新的写入列表数据类型 在此步骤中,在新数据块中使用新数据类型。 必须执行此步骤,因为 step 7生成的数据块中包含数组的原始数据类型。 无法更改数据类型:每次编译数据块时会恢复原始数据类型。更改丢失。要新建一个数据块,请按如下步骤操作: 1. 在“项目树”(project tree) 区域中,选择作为客户端的 cpu。 2.打开“程序块”(program blocks) 文件夹 3. 复制数据类型_data在本示例中,数据块名为“productionline_data” 4. 将复制的数据块粘贴到“程序块”(program blocks)文件夹。 5. 更改插入的数据块的名称,使其在项目中具有意义。在本示例中,该名称改为“myproductionline_data” 

Wincc软件,G120变频器,V90电机,交换机精智面板,PLC模块

展开全文

我们其他产品
我们的新闻
咨询 在线询价 拨打电话