學習西門子PLC編程必須要懂得下面幾點
(巨控何工)
西門子smart200的數據類型有哪些?
它和我們使用的計算機的數據類型是差不多的,其實PLC本身就是一個微縮的小型計算機。西門子smart200PLC要用到的數據類型有
· 位(bit)如:I0.0,Q0.0,M0.0,V0.0
· 字節(BYTE)如:IB0,QB0,MB0,VB0
· 字(WORD)如:MW0,VW0,AIW0,QW0
· 雙字(DWORD)如:MD0,VD0
上面這些都是無符號的(就是它裡面的數據都是正的,沒有負的)
還有
· 整型(INT)
· 雙整形(DINT)
· 實數型(REAL)
上面這些都是有符號的(就是它裡面的數據可以是正的也,可以是負的)
我們下面只介紹無符號的數據類型,因為有符號的和無符號的原理是差不多的,無符號的明白了有符號的也就明白了。
![學習西門子PLC編程必須要懂得下面幾點](http://p2.ttnews.xyz/loading.gif)
圖1
看圖1,位,字節,字,雙字的關係是一個比一個大。最大的是雙字,最小的就是一個位。
什麼是一個位呢?
看圖1,對,是一個旋鈕開關,我這樣畫是為了大家好理解(其實一個位是PLC內存裡的一個最小單位,但原理和這個開關是一模一樣的)。最大的雙字包含32個開關,也就是32個位。
它是一個什麼工作原理呢?
![學習西門子PLC編程必須要懂得下面幾點](http://p2.ttnews.xyz/loading.gif)
圖2
如圖2,我們知道了一個位就是一個開關,也就是說一個位是一個開關量。要麼是死(0)要麼是活(1),不能有第三種選擇。所以一個位的狀態不是0就是1,不是1就是0,看看圖2的第一行是不是這樣的。好了,剛才通過上面的圖1我們知道1個字節(BYTE))=8個位(bit),別問我為什麼1個字節是=8個位,而不是9個位10個位,當時設計計算機的老祖宗就是這麼定的,記住就行了。接著看圖2的第二行,既然一個位就是一個開關,8個位就是8個開關唄。但大家看仔細了,雖然是8個開關,但有的開關是關著的,就是(0),有的是開著的,就是(1)。所以按8個開關的各個狀態,就有了圖2的第三行,1字節=01010010,這01010010就是一個二進制的數據。那這個二進制的數據表示的是個什麼數呢?操,我們又不是計算機怎麼能讀懂這一串0和1到底是個什麼數。好吧,看圖3
圖3
如圖3,這個1字節=01010010的一串二進制的0和1怎麼等於82了呢?怎麼算的呢?
這裡就要用到一個我們學習PLC的第一個工具了,但請放心這個工具也就現在用用,以後編程時是不用的。這個工具就是我們電腦系統自帶的,在程序--附件--計算器,就是他了,注意是電腦的,不是手機的。打開計算器--查看,把標準型改成程序員型,選擇二進制輸入01010010然後切換到十進制看是不是等於82。見計算器截圖,再切換到二進制自己算一下8個位全是1時,是不是等於十進制的255,等於十六進制的FF。還有圖4的也算一算。
如果你能把圖4裡面的二進制也算對了,並且明白計算的過程和原理,說明這節你掌握的差不多了。
現在總結一下:
· 1個位(bit)是內存的最小單元,只能等於0或1其中的一個。
· 1個字節(BYTE)=8個位(bit)
· 1個字(WORD)=2個字節(BYTE)=16位(bit)
· 1個雙字(DWORD)=2個字(WORD)=4個字節(BYTE)=32位(bit)
這節講的不是太多,但是這些內容比較重要,懂了最好,不太懂的多看兩遍,多想想,實在不明白的也沒事,後面的講內存的章節,還是和這些數據類型有關聯的內容,以後你還會繼續加深印象的。
閱讀更多 PLC遠程控制系統 的文章