连续 D总和计算

2015-06-30 9:54:32 人评论 次浏览 分类:永宏应用案例

【控制要求】实现从D101开始的N个D寄存器总和计算 (N长度可以自定义 ),计算结果存放在 D100中,当运算结果小于 -32768 或大于 32767时,对应的借位和进位标志指示灯点亮。【元件说明】
PLC 元件 控制说明
X0 启动开关
Y0 进位指示
Y1 借位指示
D500 FOR-NEXT的循环次数
P2 指针缓存器
【控制程序】

【程序说明】
  1. 本例的关键是利用指针 P2配合FOR~NEXT循环来实现加数的变化,当 P2=101,加数 DP2代表D101,当 P2=102,加数 DP2代表D102,依此类推, P2=110,加数 DP2代表D110。
  2. D个数由 FOR ~NEXT循环执行次数决定,而FOR ~NEXT循环执行次数由 D500值决定, D500小于等于1时,循环执行次数视为 1。假设 D500=10,则FOR ~NEXT执行10次,才继续执行 NEXT后的程序。
  3. 1次执行 FOR ~NEXT循环时, P2=101,DP2代表D101,ADD指令执行, D100与D101相加的结果存放在D100中,因被加数D100=0,所以存放加法运算结果的 D100的内容值就为 D101中数值,同时FUN.15指令执行, P2变为102。
  4. 2次执行 FOR ~NEXT循环时, P2=102,DP2代表D102,ADD指令执行, D100与D102相加的结果存放在D100中,因被加数 D100=D101,D100的内容值就为 D101与D102中数值相加。
  5. 依此类推,执行到第 10次时, D100内容值为 D101、D102、D103、D104、D105、D106 、D107、D108、 D109、D110中所有数值相加。
  6. 当相加结果数值小于 -32768时,BR接通,输出线圈Y1导通,借位指示灯亮;当相加结果数值大于 32767时,CY接通,输出线圈 Y0导通,进位指示灯亮。
  7. 注意:因为是持续相加,进位和接位指示灯亮的时间很短,很难观察得到,可以用自保持等方法来延长指示灯亮的时间来方便观察。