全国服务热线 15801815554

SIEMENS西门子 S120伺服电机 1FK7022-5AK21-1VH5-Z 

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


            AssignmentAttempt:引用的赋值操作 (S7-1500) 说明 使用“AssignmentAttempt”指令,可对引用变量进行赋值。 支持以下赋值操作: • 尝试将 VARIANT 分配给一个引用 • 尝试将 DB_ANY 分配给一个工艺对象的引用 尝试将 VARIANT 分配给一个引用 引用变量的数据类型在声明时确定,而 VARIANT 变量的数据类型则在运行时确定。引用变 量不允许进行隐式数据转换。因此,为两个变量指定两个数据类型时,可使用赋值尝试指令。 借助赋值操作,会在运行期间进行检查,以确认分配的变量的数据类型是否正确。如果正确, 则执行该指令。如果该指令执行成功,则目标变量中包含一个有效的引用,否则为 NULL。 尝试赋值后,可以检查尝试是否成功,并根据该结果继续处理程序。在 LAD 和 FBD 中,可 以将使能输出“ENO”用于检查操作。如果赋值尝试成功,“ENO”将返回信号状态“1”。只有成 功后才能在程序段中继续执行后续指令。 在 STL 和 SCL 中,可使用指令“IS_NULL”或“NOT_NULL”来检查赋值尝试是否成功等。 以下规则适用于 VARIANT 的赋值尝试。在运行过程中,如果 VARIANT 变量不符合以下规则, 则返回值“NULL”。 • VARIANT 需指向一个优化存储区中的地址。 • VARIANT 不得指向临时存储区中的地址。 • 如需将 VARIANT 指定给一个 ARRAY 引用,则需遵循以下规则: – VARIANT 变量必须指向一个限值与所声明的引用完全相同的 ARRAY。指向 ARRAY [0..9] 的 VARIANT 变量与变量 REF_TO ARRAY[1..10] 不匹配。 – 此外,在固件版本为 V2.5 的 S7-1500 系列 CPU 中,用于生成 VARIANT 变量值的块还 应执行一次编译操作。如果操作数 #Enable 在使能输入 EN 返回信号状态“1”,则将执行该指令。从操作数 #SourceArrayBool 的第 16 个元素开始,将 48 个位组合到操作数 #DestinationArrayWord 中。 目标 ARRAY 中的起点是第三个元素。这意味着将忽略源 ARRAY 的前 16 位。第二组 16 位将 写入目标 ARRAY 的第三个字,第三组 16 位写入第四个字,第四组 16 位写入第五个字。不 考虑源 ARRAY 剩余的 64 个位。如果在指令执行期间出现错误,操作数 #EnableOut 将在使 能输出 ENO 处返回信号状态“0”。 有关上述示例的更多信息和程序代码,请参见“指令的示例库。

             • VARIANT 不能指定给一个工艺对象的引用。 • 在 SCL 中,赋值操作无法用于多重赋值运算 (a := b := c;) 中。 尝试将 DB_ANY 分配给一个工艺对象的引用 工艺对象的引用始终指向特定的工艺对象,例如 REF_TO TO_SpeedAxis。如果要在运行期间 通过 DB_ANY 类型的变量分配工艺对象,需要检查该工艺对象与声明的引用是否匹配。为此, 可使用赋值操作。尝试赋值时,运行过程中将检查该工艺对象是否具有所声明的类型。如果 数据类型正确,则会执行分配。如果分配执行成功,则目标变量中包含一个有效的引用,否 则为 NULL。 尝试将 DB_ANY 分配给一个工艺对象的引用时,遵循以下规则: • DB_ANY 必须指向优化存储区中的工艺对象。 • 两个相同类型的工艺对象可以相互分配。 • 派生类型可以分配给其基本类型。 • 基本类型不能分配给其派生类型。参数 声明 数据类型 存储区 说明 SRC Input VARIANT DB_ANY • FC 的块接 口: Input、 Output、 InOut、 Temp • FB 的块接 口: Input、 InOut、 Temp 指针指向其地址 待读取的源变量 DST Output 如果 SRC = VARIANT,则引 用: • 位序列, BOOL 除外、 • 整数、 • 浮点数、 • 字符串、 • PLC 数据类型 (UDT)、 • 系统数据类 型 (SDT)、 • ARRAY of <已 命名的数据类 型> 如果 SRC = DB_ANY,则引 用: • 工艺对象 • FC 的块接 口:Input、 Output、 Temp、 Return • FB 的块接 口:Temp 引用地址待传送 源变量的地址 有关有效数据类型的更多信息,请参见“另请参见”。在程序代码中,尝试将“myVariant”分配给引用变量“myReference”。在运行过程中,如果 “myVariant”的数据类型为“Int”,则"myReference" 中包含一个指向 VARIANT 源变量的有效引 用,否则为 NULL。分配成功时,使能输出“ENO”的信号状态为“1”,同时将值“10”写入目标 变量中。在另一程序段中,尝试将 "myDB" 分配给引用变量 "myReferenceTO"。如果运行期间 "myDB" 指向类型为“定位轴”的工艺对象,则 "myReferenceTO" 包含有效引用,否则为 NULL。分 配成功时,使能输出“ENO”的信号状态为“1”,同时可将值“1”写入工艺对象中的目标变量。SWAP:交换 (S7-1200, S7-1500) 说明 可以使用“交换”指令更改输入 IN 中字节的顺序,并在输出 OUT 中查询结果。 下图说明了如何使用“交换”指令交换数据类型为 DWORD 的操作数的字节:如果操作数“TagIn”的信号状态为“1”,则执行“交换”指令。字节的顺序已更改,并存储在 操作数“TagOut_Value”中。 有关以上示例中编程代码的更多信息,请参见“Sample Library for InstructionsARRAY 数据块 (S7-1500) ReadFromArrayDB:从 ARRAY 数据块中读取 (S7-1500) 说明 可以使用“从 ARRAY 数据块中读取”(Read from ARRAY data block) 指令从索引引用的 ARRAY DB 块类型的数据块中读取元素并将元素值写入目标范围。 ARRAY 数据块是仅包含一个 ARRAY of <数据类型> 的数据块。ARRAY 的元素可以是 PLC 数据 类型或其它任何基本数据类型。ARRAY 通常从下限“0”开始计数。 如果满足下列条件之一,使能输出 ENO 将返回信号状态 FALSE: • 使能输入 EN 返回信号状态 FALSE。 • 如果在执行该指令过程中发生错误。 参数 下表列出了“从 ARRAY 数据块中读取”指令的参数:导致该错误的原因有以下两种: • VALUE 参数的大小与 ARRAY 数据块中的元素长度不匹配。 • 这两个变量不在具有“优化访问”的存储区内。有关存储区访问类型的更多 信息,请参见“块访问的基本知识 (页 63)” * 在程序编辑器中,错误代码可显示为整数或十六进制值。有关切换显式格式的更多信息, 请参见“另请参见”。如果操作数“TagIn1”返回信号状态“1”,则执行该指令。将读取“ArrayDB”中的第二个元素并写 入操作数“TargetField”中。如果该指令执行成功,则使能输出 ENO 的信号状态为 TRUE,同 时置位输出“TagOut”。WriteToArrayDB:写入 ARRAY 数据块 (S7-1500) 说明 可以使用“写入 ARRAY 数据块”(Write to ARRAY data block) 指令将索引引用的元素写入 ARRAY DB 块类型的数据块中。 ARRAY 数据块是仅包含一个 ARRAY of <数据类型> 的数据块。ARRAY 的元素可以是 PLC 数据 类型或其它任何基本数据类型。ARRAY 通常从下限“0”开始计数。 如果满足下列条件之一,使能输出 ENO 将返回信号状态 FALSE: • 使能输入 EN 返回信号状态 FALSE。 • 如果在执行该指令过程中发生错误。下表将通过具体的操作数值对该指令的工作原理进行说明: 参数 操作数 值 DB ArrayDB 操作数“ArrayDB”是数据类型 为 Array [0 to 10] of INT 的 ARRAY DB。 INDEX 2 “ArrayDB”的第二个元素 VALUE SourceField 操作数“SourceField”是 INT 数 据类型的全局变量。 如果操作数“TagIn1”返回信号状态“1”,则执行该指令。操作数“SourceField”的值将写入 ARRAY DB 的第二个元素中。如果该指令执行成功,则使能输出 ENO 的信号状态为 TRUE,同 时置位输出“TagOut”。 有关以上示例中编程代码的更多信息,ReadFromArrayDBL:从装载存储器的 ARRAY 数据块中读取 (S7-1500) 说明 可以使用“从装载存储器的 ARRAY 数据块中读取”(Read from ARRAY data block in load memory) 指令从装载存储器 ARRAY DB 块类型的数据块中读取索引应用的元素并将其写入目 标范围。 ARRAY 数据块是仅包含一个 ARRAY of <数据类型> 的数据块。ARRAY 的元素可以是 PLC 数据 类型或其它任何基本数据类型。ARRAY 通常从下限“0”开始计数。如果 ARRAY 数据块使用块属性“仅存储在装载存储器”进行指定,则该数组数据块将仅存 储在装载存储器中。 当 REQ 参数中检测到信号上升沿时,将执行该指令。参数 BUSY 的信号状态将为“1”。当 BUSY 参数中检测到信号下降沿时,将终止该指令。在一个程序周期内,DONE 参数的信号状态为 “1”,而且在该周期内,读取的值将输出到 VALUE 参数中。在所有其它程序周期内,参数 VALUE 的值将保持不变。 如果满足下列条件之一,使能输出 ENO 将返回信号状态 FALSE: • 使能输入 EN 返回信号状态 FALSE。 • 如果在执行该指令过程中发生错误。

联系方式

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