SBOBET登录地址

歡迎光臨入喜工業控制技術(上海)有限公司
當前位置
首頁 > 新聞中心
S7-200 SMART 系統中的數據及其格式
2020/12/3 12:42:50

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

S7-200 SMART CPU收集操作指令、現場狀況等信息,把這些信息按照用戶程序指定的規律進行運算、處理,然后輸出控制、顯示等信號。所有這些信息都表示為不同格式的數據,作為數據來處理。各種指令對數據格式都有一定要求,指令與數據之間的格式要一致才能正常工作。例如,為一個整數數據使用實數(浮點數)運算指令,顯然會得到不正確的結果。

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

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

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

二進制和二進制數: 所有通過S7-200 SMART PLC處理的數據(數值、字符等等)都以二進制形式表示。

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

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

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

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

二進制位邏輯(bit)

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

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

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

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

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

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

實數(浮點數)

實數(或浮點數)以 32 位單精度數表示,其格式為 ANSI/IEEE 754-1985 標準中所描述的形式。實數按雙字長度訪問。
注意:浮點數精確到小數點后第 6 位。 因此輸入浮點常數時,最多只能指定 6 位小數。計算涉及到包含非常大和非常小數字的一長串數值時,計算結果可能不準確。

雙實數轉實數可以參考下面的例程:

dreal--real.smart

注意:此程序的作者和擁有者對于該軟件的功能性和兼容性不負任何責任。使用該軟件的風險完全由用戶自行承擔。由于它是免費的,所以不提供任何擔保,錯誤糾正和熱線支持,用戶不必為此聯系西門子技術支持與服務部門。

ASCII字符和String(字符串)

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

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

字符串是一個字符序列,其中的每個字符都以字節的形式存儲。 字符串的第一個字節定義字符串的長度,即字符數。 字符串的長度可以是 0 到 254個字符,再加上長度字節,因此字符串的最大長度為 255 個字節。 字符串常數限制為126 個字節。(字符串中也能包括漢字編碼,每個漢字占用兩個字節。)

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

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

例如:

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

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

圖2. 狀態圖

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

 

聯系方式
CONTACT US

電話:13818569113      15721373211

郵箱:fushidianji@139.com

網址:http://morethanzerosum.com

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

用手機掃描二維碼關閉