分享

案例分享:数组变量应用!

 PLC发烧友 2023-10-13 发布于广东

1

概述

数组是相同数据类型的元素的集合。支持固定长度或可变的一维和多维数组。简单来说:数组是指将相同数据类型的标签的连续集合体用一个名称表示。如下图所示:

 

2

声明数组语法

您可以在 POU 的声明部分以及全局变量列表中定义数组。如下图所示:



01



固定长度数组声明的语法

<Array_Name>: ARRAY [<ll1>..<ul1>,<ll2>..<ul2>,..,<lln>..<uln>] OF <elem.type>

ll1, ll2, lln标识字段范围的下限。

ul1, ul2,uln标识字段范围的上限。

范围值必须为整数类型。

定义固定长度的数组声明示例

Card_game: ARRAY [1..13, 1..4] OF INT;



02



长度可变的数组声明语法

<Array name> :ARRAY[* ( , * )+ ] OF <data type>;

// (...)+:一个或多个其他维

定义可变长度的数组声明示例



03



初始化数组

数组完整初始化示例

arr1 : ARRAY [1..5] OF INT := [1,2,3,4,5];

arr2 : ARRAY [1..2,3..4] OF INT := [1,3(7)]; (* 简短:1,7,7,7 *)

arr3 : ARRAY [1..2,2..3,3..4] OF INT := [2(0),4(4),2,3];

(* 简短: 0,0,4,4,4,4,2,3 *)

3

应用案例

练习:逻辑阵列应用(如下图)

给定零点坐标,自动将其他点的数据进行运算,并得出结果存入数组中语法简化:

PROGRAM SR_Main

VAR

a:ARRAY[0..4] OF INT;

b:ARRAY[0..6] OF INT;

c:INT;

d:INT;

number1:INT;

number2:INT;

start: BOOL;

END_VAR

c:=0;

d:=0;

number1:=0;

number2:=0;

IF start THEN

FOR c:=0 TO 4 BY 1 DO

a[c]:=number1;

number1:=number1+50;

END_FOR

FOR d:=0 TO 6 BY 1 DO

b[d]:=number2;

number2:=number2+50;

END_FOR

END_IF

4

课程推荐

文章看得不够爽?相关的视频课程手把手交你怎么做功能块!!

长按扫码,领取课程

老电工都在用 | 铜排、导线面积、线损自动计算软件!

2023-10-10

免费下载:十大热门电工仿真软件

2023-10-09

西门子、三菱指令大全,学PLC编程先记住它们!

2023-10-08

【免费领】36本CAD电气电子书,助你小白变大神!

2023-10-05

还在到处找变频器说明书?1120本变频器说明书,一次打包带走!

2023-10-04

万用表经典口诀,这33点都看懂了,万用表也就精通了

2023-09-23





点个在看你最好看

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多