SIEMENS西门子 S120伺服电机 1FK7011-5AK74-1AG3-Z 

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

详细介绍


              variant(s7-1200, s7-1500)有关 variant 的基本信息 (s7-1200, s7-1500) 说明 variant数据类型的参数是一个指针或引用,可指向各种不同数据类型的变量。variant 指 针无法指向实例,因此不能指向多重实例或多重实例的array。variant 指针可以是基本数 据类型(例如,int 或 real)的对象。还可以是 string、dtl、struct类型的 array、 udt、udt 类型的 array。variant 指针可以识别结构,并指向各个结构元素。variant 数据类型的操作数不占用背景数据块或工作存储器中的空间。但是,将占用 cpu 上的存储空间。示例:在程序循环中以迭代方式编辑不同的轴类型(s7-1500) 示例 以下示例显示了如何在 for 循环中以迭代方式编辑不同的轴类型。除了“speedaxis”类型之外,还可以在循环中处理派生轴类型,例如:“positioningaxis”或“synchronousaxis”轴类型。 1.创建一个全局数据块并声明一个“db_any”数据类型的 array。任何工艺对象都可以在运行时 传递给db_any。例如,可通过将特定的工艺对象分配给 array 元素来初始化启动 ob 中的 全局数据块。 2. 在 scl块中,声明“ref_to to_speedaxis”数据类型的引用。“speedaxis”类型的轴以及派生轴 可以在运行时传递给引用。3. 在 for 循环中,首先检查“db_axis”中的每个工艺对象,以确定其是否与声明的引用匹配。为 此使用赋值尝试。如果赋值尝试成功,则读取并写入轴参数。“fb linedata”调用“fcstationdata”并在被“ref("receivedata")”调用时将引用传递到 接收数据块。通过取消对所传递的接收数据块的引用,该 fc 可读出站号并将其写入临时变量 “stationno”。将接收数据块中的生产数据复制到全局 db“station”中的相应 array 元素中。 通过 "refproductiondata"输出将此 array 元素作为引用返回到调用 "fb linedata"。 随后它可以通过 取消引用直接访问所传递的 array元素,从而更新整条生产线的单元计数器。

            variant类型的变量不是一个对象,而是对另一个对象的引用。在函数的块接口中的 var_in、var_in_out 和 var_temp部分中,variant 类型的单个元素只能声明为形参。因此,不能在数据块或函数块的块接口静态部分中声明,例如,因为各元素的大小未知。所引 用对象的大小可以更改。 使用 variant数据类型时,可为各种数据类型创建通用的标准函数块 (fb) 或函数 (fc)。为此,可使用所有编程语言中的各种指令。在程序创建过程中,可指定该块可处理数据类型。在此, 可使用 variant数据类型对各种变量进行互连。之后,再根据这些变量在块中的数据类型进行响应。调用某个块时,可以将该块的参数连接到任何数据类型的变量。调用某个块时,除了传递变量的指针外,还会传递变量的类型信息。块代码随后可以根据运行期间传递的变 量类型来执行。 例如,如果函数的块参数为variant 数据类型,那么整数数据类型的变量可以在程序中的 一个点处传递,而 plc数据类型的变量可以在程序中的另一个点处传递。借助 variant 指令, 函数随后可以正确响应这种情况,而不会出错。 说明如果一个数据块zui初的数据类型为用户自定义的数据类型 (udt),那么只能指向完整的数据 块。 说明 访问 i/o 只有 s7-1500模块的 cpu 才能直接读写 i/o 输出或输出中的信号。指针在比较过程中的应用 (s7-1200, s7-1500)s7-1200/1500 cpu 中的指针用例(与 s7-300/400 相比) 下表简要列出了 s7-300/400 系列cpu(any 指针)与 s7-1200/1500 系列 cpu 中指针的各 种应用及解决方案。在大多数应用中,s7-1200/1500 系列 cpu 无需使用指针。取而代之的是更为简单的语言资 源。在程序运行时期间只需确定数据类型时,才建议使用 variant 数据类型进行间接寻址。 any 指针的用途 在 tia portal中应用时的建议 (s7-1200/ s7-1500) 使用指令“blkmov:块移动”,在程序中移 动任意源和目标数据类型的数据。 在plc 数据类型中变量定义。使用指令 “serialize”和“deserialize”,移动变量。 初始化 array 结构使用指令“fill_blk:填充块”,初始化或填 充 array 结构。 移动 array 元素使用指令“move_blk:块移动”,将一个 array 结构中的多个元素内容移到另一个 array 结构中。使用结构化数据,优化存储器和性能 使用块接口中的 inout 部分优化存储器和性 能。确定结构或数据块的长度 使用 array并读取其长度:使用指令 “countofelements:获取 array 元素个 数”。该指令只能与数据类型 variant 结合使用。 间接寻址 使用 variant 指针,可对仅在运行过程中已 知的数据类型进行间接寻址。使用数据类型db_any,可对数据块进行间接访问。

           variant 指令 (s7-1200,s7-1500) variant 指令 tia portal 中提供了以下用于处理 variant 的指令: 基本指令 类别 指令说明 比较器运算 eq_type 比较数据类型与变量数据类型是否“相等” ne_type 比较数据类型与变量数据类型是否“不相等”e 比较 array 元素数据类型与变量数据类型是否“相等” ne_elemtype 比较 array元素数据类型与变量数据类型是否“不相等” is_null equals zero 指针查询 not_null une 指针查询 is_array 检查 array typeof 检查 variant 变量的数据类型 typeofelements 检查 variant 变量的元素数据类型类别 指令 说明 移动操作 move_blk_va riant 块移动variantget 读取 variant 变量值 variantput 写入 variant 变量值 countofelements 获取 array 元素个数 转换操作 variant_to_d b_any 将 variant 转换为 db_anydb_any_to_v ariant 将 db_any 转换为 variant 说明 move、move_blk 和move_blk_variant 之间的区别 • 可使用“move”指令来复制完整的结构。 •可使用“move_blk”指令来移动具有已知数据类型的 array 的部分。 • 仅在您想要移动其数据类型仅在程序运行时期间已知的array 的部分时,才需要使用 move_blk_variant 指令。 可以在信息系统的“基本指令 >对应编程语言”(basic instructions > respective programming language)下找到有关各种指令的其它信息。 也可以在“扩展指令”(extended instructions) 下找到同样用于处理 variant数据类型的其它 指令。对 variant 指向的变量的数据类型求值 在下表中,您将看到可使用哪些指令来对 variant指向的变量的数据类型求值: 函数 指令 说明 确定数据类型 typeof():检查 variant 变量的数据类型 (该指令仅适用于scl,且只能与 if 或 case 指令一起使用。) 可使用该指令将 variant 变量指向的数据类型与任何其它变量的数据类型进行比较。也可以与 plc 数据类型作比较。 typeofelements():扫描 variant 变量array 元素的数据类型 (该指令仅适用于 scl,且只能与 if 或 case 指令一起使用。) 可使用该指令将 variant变量指向的数据类型与 任何其它变量的数据类型进行比较。也可以与 plc 数据类型作比较。如果 variant 变量的数据 类型为array,则将比较 array 元素的数据类 型。 eq_type:比较数据类型与变量数据类型 是否“相等”ne_type:比较数据类型与变量数据类型 是否“不相等” 可使用该指令将 variant 变量指向的数据类型与任何其它变量的数据类型进行比较。也可以与 plc 数据类型作比较。 e:比较 array 元素数据类型与变量数据类型是否“相等” ne_elemtype:比较 array 元素数据类 型与变量数据类型是否“不相等” 可使用该指令将variant 变量指向的数据类型与 任何其它变量的数据类型进行比较。也可以与 plc 数据类型作比较。如果 variant变量的数据 类型为 array,则将比较 array 元素的数据类 型。 对 array 元素求 值 is_array:检查array 可使用该指令检查 variant 变量指向的数据类型 是否为 array。 countofelements:获取array 元素个 数 可使用该指令读出该变量中 variant 变量指向了 多少个 array 元素。 可以在信息系统的“基本指令> 对应编程语言”(basic instructions > respective programminglanguage) 下找到有关各种指令的其它信息。

 

Wincc软件,G120变频器,V90电机,交换机精智面板,PLC模块
展开全文
我们其他产品
我们的新闻
微信咨询 在线询价 拨打电话