S7-200 SMART CPU收集操作指令、現(xiàn)場狀況等信息,把這些信息按照用戶程序指定的規(guī)律進(jìn)行運(yùn)算、處理,然后輸出控制、顯示等信號(hào)。所有這些信息都表示為不同格式的數(shù)據(jù),作為數(shù)據(jù)來處理。各種指令對數(shù)據(jù)格式都有一定要求,指令與數(shù)據(jù)之間的格式要一致才能正常工作。例如,為一個(gè)整數(shù)數(shù)據(jù)使用實(shí)數(shù)(浮點(diǎn)數(shù))運(yùn)算指令,顯然會(huì)得到不正確的結(jié)果。
數(shù)據(jù)有不同的長度(以二進(jìn)制表示它們時(shí),占據(jù)的位數(shù)不同),也就決定了數(shù)值的大小范圍。模擬量信號(hào)在進(jìn)行模/數(shù)(A/D)和數(shù)/模(D/A)轉(zhuǎn)換時(shí),一定會(huì)存在誤差;代表模擬量信號(hào)的數(shù)據(jù),只能以一定的精度表示模擬量信號(hào)。
二進(jìn)制和二進(jìn)制數(shù): 所有通過S7-200 SMART PLC處理的數(shù)據(jù)(數(shù)值、字符等等)都以二進(jìn)制形式表示。
十六進(jìn)制和十六進(jìn)制數(shù):在二進(jìn)制數(shù)中,每4個(gè)二進(jìn)制位可以分為一組;這組二進(jìn)制數(shù)值的不同變化可以表示16個(gè)狀態(tài),正好是16進(jìn)制數(shù)每一位數(shù)字的變化范圍。因此,可以用十六進(jìn)制數(shù)值方便地表示二進(jìn)制數(shù)。
例如,二進(jìn)制數(shù)1000_1111b分為兩組來看,分別是1000b和1111b,正好可以表示16進(jìn)制數(shù)字8h和Fh(0000b對應(yīng)于0h,...,1111b對應(yīng)于Fh);那么這個(gè)二進(jìn)制數(shù)就可以表示為8Fh。
十進(jìn)制和十進(jìn)制數(shù):十進(jìn)制是S7-200 SMART的數(shù)學(xué)計(jì)算的基礎(chǔ),一般都使用十進(jìn)制的體系,除了時(shí)間(12/24或60進(jìn)制)等特殊數(shù)據(jù)外。
二進(jìn)制數(shù)用于在PLC中表示十進(jìn)制數(shù)值、或者其他(如字符等)數(shù)據(jù),而16進(jìn)制用來比較簡單地描述二進(jìn)制數(shù)。
PLC中以二進(jìn)制“位”的數(shù)據(jù)形式來表示邏輯“1”、“0”(或者“開”、“關(guān)”)。位是最基本的數(shù)據(jù)單位。
在數(shù)據(jù)字節(jié)(Byte)中,二進(jìn)制邏輯只用一個(gè)位(bit)來表示。每個(gè)字節(jié)由8個(gè)位組成。
字節(jié)、字、雙字都可以用來表示十進(jìn)制整數(shù),顯然它們的數(shù)據(jù)長度不同,能夠表示的數(shù)的大小范圍也不同。
無符號(hào)整數(shù)只有0和正整數(shù);有符號(hào)整數(shù)可以有正數(shù)和負(fù)數(shù)。
有符號(hào)整數(shù)采用二進(jìn)制補(bǔ)碼的形式來表示負(fù)數(shù)。
實(shí)數(shù)(或浮點(diǎn)數(shù))以 32 位單精度數(shù)表示,其格式為 ANSI/IEEE 754-1985 標(biāo)準(zhǔn)中所描述的形式。實(shí)數(shù)按雙字長度訪問。
注意:浮點(diǎn)數(shù)精確到小數(shù)點(diǎn)后第 6 位。 因此輸入浮點(diǎn)常數(shù)時(shí),最多只能指定 6 位小數(shù)。計(jì)算涉及到包含非常大和非常小數(shù)字的一長串?dāng)?shù)值時(shí),計(jì)算結(jié)果可能不準(zhǔn)確。
雙實(shí)數(shù)轉(zhuǎn)實(shí)數(shù)可以參考下面的例程:
注意:此程序的作者和擁有者對于該軟件的功能性和兼容性不負(fù)任何責(zé)任。使用該軟件的風(fēng)險(xiǎn)完全由用戶自行承擔(dān)。由于它是免費(fèi)的,所以不提供任何擔(dān)保,錯(cuò)誤糾正和熱線支持,用戶不必為此聯(lián)系西門子技術(shù)支持與服務(wù)部門。
在S7-200 SMART中,ASCII字符是由表示字母、數(shù)字和一些特殊符號(hào)的ASCII編碼組成的二進(jìn)制數(shù)據(jù)字節(jié),一個(gè)字節(jié)存儲(chǔ)一個(gè)字符。
ASCII(美國信息交換標(biāo)準(zhǔn)碼)是一種字符編碼格式,在一個(gè)字節(jié)長度中不同的二進(jìn)制數(shù)值代表不同的字符。如字母A為41h(十六進(jìn)制數(shù)值),以十進(jìn)制看就是65;而數(shù)字5的ASCII值為35h,十進(jìn)制值為53。
字符串是一個(gè)字符序列,其中的每個(gè)字符都以字節(jié)的形式存儲(chǔ)。 字符串的第一個(gè)字節(jié)定義字符串的長度,即字符數(shù)。 字符串的長度可以是 0 到 254個(gè)字符,再加上長度字節(jié),因此字符串的最大長度為 255 個(gè)字節(jié)。 字符串常數(shù)限制為126 個(gè)字節(jié)。(字符串中也能包括漢字編碼,每個(gè)漢字占用兩個(gè)字節(jié)。)
這是S7-200 SMART 內(nèi)部對ASCII字符串的格式定義,所有與字符串有關(guān)的指令都遵照這個(gè)格式。
例如:
圖1. 在數(shù)據(jù)塊中輸入ASCII數(shù)據(jù)和字符串
下載項(xiàng)目到S7-200 SMART CPU,使用狀態(tài)圖在線監(jiān)控可以看到:
圖2. 狀態(tài)圖
注意ASCII字節(jié)和字符串的區(qū)別。D6D0h是漢字“中”的編碼。
電話:13818569113 15721373211
郵箱:fushidianji@139.com
網(wǎng)址:http://xiangtai88.cn
地址:上海青浦區(qū)北青公路7171號(hào)111-112室