學習西門子PLC編程必須要懂得下面幾點

學習西門子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編程必須要懂得下面幾點

圖1

看圖1,位,字節,字,雙字的關係是一個比一個大。最大的是雙字,最小的就是一個位。

什麼是一個位呢?

看圖1,對,是一個旋鈕開關,我這樣畫是為了大家好理解(其實一個位是PLC內存裡的一個最小單位,但原理和這個開關是一模一樣的)。最大的雙字包含32個開關,也就是32個位。

它是一個什麼工作原理呢?

學習西門子PLC編程必須要懂得下面幾點

圖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

學習西門子PLC編程必須要懂得下面幾點

圖3

如圖3,這個1字節=01010010的一串二進制的0和1怎麼等於82了呢?怎麼算的呢?

這裡就要用到一個我們學習PLC的第一個工具了,但請放心這個工具也就現在用用,以後編程時是不用的。這個工具就是我們電腦系統自帶的,在程序--附件--計算器,就是他了,注意是電腦的,不是手機的。打開計算器--查看,把標準型改成程序員型,選擇二進制輸入01010010然後切換到十進制看是不是等於82。見計算器截圖,再切換到二進制自己算一下8個位全是1時,是不是等於十進制的255,等於十六進制的FF。還有圖4的也算一算。

學習西門子PLC編程必須要懂得下面幾點

學習西門子PLC編程必須要懂得下面幾點

如果你能把圖4裡面的二進制也算對了,並且明白計算的過程和原理,說明這節你掌握的差不多了。

現在總結一下:

· 1個位(bit)是內存的最小單元,只能等於0或1其中的一個。

· 1個字節(BYTE)=8個位(bit)

· 1個字(WORD)=2個字節(BYTE)=16位(bit)

· 1個雙字(DWORD)=2個字(WORD)=4個字節(BYTE)=32位(bit)

這節講的不是太多,但是這些內容比較重要,懂了最好,不太懂的多看兩遍,多想想,實在不明白的也沒事,後面的講內存的章節,還是和這些數據類型有關聯的內容,以後你還會繼續加深印象的。


分享到:


相關文章: