版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、STEP7 常用功能塊說明1. SFB0 "CTU"SFB1 "CTD"SFB2 "CTUD"SFB4 "TON"SFB5 TOF兼容 IEC61131-3 的計數(shù)和計時功能塊2. SFB41 "CONT_C"SFB42 "CONT_S"SFB43 "PULSEGEN"用于 PID41-連續(xù)42-離散43-用于將一個模擬量轉(zhuǎn)化為與之對應(yīng)的周期性開關(guān)量脈沖信號,該脈沖的占空比與模擬量的數(shù)值大小成正比.3. SFC0 "SET_CLK"SF
2、C1 "READ_CLK"用于讀寫 PLC 中的系統(tǒng)時間4. SFC14 "DPRD_DAT" SFC15 "DPWR_DAT"用于讀寫 DP 從站中的一致性數(shù)據(jù) 如:讀寫用 DP 通訊的變頻器中的字5. SFC20 "BLKMOV" SFC21 "FILL"塊拷貝,塊填充6. SFC46 "STP" SFC47 "WAIT"SFC46 使 PLC 進入 STOP 狀態(tài),挺有用的:可以當軟件陷阱,或利用上位PLC 停機7. SFC60 "GD_S
3、ND"SFC61 "GD_RCV"MPI 的 GD 通訊8. IEC Function BlocksFC22 "LIMIT"FC25 "MAX"FC27 "MIN"FC22 -限幅輸出FC25,FC27 - 3 個數(shù)比大小9. PID Control BlocksFB41/42/43同SFB41"CONT_C"SFB42"CONT_S"SFB43"PULSEGEN"FB58 "TCON_CP" FB59 "TCONT
4、_S" 用于溫度PID10. Ti-S7 Converting BlocksFC105 "SCALE" FC106 "UNSCALE"模擬量輸入輸出的比例和數(shù)據(jù)類型轉(zhuǎn)換11. SFC1系統(tǒng)時鐘12. SFC3啟動/停止運行時間定時器13、OB1:主程序循環(huán)14、OB10-OB17:在設(shè)置的日期和時間啟動15、OB20-OB23:延時后啟動16、OB30-OB38:以設(shè)定的時間為周期17、OB40-OB47:檢測到來自外部模塊的中斷請求時啟動18、OB55:DPV1 中斷(PROFIBUS-DP 中斷)目錄1 組織塊1.1組織塊(OB)概述1.2
5、程序循環(huán)組織塊(OB1)1.3時鐘中斷組織塊 (OB10 到 OB17)1.4時間延遲中斷組織塊 (OB20 到 OB23)1.5周期性中斷組織塊 (OB30 到 OB38)1.6硬件中斷組織塊 (OB40 到 OB47)1.7狀態(tài)中斷 OB(OB 55)1.8更新中斷 OB(OB 56)1.9制造商特定中斷 OB(OB57)1.10 多值計算中斷組織塊(OB60)1.11 同步周期性中斷 OB(OB 61 到 OB 64)1.12 I/O 冗余出錯 OB(OB70)1.13 CPU 冗余出錯 OB(OB72)1.14通訊冗余出錯 OB(OB73)1.15時間出錯組織塊(OB80)1.16電源
6、出錯組織塊(OB81)1.17診斷中斷組織塊(OB82)1.18/刪除模塊中斷組織塊(OB83)1.19 CPU 硬件故障組織塊(OB84)1.20優(yōu)先級出錯組織塊(OB85)1.21機架故障組織塊(OB86)1.22通訊出錯組織塊(OB87)1.23處理中斷 OB(OB 88)1.24組織塊(OB90)1.25啟動組織塊(OB100、OB101 和 OB102)1.26編程出錯組織塊(OB121)1.27 I/O出錯組織塊(OB122)2 SFC 的公共參數(shù)2.1 通過輸出參數(shù) RET_VAL出錯2.2 異步 SFC 的 REQ、RET_VAL 和 BUSY 參數(shù)的含義用于 S7-300/4
7、00 系統(tǒng)和標準功能的系統(tǒng)軟件3功能和塊功能3.1使用 SFC20“BLKMOV”區(qū)域3.2使用 SFC81“UBLKMOV”不間斷地變量3.3使用 SFC21“FILL”初始化區(qū)3.4使用 SFC22“CREAT_DB”創(chuàng)建數(shù)據(jù)塊3.5使用 SFC23“DEL_DB”刪除數(shù)據(jù)塊3.6使用 SFC24“TEST_DB”測試數(shù)據(jù)塊3.7使用 SFC25“COMPRESS”壓縮用戶器3.8使用 SFC44“REPL_VAL”傳送一個替換值到累加器 13.9使用 SFC82“CREA_DBL”在裝載器中生成數(shù)據(jù)塊3.10使用 SFC83“READ_DBL”從裝載器的數(shù)據(jù)塊中數(shù)據(jù)3.11使用 SFC8
8、4“WRIT_DBL”在裝載器中寫入數(shù)據(jù)塊3.12使用 SFC85“CREA_DB”創(chuàng)建數(shù)據(jù)塊4 用于程序執(zhí)行的 SFC4.1使用 SFC43“RE_TRIGR”重新觸發(fā)循環(huán)時間監(jiān)視4.2使用 SFC46“STP”將 CPU 切換為 STOP4.3使用 SFC47“WAIT”延時用戶程序執(zhí)行4.4使用 SFC35“MP_ALM”觸發(fā)多處理器中斷4.5使用 SFC104 “CiR”CiR5 用于處理系統(tǒng)時鐘的 SFC5.1使用 SFC0 “SET_CLK”設(shè)定 TOD5.2使用 SFC1 “READ_CLK”時間5.3使用 SFC48 “SNC_RTCB”同步子時鐘5.4使用 SFC100 “S
9、ET_CLKS”設(shè)定時間日期和 TOD 狀態(tài)6 用于處理運行系統(tǒng)計時器的 SFC6.1運行時間定時器6.2使用 SFC101 “RTM”運行時間定時器6.3使用 SFC2 “SET_RTM”設(shè)置運行時間定時器6.4使用 SFC3 “CTRL_RTM”啟動和停止運行時間定時器6.5 使用 SFC4 “READ_RTM”運行時間定時器6.6 使用 SFC64 “TIME_TCK”系統(tǒng)時間7 用于傳送數(shù)據(jù)的 SFC7.1讀寫一條數(shù)據(jù)7.2使用 SFC54 “RD_DPARM”定義的參數(shù)7.3使用 SFC102 “RD_DPARA”預(yù)定義參數(shù)7.4使用 SFC55 “WR_PARM”寫動態(tài)參數(shù)7.5使
10、用 SFC56 “WR_DPARM”寫一條數(shù)據(jù)7.6用 SFC57 “PARM_MOD” 將參數(shù)分配給模塊7.7使用 SFC58 “WR_REC”寫入數(shù)據(jù)7.8使用 SFC59 “RD_REC”讀一個數(shù)據(jù)7.9 SFC 55 到 59 的進一步出錯信息用于 S7-300/400 系統(tǒng)和標準功能的系統(tǒng)軟件8 符合 PNO AK 1131 的 DPV1 SFB8.1使用 SFB “RDREC”從 DP 從站讀一個數(shù)據(jù)8.2使用 SFB53“WRREC”將數(shù)據(jù)寫入 DP 從站8.3用 SFB54“RALRM” STATUS3從 DP 從站接收中斷8.4用 SFB75“SALRM”向 DP 主站中斷9
11、 用于處理時鐘中斷的 SFC9.1 處理時鐘中斷9.2 SFC 28 到 31 的特征9.3使用 SFC28“SET_TINT”設(shè)置日時鐘中斷9.4使用 SFC29“CAN_TINT”取消時鐘中斷9.5使用 SFC30“ACT_TINT”激活時鐘中斷9.6使用 SFC31“QRY_TINT”日時鐘中斷10用于處理延時中斷的 SFC10.1處理延時中斷10.2使用 SFC32“SRT_DINT”啟動延時中斷10.3使用 SFC34“QRY_DINT”日時鐘中斷10.4使用 SFC33“CAN_DINT”取消延時中斷11 用于處理同步出錯的 SFC11.1同步出錯11.2使用 SFC36“MSK_
12、FLT”同步出錯11.3使用 SFC37“DMSK_FLT”解除同步出錯11.4使用 SFC38“READ_ERR”出錯寄存器12 用于處理中斷和異步出錯的 SFC 12-112.1 延遲和禁用中斷和異步出錯12.2 使用 SFC39 “DIS_IRT”禁用新中斷和異步出錯的處理12.3使用 SFC40“EN_IRT”啟用新中斷和異步出錯的處理12.4使用 SFC41“DIS_AIRT”延遲更高優(yōu)先級中斷和異步出錯的處理12.5使用 SFC42“EN_AIRT”啟用處理較高優(yōu)先級的中斷和異步出錯13 用于診斷的 SFC13.1系統(tǒng)診斷13.2使用 SFC6 “RD_SINFO”O(jiān)B 啟動信息1
13、3.3使用 SFC51“RDSYSST”系統(tǒng)狀態(tài)列表或部分列表13.4使用 SFC52“WR_USMSG”將自定義診斷寫入診斷緩沖區(qū)13.5使用 SFC78“OB_RT”確定 OB 程序運行時間13.6使用 SFC87“C_DIAG”診斷當前連接狀態(tài)13.7使用 SFC103 “DP_TOPOL”識別 DP 主站系統(tǒng)的總線拓撲14 用于更新過程映像和處理位域的 SFC 和 SFB14.1使用 SFC26“UPDAT_PI”更新過程映像輸入表14.2使用 SFC27“UPDAT_PO”更新過程映像輸出表14.3使用 SFC79“SET”在 I/O 區(qū)域中設(shè)置位域14.4使用 SFC 126 “S
14、YNC_PI”在同步循環(huán)中更新過程映像分 區(qū)輸入表14.5使用 SFC 127 “ISO_PO”在同步循環(huán)中更新過程映像分區(qū)輸出表14.6使用 SFC80 “RSET”復(fù)位 I/O 區(qū)域中的位域14.7使用 SFB 32 “DRUM”實現(xiàn)一個操作序列用于 S7-300/400 系統(tǒng)和標準功能的系統(tǒng)軟件15 用于尋址模塊的系統(tǒng)功能15.1使用 SFC5 “GADR_LGC”模塊的邏輯基址15.2使用 SFC49 “LGC_GADR”屬于一個邏輯地址的模塊插槽15.3使用 SFC50 “RD_LGADR”模塊的所有邏輯地址16 用于分布式 I/O 的 SFC16.1使用 SFC7 “DP_PRAL
15、”在 DP 主站上觸發(fā)硬件中斷16.2用 SFC11“DPSYC_FR”同步 DP 從站組16.3用 SFC12“D_ACT_DP”激活和取消激活 DP 從站16.4用 SFC13“DPNRM_DG”DP 從站的診斷數(shù)據(jù)(從站診斷)16.5使用 SFC14 “DPRD_DAT”DP 標準從站的連續(xù)數(shù)據(jù)16.6使用 SFC15 “DPWR_DAT”將連續(xù)數(shù)據(jù)寫入到 DP 標準從站17 用于全局數(shù)據(jù)通訊的 SFC17.1 使用 SFC60 “GD_SND”一個 GD 信息包17.2 通過 SFC61 “GD_RCV”編程接受已接收到的 GD 信息包18 通訊和 S7 基本通訊的概述18.1 S7
16、通訊塊和 S7 基本通訊塊之間的差別18.2 數(shù)據(jù)的一致性18.3 S7 通訊塊概述18.4 用于 S7 基本通訊的功能塊總覽19 S7 通訊19.1 用于 S7 通訊的 SFB/FB 和 SFC/FC 的公用參數(shù)19.2 用于組態(tài)的 S7 連接的 SFB 啟動例行程序19.3 SFB 對故障如何反應(yīng)19.4通過 SFB8/FB8“USEND”進行無協(xié)調(diào)的數(shù)據(jù)19.5通過 SFB/FB9“URCV”進行無協(xié)調(diào)的數(shù)據(jù)接收19.6通過 SFB/FB12 “BSEND”分段數(shù)據(jù)19.7通過 SFB/FB13 “BRCV”接收分段數(shù)據(jù)19.8通過 SFB/FB15“PUT”CPU 寫入數(shù)據(jù)19.9通過
17、 SFB/FB14GET”從CPU 中數(shù)據(jù)19.10使用 SFB16“PRINT”將數(shù)據(jù)到打印機19.11通過 SFB 19“START”在設(shè)備上開始一個暖重啟或冷重啟19.12通過 SFB 20“STOP”將設(shè)備切換到 STOP 狀態(tài)19.13通過 SFB 21“RESUME”在設(shè)備上開始一個熱重啟19.14使用 SFB 22“STATUS”伙伴的狀態(tài)19.15通過 SFB23 “USTATUS”接收設(shè)備的狀態(tài)改變19.16通過 SFC62 “CONTROL”屬于 SFB 實例的連接狀態(tài)19.17通過 FC62 “TRL”連接狀態(tài)19.18 S7 通訊 SFB/FB 的工作器要求用于 S7-
18、300/400 系統(tǒng)和標準功能的系統(tǒng)軟件20 用于未組態(tài) S7 連接的通訊 SFC20.1通訊 SFC 的公用參數(shù)20.2用于未組態(tài) S7 連接的通訊 SFC 的出錯信息20.3使用 SFC65“X_SEND”將數(shù)據(jù)給在本地 S7 站外的一個通訊伙伴20.4通過 SFC66“X_RCV”從本地 S7 站以外的通訊伙伴中接收 數(shù)據(jù)20.5通過 SFC68“X_PUT”將數(shù)據(jù)寫入本地 S7 站以外的通訊伙伴20.6通過 SFC67“X_GET”從本地 S7 站以外的通訊伙伴中數(shù)據(jù)20.7通過 SFC69“X_ABORT”中止已存在的、到本地 S7 站以外的通訊伙伴的連接20.8 使用 SFC72
19、“I_GET”從本地 S7 站內(nèi)的一個通訊伙伴上數(shù)據(jù)20.9 使用 SFC73 “I_PUT”將數(shù)據(jù)寫入到本地 S7 站內(nèi)的一個通訊伙伴20.10 通過 SFC74 “I_ABORT”中止已存在的、到本地 S7 站內(nèi)的通訊伙伴的連接21 PROFInet21.1 SFC112、113 和 114 背景信息21.2使用 SFC112 “PN_IN”更新用于 PROFInet 組件的用戶程序接口的輸入21.3使用 SFC113 “PN_OUT”更新用于 PROFInet 組件的用戶程序接口的輸出21.4使用 SFC114 “PN_DP”更新 DP 互連22 生成與塊相關(guān)的消息22.1關(guān)于使用 SF
20、B 生成塊相關(guān)消息的介紹22.2使用 SFB 36 “NOTIFY”生成無需確認的塊相關(guān)消息22.3使用 SFB31 “NOTIFY_8P”生成無確認顯示的塊相關(guān)消息22.4使用 SFB 33 “ALARM”生成需要確認的塊相關(guān)消息22.5使用 SFB35 “ALARM_8P”生成八個信號的帶有關(guān)聯(lián)值的塊相關(guān)消息22.6使用 SFB34 “ALARM_8”生成八個信號的不附帶關(guān)聯(lián)值的塊相關(guān)消息22.7使用 SFB37 “AR_SEND”歸檔數(shù)據(jù)22.8使用 SFC10 “DIS_MSG”與塊相關(guān)的消息、與符號相關(guān)的消息以及組狀態(tài)消息22.9 使用 SFC9 “EN_MSG”啟用塊相關(guān)、符號相關(guān)
21、和組狀態(tài)消息22.10用于生成與塊相關(guān)的消息的 SFB 的啟動特性22.11用于生成與塊相關(guān)的消息的 SFB 如何響應(yīng)故障22.12使用 SFC 生成與塊相關(guān)的消息簡介22.13使用 SFC17 “ALARM_SQ”生成可確認的與塊相關(guān)的消息以及使用SFC18“ALARM_S”生成確認的與塊相關(guān)的消息22.14 使用 SFC19 “ALARM_SC”上一 ALARM_SQ/ALARM_DQ 進入事件消息的確認狀態(tài)22.15 使用 SFC 107 “ALARM_DQ”和 108 “ALARM_D”生成可確認和永久確認的塊相關(guān)消息22.16 使用 SFC105 “READ_SI”動態(tài)系統(tǒng)22.17
22、 使用 SFC106 “READ_SI”動態(tài)系統(tǒng)23 IEC 定時器和 IEC 計數(shù)器23.1使用 SFB 3“TP”生成一個脈沖23.2使用 SFB 4“TON”生成一個接通延遲23.3使用 SFB 5“TOF”生成一個關(guān)閉延遲23.4使用 SFB 0 “CTU”遞增計數(shù)23.5使用 SFB 1 “CTD”遞減計數(shù)23.6使用 SFB2 “CTUD”遞增/遞減計數(shù)25 用于集成的 SFB25.1使用 SFB41/FB41“CONT_C”實現(xiàn)連續(xù)25.2使用 SFB42/FB42“CONT_S”進行步25.3使用 SFB43/FB43“PULSEGEN”生成脈沖25.4 PULSEGEN 塊的
23、實例26 用于緊湊型 CPU 的 SFB26.1通過 SFB44“Analog”使用模擬量輸出進行26.2通過 SFB46“DIGITAL”使用數(shù)字量輸出進行26.3使用 SFB47“COUNT”計數(shù)器26.4使用 SFB48“FREQUENC”頻率測量26.5使用 SFB49“PULSE”脈寬調(diào)制26.6使用 SFB60“SEND_PTP”數(shù)據(jù)(ASCII,3964(R)26.7使用 SFB61“RCV_PTP”接收數(shù)據(jù)(ASCII,3964(R)26.8使用 SFB62“RES_RCVB”刪除接收緩沖區(qū) (ASCII,3964(R)26.9使用 SFB63“SEND_RK”數(shù)據(jù)(512(R
24、)26.10 使用 SFB64 “FETCH RK”獲取數(shù)據(jù)(RK 512)26.11 使用 SFB65 “SERVE_RK”接收和提供數(shù)據(jù)(RK 512)26.12 SFB 60 至 65 的附加出錯信息27 用于 H CPU 的 SFC27.1 在 H 系統(tǒng)中使用 SFC90 “H_CTRL”操作28 集能(對于帶集成 I/O 的 CPU)28.1 SFB29(HS_COUNT)28.2 SFB30(FREQ_MES)28.3 SFB38(HSC_A_B)28.4 SFB39(POS)29 Plastics Techology29.1 SFC63 (AB_CALL)用于 S7-300/40
25、0 系統(tǒng)和標準功能的系統(tǒng)軟件1 組織塊1.1組織塊(OB)概述何為組織塊?組織塊(OB)是指 CPU 的操作系統(tǒng)與用戶程序之間的接口。OB 用于執(zhí)行特定的程序段:啟動 CPU 時在循環(huán)或定時執(zhí)行過程中出錯時發(fā)生硬件中斷時。組織塊按照已分配的優(yōu)先級來執(zhí)行。哪些 OB 可用?并非所有的 CPU 均可處理 STEP 7 中可用的所有 OB。請參閱操作列表/72/和/102/以確定用戶 CPU 中所包含的 OB。下表中給出了屬于每個 OB 的啟動和缺省優(yōu)先級。OB 啟動缺省優(yōu)先級 說明OB1 啟動結(jié)束或 OB1 結(jié)束1 自由循環(huán)OB10時鐘中斷 0OB11時鐘中斷 1OB12時鐘中斷 2OB13時鐘中
26、斷 3OB14時鐘中斷 4OB15時鐘中斷 5OB16時鐘中斷 6OB17時鐘中斷 7未指定缺省時間OB20延時中斷 0OB21延時中斷 1OB22延時中斷 2OB23延時中斷 3未指定缺省時間OB30周期性中斷 0(缺省時間間隔:5s)OB31周期性中斷 1(缺省時間間隔:2s)OB32周期性中斷 2(缺省時間間隔:1s)OB33周期性中斷 3(缺省時間間隔:500ms)OB34周期性中斷 4(缺省時間間隔:200ms)OB35周期性中斷 5(缺省時間間隔:100ms)OB36周期性中斷 6(缺省時間間隔:50ms)OB37周期性中斷 7(缺省時間間隔:20ms)OB38周期性中斷 8(缺省
27、時間間隔:10ms)周期性中斷OB40硬件中斷0OB41硬件中斷1OB42硬件中斷2OB43硬件中斷3OB44硬件中斷4OB45硬件中斷5OB46硬件中斷6OB47硬件中斷 7硬件中斷OB55狀態(tài)中斷 2 DPV1 中斷OB56更新中斷 2OB57制造商特定中斷 2OB60SFC35 “MP_ALM”調(diào)用 25 多值計算中斷OB 61同步周期性中斷 1OB 62同步周期性中斷 2OB 63同步周期性中斷 3OB 64同步周期性中斷 4同步周期性中斷OB70I/O 冗余出錯(僅在 H CPU 中)OB72CPU 冗余出錯(僅在 H CPU 中)OB 73通訊冗余出錯 OB(僅在 H CPU 中)
28、冗余出錯中斷OB80時間出錯OB81電源故障OB82診斷中斷OB83/刪除模塊中斷OB84CPU 硬件故障OB85程序出錯OB86擴展機架、DP 主站系統(tǒng)或用于分布式 I/O 的站故障OB87通訊出錯OB 88處理中斷異步出錯中斷OB90 暖重啟或冷重啟,或刪除 OB90 中正在執(zhí)行的塊,或?qū)⒃?CPU 上裝載 OB90 或終止 OB90循環(huán)OB100 暖重啟OB101 熱重啟OB102 冷重啟啟動OB121 編程出錯OB122 I/O出錯1.2 程序循環(huán)組織塊(OB1)描述S7 CPU 的操作系統(tǒng)定期執(zhí)行 OB1。執(zhí)行 OB1 后,操作系統(tǒng)將再次啟動它。完成啟動后,將啟動 OB1 的循環(huán)執(zhí)行
29、??烧{(diào)用 OB1 中的其它功能塊(FB、SFB)或功能(FC、SFC)。了解 OB1 的操作在運行期受監(jiān)視的所有 OB 中,OB1 的優(yōu)先級最低,換言之,除 OB90之外的其它所有 OB 均可中斷 OB1 的執(zhí)行。以下可導(dǎo)致操作系統(tǒng)調(diào)用 OB1: 完成啟動。 已完成 OB1 的執(zhí)行(上一循環(huán))。執(zhí)行 OB1 后,操作系統(tǒng)全局數(shù)據(jù)。重新啟動 OB1 之前,操作系統(tǒng)會將過程映像輸出表寫入輸出模塊中、更新過程映像輸入表以及接收CPU 的任何全局數(shù)據(jù)。S7 監(jiān)視最大的掃描時間,并確保最大的響應(yīng)時間。最大掃描時間的值預(yù)置為 150ms。用戶可設(shè)置一個新值,也可在用戶程序中的任意位置使用SFC43“RE_
30、TRIGR”來重新啟動時間監(jiān)視。如果用戶程序超出了 OB1的最大周期,則操作系統(tǒng)將調(diào)用 OB80 (時間錯誤 OB);如果 OB80 沒有編程,則 CPU 將轉(zhuǎn)為 STOP 模式。除了監(jiān)視最大掃描時間外,還可以保證最小掃描時間。操作系統(tǒng)將延遲啟動新循環(huán)(將過程映像輸出表寫入輸出模塊中),直至達到最小掃描時間為止。OB1 的本地數(shù)據(jù)下表描述了 OB1 的臨時(TEMP)變量。變量名為 OB1 的缺省名稱。變量類型描述OB1_EV_CLASSBYTE等級和標識符:B#16#11:OB1 激活OB1_SCAN_1BYTE B#16#01:完成暖重啟 B#16#02:完成熱重啟 B#16#03:完成主
31、循環(huán) B#16#04:完成冷重啟 B#16#05:主站-保留站切換和“停止”上一主站之后新主站 CPU 的首個 OB1 循環(huán)OB1_PRIORITYBYTE優(yōu)先級 1OB1_OB_NUMBRBYTEOB 編號(01)OB1_1 BYTE保留OB1_2 BYTE保留OB1_PREV_CYCLE INT上一次掃描的運行時間(ms)OB1_MIN_CYCLEINT自上次啟動后的最小周期(ms)OB1_MAX_CYCLEINT從上次啟動后的最大周期(ms)OB1_DATE_TIMEDATE_AND_TIME調(diào)用OB時的DATE_AND_TIME1.3 時鐘中斷組織塊(OB10 到 OB17)描述STE
32、P 7 提供了多達八個 OB (OB10 到 OB17),這些 OB 可單次運行,也可定期運行??墒褂?SFC 或 STEP 7 為 CPU 分配參數(shù),以便以下列時間間隔處理這些 OB: 單次 每分鐘 每小時 每天 每周 每月 每末注意:對于每月執(zhí)行的時鐘中斷 OB,只可將 1、2、.28 號作為起始日期。了解時鐘中斷 OB 的操作:要啟動時鐘中斷,必須先設(shè)置中斷,然后再將其激活。有以下三種可能的啟動方式: 自動啟動時鐘中斷。一旦使用 STEP 7 設(shè)置并激活了時鐘中斷,即會發(fā)生此情況 下表說明了使用 STEP 7 激活時鐘中斷的基本可能情況。 使用 STEP 7 設(shè)置日時鐘中斷,然后通過調(diào)用
33、程序中的 SFC30 “ACT-TINT”來激活它。 通過調(diào)用 SFC28 “SET_TINT”來設(shè)置日時鐘中斷,然后通過調(diào)用 SFC30“ACT_TINT”來激活它。時間間隔 描述未激活 時鐘中斷未執(zhí)行,即使將其裝載到 CPU 中也是如此??赏ㄟ^調(diào)用 SFC30 來激活它。僅激活一次 時間 OB 按指定時間運行一次后,即被自動取消。用戶程序可使用 SFC28 和 SFC30 來復(fù)位并重新激活 OB。定期激活 當發(fā)生時鐘中斷時,CPU 將根據(jù)當前的時間和周期計算時間中斷的下一次啟動的時間。當前后撥動時鐘時,時間中斷的特性將如 234注意: 如果以如下方式組態(tài)時間中斷, 即單次處理相應(yīng)的 OB
34、要,則DATE_AND_TIME 必須為過去的時間(相對于 CPU 的實際時間)。如 果 以 如 下 方 式 組 態(tài) 時 間 中 斷 , 即 定 期 處 理 相 應(yīng) 的 OB ,而啟動 DATE_AND_TIME 為過去的時間,隨后將在下次預(yù)期的時間處理該時間中斷。下圖對此進行了說明??梢允褂?SFC 39 至 42 禁用或延遲和重新啟用時鐘中斷。Presetstart timeCurrenttimePresetintervalPoint at which the time-of-dayinterrupt OB is first executed.影響時鐘中斷 OB 的條件由于時間中斷僅以指定
35、的時間間隔發(fā)生,因此在執(zhí)行用戶程序期間,某些條件可能會影響 OB 的操作。下表列出了其中的一些條件,并說明了該條件對執(zhí)行時間中斷 OB 的影響。條件結(jié)果用戶程序調(diào)用 SFC29(CAN_TINT)并取消時間中斷。操作系統(tǒng)清除了時鐘中斷的啟動(DATE_AND_TIME)。必須再次設(shè)置啟動并在再次調(diào)用 OB 之前激活它。用戶程序試圖激活時間中斷 OB,但未將 OB 加載到 CPU 中。操作系統(tǒng)調(diào)用OB85。如果OB85 尚未編程(裝載到CPU 中),則CPU 將轉(zhuǎn)為STOP模式。當同步或更正 CPU 的系統(tǒng)時鐘時,用戶提前設(shè)置了時間并跳過時間 OB 的啟動日期或時間。操作系統(tǒng)調(diào)用OB80 并對時
36、間OB 的編號和OB80 中的啟動信息進行編碼。隨后操作系統(tǒng)將運行一次時間 OB,而不管本應(yīng)執(zhí)行此 OB 的次數(shù)。OB80 的啟動信息給出了第一次跳過時間 OB 的 DATE_AND_TIME。當同步或更正 CPU 的系統(tǒng)時鐘時,推后設(shè)置了時間以使 OB 的啟動、日期或時間得以重復(fù)。S7-400-CPU 和 CPU 318:如果在推后設(shè)置時鐘之前已激活了時間 OB,則再次調(diào)用它。S7-300-CPU:執(zhí)行時間 OB。CPU 通過暖重啟或冷重啟運行。由 SFC 組態(tài)的所有時間 OB 會被改回在 STEP 7 中指定的組態(tài)。如果已為相應(yīng) OB 的單次啟動組態(tài)了時間中斷,并使用 STEP 7 對其進
37、行了設(shè)置,并將其激活,則當所組態(tài)的啟動時間為已過去的時間(相對于 CPU 的實時時鐘)時,會在暖重啟或冷重啟操作系統(tǒng)后調(diào)用一次 OB。當發(fā)生下一時間間隔的啟動時,仍執(zhí)行時間 OB。操作系統(tǒng)調(diào)用 OB80。如果 OB80 沒有編程,則 CPU 轉(zhuǎn)為 STOP 模式。如果裝載了 OB80,則會首先執(zhí)行 OB80 和時鐘中斷 OB,然后再執(zhí)行請求的中斷。時鐘中斷 OB 的本地數(shù)據(jù)下表給出了時間中斷 OB 的臨時(TEMP)變量。變量名為 OB10 的缺省名稱。變量類型描述OB10_EV_CLASSBYTE等級和標識符:B#16#11 = 中斷處于激活狀態(tài)OB10_STRT_INFO BYTEB#16
38、#11:OB10 的啟動請求(B#16#12:OB11 的啟動請求):(B#16#18:OB17 的啟動請求)OB10_PRIORITYBYTE分配的優(yōu)先級;缺省值為 2OB10_OB_NUMBRBYTEOB 編號(10 至 17)OB10_1BYTE保留OB10_2BYTE保留OB10_PERIOD_EXEWORD OB 以指定的時間間隔執(zhí)行:W#16#0000:單次W#16#0201:每分鐘一次W#16#0401:每小時一次W#16#1001:每天一次W#16#1201:每周一次W#16#1401:每月一次W#16#1801:每年一次W#16#2001:月末OB10_3INT保留OB10_
39、4INT保留OB10_DATE_TIME DATE_AND_TIME調(diào)用 OB 時的 DATE_AND_TIME1.4 時間延遲中斷組織塊(OB20 到 OB23)描述S7 提供多達四個在指定延遲后執(zhí)行的 OB (OB20 到 OB23)。每個延時OB 均可通過調(diào)用 SFC32 (SRT_DINT)來啟動。延遲時間是 SFC 的一個輸入?yún)?shù)。當用戶程序調(diào)用 SFC32 (SRT_DINT)時,需要提供 OB 編號、延遲時間和用戶的標識符。經(jīng)過指定的延遲后,OB 將會啟動。還可取消尚未啟動的延時中斷。了解延時中斷 OB 的操作延遲時間(同 OB 編號一起傳送給 SFC32 的值,為 ms)到期后
40、,操作系統(tǒng)將啟動相應(yīng)的 OB。要使用延時中斷,必須執(zhí)行以下任務(wù): 必須調(diào)用 SFC32 (SRT_DINT)。 必須將延時中斷 OB 作為用戶程序的一部分到 CPU。只有當 CPU 處于 RUN 模式下時才會執(zhí)行延時 OB。暖重啟或冷重啟將清除延時OB 的所有啟動。如果延時中斷還未啟動,則可使用 SFC33 (CAN_DINT)取消執(zhí)行。延遲時間的分辨率為 1ms。已到期的延遲時間可立即再次啟動??墒褂?SFC34(QRY_DINT)延時中斷的狀態(tài)。如果發(fā)生以下之一,操作系統(tǒng)將調(diào)用異步出錯 OB: 如果操作系統(tǒng)試圖啟動一個尚未裝載的 OB,并且用戶在調(diào)用 SFC32“SRT_DINT”時指定了
41、其編號。 如果在完全執(zhí)行延時 OB 之前發(fā)生延時中斷的下一個啟動??墒褂?SFC 39至 42 來禁用或延遲并重新使能延遲中斷。延時中斷 OB 的本地數(shù)據(jù)下表描述了延時中斷 OB 的臨時(TEMP)變量。變量名為 OB20 的缺省名稱。變量類型描述OB20_EV_CLASSBYTE等級和標識符:B#16#11:中斷處于激活狀態(tài)OB20_STRT_INFBYTEB#16#21:OB20 的啟動請求(B#16#22:OB21 的啟動請求)(B#16#23:OB22 的啟動請求)(B#16#24:OB23 的啟動請求)OB20_PRIORITYBYTE分配的優(yōu)先級:缺省值 3(OB20)至 6(OB
42、23)OB20_OB_NUMBRBYTEOB 編號(20 至 23)OB20_1BYTE保留OB20_2BYTE保留OB20_SIGNWORD 用戶 ID:通過調(diào)用 SFC32 (SRT_DINT)的輸入?yún)?shù) SIGNOB20_DTIMETIME已組態(tài)的延遲時間(為 ms)OB20_DATE_TIME DATE_AND_TIME調(diào)用 OB 時的 DATE_AND_TIME1.5 周期性中斷組織塊(OB30 到 OB38)描述S7 提供了多達九個的循環(huán)中斷 OB (OB30 到 OB38),它們以固定的時間間隔來中斷用戶程序。下表給出了循環(huán)中斷 OB 的缺省時間間隔和優(yōu)先級。OB 編號缺省時間間
43、隔 缺省優(yōu)先級OB305s7OB312s8OB321s9OB33500ms10OB34200ms11OB35100ms12OB3650ms13OB3720ms14OB3810ms15了解周期性中斷 OB 的操作循環(huán)中斷 OB 的等距啟動時間是由時間間隔和相位偏移量決定的。請參閱/234/,以了解 OB 的啟動時間、周期以及相位偏移量之間的關(guān)系。注意:必須確保每個周期性中斷 OB 的運行時間遠遠小于其時間間隔。如果因時間間隔已到期,如果在預(yù)期的再次執(zhí)行前未完全執(zhí)行循環(huán)中斷 OB,則啟動時間錯誤 OB(OB80)。稍后將執(zhí)行導(dǎo)致錯誤的循環(huán)中斷??墒褂?SFC 39 至 42 來禁用或延遲,并重新啟
44、用周期性中斷請參閱用戶特定 CPU 的說明書,了解參數(shù)時間間隔、優(yōu)先級和相位偏移量的范圍??墒褂?STEP 7 來更改參數(shù)設(shè)置。周期性中斷 OB 的本地數(shù)據(jù)下表給出了循環(huán)中斷 OB 的臨時(TEMP)變量。變量名為 OB35 的缺省名稱。變量類型描述OB35_EV_CLASSBYTE等級和標識符:B#16#11:中斷處于激活狀態(tài)OB35_STRT_INF BYTEB#16#30:具有特殊標準的周期性中斷 OB 的啟動請求(僅適用于H-CPU,且僅當對其進行了明確組態(tài)后)B#16#31 :OB30 的啟動請求:B#16#36 :OB35 的啟動請求:B#16#39 :OB38 的啟動請求OB35
45、_PRIORITYBYTE分配的優(yōu)先級:缺省值為 7(OB30)至 15(OB38)OB35_OB_NUMBRBYTEOB 編號(30 至 38)OB35_1BYTE保留OB35_2BYTE保留OB35_PHASE_OFFSET WORD 相位偏移量msOB35_3INT保留OB35_EXC_FREQINT時間間隔(為 ms)OB35_DATE_TIME DATE_AND_TIME 調(diào)用 OB 時的 DATE_AND_TIME1.6 硬件中斷組織塊(OB40 到 OB47)描述S7 提供了多達八個的硬件中斷,每一中斷都具有的 OB。通過 STEP 7 分配參數(shù),可以為將要觸發(fā)硬件中斷的每個信號
46、模塊指定以: 在何種條件下觸發(fā)硬件中斷的通道。 要分配給個別通道組的硬件中斷 OB(缺省情況下,將由 OB40 來處理所有的硬件中斷)。借助于 CP 和 FM,可使用其各帶軟件來分配這些參數(shù)??墒褂?STEP 7 選擇各個硬件中斷 OB 的優(yōu)先級。了解硬件中斷 OB 的操作在模塊觸發(fā)硬件中斷后,操作系統(tǒng)將標識插槽以及相應(yīng)的硬件中斷 OB。如果此OB 的優(yōu)先級高于當前激活的優(yōu)先級,則將啟動該 OB。當執(zhí)行完此硬件中斷 OB后,將通道指定的確認。如果在對硬件中斷進行標識和確認的這段時間內(nèi),在同一模塊中發(fā)生了觸發(fā)硬件中斷的另一,則應(yīng)用以下規(guī)則: 如果該發(fā)生在先前觸發(fā)硬件中斷的通道中,則新中斷丟失。在
47、下圖中,將根據(jù)數(shù)字輸入模塊的通道實例對此進行說明。觸發(fā)是上升沿。硬件中斷 OB是 OB40。Process signalOB40 Execution of OB40These hardware interrupts are not detected 如果該發(fā)生在同一模塊的另一通道中,通常觸發(fā)任何硬件中斷。然而此中斷丟失,而是在確認當前激活的硬件中斷后被觸發(fā)。如果因來自另一模塊中的硬件中斷而使某一硬件中斷被觸發(fā),并且其 OB 當前處于激活狀態(tài),則將新請求并且在 OB 空閑進行處理??墒褂?SFC 39 至 42 來禁用或延遲,并重新啟用硬件中斷。既可以使用 STEP 7,也可以使用 SFC 55
48、 至 57 為模塊的硬件中斷分配參數(shù)。硬件中斷 OB 的本地數(shù)據(jù)下表給出了硬件中斷 OB 的臨時(TEMP)變量。變量名為 OB40 的缺省名稱。變量 類型 描述OB40_EV_CLASS BYTE等級和標識符:B#16#11:中斷處于激活狀態(tài)OB40_STRT_INF BYTE B#16#41:通過中斷線 1 中斷 B#16#42:通過中斷線 2 中斷(僅限 S7-400) B#16#43:通過中斷線 3 中斷(僅限 S7-400) B#16#44:通過中斷線 4 中斷(僅限 S7-400) B#16#45:WinAC:通過 PC 觸發(fā)中斷OB40_PRIORITY BYTE 分配的優(yōu)先級:
49、缺省值為 16(OB40)至 23(OB47)OB40_OB_NUMBR BYTE OB 編號(40 至 47)OB40_1 BYTE 保留OB40_IO_FLAG BYTE 輸入模塊:B#16#54輸出模塊:B#16#55OB40_MDL_ADDR WORD 觸發(fā)中斷的模塊的邏輯基址OB40_POINT_ADDR DWORD 對于數(shù)字模塊:模塊上具有輸入狀態(tài)的位域(位 0 對應(yīng)于第一個輸入)可在給定模塊的說明中找到為模塊中的通道分配的從OB40_POINT_ADDR 起始的位。 對于模擬模塊:位域,指出哪個通道已超出哪條限制(有關(guān)結(jié)構(gòu)的詳細信息,請參閱/71/ 或/101/ )。 對于 CP
50、 或 IM:模塊中斷狀態(tài)(非用戶相關(guān))OB40_DATE_TIME DATE_AND_TIME 調(diào)用 OB 時的 DATE_AND_TIME注意如果使用了具有 DPV1 功能的 CPU,可借助于 SFB54 “RALRM”獲取有關(guān)中斷的其它信息,這些信息不止包含 OB 的起始信息。在 S7 兼容模式下操作 DP 主站時,這一點也同樣適用。組織塊用于 S7-300/400 系統(tǒng)和標準功能的系統(tǒng)軟件1-16 A5E00446508-011.7 狀態(tài)中斷 OB(OB 55)注意狀態(tài)中斷 OB (OB 55)僅對具有 DPV1 功能的 CPU 可用。描述如果狀態(tài)中斷是通過 DPV1 從站的插槽觸發(fā),則
51、 CPU 操作系統(tǒng)調(diào)用 OB55。如果 DPV1 從站的組件(模塊或機架)更改了其操作模式(例如由 RUN 改為STOP),則可能會發(fā)生這種情況。有觸發(fā)狀態(tài)中斷的的詳細信息,請參閱 DPV1 從站制造商的文檔。狀態(tài)中斷 OB 的本地數(shù)據(jù)下表給出了狀態(tài)中斷 OB 的臨時(TEMP)變量。所選變量的名稱為 OB55 的缺省名稱。變量 數(shù)據(jù)類型 描述OB55_EV_CLASS BYTE等級和標識符:B#16#11(即將發(fā)生的)OB55_STRT_INF BYTE B#16#55(OB55 的啟動請求)OB55_PRIORITY BYTE 已組態(tài)的優(yōu)先級,缺省值為 2OB55_OB_NUMBR BYT
52、E OB 編號(55)OB55_1 BYTE 保留OB55_IO_FLAG BYTE 輸入模塊:B#16#54輸出模塊:B#16#55OB55_MDL_ADDR WORD 中斷觸發(fā)組件(模塊)的邏輯基址OB55_LEN BYTE 中斷所提供的數(shù)據(jù)塊長度OB55_TYPE BYTE中斷類型狀態(tài)中斷的 IDOB55_SLOT BYTE中斷觸發(fā)組件(模塊)的插槽號OB55_SPEC BYTE說明符 位 0 至 1:中斷說明符 位 2:Add_Ack 位 3 至 7:順序號OB55_DATE_TIME DATE_AND_TIME 調(diào)用 OB 時的日期和時間注意通過 OB55 調(diào)用 SFB54 “RALRM”,可獲得 DP 消息幀所含中斷的完整輔助信息。組織塊用于 S7-300/400 系統(tǒng)和標準功能的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度軌道交通欄桿及防護欄安裝服務(wù)合同3篇
- 二零二五年度礦長安全生產(chǎn)責任制合同3篇
- 夫妻協(xié)議書范本(2篇)
- 二零二五版KTV突發(fā)事件應(yīng)急預(yù)案與處理合同3篇
- 二零二五年度廢舊輪胎資源化處理與銷售合同3篇
- 二年級上學(xué)期語文期末測試卷
- 二零二五年跨境電商支付服務(wù)合同6篇
- TCCTAS 81-2023 瀝青路面就地再生熱粘罩面設(shè)計施工技術(shù)規(guī)程
- 二零二五年度離婚協(xié)議書起草與情感調(diào)解合同3篇
- 二零二五年度標識標牌行業(yè)產(chǎn)學(xué)研一體化合作合同3篇
- 臨床療效總評量表(CGI)
- 從教走向?qū)W:在課堂上落實核心素養(yǎng)
- 美世國際職位評估體系IPE3.0使用手冊
- 2020電網(wǎng)檢修工程預(yù)算定額第五冊 通信工程
- 圖像超分辨率增強技術(shù)
- 集裝箱貨運碼頭的火災(zāi)防范措施
- DB15T+3199-2023公路工程水泥混凝土質(zhì)量聲波層析成像法檢測規(guī)程
- 高壓電纜試驗報告
- 七年級數(shù)學(xué)上冊專題1.14數(shù)軸與絕對值綜合問題大題專練(重難點培優(yōu))-【講練課堂】2022-2023學(xué)年七年級數(shù)學(xué)上冊尖子生同步培優(yōu)題典(原卷版)【人教版】
- 酸性氨基酸對caco
- 藝術(shù)導(dǎo)論PPT完整全套教學(xué)課件
評論
0/150
提交評論