鼻部整形

首页 » 常识 » 预防 » 西门子S71200PLCARRAY变长
TUhjnbcbe - 2023/10/19 18:03:00

在西门子S7-PLC中,在FC的Input接口中,定义数组Array

  • ofInt,可以用LOWERBOUND和UPPERBOUND指令来读取数组的上限值和下限值,进而可以用来求变长数组元素的总和,下面就针对这两个指令的功能,分享一下变长数组的求和,具体如下:

    在分享之前,我想大家对变长数组感到很好奇,包括我当初第一次见到这个名词的时候,就充满了期待和好奇,所以我想,我们还是先一起来学习一下什么是变长数组:

    1.变长数组定义

    变长数组,英文全称是VariableLengthArray),是C语言中的专业术语,简称叫作:VLA;C语言中,直到C99标准出现之前,声明数组时在方括号内只能使用整数常量表达式。C99出现后,对其做了比较大的改进,数组的[]中既可以声明为INT变量表达式,也可以是整形表达式,数组的长度范围不会随时变化,在其生存期内的长度仍然是固定不变的。

    2.案例

    Step1:

    在FC的Input接口中定义变长数组,数组的名称是:Input_1,数据类型是:Array

  • ofInt;

    在Output接口中定义变量Output_1,数据类型是int,该变量作为变长数组元素求和的结果;

    在TEMP接口中定义Temp_1;Temp_2;Temp_3;Temp_4,数据类型依次是DINT;DINT;DINT;INT;分别临时存储变长数组的下限值,上限值,下标值,求和值;

    Step2:

    在FC的程序段1中进行求和存储的初始化;

    Step3:

    在FC的程序段2中,利用LOWERBOUND和UPPERBOUND指令进行上限值和下限值的计算;

    Step4:

    在FC的程序段3中,利用数组的下限值对数组的下标进行初始化;

    Step5:

    在FC的程序段4中,求变长数组元素的和;

    Step6:

    在FC的程序段5中,当下标小于下标上限值时,下标自动加1,ENO=1后,JMP至标签处;

    Step7:

    在FC的程序段6中,变长数组的元素全部求和后,将临时存储器中的数据输出给Output_1中;

    Step8:

    在OB1中,调用FC;

    Step9:

    新建DB,创建变量;

    Step10:

    监控DB,然后人为赋值给DB,来看计算的结果是否准确;

  • 1
    查看完整版本: 西门子S71200PLCARRAY变长