找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
这个切换还是比较不方便。如果你程序块设置是LAD编程还可以切换到SCL转换,如果你程序块直接是SCL编程那是不能通过属性去切换到LAD编程。
参考SCL 入门:
https://www.ad.siemens.com.cn/productportal/prods/s7-1200_plc_easy_plus/smartsms/097.html
赋值运算的计算按照从右到左的顺序进行。
可通过以下方式编程赋值运算:
单赋值运算:执行单赋值运算时,仅将一个表达式或变量分配给单个变量:
示例:a := b;
多赋值运算:执行多赋值运算时,一个指令中可执行多个赋值运算。
示例:a := b := c;
此时,将执行以下操作:
b := c;
a := b;
组合赋值运算:执行组合赋值运算时,可在赋值运算中组合使用操作符"+"、"-"、"*"和"/":
示例:a += b;
此时,将执行以下操作:
a := a + b;
也可多次组合赋值运算:
a += b += c *= d;
此时,将按以下顺序执行赋值运算:
c := c * d;
b := b + c;
a := a + b;
示例
下表举例说明了单赋值运算的操作:
"MyTag1" := "MyTag2";
(* 变量赋值 *)
"MyTag1" := "MyTag2" * "MyTag3";
(* 表达式赋值 *)
"MyTag" := "MyFC"();
(* 调用一个函数,并将函数值赋给 "MyTag" 变量 *)
#MyStruct.MyStructElement := "MyTag";
(* 将一个变量赋值给一个结构元素 *)
#MyArray[2] := "MyTag";
(* 将一个变量赋值给一个 ARRAY 元素 *)
"MyTag" := #MyArray[1,4];
(* 将一个 ARRAY 元素赋值给一个变量 *)
#MyString[2] := #MyOtherString[5];
(* 将一个 STRING 元素赋给另一个 STRING 元素 *)
下表举例说明了多赋值运算的操作:
"MyTag1" := "MyTag2" := "MyTag3";
(* 变量赋值 *)
"MyTag1" := "MyTag2" := "MyTag3" * "MyTag4";
(* 表达式赋值 *)
"MyTag1" := "MyTag2" := "MyTag3 := "MyFC"();
(* 调用一个函数,并将函数值赋值给变量 "MyTag1"、"MyTag1" 和 "MyTag1" *)
#MyStruct.MyStructElement1 := #MyStruct.MyStructElement2 := "MyTag";
(* 将一个变量赋值给两个结构元素 *)
#MyArray[2] := #MyArray[32] := "MyTag";
(* 将一个变量赋值给两个数组元素 *)
"MyTag1" := "MyTag2" := #MyArray[1,4];
(* 将一个数组元素赋值给两个变量 *)
#MyString[2] := #MyString[3]:= #MyOtherString[5];
(* 将一个 STRING 元素赋值给两个 STRING 元素 *)
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!