天天看點

S7-1200PLC基本資料類型

作者:九鎮Pro

基本資料類型

基本資料類型:包括位、位序列、整數、浮點數、日期時間。此外字元也屬于基本資料類型。

此外 BCD 碼雖然不屬于資料類型,但也是一種數字表示方式,将在本文最後予以介紹。

1.位和位序列

注意:雖然位序列有數值表示方式,但一般不直接用于數學運算。通常在控制字、狀态字、錯誤代碼、标志字、狀态位集合等處使用位序列。而數學運算使用下面的整數資料類型與浮點數資料類型。

資料類型 位大小 數值類型 數值範圍 常數示例 位址示例
Bool 1 布爾運算 FALSE 或者 TRUE TRUE
  • I1.0
  • Q0.1
  • M50.7
  • DB1.DBX2.3
  • Tag_name
二進制 2#0 或 2#1 2#0
無符号整數 0 或 1 1
八進制 8#0 或 8#1 8#1
十六進制 16#0 或 16#1 16#1
Byte 8 二進制 2#0 到 2#1111_1111 2#1000_1001
  • IB2
  • MB10
  • DB1.DBB4
  • Tag_name
無符号整數 0 到 255 15
有符号整數 -128 到 127 -63
八進制 8#0 到 8#377 8#17
十六進制 B#16#0 到 B#16#FF / 16#0 到 16#FF B#16#F、16#F
Word 16 二進制 2#0 到 2#1111_1111_1111_1111 2#1101_0010_1001_0110
  • MW10
  • DB1.DBW2
  • Tag_name
無符号整數 0 到 65535 61680
有符号整數 -32768 到 32767 72
八進制 8#0 到 8#177_777 8#170_362
十六進制 W#16#0 到 W#16#FFFF / 16#0 到 16#FFFF W#16#F1C0、16#A67B
DWord 32 二進制 2#0 到 2#1111_1111_1111_1111_1111_1111_1111_1111 2#1101_0100_1111_1110_1000_1100
  • MD10
  • DB1.DBD8
  • Tag_name
無符号整數 0 到 4_294_967_295 15_793_935
有符号整數 -2_147_483_648 到 2_147_483_647 -400000
八進制 8#0 到 8#37_777_777_777 8#74_177_417
十六進制 DW#16#0 到 DW#16#FFFF_FFFF / 16#0 到 16#FFFF_FFFF DW#16#20_F30A、16#B_01F6

2.整數資料類型

資料類型 位大小 數值範圍 常數示例 位址示例
USInt 8 0 到 255 78、2#01001110
  • MB0
  • DB1.DBB4
  • Tag_name
SInt 8 -128 到 127 +50、16#50
UInt 16 0 到 65535 65295、0
  • MW2
  • DB1.DBW2
  • Tag_name
Int 16 -32768 到 32767 30000、+30000
UDInt 32 0 到 4_294_967_295 4042322160
  • MD6
  • DB1.DBD8
  • Tag_name
DInt 32 -2_147_483_648 到 2_147_483_647 -2131754992

3.浮點型實數資料類型

如 ANSI/IEEE 754-1985 标準所述,實(或浮點)數以 32 位單精度數 (Real) 或 64 位雙精度數 (LReal) 表示。 單精度浮點數的精度最高為 6 位有效數字,

而雙精度浮點數的精度最高為 15 位有效數字。在輸入浮點常數時,最多可以指定 6 位 (Real) 或 15 位 (LReal) 有效數字來保持精度。

資料類型 位大小 數值範圍 常數示例 位址示例
Real 32 -3.402823e+38 到 -1.175495e-38、±0、+1.175 495e-38 到 +3.402823e+38 123.456、-3.4、1.0e-5
  • MD100
  • DB1.DBD8
  • Tag_name
LReal 64

-1.7976931348623158e+308 到 -2.2250738585072014e-308、

±0、

+2.2250738585072014e-308 到 +1.7976931348623158e+308

12345.123456789e40、1.2E+40
  • DB_name.var_name

    注意:

    • 不支援直接尋址

4.時間和日期資料類型

TIME 資料作為有符号雙整數存儲,基本機關為毫秒。存儲的數值是多少,就代表有多少 ms。 編輯時可以選擇性使用天 (d)、小時(h)、分鐘 (m)、秒 (s) 和毫秒 (ms) 作為機關。

不需要指定全部時間機關。 例如,T#5h10s 和 500h 均有效。所有指定機關值的組合值不能超過以毫秒表示的時間日期類型的上限或下限(-2,147,483,648 ms 到 +2,147,483,647 ms)。

DATE 資料作為無符号整數值存儲,被解釋為添加到基礎日期 1990 年 1 月 1 日的天數,用以擷取指定日期。 編輯器格式必須指定年、月和日。

TOD (TIME_OF_DAY) 資料作為無符号雙整數值存儲,被解釋為自指定日期的淩晨算起的毫秒數(淩晨 = 0 ms)。 必須指定小時(24 小時/天)、分鐘和秒。 可以選擇指定小數秒格式。

資料類型 位大小 範圍 常數示例
Time 32

T#-24d_20h_31m_23s_648ms 到 T#24d_20h_31m_23s_647ms

存儲形式: -2,147,483,648 ms 到 +2,147,483,647 ms

  • T#5m_30s
  • T#1d_2h_15m_30s_45ms
  • TIME#10d20h30m20s630ms
  • 500h10000ms
  • 10d20h30m20s630ms
DATE 16 D#1990-1-1 到 D#2168-12-31
  • D#2009-12-31
  • DATE#2009-12-31
  • 2009-12-31

TOD/

Time_of_Day

32 TOD#0:0:0.0 到 TOD#23:59:59.999
  • TOD#10:20:30.400
  • TIME_OF_DAY#10:20:30.400
  • 23:10:1

5. BCD 碼

BCD 格式不能作為資料類型使用,但是以下轉換指令支援 BCD 數字格式轉換:

  • BCD16_TO_INT
  • INT_TO_BCD16
  • BCD32_TO_DINT
  • DINT_TO_BCD32

轉換舉例:16#100 >10#100,10#888777>16#888777

資料類型 位大小 範圍 常數示例
BCD16 16 -999 到 999 123、-123
BCD32 32 -9999999 到 9999999 1234567、-1234567

繼續閱讀