在 TIA Portal V14 及更高版本中,运行过程中传送数据类型为 (W)STRING 的块参数时,将检查参数是否截断。当形参和实参的长度与声明的长度不符时,可能会发生参数截断。在运行过程中,如果目标参数的声明长度小于接收的 (W)STRING 参数长度,则截断 (W)STRING 参数并将使能输出 ENO 设置为“FALSE”。
如果在用户程序中评估使能输出 ENO,则程序的语义可能会发生更改。
在优化块和标准块之间转发 STRING 参数 (S7-1200/1500)
在 TIA Portal V14 以下版本中,在优化块和非优化块之间传送 STRING 参数时不会传送该参数的长度信息。即,在 STRING 参数的后续处理中,无法通过 ENO 机制判断访问错误。即使发生访问错误,使能输出 ENO 的值也将为 TRUE。
在 TIA Portal V14 及更高版本中,将传送 STRING 长度信息。因此,可通过 ENO 机制监视访问错误。如果在用户程序中评估使能输出 ENO,则程序的语义可能会发生更改。
硬件数据类型“HW_ANY”用于标识所有硬件组件,如模块。在 V14 版本中,“HW_ANY”的基本数据类型从 WORD 变更为 UINT。升级为 V14 后,为数据类型为“HW_ANY”的参数指定一个确定的 WORD 常量(如 W#16#1)或指定 WORD 数据类型的变量时,可能会发生编译错误。
此时,需更改常量的符号(如,更改为 16#1)或将变量的数据类型更改为 UINT。
块注释的长度
在 TIA Portal V14 及更高版本中,块注释的长度不得超过 32767 个 Unicode字符。
指令“SR:置位复位触发器”和“RS:复位置位触发器”的语法检查
在“S”输入处,输入、输出、位存储器以及静态或局部数据可用作操作数。但不允许使用常量。该版本的语法检查并不会拒绝常量“0”和“1”。在 TIA Portal V14 中,对语法检查功能进行了改进。“S”输入处不再支持常量“0”和“1”。之前对此进行编译不会报错,但新版本中将接收到一条错误消息。此时,需要更改用户程序并使用支持的操作数。
在 64 位的 Windows 版本中,LREAL 数据类型的评估有时会与之前的 32 位 Windows 版本不同。对 (L) Real 常量值进行取整时,最低有效位可能有所不同。
尾数中的最后一位数字可能不同,大多数情况下仅对精度造成轻微影响。
如果对尾数中的最后一位数字进行评估,则转换后 STEP 7 程序的语义可能会发生变更。
IEC 定时器中的“ST”参数
IEC 定时器中的“ST”参数仅为内部使用,禁止写入。因此,在 TIA Portal V14 及以上版本中该参数不再显示。如果在用户程序中对“ST”参数进行写访问,则升级后进行编译时将显示一条错误消息。
如果与项目间工程组态进行数据交换并使用 HMI 访问“ST”参数,则首先应导出该项目,然后再将其重新导入到代理 CPU 中。只有这样,“ST”参数才不会在 HMI 组态中显示。
消息的相关值 (S7-1500)
在使用旧版本 TIA Portal 创建的项目中,可以包含不同项目语言不同结构的嵌入式相关值。不同语言中,相关值的顺序可能不同,也可能会丢失。对此种类型进行项目时,需统一相关值的顺序。具体取决于原项目中参考语言的设置。此时,建议检查所翻译的文本信息并进行相应更改。
隐式转换“DB_ANY”数据类型的块参数
使用语法 DB_ANY.%DB(B|W|D) 访问“DB_ANY”数据类型的块参数时,之前不会进行数据类型隐式转换。只是简单地将源值的位模式转换为目标数据类型。如果目标数据类型小于源数据类型,则将发生溢出,导致写入的值错误或不准确。而发生精度丢失或运行时错误时,使能输出 ENO 也不会设置为“FALSE”。
在 V14 及以上版本中,通过语法 DB_ANY.%DB(B|W|D) 进行参数传递时,将按照数据类型的隐式转换规则进行转换。请注意,升级后可能会写入不同的值,并对程序的语义造成更改。此外,发生运行时错误时,使能输出 ENO 将设置为“FALSE”。
标准访问组织块的接口
进行标准访问的组织块接口大小需至少为 20 个字节。在旧版本的 TIA Portal 中,编译过程中仅检查 OB1 接口的最小大小。在 V14 及以上版本中,将检查所有组织块的接口。之前对此进行编译不会报错,但新版本中将接收到一条错误消息。
比较 WORD 数据类型的变量与 S5TIME 数据类型的变量
在 TIA Portal V14 及以上版本中,比较 WORD 数类型的变量与 S5TIME 数据类型的变量时,两种变量都将转换为 TIME 数据类型。WORD 变量将解释为一个 S5TIME 值。如果其中某个变量无法转换,则不进行比较且输出结果 FALSE。转换成功后,将基于所选择的比较表达式进行比较。