S7200庫文件說明書.doc_第1頁
S7200庫文件說明書.doc_第2頁
S7200庫文件說明書.doc_第3頁
S7200庫文件說明書.doc_第4頁
S7200庫文件說明書.doc_第5頁
已閱讀5頁,還剩87頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

在STEP 7 Micro/WIN中,如何評價主程序或子程序中過多的的上升沿和下降沿?描述:使用以下庫可以實現(xiàn)過多的邊沿評價。通常CPU僅支持256個邊沿評價 - 見條目號:8804150。本程序例程也可以用于子程序中。通常CPU不支持此程序例程 - 見條目號:7115899。這個庫包含兩個例行程序:分別適用于上升沿和下降沿。圖1:庫文件夾上升沿圖2:上升沿子程序調用參數(shù)變量類型說明ENBOOL必須始終高(1)InputBOOL信號輸入,當發(fā)生(0 - 1)改變時,激 活輸出1個循環(huán)周期.MemoryBOOL臨時存儲區(qū)OutputBOOL信號輸出表1:上升沿的參數(shù)說明功能:如果信號輸入(input)的狀態(tài)發(fā)生變化0 - 1(上升沿),那么信號輸出(output)將被置位一個循環(huán)周期。存儲位保留該狀態(tài)。為了識別另一個邊沿,信號輸入(input)必須運行一個零循環(huán)。這樣存儲位將被復位。圖3:上升沿的時序圖下降沿圖4:下降沿子程序調用參數(shù)變量類型說明ENBOOL必須始終高(1)InputBOOL信號輸入,當發(fā)生(0 - 1)改變時,激活輸出1個循環(huán)周期MemoryBOOL臨時存儲區(qū)OutputBOOL信號輸出表2:下降沿的參數(shù)說明功能:如果信號輸入 (input) 的狀態(tài)發(fā)生1 - 0 (下降沿)變化,那么信號輸出 (output) 將被置位一個循環(huán)周期.存儲位保留該狀態(tài)。為了識別另一個邊沿,信號輸入 (input) 必須被復位為 High 1個循環(huán)周期。這樣存儲位將被復位。圖5:下降沿的時序圖上升沿與下降沿(塊: Edge_detect)圖6:子程序調用塊Edge_detect參數(shù)變量類型說明ENBOOL使能: 使能功能,必須一直為TRUE (1)INBOOL信號輸入,在上升沿(0-1)或下降沿(1-0),將被設置為“ OUT”一個循環(huán)周期。MemoryBOOL臨時存儲區(qū)OUTBOOL信號輸出表3:Edge_detect的參數(shù)功能:如果信號輸入“IN”出現(xiàn)上升沿(0-1)或下降沿 (1-0)變化,那么信號輸出“OUT2”將被置位一個循環(huán)周期。存儲位保存“IN”信號的當前狀態(tài)。圖7:Edge_detect 信號圖STEP 7 Micro/WIN庫的存檔文件:把“rising_falling_edge.exe” 文件復制到一個單獨的文件夾,然后雙擊啟動該文件。解包 STEP 7 Micro/WIN 庫。然后可以集成這個庫到 S7-200 項目中,可以在 STEP 7 Micro/WIN的7 以及更高版本中使用這個庫。下載包含兩個子程序。注意事項: 關于在 STEP 7 Micro/WIN 中插入庫的信息,可以在條目號:16689345處找到。rising_falling_edge.exe( 30 KB ) !下面的Clock_Integer庫可以自動將傳輸值從十進制轉換為 BCD 格式,反之也可以從 BCD 格式轉換成十進制。然后執(zhí)行相應的時間操作READ_RTC或SET_RTC。這樣當傳輸值用操作面板或程序的十進制格式保存時,便于時間函數(shù)的處理 (READ_RTC和SET_RTC)。注意事項:在條目號:16689345中可以找到關于將庫插入 STEP 7 Micro/WIN 中的信息。圖1: Clock_Integer庫庫的全局存儲區(qū)庫使用全局存儲區(qū)來保證傳輸?shù)挠脩魯?shù)據(jù)的一致性。從 庫中將其中一個函數(shù) (READ_RTC_I或SET_RTC_I)插入到STEP 7 Micro/Win 項目,然后選中 STEP 7 Micro/Win 菜單“文件”中的條目“Library Memory Allocation (分配庫內存)”。系統(tǒng)會提供一個地址區(qū),或者您也可以自己選擇一個地址區(qū)。該庫需要8個字節(jié)。圖2:庫存儲區(qū)從CPU中讀取時間(READ_RTC_I)圖3:函數(shù)“READ_RTC_I”函數(shù)“READ_RTC_I”的參數(shù)參數(shù)變量類型說明ENBOOL激活塊如有需要時才激活塊,這樣能減輕CPU負擔地址DWORD用于保存讀取的時間值的地址從該偏移量地址開始為其分配8個字節(jié)。表1:函數(shù)“READ_RTC_I”的參數(shù)功能:如果激活輸入信號“EN”,該塊讀取當前時間,將 所讀取的BCD值轉換成十進制值,并保存在從給定偏移量地址開始的地址中。在CPU中設置時間(SET_RTC_I)圖4:函數(shù)“SET_RTC_I”函數(shù)“SET_RTC_I”的參數(shù)參數(shù)變量類型說明ENBOOL激活塊只有在需要時才激活該塊,這樣能減輕CPU負擔。地址DWORD存儲用戶時間數(shù)據(jù)的地址,該塊讀取從該偏移量地址開始的8個字節(jié)。表2:參數(shù)“SET_RTC_I”功能:如果激活輸入信號(EN),該塊讀取所存儲的用戶數(shù)據(jù),將 它們轉換成BCD格式并以該格式來設置CPU時鐘.以十進制格式讀取CPU時鐘的實例:如果激活V50.0,就讀取時間。所讀取的數(shù)據(jù)以十進制格式存儲在VB10開始的地址中。圖5:“READ_RTC_I”實例在狀態(tài)表中檢查數(shù)值:該數(shù)值以十進制格式存放在時間函數(shù)所用的結構中。時間函數(shù)的存儲區(qū)結構(READ_RTC,SET_RTC):VB10 = 年份VB11 = 月份VB12 = 日期VB13 = 小時VB14 = 分鐘VB15 = 秒鐘VB16 = 保留VB17 = 星期圖6:時間值的狀態(tài)表注意事項:CPU 221和CPU 222不包含集成的時鐘,所以需要CC292模塊。將STEP 7 Micro/WIN庫作為檔案庫文件:將文件clock_integer.exe復制到一個獨立目錄中并雙擊啟動它。將STEP 7 Micro/WIN庫進行解包,可以把該庫加到S7-200項目中。該庫適用于STEP 7 Micro/WIN 7以及更高版本。Clock_integer.exe( 31 KB ) !如何使用 STEP 7 - Micro / WIN 中附加的邏輯運算符 (NEG, NAND, NOR, NXOR)?描述:下面我們將對這些未作為標準運算符包含在編程軟件 STEP 7 - Micro / WIN 中的運算符進行描述。在條目的末尾,有一個包含了這些運算符的文件,可以將其作為庫集成到 STEP 7 - Micro / WIN 軟件中。 此條目描述了運算符 NEG、NAND、NOR 和 NXOR。 NEGNEG 運算符提供了一個數(shù)字的二進制補碼,作為返回值。二進制補碼格式對應改變符號的數(shù)字,或者是數(shù)字乘以“-1”。圖 1:NEG 運算符 圖 2:NEG 運算符實例 NANDNAND 運算符是 AND 運算符的配對運算符。NAND (非-AND) 的輸出僅在所有輸入都具有狀態(tài) 1 (即閉合狀態(tài)) 時才會具有狀態(tài) 0。xy結果001101011110表 1:NAND 的布爾代數(shù) 圖 3:NAND 運算符 圖 4:NAND 運算符實例 NORNOR 運算符是 OR 運算符的配對運算符。NOR (非-OR) 的輸出僅在所有輸入都具有狀態(tài) 0 (即斷開狀態(tài)) 時才會具有狀態(tài) 1。只要其中一個輸入接通 (狀態(tài) 1),輸出就會斷開。xy結果001100010110表 2:NOR 的布爾代數(shù) 圖 5:NOR 運算符 圖 6:NOR 運算符實例 NXORNXOR 運算符是 XOR 運算符的配對運算符。當輸入具有不同狀態(tài)值時,NXOR 的輸出具有狀態(tài) 0。xy結果001100010111表 3:XNOR 的布爾代數(shù) 圖 7:NXOR 運算符 圖 8:NXOR 運算符實例 運算符參數(shù)變量類型可用的存儲器類型NEG_BNAND_BNOR_BNXOR_BINBYTEVB、EB、AB、MB、SB、SMB、LB、AC、常數(shù)、*VD、*AC、*LDOUTBYTEVB、EB、AB、MB、SB、SMB、LB、AC、*VD、*AC、*LDNEG_WNAND_WNOR_WNXOR_WINWORDVW、EW、AW、MW、SW、SMW、T、Z、AEW、LW、AC、常數(shù)、*VD、*AC、*LDOUTWORDVW、EW、AW、MW,SW、SMW、T、Z、LW、AC、*VD、*AC、*LDNEG_DWNAND_DWNOR_DWNXOR_DWINDWORDVD、ED、AD、MD、SD、SMD、LD、AC、HC、常數(shù)、*VD、*AC、*LDOUTDWORDVD、ED、AD、MD、SD、SMD、LD、AC、*VD、*AC、*LD表 4:操作符參數(shù) 使用下列庫,您可以使用列出的操作符來訪問類型為 BYTE、WORD 和 DWORD 的數(shù)據(jù)。 !在S7-200中如何限制階躍的坡度?顯示訂貨號描述:可以使用此FAQ的附件Ramp library,在S7-200中限制浮點變量值的變化。 根據(jù)輸入?yún)?shù)IN, RAMP 塊計算最大變化率限制在MAX_VARIATION個單位每秒的輸出參數(shù)OUT 的輸出值。圖01輸入?yún)?shù)IN管腳如果有正向或負向的階越,那么輸出參數(shù)OUT管腳會緊跟著一個正向或負向的斜坡輸出,此斜坡的變化率被限制在MAX_VARIATION 每秒。RAMP 塊的輸入輸出接口符號變量類型數(shù)據(jù)類型說明ENINBOOLRAMP 塊的使能端ININREAL輸入值MAX_VARIATIONIN_OUTREAL輸出值的每秒最大變化量(負值取反為正值)OUTIN_OUTREAL輸出值表 01將Ramp庫加入STEP 7 Micro/WIN后,可在程序中調用 RAMP 塊。圖02下載:下載壓縮包 Ramp.zip 包含以下文件:文件描述ramp.mwl 庫-包含 RAMP塊Ramp.mwp 項目- 本 FAQ的例子項目Ramp.zip( 5 KB )圖 9:庫文件夾 以歸檔文件形式提供的 STEP 7 Micro/WIN 庫:將“l(fā)ogical_operations.exe”文件復制到單獨的目錄內,然后雙擊運行該文件。STEP 7 Micro/WIN 庫將解包。然后便可以集成該庫;在版本 V7 及更高版本的 STEP 7 Micro/WIN 中,可以將該庫用于 S7-200 項目。 注意:關于在 STEP 7 Micro/WIN 中插入庫的信息,可以在條目號 16689345 中找到。 logical_operations.exe ( 64 KB ) !在STEP 7 - Micro / WIN 如何實現(xiàn)取模功能?顯示訂貨號描述:取模運算符在整數(shù)除法運算中給出了余數(shù)。實例:6 Mod 2 = 0 - 6 / 2 = 3;無余數(shù)11 Mod 4 = 3 - 11 / 4 = 2,余數(shù)為 3;通過取模功能,可以檢查一個數(shù)是否可以被另一個數(shù)整除 - 取模運算中結果是否為 0。取模運算符通常在高級編程語言中使用,例如 C、Basic、Java 等等。但是它主要用作除法器,僅用于在特定周期執(zhí)行特定函數(shù)或切換特定函數(shù) (在循環(huán)中)。實例:FOR x=1 TO 20IF x MOD 2 = 0 THEN CALL AnythingNEXT在此實例中,一個循環(huán)執(zhí)行二十次,此外每第二個周期額外調用一次子程序 (功能) “Anything”。使用取模庫的 STEP 7 - Micro / WIN 等價程序如實例 1 所示。庫中的每個取模塊除了提供除法的余數(shù)外,還提供了一個輸出位,它能立即表明是否存在除法余數(shù)。這樣就節(jié)省了隨后必須將除法余數(shù)與零相比較所需要的運算,并且節(jié)省了程序存儲器中的空間。您需要做的所有工作僅僅是評估輸出位 DWR (無余數(shù)的除法運算)。參數(shù)說明:圖 1:字節(jié)的取模塊參數(shù)變量類型說明ENBOOL執(zhí)行塊E、A、M、SM、T、C、V、S、LIN1BYTE輸入值VB、EB、AB、MB、SB、SMB、LB、AC、常數(shù)、*VD、*AC、*LDIN2BYTE除數(shù)VB、EB、AB、MB、SB、SMB、LB、AC、常數(shù)、*VD、*AC、*LDDWRBOOL輸出位1 (高) = 除法運算無余數(shù);0 (低) = 除法運算有余數(shù),A, M, V, L, SMOUTBYTE除法運算余數(shù)VB、EB、AB、MB、SB、SMB、LB、AC、*VD、*AC、*LD表 1:Modulo_B 的塊參數(shù)圖 2:字的取模塊參數(shù)變量類型說明ENBOOL執(zhí)行塊E、A、M、SM、T、C、V、S、LIN1WORD輸入值VW、EW、AW、MW、SW、SMW、T、C、AC、LW、AEW、常數(shù)、*VD、*LD、*ACIN2WORD除數(shù)VW、EW、AW、MW、SW、SMW、T、C、AC、LW、AEW、常數(shù)、*VD、*LD、*ACDWRBOOL輸出位1 (高) = 除法運算無余數(shù);0 (低) = 除法運算有余數(shù),A, M, V, L, SMOUTWORD除法運算余數(shù)VW、EW、AW、MW、SW、SMW、LW、AC、*VD、*LD、*AC表 2:Modulo_W 的塊參數(shù)圖 3:雙字的取模塊參數(shù)變量類型說明ENBOOL執(zhí)行塊E、A、M、SM、T、C、V、S、LIN1DWORD輸入值VD、ED、AD、MD、SMD、SD、LD、AC、HC、常數(shù)、*VD、*LD、*ACIN2DWORD除數(shù)VD、ED、AD、MD、SMD、SD、LD、AC、HC、常數(shù)、*VD、*LD、*ACDWRBOOL輸出位1 (高) = 除法運算無余數(shù);0 (低) = 除法運算有余數(shù),A、M、V、L、SMOUTDWORD除法運算余數(shù)VD、ED、AD、MD、SMD、SD、LD、AC、*VD、*LD、*AC表 3:Modulo_DW 的塊參數(shù)下面是兩個如何實現(xiàn)取模塊的實例。可以在這些塊的注釋中找到相關說明。實例 1 - 程序循環(huán)For.Next 循環(huán)運行二十次。每第二個周期臨時變量“Indirect_Address”的數(shù)值增加 4。如果沒有除法運算余數(shù),位 V10.0 始終為高 (1),(即,在第 2 個、第 4 個、第 6 個、第 8 個、第 10 個周期內,如此等等)。循環(huán)計數(shù)器 VW0 在 FOR 命令的每個周期末尾自動增加 1 (關于此命令的更多信息可以在 STEP 7 - Micro / WIN 幫助中找到)。圖 4:程序周期實例實例 2 - 時鐘發(fā)生器MOD_B (IN2) 的除數(shù)在此實例中已經保持為變量 (VB1)。子程序 SBR_0 每三個周期執(zhí)行一次。周期計數(shù)器 VB0 始終在程序段 3 中復位,否則可能會達到 (超過) 最大值范圍,此時將會重新從零開始。在零周期內可能會發(fā)生偏離,子程序不是嚴格在第三個周期內調用。圖 5:時鐘發(fā)生器實例通過下列庫,您還可以在 STEP 7 - Micro / WIN 中使用取模運算符。該庫為每種變量訪問寬度 (字節(jié)、字、雙字) 各提供了一個獨立的程序例程。圖 6:庫文件夾以歸檔文件形式提供的 STEP 7 Micro/WIN 庫:將“modulo.exe”文件復制到單獨的目錄內,然后雙擊啟動該文件。STEP 7 Micro/WIN 庫將解包。然后便可以集成該庫;在版本 V7 及更高版本的 STEP 7 Micro/WIN 中,可以將該庫用于 S7-200 項目。注意:關于在 STEP 7 Micro/WIN 中插入庫的信息,可以在條目號16689345中找到。modulo.exe( 64 KB )!!如何在 STEP 7 Micro/WIN 中實現(xiàn) LOGO! 脈沖繼電器功能 ?顯示訂貨號描述:本條目提供了一個包含有脈沖繼電器功能的 STEP 7 Micro/WIN 庫。脈沖繼電器(功能塊: Pulse_Relay)圖1:Pulse_Relay功能塊參數(shù)變量類型解釋ENBOOL使能:允許使用該功能塊,必須始終為TRUE (1)InputBOOL信號輸入,上升沿(0-1)觸發(fā)輸出置位或者復位SetBOOL置位輸出,無論當前是什么狀態(tài)ResetBOOL復位輸出,無論當前是什么狀態(tài)MemoryBOOL臨時存儲OutputBOOL信號輸出表1:Pulse_Relay 的參數(shù)功能:如果信號輸入“Input” 有 0-1 的變化邊沿(上升沿)發(fā)生,如果信號輸出“Output” 在低電平,那么將被置位,如果在高電平,那么將被復位。圖2:Pulse_Relay信號圖將 STEP 7 Micro/WIN 庫作為歸檔文件:將“l(fā)ogo_functions.exe” 文件拷貝到一個獨立子文件夾中,然后雙擊打開它,就可以解壓 STEP 7 Micro/WIN 庫。然后就可將用于 STEP 7 Micro/WIN的V7 以及更高版本的庫文件整合到 S7-200 項目上去。注意事項: 向 STEP 7 Micro/WIN 中增加庫文件的相關信息可以在條目 ID:16689345中獲得。logo_functions.exe( 29 KB ) !雖然浮點數(shù)在狀態(tài)上相等,但為什么在“比較實數(shù)是否相等”運算中卻檢測到存在差異?顯示訂貨號描述:對于“比較實數(shù)是否相等”的比較運算,由過程運算提供的實數(shù)類型的數(shù)值非常不精確。由于實數(shù)存在修正的誤差,故不推薦使用此數(shù)據(jù)格式進行“相等”比較。浮點數(shù) (或實數(shù)) 由一個 32 位的單精度數(shù)表示,而訪問時使用雙字格式。在 S7-200 中,實數(shù)精確到 6 個小數(shù)位。當使用包括較大數(shù)和很小數(shù)的一系列數(shù)值來計算實數(shù)時,可能會出現(xiàn)不精確的結果。當在狀態(tài)表中查看實數(shù)時,相同的實數(shù)可能有不同的二進制表示。因此我們推薦不要使用“LDR=”函數(shù),而是使用“LDR=”這兩個函數(shù)來進行比較運算。這為你提供一個數(shù)值比較的比較框架。以歸檔文件形式提供的 STEP 7 Micro/WIN 庫:將“real_compare”文件復制到單獨的目錄內,然后雙擊啟動該文件。將 STEP 7 Micro/WIN 庫解包。然后便可以集成該庫,在版本 V7 及更高的 STEP 7 Micro/WIN 中,可以將該庫用于 S7-200 項目。注意: 關于在 STEP 7 Micro/WIN 中插入庫的信息,可以在條目號16689345中找到。real_compare( 64 KB )!!怎樣在STEP 7 Micro/WIN 中相互轉換二進制碼和格雷碼?顯示訂貨號說明STEP 7 - Micro/WIN 的標準庫中不包含格雷碼轉換。使用下載的附件可以轉換成8位、16位和32位二進制數(shù)。格雷碼指令庫的描述graycode.mwl 指令庫包括用于字節(jié)、字和雙字格式的編碼和解碼的功能塊。圖 1從二進制碼轉換到格雷碼(BIN_GRAY)功能塊 BIN_GRAY_B、BIN_GRAY_W 和 BIN_GRAY_DW 把輸入的字節(jié)、字和雙字類型的二進制碼編碼成格雷碼。圖 2功能參數(shù)數(shù)據(jù)類型操作數(shù)BIN_GRAY_BINBYTEVB, IB, QB, MB, SB, SMB, LB, AC, Constant, *VD, *LD, *ACOUTBYTEVB, IB, QB, MB, SB, SMB, LB, AC, *VD, *LD, *ACBIN_GRAY_WINWORDVW, IW, QW, MW, SW, SMW, LW, T, Z, AEW, Constant, AC, *VD, *AC, *LDOUTWORDVW, IW, QW, MW, SW, SMW, LW, T, Z, AC, *VD, *AC, *LDBIN_GRAY_DWINDWORDVD, ID, QD, MD, SD, SMD, LD, AC, HC, Constant, *VD, *LD, *ACOUTDWORDVD, ID, QD, MD, SD, SMD, LD, AC, *VD, *LD, *AC表 1從格雷碼轉換到二進制碼(GRAY_BIN)功能塊 GRAY_BIN_B、GRAY_BIN_W 和 GRAY_BIN_DW 把輸入的格雷碼解碼成字節(jié)、字和雙字類型的二進制碼。圖 3功能參數(shù)數(shù)據(jù)類型操作數(shù)GRAY_BIN_BINBYTEVB, IB, QB, MB, SB, SMB, LB, AC, Constant, *VD, *LD, *ACOUTBYTEVB, IB, QB, MB, SB, SMB, LB, AC, *VD, *LD, *ACGRAY_BIN_WINWORDVW, IW, QW, MW, SW, SMW, LW, T, Z, AEW, Constant, AC, *VD, *AC, *LDOUTWORDVW, IW, QW, MW, SW, SMW, LW, T, Z, AC, *VD, *AC, *LDGRAY_BIN_DWINDWORDVD, ID, QD, MD, SD, SMD, LD, AC, HC, Constant, *VD, *LD, *ACOUTDWORDVD, ID, QD, MD, SD, SMD, LD, AC, *VD, *LD, *AC表 2定義范圍沒有使用范圍的限制,因為此轉換是針對二進制和所有最終被解析為二進制的數(shù)據(jù)(十進制、十六進制和有符號數(shù))。將格雷碼轉換為二進制碼的附加功能子程序 GRAY_BIN 和 XOR 用來將格雷碼解碼為二進制代碼。STEP 7 Micro/WIN 庫是 zip 文件復制 graycode.zip 文件到單獨的目錄并解壓縮這個文件。您可以添加這個 graycode.mwl 庫指令到 S7-200項目,這個庫指令可用于 V7 和更高版本的 STEP 7 Micro/WIN 中。注意 這些格雷碼編碼和解碼塊不能用于連接串行 SSI 編碼器,因為這些編碼器需要通信速率大于 187.5 K bit/s 并且需要兩對電纜( 用于時鐘和數(shù)據(jù) )因此不能連接到 S7-200 CPU 的通信接口。 關于更多格雷碼(變量表、譯碼規(guī)則)信息可查看進入 ID:25629271 添加庫到 STEP 7 Micro/WIN 中的信息可查看進入 ID:16689345graycode.zip( 3 KB )!如果不使用感光開關,如何使用 S7-200 控制百葉窗日出而開,日落而關?顯示訂貨號使用說明:光感開關通常用于確定對百葉窗控制的早晚的開關點。 如您希望使用 SIMATIC S7-200來控制百葉窗,可以采用一種天文算法來決定日出和日落的時間,這種運算法可以作為一個STEP 7 Micro/WIN 庫函數(shù)供您使用。只需指定相關位置的經度和緯度坐標作為參數(shù),并將 CPU 時鐘設置為 UTC 時間。 此外,也可對比運算法則中光感應時間調整百葉窗的開關時間。例如,將百葉窗設定在日出前 10 分鐘開,在日落后 5 分鐘關。 一旦參數(shù)設定后,控制器就開始運行且沒有任何臨時重新調整。同時它不受夏令時變化的影響。以下表格通過事例說明它是如何運作的。No.步驟1打開 shutter_control.mwp 程序。這里提供的庫文件 sunvector_2015_en.mwl 實現(xiàn)了這種天文算法,它已經集成在了該項目中,并占用了存儲區(qū) VB0 到 VB49。 根據(jù)需要在菜單File Library Memory.改變內存區(qū)。 只需 mwl 庫文件本身就可添加程序。2在程序編輯器中進入到主程序(MAIN)。網(wǎng)絡 1 顯示的是“shutter_control” 子程序調用。該程序執(zhí)行了天文算法。子程序“shutter_cuntrol”會在日出時在輸出位“open_shutter”, 日落時在輸出位“close_shutter”輸出一個只持續(xù)一個周期的脈沖。您可以通過修改該子程序的輸入?yún)?shù)來滿足特定的需要。圖1:子程序“shutter_control”Longitude:經度度數(shù)(如,11 04 01 = 11.0669444);格林威治東部 = 正,格林威治西部 = 負;Latitude:緯度度數(shù)(如,49 26 16 = 49.4377778);赤道以北 = 正,赤道以南 = 負;Up_offset:與算法計算出的日出時間做比較,用來調整百葉窗打開狀態(tài)的以分鐘為單位的時間偏差。如該值是正,百葉窗較早打開,反之則較后。Down_offset:與算法計算出的日出時間做比較,用來調整百葉窗打開狀態(tài)的以分鐘為單位的時間偏差。如該值是正,百葉窗較早關閉,反之則較后。open_man:手動打開百葉窗的位輸入。一個上升沿輸入可以在輸出位“open_shutter”生成一個周期脈沖信號。例如您可以為其組態(tài)一個按鈕,或利用該參數(shù)來使能打開百葉窗的另一個條件。close_man:手動關閉百葉窗的位輸入。一個上升沿輸入可以在輸出位“close_shutter”生成一個周期脈沖信號。例如您可以為其組態(tài)一個按鈕,或利用該參數(shù)來使能關閉百葉窗的另一個條件。open_shutter:日出時打開百葉窗的周期脈沖。close_shutter:日落時關閉百葉窗的周期脈沖。3調整“百葉窗_控制”子程序的輸出參數(shù)以滿足百葉窗的控制條件。網(wǎng)絡 2 和網(wǎng)絡 3 主程序中提供了2種方式:網(wǎng)絡2 (靜態(tài)輸出信號):位輸出 move_up:A0.0 設定于日出與日落之間。位輸出 move_down:A0.1 設定于日落與日出之間。網(wǎng)絡3 (輸出脈沖):位輸出 move_up:A0.0 在日出時設定1秒鐘。位輸出 move_down:A0.1 在日落時設定1秒鐘。保留其中可以滿足您控制要求的方法,刪除不想用的方法。按需求更改輸出位地址。4將控制器設定為 UTC 時間。UTC 時間(協(xié)調世界時)是與當?shù)貢r間相對的有效的全世界的時間,而當?shù)貢r間只在區(qū)域限定的時區(qū)內有效。如,UTC+1 為歐洲中部時間,UTC+2 為歐洲中部夏令時間 (CEST)。當前 UTC 時間可通過互聯(lián)網(wǎng)查找(如/)。 時間控制法有兩種。利用 CPU 實時時鐘:在“PLC實時時鐘.”下的 Micro/WIN 設定當前日期以及當前的 UTC 時間。夏令時選擇“不更改”。注意:如控制器由網(wǎng)絡控制,或存在一個比 CPU 實時時鐘更可靠的時間源,您可以在適當?shù)拈g隔通過執(zhí)行“設置實時時鐘”(SET_RTC)操作來同步時間。利用 GPS 接收器:一種很方便的時間控制的方式是將 GPS 接收器連接到 CPU。這就省去了通過其他方式對時間的同步或調整。此外,可獲知經度與緯度度數(shù)。 關于如何將 GPS 接收器連接到 S7-200 控制器,滿足的條件以及可用的軟件塊等信息可查詢條目 ID26311405。還請注意以下關于 GPS 塊與百葉窗控制器塊之間的接口: 在子程序 shutter_control 中兩次調用了塊 SunPos_Calculation,每次調用都要將參數(shù)“Time_Source”設置為 TRUE。這樣就使 CPU 實時時鐘從天文運算法中分離出來。 GPS 功能塊 GPS_NMEA_UTC_Time 的輸出是字節(jié)格式,需要將這些日期和時間的成分(年,月,日,小時,分鐘,秒)轉換為 BCD 格式(二進制編碼的十進制),也就是變量庫函數(shù) SunVector_2015(v1.2) 存儲區(qū)中的 year_BCD,month_BCD,day_BCD,hour_BCD,minute_BCD 和 second_BCD。 將“shutter_cuntrol”塊的輸入?yún)?shù)“經度”和“緯度”(REAL)連接到 GPS 塊 GPS_NMEA_POS 相應的輸出參數(shù)。 在此處對格式做必要的更改。注意方向 N(北)和 E(東)為正,S(南)與 W (西)為負。下載:以下 ZIP 文件包含了執(zhí)行天文算法的庫函數(shù) sunvector_2015_en.mwl 和例程項目shutter_control_en.mwp。shutter_control.zip( 44 KB )!如何使用 S7-200 計算大于 16 位的值?顯示訂貨號描述:S7-200 提供集成于 STEP 7-Micro/WIN 的 16 位計數(shù)功能塊,以及 32 位的高速位計數(shù)器。下面的所附的Counter_DINT library可以用于計算大于 16 位的循環(huán)計數(shù)。這個庫包含了與集成的 16 位計數(shù)功能塊相同的塊,雖然在雙字格式中有附加的溢出輸出。圖. 01Counter_DINT 運行庫在全局變量存儲區(qū)中占用一個字節(jié)。在 STEP 7-Micro/WIN via File Library Memory. 中輸入一個地址,在這個范圍可以用于庫的變量存儲。圖. 02CTU_DI當有一個加計數(shù)輸入 (CU) 的上升沿時,32 位的計數(shù)器 (CTU_DI) 從當前值開始加計數(shù)。如果當前值 (CV) 大于或者等于預設值 (PV),那么計數(shù)器位 (Q) 被激活。如果復位輸入被激活,那么計數(shù)器復位。如果達到最大值 (2,147,483,647) ,計數(shù)器停止計數(shù)。對于最大值一旦 (CU) 進一步得到計數(shù)脈沖,最大溢出位被激活。這個位也是通過復位輸入進行復位。圖. 03配置 CTU_DI 塊標志變量類型數(shù)據(jù)類型注釋ENINBOOL激活 CTU_DI 塊CUINBOOL加計數(shù)輸入 (上升沿)RESETINBOOL復位輸入PVINDINT預設值CVIN_OUTDINT當前計數(shù)值MAXIN_OUTBOOL溢出顯示QOUTBOOL計數(shù)器位 (CTD_DI 塊輸出)表 01CTD_DI當在 CD 輸入有上升沿時,32 位的計數(shù)器 (CTU_DI) 從當前計算值開始減計數(shù)。如果當前值 (CV) 等于零,計數(shù)器位 (Q) 被接通。如果裝載輸入被接通,計數(shù)器復位計數(shù)位 (Q),并且裝載預設值 (PV) 到當前值 (CV)。當達到零時,減計數(shù)器停止計數(shù)。一旦計數(shù)器達到零進一步脈沖計數(shù) (CD) ,最小溢出位被激活。這個位也是通過負載輸入進行復位。圖. 04配置 CTD_DI 塊標志變量類型數(shù)據(jù)類型注釋ENINBOOL激活 CTD_DI 塊CDINBOOL減計數(shù)輸入 (上升沿)LOADINBOOL負載輸入PVINDINT預設值CVIN_OUTDINT當前計數(shù)值MININ_OUTBOOL溢出顯示QOUTBOOL計數(shù)器位(CTD_DI塊輸出)表 02CTUD_DI當加計數(shù)輸入 (CU) 有上升沿時,32 位的運行加減計數(shù)器 (CTU_DI) 向上計數(shù);當在減計數(shù)輸入 (CD) 有上升沿時,向下計數(shù)。當前值保存在參數(shù) CV 中。每次運行時,預設值 PV 與當前值進行比較。如果達到最大值 (2,147,483,647),在加計數(shù)輸入的下一個上升沿導致計數(shù)器轉向并且又從最小值 (2,147,483,648) 開始計算。如果達到最小值 (-2,147,483,648) ,在減計數(shù)輸入的下一個上升沿計數(shù)器轉向并且繼續(xù)從最大值 (2,147,483,647) 開始計算。不論哪種情況,都設置溢出位 OV 。如果當前值 CV 大于或者等于預設值 PV,計數(shù)器位 Q 被激活。在其它任何情況下,計數(shù)器位被斷開。如果復位輸入被激活,計數(shù)器 CV 和 溢出位 OV 被復位。圖. 05配置 CTUD_DI 塊標志變量類型數(shù)據(jù)類型注釋ENINBOOL激活 CTUD_DI 塊CUINBOOL加計數(shù)輸入 (上升沿)CDINBOOL減計數(shù)輸入 (上升沿)RESETINBOOL復位輸入PVINDINT預設值CVIN_OUTDINT當前計數(shù)值OVIN_OUTBOOL溢出顯示QOUTBOOL計數(shù)器位 (CTUD_DI 塊輸出)表 03下載:Counter_DINT.zip 下載包括如下文件:文件描述counter_dint.mwl 庫- 包含 32 位的計數(shù)位 CTU_DI, CTD_DI和 CTUD_DICounter_DINT.mwp 項目- 本常問問題的項目案例Counter_DINT.zip( 9 KB )!如何使用 S7-200 本體脈沖輸出實現(xiàn)伺服驅動軸的定位功能?顯示訂貨號指導:指令庫“ MAP SERV Q0.0 ”和 “ MAP SERV Q0.1 ”(MAP SERV = Micro Automation Positioning SERVo) 能夠用 S7-200 CPU 的脈沖輸出點 A0.0 (Q0.0) 和 A0.1 (Q0.1) 支持伺服驅動的軸定位功能。如果在一個 S7-200 項目中同時使用兩個指令庫,就可以在一個控制器上控制兩個軸。下載:可下載的文件 “ SERV_MAP_e.pdf ”包括指令庫的說明,以及英文的例子程序 “ MAP SERV Q0.0.mwp ”;ZIP 文件 “ MAP_SERV.zip ”包括指令庫 “ map serv Q0.0.mwl ”和 “ map serv Q0.1.mwl ”,以及 “ MAP SERV Q0.0 ”的應用例程 “ MAP SERV Q0.0.mwp ”。版本更新當前庫版本1.8包括以下改變: 為“ Q0_x_MoveVelocity ”優(yōu)化了限位功能 激活參數(shù) “ Disable_Auto_Stop ” 在尋找參考點“ Q0_x_Home ”過程中優(yōu)化“ Q0_x_Stop ”停止性能。下表列出了帶有 24 V DC A0.0 和 A0.1 輸出的S7-200 CPUs 的最大脈沖輸出頻率:CPU脈沖頻率(最大值) kHz221202222022420224XP10022620表 01MAP SERV_e.pdf( 1376 KB )MAP SERV.zip( 52 KB )!怎樣使用 TD 200 或 TD 200C 來顯示棒圖?顯示訂貨號說明:文本顯示器 200 和 200C 支持棒圖字符集。圖 01使用 STEP 7 Micro/WIN 中的文本顯示向導和 TD200 Bar 庫指令,可以生成使棒圖能夠顯示到文本顯示器上的 ASCII 碼值, 此ASCII 碼值通過一個整型變量以字節(jié)為單位產生 ( 見圖 01 )。1. “TD200 Bar” 庫指令集圖 02此庫指令集包含以下功能塊: Bar_V2_1_ae Bar_V3_CV1 Counter在本文配置說明部分將對這些塊指令和文本顯示向導一同加以詳細解釋。配置說明被分為以下兩個部分: 配置 TD 200 V2.1 和更早的版本 配置 TD 200 V3.0 或 TD 200C 1.02. 配置 TD 200 使其顯示棒圖使用提供的 PPI 電纜將 TD 200 連接到您的 S7-200 CPU 的 Port 0,并將 Port 1 連接到您的電腦。運行 MicroWin。序號描述1在 “工具” 菜單下打開 “文本顯示向導”。2點擊 “下一步” 來跳過 “簡介” 頁。3選擇您的文本顯示器的型號和版本。Fig. 03表 012.1 配置 TD 200 V2.1和更早的版本按照以下步驟將配置 TD 200 V2.1 或更早版本顯示棒圖。序號描述1在 “本地化顯示” 對話框選擇您要使用的語言,并選擇 “棒圖” 作為支持的語言集。 點擊 “下一步”確認。圖 042根據(jù)您的要求設置 “標準菜單和密碼” 窗口,點擊 “下一步”。3在菜單項 “功能鍵和更新速率” 中將更新速率設定為 “盡可能快”,然后點擊 “下一步” 確認。4在 “報警選項” 菜單中選擇 “40個字符信息格式” 并點擊 “下一步”。5在菜單項 “分配存儲區(qū)” 中設置參數(shù)塊的起始地址,使能位和消息內容。重要提示:請注意并記住參數(shù)塊的起始地址!點擊 “下一步”。圖 056在 “報警” 菜單中 TD 200 底部定義 “嵌入數(shù)據(jù)”,選擇數(shù)據(jù)格式 “字”以顯示整型變量,選擇所需的顯示格式,點擊 “OK” 確認并點擊 “下一步 ”。圖 067在菜單項 “項目組件” 中,點擊 “完成” 以完成 “文本顯示向導”,并點擊 “ Yes ” 確定完成。8在 STEP 7 Micro/WIN 中打開向導生成的數(shù)據(jù)塊 “ TD_DATA_x ” 并找到嵌入數(shù)據(jù)的存儲地址 (這里為 VW62)。圖 079在您項目的 “主程序” 中調用庫指令 “ Bar_V2_1ae ” (用來在2.1及更早版本的 TD 200 上顯示棒圖并輸出 “ IN ”參數(shù))。將參數(shù)塊的起始字節(jié)地址指針值賦給輸入?yún)?shù) “ PAR_BLOCK ”(這里為 &VB0 )。將嵌入數(shù)據(jù)的起始字節(jié)地址指針值賦給輸入?yún)?shù) “ DATA_ADDR ”(這里為 &VB62 )。圖 08表 02庫指令集 “ Bar_V2_1_ae ”表 03 中列出了庫功能塊 “ Bar_V2_1ae ” 的參數(shù)說明:符號變量類型數(shù)據(jù)類型注釋取值范圍INININT計數(shù)值0 - HI_LIMHI_LIMININT最大值1 - 65.535PAR_BLOCKINDINT參數(shù)塊起始地址的指針&VBxDATA_ADDRINDINT嵌入數(shù)據(jù)起始地址的指針&VBx表 032.2 配置 TD 200 V3.0 或 TD 200C 1.0按照以下步驟將配置 TD

溫馨提示

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

評論

0/150

提交評論