西門子S7-1200數(shù)字量DO擴(kuò)展模塊SM1222
本公司銷售西門子自動(dòng)化產(chǎn)品,*,質(zhì)量保證,價(jià)格優(yōu)勢(shì)
西門子PLC,西門子觸摸屏,西門子數(shù)控系統(tǒng),西門子軟啟動(dòng),西門子以太網(wǎng)
西門子電機(jī),西門子變頻器,西門子直流調(diào)速器,西門子電線電纜
我公司大量現(xiàn)貨供應(yīng),價(jià)格優(yōu)勢(shì),*,德國*
S7-1200 間接尋址指令的應(yīng)用
S7-1200的間接尋址需要通過數(shù)據(jù)塊中的數(shù)組來實(shí)現(xiàn)。指令FieldRead通過索引(又稱為下標(biāo))變量從數(shù)組中讀取數(shù)值,指令FieldWrite 通過索引變量向數(shù)組中寫數(shù)值,使用這兩條指令可以實(shí)現(xiàn)間接尋址。
索引變量是間接尋址中的地址指針,它的值是要讀寫的數(shù)組元素的索引值。地址指針就像收音機(jī)調(diào)臺(tái)的指針,改變指針的位置,指針指向不同電臺(tái)。改變地址指針中的索引值,指針“指向”數(shù)組不同的元素。間接尋址的優(yōu)點(diǎn)是可以在程序處理期間,通過改變指針的值動(dòng)態(tài)地修改指令中的地址。
首先生成一個(gè)名為“數(shù)據(jù)塊1”的全局?jǐn)?shù)據(jù)塊DB2,在數(shù)據(jù)塊中生成名為“數(shù)組1”的數(shù)組Array[1..10] of Int,其元素的數(shù)據(jù)類型為Int。
這兩條指令沒有列入指令列表和指令列表,編程時(shí)將收藏夾中的空邏輯框插入程序,點(diǎn)擊其中紅色的“??”,打開下拉式列表框,可以看到列表框底部的指令FieldWrite或FieldRead。點(diǎn)擊生成的指令框中的“???”,用列表設(shè)置要寫入或讀取的數(shù)據(jù)類型為Int(見下圖)。兩條指令的參數(shù)MEMBER的實(shí)參必須是數(shù)組的個(gè)元素“數(shù)據(jù)塊1”.數(shù)組1[1]。西門子S7-1200數(shù)字量DO擴(kuò)展模塊SM1222
指令的輸入?yún)?shù)索引值“INDEX”是要讀寫的數(shù)組中的元素的下標(biāo),數(shù)據(jù)類型為DINT(雙整數(shù))。參數(shù)“VALUE”是要寫入數(shù)組元素的值或要讀取的數(shù)組元素的值。
下圖中的FieldWrite指令將常數(shù)25寫入數(shù)組1中的元素“數(shù)組1[3]”。FieldRead指令讀取數(shù)組元素“數(shù)組1[3]”的值,將它保存到MW20。改變INDEX的值,可以讀寫別的數(shù)組元素的值。