【控制要求】假設某種產(chǎn)品共有 3種型號,對應 3組配方參數,每個(gè)配方包含 10種參數,選擇相應的配方組別開(kāi)關(guān),則加工時(shí)以該配方參數作為當前加工執行的配方參數。
【元件說(shuō)明】
PLC 元件
|
元件說(shuō)明
|
X0
|
第一組配方數據開(kāi)關(guān)
|
X1
|
第二組配方數據開(kāi)關(guān)
|
X2
|
第三組配方數據開(kāi)關(guān)
|
D500-D509
|
第一組配方數據
|
D510-D519
|
第二組配方數據
|
D520-D529
|
第三組配方數據
|
D0-D9
|
當前執行的配方數據
|
P0
|
指針緩存器
|
P1
|
指針緩存器
|
【控制程序】【程序說(shuō)明】
-
本例的關(guān)鍵是利用 P0、P1指針緩存器配合 FOR~ NEXT循環(huán)來(lái)實(shí)現 D編號的變化,將存放配方參數的其中一組寄存器傳送到 D0~D9,作為當前執行的配方參數。
-
當選擇其中一組配方參數時(shí), X0、X1、X2其中一個(gè)將變?yōu)?ON,P0的值將分別對應為 500、510、520, DP0將分別代表 D500、D510、D520,同時(shí) [RST M1]指令執行, M1復位變?yōu)镺FF,RST P1指令和 FOR~NEXT循環(huán)將被執行,因 P1被復位變?yōu)?0,DP1代表D0。
-
FOR ~NEXT循環(huán)執行次數為 10次,假設選擇的是第一組配方,則 DP0將從D500~D509變化,DP1將從D0~D9變化,實(shí)現第一組配方參數數據的調用。
-
假設選擇的是第一組配方,執行第 1次循環(huán)時(shí), D500的值將被傳送到 D0,執行第 2次循環(huán)時(shí), D501的值將被傳送到 D1……,依此類(lèi)推,執行第 10次循環(huán)時(shí), D509的值將被傳送到 D9中。
-
當循環(huán)次數到達時(shí),即 P1=10,[SET M1]指令將被執行, M1被置位變?yōu)?ON,FOR~NEXT循環(huán)中的指令因M1的常閉接點(diǎn)斷開(kāi)而停止執行。
-
10個(gè)參數的 3組配方數據的傳送,通過(guò)改變 FOR~NEXT循環(huán)的次數,很容易改變配方中參數個(gè)數,而要增加配方的組數,可在程序中增加一條將存放配方數據 D的起始編號值 “MOV”到 P0的MOV指令即可。
|