回覆列表
-
1 # 工控小橋
-
2 # 控制研究控
西門子200/200Smart中指標的用法都是一樣的,比如&QB0,其實就是將QB0這個位元組看作是一個指標了,它指向的是QB0的地址,而不是QB0中的內容,這個QB0不就是個地址麼?但是在CPU中其實QB0的程式碼也是一串數字,CPU透過訪問這串數字,來實現對QB0這個地址的訪問。(&QB0其實在PLC中監控它的值為16#01000000--可以去參考一下我的文章《PLC間接定址中各儲存區指標的地址》)
上邊說&QB0其實代表的是QB0在CPU中的地址,那麼如果要取出這個QB0指標指向的地址中的內容,就須要用到另外一個符號“*”,*QB0,就可以實現取出後&QB0指標指向的地址中的內容。所以,在西門子200PLC中,間接間接定址,關於指標就是“&”和“*”這兩個符號,記住它的意思就可以了。
下邊看兩個圖片吧:
這個圖片是將T32定時器裝入VD0中,VD0中就是&T32指向的地址,它的值是16#09000040,明顯不是T32的值,T32的值是32767。所以說現在VD0中是裝著&T32這個指標的指向的地址。後邊*VD0就透過傳送指令把VD0中指標指向的地址中的內容取出來傳遞給MW20,所以MW20=32767,也就等於T32的當前值。
在看下邊這個圖片:
這個圖片是吧C1計數器當作指標,也就是&C1代表指標,VD10就是裝著&C1指標指向的地址,而後邊*VD10,就是取出VD10指向的指標地址中的值,也就是取出C1的值,因此為160。
最後,強調一句,smart 200PLC 的指標是允許訪問,I,Q,M,V,AI,AQ,S,SM,T,C這些區域的!
指標是什麼,我用白話告訴你原理。只要知道原理,不管什麼smart plc,200,300,400,1200,1500plc都是一樣的。
你家裡面有很多抽屜,編號是從1到100。
如果你要從這些抽屜裡面取東西出來。這些編號就是地址。透過地址編號找到的抽屜裡面的東西就是記憶體單元。
是不是換句話說地址指向了抽屜裡的東西,指向了變數單元。
程式設計時候還可以透過地址的偏移,快速定位。比如,定義一個指標變數 地址是1,把它偏移15,是不是第16號抽屜呢。
最後說一下
Smart plc 裡面 一個地址指標用雙整數來儲存
比如vd0
某一個變數單元,比如vd500(抽屜裡面的東西),它在plc記憶體裡面的地址是x00076(舉例,不是實際值)