三菱fx係列plc堆棧指令(MPS,MRD,MPP)的功能與(yu) 用法
三菱fx係列plc共有基本邏輯指令20或27條、步進指令2條、功能指令100多條不同係列有所不同。
以FX2N為(wei) 例,介紹其基本邏輯指令和步進指令及其應用。
FX2N的共有27條基本邏輯指令,其中包含了有些子係列plc的20條基本邏輯指令。
堆棧指令MPS/MRD/MPP
堆棧指令是FX係列中新增的基本指令,用於(yu) 多重輸出電路,為(wei) 編程帶來便利。
在FX係列PLC中有11個(ge) 存儲(chu) 單元,它們(men) 專(zhuan) 門用來存儲(chu) 程序運算的中間結果,被稱為(wei) 棧存儲(chu) 器。
1)MPS進棧指令
將運算結果送入棧存儲(chu) 器的第一段,同時將先前送入的數據依次移到棧的下一段。
2)MRD讀棧指令
將棧存儲(chu) 器的第一段數據最後進棧的數據)讀出且該數據繼續保存在棧存儲(chu) 器的第一段,棧內(nei) 的數據不發生移動。
3)MPP出棧指令
將棧存儲(chu) 器的第一段數據最後進棧的數據)讀出且該數據從(cong) 棧中消失,同時將棧中其它數據依次上移。
堆棧指令的使用如圖1,其中圖1a為(wei) 一層棧,進棧後的信息可無限使用,最後一次使用MPP指令彈出信號;圖1b為(wei) 二層棧,它用了二個(ge) 棧單元。
圖1 堆棧指令的使用
a) 一層棧 b) 二層棧
堆棧指令的使用說明:
1)堆棧指令沒有目標元件;
2)MPS和MPP必須配對使用;
3)由於(yu) 棧存儲(chu) 單元隻有11個(ge) ,所以棧的層次最多11層。
二、三菱plc的堆棧MPS,MRD,MPP指令
三菱plc的MPS,MRD,MPP指令助記符與(yu) 功能
三菱plc的MPS,MRD,MPP指令說明
在可編程序控製器中有11個(ge) 存儲(chu) 器,用來存儲(chu) 運算的中間結果,被稱為(wei) 棧存儲(chu) 器。
使用一次 MPS 指令就將此時刻的運算結果送入棧存儲(chu) 器的第1段,再使用 MPS 指令,又將此時刻的運算結果送入棧存儲(chu) 器的第1段,而將原先存入第一段的數據移到第二段。以此類推。
使用 MPP指令,將最上段的數據讀出,同時該數據從(cong) 棧存儲(chu) 器中消失,下麵的各段數據順序向上移動。即所謂後進先出的原則。
MRD是讀出最上段所存的最新數據的專(zhuan) 用指令,棧存儲(chu) 器內(nei) 的數據不發生移動。
這些指令都是不帶軟元件地址的獨立指令。
編程
例1:一段棧
例2:二段棧
例3:四段棧
請對照以下梯形圖與(yu) 例3:
例3中需要要三重MPS指令編程,但是如果改成左麵的電路,實現的效果一樣。編程卻很方便,不必采用MPS指令。
三、plc堆棧指令
1、在可編程序控製器中有11個(ge) 存儲(chu) 器,用來存儲(chu) 運算的中間結果,被稱為(wei) 棧存儲(chu) 器,使用一次MPS指令就將此時刻的運算結果送入棧存儲(chu) 器的第1段,再使用MPS指令,又將此時刻的運算結果送入棧存儲(chu) 器的第1段,而將原先存入第一段的數據移到第二段。以此類推。
2、使用MPP指令,將最上段的數據讀出,同時該數據從(cong) 棧存儲(chu) 器中消失,下麵的各段數據順序向上移動。即所謂後進先出的原則。
3、MRD是讀出最上段所存的最新數據的專(zhuan) 用指令,棧存儲(chu) 器內(nei) 的數據不發生移動。
4、這些指令都是不帶軟元件地址的獨立指令。
四、plc中何時用堆棧指令?
先入先出,先入後出。
例如,信息先後進來,前麵的信息處理完再處理後麵的信息。用到先入先出,後麵的信息在堆棧中等待處理。
這個(ge) 在做T圖的過程中體(ti) 現不出來,這個(ge) 是所有CPU運行必須的一個(ge) 過程,就理解成緩存。
例如:
存的過程
-----4
-----3
-----2
-----1
讀的過程
-----1
-----2
-----3
-----4
五、三菱Fx2n plc多重輸出MPS、MRD、MPP指令
三菱的FX2N係列PLC 中有11個(ge) 存儲(chu) 運算結果的存儲(chu) 器,被稱為(wei) 棧存儲(chu) 器,
多重輸出指令又被稱為(wei) 堆棧指令,MPS、MRD、MPP為(wei) 一組指令,主要用在當多重輸出且邏輯條件不同的情況下,將連接點的結果存儲(chu) 起來,以便連接點後麵的電路編程。
MRD:
讀出堆棧,讀出由MPS指令最新存儲(chu) 的運算結果棧存儲(chu) 器第一單元數據),棧內(nei) 數據不發生變化。
MPP:
彈出堆棧,讀出並清除棧存儲(chu) 器第一單元數據,同時以下各存儲(chu) 單元數據向上單元推移。
MPS:存儲(chu) 該指令處的運算結果壓入堆棧),使用一次MPS指令,該時刻的運算結果就推入棧的第一單元。在沒有使用MPP指令之前,若再次使用MPS指令,當時的邏輯運算結果推入棧的第一單元,先推入的數據依次向棧的下一單元推移。圖8-2中棧存儲(chu) 器中的①是第一次壓棧的數據,②是第二次壓棧的數據。
多重輸出指令的入棧出棧工作方式是:後進先出、先進後出。
MPS、MPP兩(liang) 指令必須成對出現,而MPS、MPP之間的MRD指令在隻有兩(liang) 層輸出時不用。而若輸出的層數多,使用的次數就多。在利用梯形圖編程的情況下,多重輸出指令可以不用過分關(guan) 注。而且也可以用其他指令取代多重輸出指令。