STEP7程序模塊的調(diào)用方法_第1頁(yè)
STEP7程序模塊的調(diào)用方法_第2頁(yè)
STEP7程序模塊的調(diào)用方法_第3頁(yè)
STEP7程序模塊的調(diào)用方法_第4頁(yè)
STEP7程序模塊的調(diào)用方法_第5頁(yè)
已閱讀5頁(yè),還剩46頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

SIMATICS7的程序模塊的調(diào)用組織塊OB的種類和調(diào)用方法功能FC和功能塊FBC的用途及調(diào)用方法系統(tǒng)功能FC系統(tǒng)功能塊SFB共享數(shù)據(jù)塊DB和背景數(shù)據(jù)塊DB的調(diào)用方法一、組織塊OB的種類和調(diào)用方法1、種類及優(yōu)先級(jí)別共有幾十種組織塊,分為主程序、中斷、冗余錯(cuò)誤、異步故障處理、同步故障處理、背景循環(huán)、啟動(dòng)方式處理等7大類。每種組織塊具有不同的功能,用編號(hào)區(qū)別。有1~29個(gè)優(yōu)先級(jí)別,1為最低級(jí),29為最高級(jí)。當(dāng)程序在執(zhí)行較低級(jí)別組織塊時(shí),如果遇到特殊情況要執(zhí)行較高級(jí)別組織塊時(shí),就會(huì)中斷低級(jí)別組織塊程序,轉(zhuǎn)去執(zhí)行高級(jí)別組織塊。組織塊OB的種類及優(yōu)先級(jí)別類型名稱優(yōu)先級(jí)別主程序OB11中斷OB10~OB17時(shí)間中斷2OB20~OB23時(shí)間延遲中斷3~6OB30~OB38循環(huán)中斷7~15OB40~OB47硬件中斷16~23OB55~OB57DPV1中斷2OB60多處理器中斷25OB61~OB64時(shí)鐘中斷25組織塊OB的種類及優(yōu)先級(jí)別類型名稱優(yōu)先級(jí)別冗余錯(cuò)誤OB70I/O(只適用于H系統(tǒng))OB72CPU(口適用于H系統(tǒng))2528異步故障OB80時(shí)間錯(cuò)誤OB81電源故障OB82I/O模塊診斷中斷OB83插入/移走模板中斷OB84CPU硬件故障OB85程序循環(huán)錯(cuò)誤OB86機(jī)架故障OB87通訊錯(cuò)誤26組織塊OB的種類及優(yōu)先級(jí)別類型名稱優(yōu)先級(jí)別背景循環(huán)OB9029啟動(dòng)OB100暖啟動(dòng)OB101熱啟動(dòng)OB102冷啟動(dòng)27同步錯(cuò)誤OB121編程錯(cuò)誤OB122訪問錯(cuò)誤引起錯(cuò)誤的OB的優(yōu)先級(jí)未列出編號(hào)的組織塊是系統(tǒng)保留!2、常用組織塊的調(diào)用方法主程序循環(huán)組織塊OB1暖啟動(dòng)組織塊OB100時(shí)間中斷組織塊OB10時(shí)間延遲中斷組織塊OB20其它有關(guān)組織塊的使用方法請(qǐng)查閱相關(guān)手冊(cè)主程序循環(huán)組織塊OB1由CPU的操作系統(tǒng)調(diào)用循環(huán)執(zhí)行。用于編寫循環(huán)執(zhí)行的控制程序。STEP7的程序自動(dòng)包含了OB1,用戶可以雙擊打開OB1進(jìn)行編程。OB1有一個(gè)變量聲明表,用戶可以查詢得到OB1運(yùn)行的相關(guān)信息。這個(gè)變量聲明表在打開OB1組織塊編程時(shí)能看到,其信息存儲(chǔ)在L區(qū)(臨時(shí)緩沖存儲(chǔ)區(qū))。用戶還可以添加定義OB1的變量。OB1的變量聲明表名稱類型地址說明OB1_EV_CLASSByteL0.00~3位=1(未來(lái)事件)4~7位=1(事件等級(jí))OB1_SCAN_1ByteL1.0=1(冷啟動(dòng)檢測(cè)),=3(OB1次數(shù)檢測(cè))OB1_PRIORITYByteL2.0OB1的執(zhí)行優(yōu)先等級(jí)=1OB1_OB_NUMBRByteL3.0OB1的編號(hào)=1OB1_RESERVED_1ByteL4.0保留OB1_RESERVED_2ByteL5.0保留OB1_PREV_CYCLEINTL6.0OB1的上一次循環(huán)時(shí)間(毫秒)OB1_MIN_CYCLEINTL8.0OB1的最小循環(huán)時(shí)間(毫秒)OB1_MAX_CYCLEINTL10.0OB1的最大循環(huán)時(shí)間(毫秒)OB1_DATE_TIMEDateL12.0OB1啟動(dòng)運(yùn)行的日期和時(shí)間暖啟動(dòng)組織塊OB100OB100~102是啟動(dòng)處理組織塊,CPU啟動(dòng)時(shí)由操作系統(tǒng)調(diào)用執(zhí)行一次,通常用于程序的初始化。這三個(gè)塊內(nèi)是空白的,要想執(zhí)行程序的初始化,需要用戶在這些塊中添加指令。所有類型的CPU都支持暖啟動(dòng)組織塊OB100,所以通常針對(duì)此塊進(jìn)行編程。在STEP的SIMATICManager窗口下,在塊中插入S7塊→組織塊→OB100,然后雙擊OB100打開進(jìn)行編程OB100也有一個(gè)變量聲明表,用戶可以查看相關(guān)信息。調(diào)用方法與OB1相同。時(shí)間中斷組織塊OB10OB10~17是時(shí)間中斷組織塊,可由用戶設(shè)定在特定日期、時(shí)間執(zhí)行一次中斷,或者從特定日期、時(shí)間開始周期性重復(fù)執(zhí)行一次中斷。如:整點(diǎn)報(bào)時(shí)。執(zhí)行中斷的程序由用戶編寫。所有的機(jī)型都支持調(diào)用組織塊OB10。個(gè)別機(jī)型還可以支持調(diào)用其它時(shí)間中斷組織塊。先在硬件組態(tài)窗口中,選擇CPU屬性的日時(shí)間中斷對(duì)話框激活OB10,設(shè)置中斷運(yùn)行開始日期、時(shí)間和執(zhí)行周期。然后在管理器窗口中添加組織塊OB100,雙擊OB100打開編寫程序。雙擊雙擊用戶還可以在OB1塊中調(diào)用SFC28來(lái)設(shè)置時(shí)間中斷參數(shù),調(diào)用SFC30激活時(shí)間中斷,調(diào)用SFC29取消時(shí)間中斷。調(diào)用SFC31查詢時(shí)間中斷情況。時(shí)間中斷的時(shí)間設(shè)置必須設(shè)置成一個(gè)有效的時(shí)間,否則系統(tǒng)會(huì)產(chǎn)生一個(gè)錯(cuò)誤信息,并執(zhí)行異步錯(cuò)誤處理中斷OB80。例如:設(shè)置每月31日?qǐng)?zhí)行中斷一次。時(shí)間延遲中斷組織塊OB20OB20~OB23是時(shí)間延遲中斷組織塊,所有機(jī)型都可以調(diào)用OB20。CPU處于運(yùn)行狀態(tài)才能執(zhí)行它??梢允褂肙B20來(lái)充當(dāng)高精度的通電延時(shí)定時(shí)器。OB20是通過調(diào)用SFC32來(lái)啟動(dòng),延時(shí)時(shí)間、OB編號(hào)在SFC32中設(shè)置。先在OB1中編寫調(diào)用SFC32的指令,然后再添加OB20塊,最后打開OB20塊編寫延時(shí)后的執(zhí)行指令??烧{(diào)用SFC33查詢延時(shí)中斷狀態(tài),調(diào)用SFC33取消延時(shí)中斷,調(diào)用SFC39禁止,調(diào)用SFC40激活。雙擊按F1鍵查看幫助信息二、功能FC和功能塊FB的用途及調(diào)用方法1、用途

用戶可以把程序中相同的控制過程、數(shù)據(jù)處理、信息傳遞的指令編寫在指定的FC或FB中,然后在OB1或其它程序塊調(diào)用它,調(diào)用時(shí)提供相關(guān)的參數(shù)和變量,來(lái)完成不同的任務(wù)。結(jié)構(gòu)化編程通常采用這種方式,這樣有利于提高程序的閱讀分析、維護(hù)和運(yùn)行效率。2、FC和FB的變量聲明表FC、FB與功能塊一樣,有輸入、輸出、返回值等變量。用于接收輸入的參數(shù)、使能輸入信號(hào),經(jīng)處理后輸出運(yùn)算結(jié)果、使能輸出信號(hào)、邏輯返回值。用戶打開FC或FB編程時(shí),要設(shè)定需要使用的變量的名稱、數(shù)據(jù)類型。為了便于程序的閱讀分析,盡可能地加上說明注釋。FC和FB的變量聲明表變量名稱說明IN(輸入變量)用于輸入要處理的參數(shù)OUT(輸出變量)用于輸出運(yùn)算處理結(jié)果IN_OUT(輸入后輸出變量)輸入要處理的參數(shù),經(jīng)運(yùn)算處理后輸出被改變的數(shù)據(jù)。TEMP(臨時(shí)變量)用于保存臨時(shí)數(shù)據(jù),調(diào)用完后被清除START(靜態(tài)變量)在FB的背景數(shù)據(jù)塊中使用,關(guān)閉FB后,其值保持不變。RETURN(返回值)FC中用于輸出執(zhí)行是否有效。3、FC的調(diào)用方法

建立一個(gè)FC用于LED的閃爍頻率可調(diào)的控制,閃爍頻率值以參數(shù)的形式輸入。添加一個(gè)功能FC1,取名為L(zhǎng)ED_Flash。打開FC1,設(shè)定輸入輸出變量(形參)的名稱、數(shù)據(jù)類型。編寫LED閃爍的控制指令。打開OB1,編寫賦不同實(shí)參的調(diào)用FC1指令。FC1的程序OB1的程序3、FB的調(diào)用方法建立一個(gè)FB用于兩個(gè)整數(shù)的大小比較。把比較結(jié)果保存到指定存儲(chǔ)區(qū)域。添加一個(gè)功能FB1,取名為CMP_Enable。打開FB1,設(shè)定輸入輸出變量(形參)的名稱、數(shù)據(jù)類型。編寫整數(shù)比較指令。打開OB1,編寫指定實(shí)參的調(diào)用FB1指令。調(diào)用FB1時(shí)為它指定一個(gè)背景數(shù)據(jù)塊DB30。所有參與運(yùn)算的數(shù)據(jù)都保存該數(shù)據(jù)塊中。FB1的程序OB1的程序雙擊三、系統(tǒng)功能SFC功能號(hào)說明0(SET_CLK)設(shè)置系統(tǒng)時(shí)鐘(日期和時(shí)間)1(READ_CLK)讀系統(tǒng)時(shí)鐘(日期和時(shí)間)2(SET_RTM)設(shè)置運(yùn)行時(shí)間表3(CTRL_RTM)啟動(dòng)/停止運(yùn)行時(shí)間表4(READ_RTM)讀運(yùn)行時(shí)間表5(GADR_LGC)查詢信道的邏輯地址6(RD_SINFO)讀OB啟動(dòng)信息7(DP_PRAL)對(duì)DP主站觸發(fā)硬件中斷9(EN_MSG)激活被禁止的相關(guān)塊、符號(hào)和組狀態(tài)信息10(DIS_MSG)禁止被禁止的相關(guān)塊、符號(hào)和組狀態(tài)信息功能號(hào)說明11(DPSYC_FR)使DP從站組同步12(D_ACT_DP)激活或禁止DP從站組13(DPNRM_DG)讀DP從站的診斷數(shù)據(jù)14(DPRD_DAT)讀標(biāo)準(zhǔn)DP從站的一致性數(shù)據(jù)15(DPWR_DAT)向標(biāo)準(zhǔn)DP從站寫一致數(shù)據(jù)17(ALARM_SQ)產(chǎn)生可認(rèn)定的相關(guān)塊的消息18(ALARM_S)產(chǎn)生永久并可認(rèn)定的相關(guān)塊消息19(ALARM_SC)查詢上次調(diào)用SFC17時(shí)進(jìn)入的狀態(tài)消息的認(rèn)定狀態(tài)20(BLKMOV)復(fù)制變理21(FILL)初始化存儲(chǔ)區(qū)22(CREAT_DB)創(chuàng)建數(shù)據(jù)塊功能號(hào)說明23(DEL_DB)刪除數(shù)據(jù)塊24(TEST_DB)測(cè)試數(shù)據(jù)塊25(COMPRESS)壓縮用戶程序26(UPDAT_PI)更新過程映像輸入表27(UPDAT_PO)更新過程映像輸出表28(SET_TINT)設(shè)置日期-時(shí)間中斷29(CAN_TINT)取消日期-時(shí)間中斷30(ACT_TINT)激活日期-時(shí)間中斷31(QRY_TINT)查詢?nèi)掌?時(shí)間中斷32(SRT_DINT)啟動(dòng)時(shí)間延時(shí)中斷33(CAN_DINT)取消時(shí)間延時(shí)中斷功能號(hào)說明34(QRY_DINT)查詢時(shí)間延時(shí)中斷35(MP_ALM)觸發(fā)多處理中斷36(MSK_FLT)屏蔽同步錯(cuò)誤37(DMSK_FLT)不屏蔽同步錯(cuò)誤38(READ_ERR)讀錯(cuò)誤寄存器39(DIS_IRT)禁止新的中斷和異步錯(cuò)誤40(EN_IRT)允許新的中斷和異步錯(cuò)誤41(DIS_AIRT)延遲更高優(yōu)先級(jí)的中斷和異步錯(cuò)誤42(EN_AIRT)允許更高優(yōu)先級(jí)的中斷和異步錯(cuò)誤43(RE_TRIGR)重新觸發(fā)周期時(shí)間監(jiān)測(cè)44(REPL_VAL)傳送替代值到累加器1功能號(hào)說明46(STP)將CPU切換到STOP47(WAIT)延遲執(zhí)行用戶程序48(SNC_RTCB)使總線上的所有從時(shí)鐘與主時(shí)鐘同步49(LGC_BADR)查詢邏輯地址的模板槽號(hào)50(RD_LGADR)查詢模板的所有邏輯地址51(RDSYSST)讀系統(tǒng)狀態(tài)表或部分系統(tǒng)狀態(tài)表52(WR_USMSG)將一個(gè)用戶定義的診斷事件寫到診斷緩沖區(qū)54(RD_PARM)讀已定義的參數(shù)55(WR_PARM)寫動(dòng)態(tài)參數(shù)56(WR_DPARM)寫默認(rèn)參數(shù)57(PARM_MOD)分配模板參數(shù)功能號(hào)說明58(WR_REC)寫數(shù)據(jù)記錄59(RD_REC)讀數(shù)據(jù)記錄60(GD_SND)發(fā)送GD包61(GD_RCV)提取收到的GD包62(CONTROL)查詢SFB背景通信的連接狀態(tài)63(AB_CALL)安裝代碼塊64(TIME_TCK)讀系統(tǒng)時(shí)間65(X_SEND)向本地S7站外的通信設(shè)備發(fā)送數(shù)據(jù)66(X_RCV)接收來(lái)自本地S7站外通信設(shè)備的數(shù)據(jù)67(X_GET)讀來(lái)自本地S7站外通信設(shè)備的數(shù)據(jù)68(X_PUT)向本地S7站外通信設(shè)備寫數(shù)據(jù)功能號(hào)說明69(X_ABORT)放棄同本地S7站外通信設(shè)備的連接72(I_GET)讀來(lái)自本地S7站內(nèi)通信設(shè)備的數(shù)據(jù)73(I_PUT)向本地S7站內(nèi)通信設(shè)備寫數(shù)據(jù)74(I_ABORT)放棄同本地S7站外通信設(shè)備的連接78(OB_RT)確定OB程序運(yùn)行時(shí)間79(SET)設(shè)置輸出范圍80(REST)復(fù)位輸出范圍81(UBLKMOV)移動(dòng)不可中斷塊83(READ_DBL)在裝載存儲(chǔ)器中創(chuàng)建數(shù)據(jù)塊84(WRIT_DBL)向裝載存儲(chǔ)器的數(shù)據(jù)塊中寫數(shù)據(jù)塊87(C_DIAG)診斷實(shí)際連接狀態(tài)功能號(hào)說明90(H_CTRL)在H系統(tǒng)中控制操作100(SET_CLKS)設(shè)置時(shí)間-日期及TOD狀態(tài)101(RTM)設(shè)置啟動(dòng)、停止及讀運(yùn)行時(shí)間表102(RD_DPARA)讀預(yù)定義的系統(tǒng)數(shù)據(jù)記錄103(DP_TOPOL)在DP主站系統(tǒng)中辨識(shí)總線的拓?fù)浣Y(jié)構(gòu)104(CIR)控制CIR105(READ_SI)讀系統(tǒng)動(dòng)態(tài)資源106(DEL_SI)刪除系統(tǒng)動(dòng)態(tài)資源107(ALARM_DQ)產(chǎn)生可認(rèn)定的相關(guān)塊的消息108(ALARM_D)產(chǎn)生永久并可認(rèn)定的相關(guān)塊的消息126(SYNC_PI)在同步周期中更新過程映像分區(qū)輸入表127(SYNC_POS)在同步周期中更新過程映像分區(qū)輸出表四、系統(tǒng)功能塊SFB功能塊號(hào)說明0(CTU)增計(jì)數(shù)器,計(jì)數(shù)上限值=327671(CTD)減計(jì)數(shù)器,計(jì)數(shù)下限值=-327682(CTUD)增/減計(jì)數(shù)器,計(jì)數(shù)范圍-32768~327673(TP)在信號(hào)的上升沿產(chǎn)生寬度為PT的脈沖4(TON)產(chǎn)生一個(gè)接通延遲5(TOP)產(chǎn)生一個(gè)斷開延遲8(USEND)非協(xié)調(diào)發(fā)送數(shù)據(jù)9(URCV)非協(xié)調(diào)接收數(shù)據(jù)12(BSEND)發(fā)送分組數(shù)據(jù)13(BRCV)接收分組數(shù)據(jù)14(GET)從遠(yuǎn)程計(jì)算機(jī)讀數(shù)據(jù)功能塊號(hào)說明15(PUT)向遠(yuǎn)程計(jì)算機(jī)寫數(shù)據(jù)16(PRINT)發(fā)送數(shù)據(jù)到打印機(jī)19(START)啟動(dòng)遠(yuǎn)程設(shè)備,從STOP模式切換到RUN模式20(STOP)停止遠(yuǎn)程設(shè)備,從RUN模式切換到STOP模式21(RESUME)使遠(yuǎn)程設(shè)備恢復(fù)啟動(dòng)22(STATUS)查詢遠(yuǎn)程設(shè)備的通信狀態(tài)23(USTATUS)接收遠(yuǎn)程設(shè)備的通信狀態(tài)29(HS_COUNT)高速計(jì)數(shù)器30(FREQ_MES)頻率表31(NOTIFY_8P)創(chuàng)建一個(gè)具有8條相關(guān)消息的消息塊32(DRUM)順序器33(ALARM)創(chuàng)建一個(gè)相關(guān)消息(通知顯示)的消息塊功能塊號(hào)說明34(ALARM_8)創(chuàng)建一個(gè)具有8條相關(guān)消息(無(wú)數(shù)值)的報(bào)警塊35(ALARM_8P)創(chuàng)建一個(gè)具有8條相關(guān)消息(有數(shù)值)的報(bào)警塊36(NOTIFY)創(chuàng)建一個(gè)相關(guān)消息(不通知顯示)的消息塊37(AR_SEND)發(fā)送存檔數(shù)據(jù)38(HSC_A_B)具有A/B相的高速計(jì)數(shù)器39(POS)位置控制41(CONT_C

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論