【控制要求】實現(xiàn)從D101開始的N個D寄存器總和計算 (N長度可以自定義 ),計算結(jié)果存放在 D100中,當(dāng)運算結(jié)果小于 -32768 或大于 32767時,對應(yīng)的借位和進(jìn)位標(biāo)志指示燈點亮?!驹f明】
PLC 元件
|
控制說明
|
X0
|
啟動開關(guān)
|
Y0
|
進(jìn)位指示
|
Y1
|
借位指示
|
D500
|
FOR-NEXT的循環(huán)次數(shù)
|
P2
|
指針緩存器
|
【控制程序】
【程序說明】
-
本例的關(guān)鍵是利用指針 P2配合FOR~NEXT循環(huán)來實現(xiàn)加數(shù)的變化,當(dāng) P2=101,加數(shù) DP2代表D101,當(dāng) P2=102,加數(shù) DP2代表D102,依此類推, P2=110,加數(shù) DP2代表D110。
-
D個數(shù)由 FOR ~NEXT循環(huán)執(zhí)行次數(shù)決定,而FOR ~NEXT循環(huán)執(zhí)行次數(shù)由 D500值決定, D500小于等于1時,循環(huán)執(zhí)行次數(shù)視為 1。假設(shè) D500=10,則FOR ~NEXT執(zhí)行10次,才繼續(xù)執(zhí)行 NEXT后的程序。
-
1次執(zhí)行 FOR ~NEXT循環(huán)時, P2=101,DP2代表D101,ADD指令執(zhí)行, D100與D101相加的結(jié)果存放在D100中,因被加數(shù)D100=0,所以存放加法運算結(jié)果的 D100的內(nèi)容值就為 D101中數(shù)值,同時FUN.15指令執(zhí)行, P2變?yōu)?02。
-
2次執(zhí)行 FOR ~NEXT循環(huán)時, P2=102,DP2代表D102,ADD指令執(zhí)行, D100與D102相加的結(jié)果存放在D100中,因被加數(shù) D100=D101,D100的內(nèi)容值就為 D101與D102中數(shù)值相加。
-
依此類推,執(zhí)行到第 10次時, D100內(nèi)容值為 D101、D102、D103、D104、D105、D106 、D107、D108、 D109、D110中所有數(shù)值相加。
-
當(dāng)相加結(jié)果數(shù)值小于 -32768時,BR接通,輸出線圈Y1導(dǎo)通,借位指示燈亮;當(dāng)相加結(jié)果數(shù)值大于 32767時,CY接通,輸出線圈 Y0導(dǎo)通,進(jìn)位指示燈亮。
-
注意:因為是持續(xù)相加,進(jìn)位和接位指示燈亮的時間很短,很難觀察得到,可以用自保持等方法來延長指示燈亮的時間來方便觀察。
|