找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
{{itemCategory}}
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
用FC、FB 都可以;
定义数据块,并在数据块中定义一个含有100个整数的一维整型数组,名称为 int_array,数据类型 Array[1..100] of Int
在 PLC变量表中定义一个 BOO 类型变量,增1标志位
在 PLC变量表中定义一个 BOO 类型变量,减1标志位
FC或FB中定义两个整型局部变量;
在FC或FB中写如下的 SCL 代码。
//处理报警
"报警位" := 0;
FOR #I:= 1 TO 99 BY 1 DO
FOR #J := #I+1 TO 100 BY 1 DO
IF "数据块_1".int_array[#I] = "数据块_1".int_array[#J] THEN
"报警位" := 1;
EXIT;
END_IF;
END_FOR;
IF "报警位" = 1 THEN
EXIT;
END_IF;
END_FOR;
//处理增1
IF "增1标志位" = 1 THEN
FOR #I := 1 TO 100 BY 1 DO
"数据块_1".int_array[#I] := "数据块_1".int_array[#I] + 1;
END_FOR;
"增1标志位" := 0;
END_IF;
//处理减1
IF "减1标志位" = 1 THEN
FOR #I := 1 TO 100 BY 1 DO
"数据块_1".int_array[#I] := "数据块_1".int_array[#I] - 1;
END_FOR;
"减1标志位" := 0;
END_IF;
《在 S7-1200/1500 中如何通过变量索引实现数组访问?》
https://support.industry.siemens.com/cs/document/67598676
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!