西門子6ES7315-2AH14-0AB0詳細說明
西門子6ES7315-2AH14-0AB0詳細說明
上升沿跟下降沿用途極廣,主要用于信號由0變1或由1變0的那一時刻(瞬時跳變)變化狀態所進行的控制。
簡單舉兩例:
1、一設備用一運行信號指示其在運行,如果我們需要記錄其運行時間,那么就可應用運行信號的上升沿來觸發計時開始,而下降沿可應用下降沿來觸發計時結束。
2、兩設備互為備用,一個設備停機時就要啟動另一設備,此時就是利用各自設備運行信號的下降沿來觸發另一設備啟動。
主控繼電器(Master Control Relay)簡稱MCR。
主控繼電器用來控制MCR區內的指令是否被正常執行,相當于一個用來接通和斷開“能量流"的主令開關。有關指令:
MCRA:激活MCR區指令;
MCRD:取消MCR區指令;
MCR(:打開MCR區指令,在MCR堆棧中保持該指令之前的邏輯運算結果RLO(即MCR位);
MCR):關閉MCR區指令,從MCR堆棧中取出保存的邏輯運算結果RLO;
MCR(,MCR)指令必須成對使用,以表示受控臨時“電源線"的形成與終止。
例:
MCRA //激活MCR區
A I0.2
MCR( //RLO保存到MCR堆棧,打開MCR區,I0.2=1則MCR位為1,反之為0
A I3.1
=Q 4.0 //如MCR位為0,不管I3.1的狀態如何,Q4.0被置為0
A I0.5
JNB -001
L MW20
T QW10 //如MCR位為0,MW20內容送入QW10
-001:NOP0
)MCR //結束MCR控制區
MCRD //關閉MCR區
A I1.1
=Q4.1 //這兩條指令在MCR區之外,不受MCR位的控制
在此,在轉帖有關例題:
MCR指令叫做主控指令,簡單地講是有這么一個MCR的棧區。在這個棧區內的操作不僅受分步條件控制,還可以用MCR的ON或OFF來進行總控制!如:
STL Explanation
MCRA //Activate MCR area.
A I 1.0
MCR( //Save RLO in MCR stack, open MCR area. MCR = "on" when RLO=1 (I?.0 ="1"); MCR = "off" when RLO=0 (I 1.0 ="0")
A I 4.0
= Q 8.0 //If MCR = "off", then Q 8.0 is set to "0" regardless of I 4.0.
L MW20
T QW10 //If MCR = "off", then "0" is transferred to QW10.
)MCR //End MCR area.
MCRD //Deactivate MCR area.
A I 1.1
= Q 8.1 //These instructions are outside of the MCR area and are not dependent upon the MCR bit.
在上例中,用I 1.0來作為MCR取激活的條件,既將A I 1.0邏輯結果RLO存入MCR區,MCR區是否為NO取決于RLO,RLO=0時MCR區為NO,在此條件下,區內的邏輯結果受MCR總控,既如A I 4.0 = Q 8.0一句,只要MCR區為NO,Q 8.0即為零,而不管I 4.0的狀態如何!
I0.0常開按鈕,閉合時Q0.0/Q0.1兩路切換導通,頻率為15分鐘一次,切換時另一路信號保持2分鐘。即,若Q0.0通15分鐘時,Q1.1導通,此時Q0.0不是立刻斷開,而是延時2分鐘。
本人在做這段程序時,分析Q0.0/Q0.1兩路的開斷情況,得出,假定Q0.0路先導通,則Q0.0是以通17min斷13min的周期做循環,而Q0.1是在I0.0閉合15分鐘后以通17min斷13min做周期循環。
直接用邏輯關系來做控制本人也嘗試過,苦于邏輯思維實在不行,后來還是用上面的方法實現的,能否請高手指教如何直接用邏輯關系來實現?
答:以下是根據你的要求編寫的程序,已經實際測試過,希望能夠幫助到你。
TITLE=程序注釋
Network 1 // 網絡標題
LD I0.0
EU
AN Q0.0
AN Q0.1
S M0.0, 1
Network 2
LD M0.0
EU
LD Q0.0
AW< T37, 10200
OLD
= Q0.0
Network 3
LD Q0.0
TON T37, 9000
Network 4
LD T37
EU
R M0.0, 1
Network 5
LD T37
LD Q0.1
AW< T38, 10200
OLD
= Q0.1
Network 6
LD Q0.1
TON T38, 9000
Network 7
LD T38
EU
S M0.0, 1