在 STEP 7 V 11 中,为何当输入和输出使用同一变量时,语句 “CONCAT” 无法执行?

描述
扩展字符串语句 "CONCAT" 将输入参数 "IN 1" 的字符串与输入参数 "IN 2" 的字符串合并。两个字符串的合并结果显示在输出参数"OUT"。

例程
参数 "IN 1"赋值为字符串 'FGH',参数 "IN 2" 赋值为字符串 'ABCDE'。输出 "OUT" 显示结果字符串为 'FGHABCDE'。

可是在 SIMATIC S7-1200 CPU 中,如果将输出和其中一个输入分配为同一个变量,则两个字符串的串联无法执行。如图 01 ,在网络 1 中,输入 "IN 2"和输出 "OUT" 分配为同一个变量 "DB_Str.My_Str"。因此,仅输入 "IN 1" 的字符串被增加,直到超出字符所定义的最大值(0到 254) ,语句指令使用失败。

在 STEP 7 V 11 中,为何当输入和输出使用同一变量时,语句 "CONCAT"  无法执行?
图.01

避免将输出和其中一个输入分配为同一个变量。在网络 2中,输入 "IN 2"的变量 "DB_Str.My_Str" 被替换为变量 "DB_Str.DB_Var"。语句 "CONCAT" 被执行,同时显示正确的字符结果 'FGHABCDE'。

注意
选中语句 "CONCAT" ,使用 "F1" 按键,可以在 STEP 7 V 11 的在线帮助中找到更多的相关信息。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc331087.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日 下午12:03
下一篇 2021年4月12日 上午12:00

相关推荐

发表回复

登录后才能评论