在PLC尋址可以分為直接尋址和間接尋址兩部分,直接尋址是在程序中通過指令直接對地址進行訪問,地址通常是一個常數,如定時器T0,地址為“0”。而間接尋址,地址存儲與地址指針中,地址是一個變量,程序執行時才能確定實際的地址,如定時器T[MW0]。若MW0的值等于0,則表示為T0,若MW0的值等于1,則表示T1。
在S7-300中間接尋址可以分為以下幾類:
1、 存儲器間接尋址
1)16位指針尋址
2)32位指針內部區域尋址
2、 寄存器間接尋址
1)32位指針內部區域尋址
2)32位指針交叉區域尋址
接下來就分別介紹下這幾種間接尋址的指針格式、訪問時地址尋址格式以及每種間接尋址的使用方式。
存儲器間接尋址:
存儲器于存儲器的地址指針分為16位地址指針和32為地址指針,允許存儲地址指針的存儲器為位存儲器(M)、局部變量存儲器(L)和數據塊(DB)。
16位指針尋址:
16位地址指針的應用主要針對的是定時器(T)、計數器(C)、程序塊(OB、FB、FC、DB)的編號尋址,該類間接尋址方式在實際應用的過程中相對較少。
指針格式為:
該指針為一個16位的存儲空間,根據該存儲空間的值為多少,則表示對應的地址編號為多少。
地址尋址格式表示為:區域表示符 [16位地址指針],如DB [MW0],若MW0的值等于10,則表示的是DB塊為DB10。
如下程序所示,描述的使用16位寄存器的尋址方式對定時器進行訪問:
L 10
T "MW10" //把數字10裝在到16位存儲器中做作為指令
A "I0.0" //取起動觸點的常開信號狀態
L s5t#10s
SD T [ "MW10"] //使用16位存儲器指針作為定時器的編號,定時器的設定時間為10s.
A T ["MW10"]
= "Q0.0" //取定時器常開觸點狀態輸出一個輸出信號。
從例子中可以看出,地址指針存儲與MW10中,使用中只需要對MW10中的數據進行修改,就可以實現訪問不同編號的定時器。
-
plc
+關注
關注
5008文章
13150瀏覽量
462059 -
西門子
+關注
關注
93文章
3008瀏覽量
115633 -
間接尋址
+關注
關注
0文章
19瀏覽量
8038
發布評論請先 登錄
相關推薦
評論