1. <label id="hmit1"><tbody id="hmit1"></tbody></label><del id="hmit1"><tbody id="hmit1"></tbody></del>
        歡迎光臨大柏電子科技(上海)有限公司
        當前位置
        首頁 > 新聞中心 > 公司新聞
        西門子S7-200系統中的數據及其格式
        2020/11/22 22:26:47

        S7-200系統中的數據及其格式

        S7-200 CPU收集操作指令、現場狀況等信息,把這些信息按照用戶程序指定的規律進行運算、處理,然后輸出控制、顯示等信號。

        所有這些信息在S7-200 PLC中,都表示為不同格式的數據,作為數據來處理;按照其自身定義,格式不同的數據表示不同含義的信息。

        在S7-200中,各種指令對數據格式都有一定要求,指令與數據之間的格式要一致才能正常工作。例如,為一個整數數據使用實數(浮點數)運算指令,顯然會得到不正確的結果。

        數據有不同的長度(以二進制表示它們時,占據的位數不同),也就決定了數值的大小范圍。模擬量信號在進行模/數(A/D)和數/模(D/A)轉換時,一定會存在誤差;代表模擬量信號的數據,只能以一定的精度表示模擬量信號。

        • 所有的數據在PLC中都是以二進制形式表示的
        • 數據都有其特定的長度和表示方式,稱為格式
        • 數據的格式與用于運算、處理它的指令相關
        • 以不同的格式查看一個數據,或是使用不同格式的指令處理它,會得到不同的效果

        表1. S7-200支持的數據格式

        尋址格式 數據長度
        (二進制位)
        數據類型 取值范圍
        BOOL(位) 1(位) 布爾數
        (二進制位)
        真(1);假(0)
        BYTE(字節) 8
        (字節)
        無符號整數 0 ~ 255;0 ~ FF(Hex)
        INT(整數) 16
        (字)
        有符號整數 - 32768 ~ 32767;
        8000 ~ 7FFF(Hex)
        WORD(字) 無符號整數 0 ~ 65535;
        0 ~ FFFF(Hex)
        DINT
        (雙整數)
        32
        (雙字)
        有符號整數 - 2147483648 ~ 2147483647
        8000 0000 ~ 7FFF FFFF(Hex)
        DWORD
        (雙字)
        無符號整數 0 ~ 4294967295;
        0 ~ FFFF FFFF(Hex)
        REAL
        (實數)
        IEEE 32位
        單精度浮點數
        -3.402823E+38 ~ -1.175495E-38(負數);
        +1.175495E-38 ~+3.402823E+38(正數); 0.0
        ASCII 8/個
        (字節)
        字符列表 ASCII字符、
        漢字內碼(每個漢字2字節)
        STRING
        (字符串)
        字符串 1 ~ 254個ASCII字符、
        漢字內碼(每個漢字2字節)

        ※ 實數不能絕對準確地表示“零”

         

        二進制、十六進制和十進制

        二進制和二進制數: 所有通過S7-200 PLC處理的數據(數值、字符等等)都以二進制形式表示。在S7-200中,特別指出一個數據是二進制數并沒有什么意義。

        十六進制和十六進制數:在二進制數中,每4個二進制位可以分為一組;這組二進制數值的不同變化可以表示16個狀態,正好是16進制數每一位數字的變化范圍。因此,可以用十六進制數值方便地表示二進制數。

        例如,二進制數1000_1111b分為兩組來看,分別是1000b和1111b,正好可以表示16進制數字8h和Fh(0000b對應于0h,...,1111b對應于Fh);那么這個二進制數就可以表示為8Fh。

        十進制和十進制數:十進制是S7-200的數學計算的基礎,在S7-200中,一般都使用十進制的體系,除了時間(12/24或60進制)等特殊數據外。

         二進制數用于在PLC中表示十進制數值、或者其他(如字符等)數據,而16進制用來比較簡單地描述二進制數。

         在S7-200中,二進制立即數表示為2#xxxx_xxxx(1字節長度),16進制立即數表示為16#xx(1字節長度)。

         

        二進制位邏輯(bit)

        PLC中以二進制“位”的數據形式來表示邏輯“1”、“0”(或者“開”、“關”)。位是最基本的數據單位。

        在數據字節(Byte)中,二進制邏輯只用一個位(bit)來表示。每個字節由8個位組成。

        • 在S7-200中,某些類型的數據兼有成組的字節(字)訪問形式,也有位的訪問形式,如定時器、計數器等
        • 在編程軟件Micro/WIN中,對位數據進行運算操作的指令都在指令樹的Bit Logic(位邏輯)分支中

         “位”的邏輯值為“1”或者“0”,但是在實際應用中,某種狀態的“有效值”可以是“1”,也可以是“0”?!坝行А本褪俏覀冋J為某個狀態已經“激活”

         

        整數、無符號整數和有符號整數

        字節、字、雙字都可以用來表示十進制整數,顯然它們的數據長度不同,能夠表示的數的大小范圍也不同。

        無符號整數只有0和正整數;有符號整數可以有正數和負數。

        有符號整數采用二進制補碼的形式來表示負數。

        • 在S7-200中,字節、字、雙字都可以按照無符號、有符號整數來查看
        • Micro/WIN中,整數運算指令在指令樹的Integer Math分支中
        • 只有字節運算指令(帶B符號的指令,如INC_B等)是無符號整數運算指令
        • 凡帶有I,或W,DW等(除字節B指令外)的數學運算指令,都是有符號整數運算指令
        • 定時器、計數器的值都是有符號整數
        • HSC(高速計數器)的計數當前值(HCx)和設定值都是32位的有符號整數
        • 在編程軟件Micro/WIN中輸入立即數據時,如果不輸入小數點,則認作整數

        在不需要高精度運算的條件下,使用整數可以簡化編程,節省處理時間。

         

        實數(浮點數)

        在S7-200中,實數(浮點數)是符合IEEE標準的32位實數,即單精度實數。實數格式按照一定的運算規律把32個二進制位分組,表示極小或極大的數。

        • S7-200的實數運算指令都在指令樹的Floating-Point Math(實數運算) 分支中
        • 實數當作整數運算的時候會導致數值的錯誤;而整數當作實數應用可能會使數據非法(不符合標準)
        • 在編程軟件Micro/WIN中輸入帶小數點數據的數據,則認為實數(實數形式的整數值必須輸入小數點和一位為零的小數位,如10.0)

         

        ASCII字符和String(字符串)

        在S7-200中,ASCII字符是由表示字母、數字和一些特殊符號的ASCII編碼組成的二進制數據字節,一個字節存儲一個字符。

         ASCII(美國信息交換標準碼)是一種字符編碼格式,在一個字節長度中不同的二進制數值代表不同的字符。如字母A為41h(十六進制數值),以十進制看就是65;而數字5的ASCII值為35h,十進制值為53。

        S7-200中新引入了String(字符串)數據格式,其結構是在ASCII字符字節串前面有一個串長度。字符串最長可以有255個數據字節。

        字符串中也能包括漢字編碼,每個漢字占用兩個字節。

         這是S7-200內部對ASCII字符串的格式定義,所有與字符串有關的指令都遵照這個格式。

        • 在編程軟件中,用單字節(英文)的單引號(')將作為字符的內容括起來可以在數據塊和狀態圖中輸入ASCII數據字節
        • 在單字節的雙引號(")中間輸入文本內容可以輸入字符串
        • 按上述方法輸入的字符串會自動按字符串格式排列(在起始地址中放入字符個數)
        • 使用程序,或人為組合成的ASCII字符串,使用ASCII字符串指令時,必須注意是否符合格式

        例如:


        圖1. 在數據塊中輸入ASCII數據和字符串

        下載項目到S7-200 CPU,使用狀態圖在線監控可以看到:


        圖2. 狀態圖

        注意ASCII字節和字符串的區別。D6D0h是漢字“中”的編碼。

         STEP 7-Micro/WIN V4.0以上版本完全支持字符串數據格式。

         

        BCD

        BCD意為“二進制編碼的十進制數”。BCD是一種編碼方式,是以二進制數對十進制數字的編碼,并因為16進制的優勢,改用十六進制數字表示。

        十進制只有十個數字,所以以16進制表示的BCD碼不會出現16進制數字Ah - Fh。

        十進制數39用BCD碼表示就是39h,或16#39。BCD碼數值必須用16進制查看才能得到正確結果。

        BCD編碼往往在使用BCD編碼開關輸入數據時用到;S7-200中讀出的時鐘日期數據也是以BCD編碼表示。

         

         《S7-200系統手冊》關于PLC概念的一章非常有用,建議初學者必讀。

        聯系方式
        CONTACT US

        電話:13818569113

        郵箱:13818569113@139.com

        網址:http://www.exuetong.cn/

        地址:上海青浦區北青公路7171號111-112室

        用手機掃描二維碼關閉
        rm新时代理财官网有限公司

            1. <label id="hmit1"><tbody id="hmit1"></tbody></label><del id="hmit1"><tbody id="hmit1"></tbody></del>
              RM新时代登录网址 RM新时代官网 RM新时代入口

                  1. <label id="hmit1"><tbody id="hmit1"></tbody></label><del id="hmit1"><tbody id="hmit1"></tbody></del>
                    RM新时代专业团队 RM新时代新项目 RM新时代手机版下载 RM新时代投资官网 新时代app官方版下载