在plc程序控制中,有時需要將運算的中間結果進行暫時存儲,等到要用時再取出來使用,因此在plc中有11個被稱為棧,存儲中間運算結果的存儲器。使用mps指令將程序運算的中間結果壓入棧中的第一層,棧中原來的數據依次向下一層移動;使用mrd指令將棧中最上層的數據讀出,讀棧時,數據不發(fā)生移動;使用mpp指令將存入棧中的數據向上一層移動一次,并將最上層的數據取出。打個比方,進棧好比手槍壓子彈,出棧好比退子彈,先進的后出,后進的先出如圖所示。
mps與mpp指令必須成對使用,且連續(xù)使用不超過11次,圖是棧指令的使用說明。
圖 棧指令的使用說明
電路塊一與電路塊三需要用棧指令,而電路塊二是在out指令后,通過接點對其它線圈使用out指令稱為縱接輸出或連續(xù)輸出,這種連續(xù)輸出可以多次重復使用,如是順序改成電路塊一的順序,則必須使用棧指令,這時程序步會增多,因此在程序設計時要仔細斟酌。