6ES7223-3AD30-0XB0西門子S7-1200,數(shù)字量 I/O SB 1223
SIMATIC S7-1200,數(shù)字量 I/O SB 1223,2DI/2DQ,5V DC 200kHz
|
|
警告 如果攻擊者能通過網(wǎng)絡時間協(xié)議 (Network Time Protocol, NTP) 同步訪問您的網(wǎng)絡,那么便可能通過改變 CPU 系統(tǒng)時間來有限地控制您的過程。默認情況下,S7?1200 CPU 的 NTP 客戶端功能處于禁用狀態(tài),啟用該功能時,僅允許將已組態(tài)的 IP 地址用作 NTP 服務器。CPU 在默認情況下禁用此功能,必須組態(tài)此功能才能實現(xiàn)遠程控制 CPU 系統(tǒng)時間修正。 S7?1200 CPU 支持“日時鐘”中斷和時鐘指令,這兩個指令均依賴于精確的 CPU 系統(tǒng)時間。如果組態(tài) NTP 并接受從服務器進行時間同步,那么必須確保服務器是可靠來源。否則會導致安全漏洞,從而使未知用戶能夠通過改變 CPU 系統(tǒng)時間來有限地控制您的過程。 有關安全信息和建議,請參見 Siemens 服務與支持網(wǎng)站上的“工業(yè)安全操作準則”。 |
時鐘指令用于設置和讀取 CPU 系統(tǒng)時鐘。使用數(shù)據(jù)類型 DTL 提供日期和時間值。
列表: 系統(tǒng)時間指令
LAD/FBD |
SCL |
說明 |
---|---|---|
ret_val := WR_SYS_T( in:=_DTL_in_);
|
WR_SYS_T(設置時鐘)使用參數(shù) IN 中的 DTL 值設置 CPU 時鐘。該時間值不包括本地時區(qū)或夏令時偏移量。 |
|
ret_val := RD_SYS_T( out=>_DTL_out);
|
RD_SYS_T(讀取時間)從 CPU 中讀取當前系統(tǒng)時間。該時間值不包括本地時區(qū)或夏令時偏移量。 |
|
ret_val := RD_LOC_T( out=>_DTL_out);
|
RD_LOC_T(讀取本地時間)以 DTL 數(shù)據(jù)類型提供 CPU 的當前本地時間。該時間值反映了就夏令時(如果已經(jīng)組態(tài))進行過適當調整的本地時區(qū)。 |
|
ret_val := WR_LOC_T( LOCTIME:=DTL_in_, DST:_in_;
|
WR_LOC_T(寫入本地時間)設置 CPU 時鐘的日期與時間。您可使用 DTL 數(shù)據(jù)類型在 LOCTIME 中將日期和時間信息指定為本地時間。該指令使用“TimeTransbationRule”數(shù)據(jù)塊結構計算系統(tǒng)時間。本地時間和系統(tǒng)時間的時間信息間隔特定于產(chǎn)品并且至少為一毫秒。如果 LOCTIME 參數(shù)的輸入值小于 CPU 支持的輸入值,則這些值在系統(tǒng)時間計算期間將進位。 注:必須使用 CPU 設備組態(tài)設置“時鐘”(Time of day) 屬性(時區(qū)、DST 激活、DST 啟動和 DST 停止)。否則,WR_LOC_T 不能解釋 DST 時間更改。 |
列表: 參數(shù)的數(shù)據(jù)類型
參數(shù)和類型 |
數(shù)據(jù)類型 |
說明 |
|
---|---|---|---|
IN |
IN |
DTL |
要在 CPU 系統(tǒng)時鐘內(nèi)設置的時間 |
OUT |
OUT |
DTL |
RD_SYS_T:當前 CPU 系統(tǒng)時間 RD_LOC_T:當前本地時間,包括任何對夏令時的調整(如組態(tài)) |
LOCTIME |
IN |
DTL |
WR_LOC_T:本地時間 |
DST |
IN |
BOOL |
WR_LOC_T:Daylight Saving Time僅在“雙重小時值”期間時鐘更改為夏令時才進行求值。
|
RET_VAL |
OUT |
Int |
執(zhí)行條件代碼 |
提示 夏令時和標準起始時間組態(tài)CPU 設備組態(tài)的“夏令時開始”(Start for daylight saving time) 的“時間”(Time of day) 屬性必須是本地時間。 |
條件代碼:ENO = 1 表示未發(fā)生錯誤。ENO = 0 表示發(fā)生了執(zhí)行錯誤,同時在 RET_VAL 輸出中提供條件代碼。
RET_VAL (W#16#....) |
說明 |
---|---|
0000 |
當前的本地時間為標準時間。 |
0001 |
夏令制時間已組態(tài),當前的本地時間為夏令制時間。 |
8080 |
本地時間不可用或 LOCTIME 值無效。 |
8081 |
年份值非法或 LOCTIME 參數(shù)分配的時間值無效 |
8082 |
月份值非法(DTL 格式中的字節(jié) 2) |
8083 |
日期值非法(DTL 格式中的字節(jié) 3) |
8084 |
小時值非法(DTL 格式中的字節(jié) 5) |
8085 |
分鐘值非法(DTL 格式中的字節(jié) 6) |
8086 |
秒數(shù)值非法(DTL 格式中的字節(jié) 7) |
8087 |
納秒值非法(DTL 格式中的字節(jié) 8 到 11) |
8089 |
時間值不存在(轉換為夏令時時,小時已過) |
80B0 |
實時時鐘發(fā)生了故障 |
80B1 |
尚未定義“TimeTransbationRule”結構。 |
6ES7223-3AD30-0XB0西門子S7-1200,數(shù)字量 I/O SB 1223