西門子XB005交換機(jī)
S7-1200 全局DB中的數(shù)據(jù)類型,包括基本數(shù)據(jù)類型、系統(tǒng)數(shù)據(jù)類型和硬件數(shù)據(jù)類型。
在DB塊中,新建一個變量,在數(shù)據(jù)類型列的下拉列表中,選擇需要的數(shù)據(jù)類型。
基本數(shù)據(jù)類型:包括位、位字符串、整數(shù)、浮點數(shù)、定時器、日期&時間、字符、數(shù)組和結(jié)構(gòu)
1.位和位字符串
2.整數(shù)數(shù)據(jù)類型
3.浮點型實數(shù)數(shù)據(jù)類型
如 ANSI/IEEE 754-1985 標(biāo)準(zhǔn)所述,實(或浮點)數(shù)以 32 位單精度數(shù) (Real) 或 64 位雙精度數(shù) (LReal) 表示。 單精度浮點數(shù)的精度最高為 6 位有效數(shù)字,
而雙精度浮點數(shù)的精度最高為 15 位有效數(shù)字。在輸入浮點常數(shù)時,最多可以指定 6 位 (Real) 或 15 位 (LReal) 有效數(shù)字來保持精度。
4.時間和日期數(shù)據(jù)類型
TIME 數(shù)據(jù)作為有符號雙整數(shù)存儲,基本單位為毫秒。存儲的數(shù)值是多少,就代表有多少ms。 編輯時可以選擇性使用日期 (d)、小時(h)、分鐘 (m)、秒 (s) 和毫秒 (ms) 作為單位。
不需要指定全部時間單位。 例如,T#5h10s 和 500h 均有效。所有指定單位值的組合值不能超過以毫秒表示的時間日期類型的上限或下限(-2,147,483,648 ms 到 +2,147,483,647 ms)。
DATE 數(shù)據(jù)作為無符號整數(shù)值存儲,被解釋為添加到基礎(chǔ)日期 1990 年 1 月 1 日的天數(shù),用以獲取指定日期。 編輯器格式必須指定年、月和日。
TOD (TIME_OF_DAY) 數(shù)據(jù)作為無符號雙整數(shù)值存儲,被解釋為自指定日期的凌晨算起的毫秒數(shù)(凌晨 = 0 ms)。 必須指定小時(24 小時/天)、分鐘和秒。 可以選擇指定小數(shù)秒格式。
DTL(日期和時間長型)數(shù)據(jù)類型使用 12 個字節(jié)的結(jié)構(gòu)保存日期和時間信息??梢栽趬K的臨時存儲器或者 DB 中定義 DTL 數(shù)據(jù)。 必須在 DB 編輯器的"起始值"(Start value) 列為所有組件輸入一個值。
DTL結(jié)構(gòu)的元素如下表:
5.字符和字符串?dāng)?shù)據(jù)類型
Char 在存儲器中占一個字節(jié),可以存儲以 ASCII 格式(包括擴(kuò)展 ASCII 字符代碼)編碼的單個字符。 WChar 在存儲器中占一個字的空間,可包含任意雙字節(jié)字符表示形式。
編輯器語法在字符的前面和后面各使用一個單引號字符??梢允褂每梢娮址涂刂谱址?。
CPU 支持使用 String 數(shù)據(jù)類型存儲一串單字節(jié)字符。 String 數(shù)據(jù)類型包含總字符數(shù)(字符串中的字符數(shù))和當(dāng)前字符數(shù)。 String 類型提供了多達(dá) 256
個字節(jié),用于在字符串中存儲最大總字符數(shù)(1 個字節(jié))、當(dāng)前字符數(shù)(1 個字節(jié))以及最多 254 個字節(jié)。 String 數(shù)據(jù)類型中的每個字節(jié)都可以是從 16#00 到16#FF 的任意值。
String 數(shù)據(jù)類型示例:
WString 數(shù)據(jù)類型支持單字(雙字節(jié))值的較長字符串。第一個字包含最大總字符數(shù);下一個字包含總字符數(shù),接下來的字符串可包含多達(dá) 65534 個字。 每個字都可以是從 16#0000 到 16#FFFF 的任意值。
WString 數(shù)據(jù)類型示例:
6.數(shù)組數(shù)據(jù)類型
可以創(chuàng)建包含多個相同數(shù)據(jù)類型元素的數(shù)組,請為數(shù)組命名并選擇數(shù)據(jù)類型"Array [lo .. hi] of type",然后根據(jù)如下說明編輯"lo"、"hi"和"type":
● lo - 數(shù)組的起始(最低)下標(biāo)
● hi - 數(shù)組的結(jié)束(最高)下標(biāo)
● type - 數(shù)據(jù)類型之一,例如 BOOL、SINT、UDINT
示例: 數(shù)組聲明
ARRAY[1..20] of REAL 一維,20 個元素
ARRAY[-5..5] of INT 一維,11 個元素
ARRAY[1..2, 3..4] of CHAR 二維,4 個元素
示例: 數(shù)組地址
ARRAY1[0] ARRAY1 元素 0
ARRAY2[1,2] ARRAY2 元素 [1,2]
ARRAY3[i,j] 如果 i =3 且 j=4,則對 ARRAY3 的元素 [3, 4] 進(jìn)行尋址
6.結(jié)構(gòu)數(shù)據(jù)類型
STRUCT 數(shù)據(jù)類型表示由固定數(shù)目的多種數(shù)據(jù)類型的元素組成的數(shù)據(jù)結(jié)構(gòu)。 數(shù)據(jù)類型 STRUCT 或 ARRAY 的元素還可以在結(jié)構(gòu)中嵌套。 嵌套深度限制為 8 級。 結(jié)構(gòu)可用于根據(jù)過程控制系統(tǒng)分組數(shù)據(jù)以及作為一個數(shù)據(jù)單元來傳送參數(shù)。
對于 S7-1200 或 S7-1500 系列 CPU,可最多創(chuàng)建 65534 個結(jié)構(gòu)。 其中每個結(jié)構(gòu)可最多包括 252 個元素。
下圖為數(shù)據(jù)類型 STRUCT 的示例:
結(jié)構(gòu)所在的DB塊名為“結(jié)構(gòu)示例”,則可以使用 "結(jié)構(gòu)示例".產(chǎn)品規(guī)格.長度 訪問結(jié)構(gòu)的第一個元素長度。
系統(tǒng)數(shù)據(jù)類型:系統(tǒng)數(shù)據(jù)類型 (SDT) 由系統(tǒng)提供并具有預(yù)定義的結(jié)構(gòu)。 系統(tǒng)數(shù)據(jù)類型的結(jié)構(gòu)由固定數(shù)目的可具有各種數(shù)據(jù)類型的元素構(gòu)成。 不能更改系統(tǒng)數(shù)據(jù)類型的結(jié)構(gòu)。
系統(tǒng)數(shù)據(jù)類型只能用于特定指令。 下表給出了可用的系統(tǒng)數(shù)據(jù)類型及其用途:
統(tǒng)數(shù)據(jù)類型 |
長度(字節(jié)) |
說明 |
---|---|---|
IEC_TIMER |
16 |
定時值為 TIME 數(shù)據(jù)類型的定時器結(jié)構(gòu)。 例如,此數(shù)據(jù)類型可用于“TP”、“TOF”、“TON”、“TONR”、“RT”和“PT”指令。 |
IEC_SCOUNTER |
3 |
計數(shù)值為 SINT 數(shù)據(jù)類型的計數(shù)器結(jié)構(gòu)。 例如,此數(shù)據(jù)類型用于“CTU”、“CTD”和“CTUD”指令。 |
IEC_USCOUNTER |
3 |
計數(shù)值為 USINT 數(shù)據(jù)類型的計數(shù)器結(jié)構(gòu)。 例如,此數(shù)據(jù)類型用于“CTU”、“CTD”和“CTUD”指令。 |
IEC_COUNTER |
6 |
計數(shù)值為 INT 數(shù)據(jù)類型的計數(shù)器結(jié)構(gòu)。 例如,此數(shù)據(jù)類型用于“CTU”、“CTD”和“CTUD”指令。 |
IEC_UCOUNTER |
6 |
計數(shù)值為 UINT 數(shù)據(jù)類型的計數(shù)器結(jié)構(gòu)。 例如,此數(shù)據(jù)類型用于“CTU”、“CTD”和“CTUD”指令。 |
IEC_DCOUNTER |
12 |
計數(shù)值為 DINT 數(shù)據(jù)類型的計數(shù)器結(jié)構(gòu)。 例如,此數(shù)據(jù)類型用于“CTU”、“CTD”和“CTUD”指令。 |
IEC_UDCOUNTER |
12 |
計數(shù)值為 UDINT 數(shù)據(jù)類型的計數(shù)器結(jié)構(gòu)。 例如,此數(shù)據(jù)類型用于“CTU”、“CTD”和“CTUD”指令。 |
ERROR_STRUCT |
28 |
編程錯誤信息或 I/O 訪問錯誤信息的結(jié)構(gòu)。 例如,此數(shù)據(jù)類型用于“GET_ERROR”指令。 |
CREF |
8 |
數(shù)據(jù)類型 ERROR_STRUCT 的組成,在其中保存有關(guān)塊地址的信息。 |
NREF |
8 |
數(shù)據(jù)類型 ERROR_STRUCT 的組成,在其中保存有關(guān)操作數(shù)的信息。 |
硬件數(shù)據(jù)類型:硬件數(shù)據(jù)類型由 CPU 提供。 可用硬件數(shù)據(jù)類型的數(shù)目取決于 CPU。
根據(jù)硬件配置中設(shè)置的模塊存儲特定硬件數(shù)據(jù)類型的常量。 在用戶程序中插入用于控制或激活已組態(tài)模塊的指令時,可將這些可用常量用作參數(shù)。
HW_ANY |
WORD |
任何硬件組件(如模塊)的標(biāo)識。 |
HW_DEVICE |
HW_ANY |
DP 從站/PROFINET IO 設(shè)備的標(biāo)識 |
HW_DPSLAVE |
HW_DEVICE |
DP 從站的標(biāo)識 |
HW_IO |
HW_ANY |
CPU 或接口的標(biāo)識號 該編號在 CPU 或硬件配置接口的屬性中自動分配和存儲。 |
HW_IOSYSTEM |
HW_ANY |
PN/IO 系統(tǒng)或 DP 主站系統(tǒng)的標(biāo)識 |
HW_SUBMODULE |
HW_IO |
重要硬件組件的標(biāo)識 |
HW_INTERFACE |
HW_SUBMODULE |
接口組件的標(biāo)識 |
HW_IEPORT |
HW_SUBMODULE |
端口的標(biāo)識 (PN/IO) |
HW_HSC |
HW_SUBMODULE |
高速計數(shù)器的標(biāo)識 此數(shù)據(jù)類型用于“CTRL_HSC”和“CTRL_HSC_EXT”指令。 |
HW_PWM |
HW_SUBMODULE |
脈沖寬度調(diào)制標(biāo)識 例如,此數(shù)據(jù)類型用于“CTRL_PWM”指令。 |
HW_PTO |
HW_SUBMODULE |
脈沖編碼器標(biāo)識 該數(shù)據(jù)類型用于運動控制。 |
AOM_IDENT |
DWORD |
AS 運行系統(tǒng)中對象的標(biāo)識 |
EVENT_ANY |
AOM_IDENT |
用于標(biāo)識任意事件 |
EVENT_ATT |
EVENT_ANY |
用于指定動態(tài)分配給 OB 的事件。 例如,此數(shù)據(jù)類型用于“ATTACH”和“DETACH”指令。 |
EVENT_HWINT |
EVENT_ATT |
用于指定硬件中斷事件 |
OB_ANY |
INT |
用于指定任意組織塊。 |
OB_DELAY |
OB_ANY |
用于指定發(fā)生延時中斷時調(diào)用的組織塊。 例如,此數(shù)據(jù)類型用于“SRT_DINT”和“CAN_DINT”指令。 |
OB_TOD |
OB_ANY |
指定時間中斷 OB 的數(shù)量。 例如,此數(shù)據(jù)類型用于“SET_TINT”、“CAN_TINT”、“ACT_TINT”和“QRY_TINT”指令。 |
OB_CYCLIC |
OB_ANY |
用于指定發(fā)生看門狗中斷時調(diào)用的組織塊。 |
OB_ATT |
OB_ANY |
用于指定動態(tài)分配給事件的組織塊。 例如,此數(shù)據(jù)類型用于“ATTACH”和“DETACH”指令。 |
OB_PCYCLE |
OB_ANY |
用于指定分配給“循環(huán)程序”事件類別事件的組織塊。 |
OB_HWINT |
OB_ATT |
用于指定發(fā)生硬件中斷時調(diào)用的組織塊。 |
OB_DIAG |
OB_ANY |
用于指定發(fā)生診斷中斷時調(diào)用的組織塊。 |
OB_TIMEERROR |
OB_ANY |
用于指定發(fā)生時間錯誤時調(diào)用的組織塊。 |
OB_STARTUP |
OB_ANY |
用于指定發(fā)生啟動事件時調(diào)用的組織塊。 |
PORT |
HW_SUBMODULE |
用于指定通信端口。 該數(shù)據(jù)類型用于點對點通信。 |
RTM |
UINT |
用于指定運行小時計數(shù)器值。 例如,此數(shù)據(jù)類型用于“RTM”指令。 |
PIP |
UINT |
用于創(chuàng)建和連接“同步循環(huán)”O(jiān)B。此數(shù)據(jù)類型用于 SFC 26、27、126 和 127。 |
CONN_ANY |
WORD |
用于指定任意連接。 |
CONN_PRG |
CONN_ANY |
用于指定通過 UDP 進(jìn)行開放式通信的連接。 |
CONN_OUC |
CONN_ANY |
用于指定通過工業(yè)以太網(wǎng) (PROFINET) 進(jìn)行開放式通信的連接。 |
DB_ANY |
UINT |
任意 DB 的標(biāo)識(數(shù)量) 數(shù)據(jù)類型“DB_ANY”在“Temp”區(qū)域中的長度為 0。 |
DB_WWW |
DB_ANY |
通過 Web 應(yīng)用生成的 DB 的數(shù)量(例如,“WWW”指令) 數(shù)據(jù)類型“DB_WWW”在“Temp”區(qū)域中的長度為 0。 |
S7-1200支持的串行通訊方式
名稱 | CM 1241 RS232 | CM 1241 RS485 |
---|---|---|
訂貨號 | 6ES7 241-1AH30-0XB0 | 6ES7 241-1CH30-0XB0 |
通訊口類型 | RS232 | RS485 |
波特率(bps) | 300; 600;1.2 kb; 2.4 kb; 4.8 kb; 9.6 kb;19.2 kb; 28.4 kb; 57.6 kb; 76.8 kb; 115.2 kb; | |
校驗方式 |
|
|
流控 | 硬件流控;軟件流控 | 不支持 |
接收緩沖區(qū) | 1KB | |
通訊距離(屏蔽電纜) | 10m | 1000m |
電源規(guī)范(5V DC) | 220mA |
圖1. 串口通信模塊
上海朕鋅電氣設(shè)備有限公司是專業(yè)從事西門子工業(yè)自動化產(chǎn)品銷售和系統(tǒng)集成的高新 技術(shù)企業(yè)。在西門子工控領(lǐng)域,公司以精益求精的經(jīng)營理念,從產(chǎn)品、方案到服務(wù),致 力于塑造一個“行業(yè)專家”品牌,以實現(xiàn)可持續(xù)的發(fā)展。
“信譽第一,客戶至上”是公司成立之初所確立的宗旨,在公司領(lǐng)導(dǎo)的嚴(yán)格要求和員工們不折不扣地貫徹執(zhí)行下發(fā)展延續(xù)至今?!凹僖涣P十”一直是我公司的主動承諾。
面對紛繁變化的市場和日益嚴(yán)峻的競爭,客戶的需求和利益始終被我們放在工作的首位。我們想客戶之所想,急客戶之所急。針對各行業(yè)客戶的不同需求,我們盡心盡力地為客戶需要解決的難題提供精準(zhǔn)的解決方案,竭盡全力將服務(wù)落到實處、做到最好。在協(xié)助客戶解決難題、實現(xiàn)突破的基礎(chǔ)上,獲得雙贏!
我公司一直致力于推廣西門子高性能自動化系統(tǒng)和驅(qū)動產(chǎn)品,所經(jīng)營產(chǎn)品范圍:LOGO!通用模塊、SIMATIC S7全系列可編程控制器、PCS7 控制系統(tǒng)、WINCC組態(tài)軟件、STEP 7編程軟件和博圖軟件; 觸摸屏、工控機(jī)、網(wǎng)絡(luò)交換機(jī)、開關(guān)電源;6RA70/80系列直流調(diào)速裝置,MM4、V20、G120、G130、G150、S120等全系列變頻器;V90伺服產(chǎn)品,數(shù)控系統(tǒng)等工業(yè)自動化與驅(qū)動技術(shù)全系列產(chǎn)品。公司所備各類產(chǎn)品齊全,貨量充足,常年備貨量在1億元以上,能夠滿足客戶對現(xiàn)貨的需求,保證工程進(jìn)度。
公司自成立以來,始終堅持以人才為本、誠信立業(yè)的經(jīng)營原則,堅持“質(zhì)量到位、服務(wù)一流”的經(jīng)營理念,在電工電氣-工控系統(tǒng)及裝備行業(yè)獲得了客戶的一致認(rèn)可和高度評價,公司以為客戶設(shè)計價值為己任,期待為您服務(wù)!
請相信上海朕鋅電氣設(shè)備有限公司是您忠誠的長久的合作伙伴,我們愿與廣大客戶攜手向前,共同進(jìn)步!