說明
可以使用“關斷延時”指令將 Q 參數的復位延時 PT 指定的一段時間。當參數 IN 的邏輯運算結果 (RLO) 從“0”變為“1”(信號上升沿)時,置位參數 Q。當參數 IN 的信號狀態更改回“0”時,預設的時間 PT 開始計時。只要時間 PT 正在計時,參數 Q 就保持置位狀態。超過時間 PT 時,將復位參數 Q。如果參數 IN 的信號狀態在超出時間值 PT 之前變為“1”,則將復位定時器。參數 Q 的信號狀態保持置位為“1”。
可通過 ET 參數查詢當前的時間值。該定時器值從 T#0s 開始,在達到持續時間 PT 后結束。在持續時間 PT 過后,在參數 IN 重新變為“1”之前,參數 ET 會一直保持為當前值。如果參數 IN 在時間 PT 用完之前變為“1”,則參數 ET 將復位為值 T#0s。
說明 如果程序中未調用定時器(這是因為會忽略定時器),則輸出 ET 會在定時器計時結束后立即返回一個常數值。 |
每次調用“關斷延時”指令,必須將其分配給存儲指令數據的 IEC 定時器。
在以下情況下將更新指令數據:
當輸出 ET 或 Q 互連時,調用該指令。如果輸出未互連,則不會更新輸出 ET 中的當前時間值。
訪問輸出 Q 或 ET 時。
有關在結構(多重實例)中調用 IEC 定時器的信息,請參見“調用 IEC 定時器”
S7-1200 系列 CPU
IEC 定時器是一個 IEC_TIMER 或 TOF_TIME 數據類型的結構,可如下聲明:
聲明為一個系統數據類型為 IEC_TIMER 的背景數據塊(例如,“MyIEC_TIMER_DB”)
聲明為程序塊的“Static”中數據類型為 TOF_TIME 的局部變量(例如,#MyIEC_TIMER_Instance)
S7-1500 系列 CPU:
IEC 定時器是一個 IEC_TIMER、IEC_LTIMER、TOF_TIME 或 TOF_LTIME 數據類型的結構,可如下聲明:
聲明為一個系統數據類型為 IEC_TIMER 或 IEC_LTIMER 的背景數據塊(例如,“MyIEC_TIMER_DB”)
聲明為程序塊的“Static”中數據類型為 TOF_TIME 或 TOF_LTIME 的局部變量(例如,#MyIEC_TIMER_Instance)
IEC 定時器作為系統數據類型為 IEC_<定時器> 的背景數據塊(共享 DB)
您可以按如下所示將 IEC 定時器聲明為數據塊:
IEC 定時器作為塊接口的局部變量(多重實例)
您可以按如下所示將 IEC 定時器聲明為局部變量:
#myLocal_Timer();
參數
下表列出了該指令的參數:
參數 | 聲明 | 數據類型 | 存儲區 | 說明 | |
---|---|---|---|---|---|
S7-1200 | S7-1500 | ||||
IN | Input | BOOL | BOOL | I、Q、M、D、L、P | 啟動輸入 |
PT | Input | TIME | TIME、LTIME | I、Q、M、D、L、P |
關斷延時的持續時間。 PT 參數的值必須為正數。 |
Q | Output | BOOL | BOOL | I、Q、M、D、L、P | 超出時間 PT 后復位的操作數。 |
ET | Output | TIME | TIME, LTIME | I、Q、M、D、L、P | 當前定時器的值 |
脈沖時序圖
下圖為“關斷延時”指令的脈沖圖:
示例
以下示例說明了該指令的工作原理:
SCL |
---|
"TOF_DB".TOF(IN := "Tag_Start", PT := "Tag_PresetTime", Q => "Tag_Status", ET => "Tag_ElapsedTime"); |
“Tag_Start”操作數的信號狀態從“0”變為“1”時,將置位“Tag_Status”操作數。當“Tag_Start”操作數的信號狀態從“1”變為“0”時,則 PT 參數指定的時間開始計時。只要該時間仍在計時,“Tag_Status”操作數就會保持置位狀態。該時間計時完畢后,將復位“Tag_Status”操作數。當前時間值存儲在“Tag_ElapsedTime”操作數中。
審核編輯:劉清
-
西門子
+關注
關注
93文章
3008瀏覽量
115637 -
SCL
+關注
關注
1文章
239瀏覽量
17037 -
S7-1200
+關注
關注
11文章
331瀏覽量
17914 -
復位定時器
+關注
關注
0文章
2瀏覽量
7040
原文標題:西門子博途:SCL:TOF:關斷延時
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論