產(chǎn)地類別 | 進(jìn)口 |
---|
SIEMENS 可編程控制器
1,、 SIMATIC S7 系列PLC:S7-200,、S7-1200,、S7-300、S7-400,、ET-200
2,、 邏輯控制模塊 LOGO!230RC,、230RCO,、230RCL、24RC,、24RCL等
3,、 SITOP直流電源 24V DC 1.3A、2.5A,、3A,、5A,、10A、20A,、40A可并聯(lián).
![]() |
參考價(jià) | 面議 |
更新時間:2023-07-28 17:27:04瀏覽次數(shù):181
聯(lián)系我們時請說明是化工儀器網(wǎng)上看到的信息,謝謝!
廣元西門子PLC代理商
(1) 塊號,、塊類型、優(yōu)先級,、被中斷塊的返回地址,;
(2) 塊寄存器DB、DI被中斷前的內(nèi)容,;
(3) 臨時變量的指針(被中斷塊的L堆棧地址),。
STEP 7中可使用的B堆棧大小是有限制的,對于S7-300 CPU,,則可在B堆棧中存儲8個塊的信息,。因此,塊調(diào)用嵌套深度也是有限制的,,多可同時激活8個塊,。
L堆棧是CPU內(nèi)存中的一部分,它在塊調(diào)用時被重新分配,。L堆棧用來存儲邏輯塊中定義的臨時變量,,也分配給臨時本地?cái)?shù)據(jù)使用。梯形圖的方塊指令與標(biāo)準(zhǔn)功能塊也可能使用L堆棧存儲運(yùn)算的中間結(jié)果,。
2) 調(diào)用功能塊FB
當(dāng)調(diào)用功能塊FB時,,會有以下事件發(fā)生:
(1) 調(diào)用塊的地址和返回位置存儲在塊堆棧中,調(diào)用塊的臨時變量壓入L堆棧,;
(2) 數(shù)據(jù)塊DB寄存器內(nèi)容與DI寄存器內(nèi)容交換,;
(3) 新的數(shù)據(jù)塊地址裝入DI寄存器;
(4) 被調(diào)用塊的實(shí)參裝入DB和L堆棧上部,;
(5) 當(dāng)功能塊FB結(jié)束時,,先前塊的現(xiàn)場信息從塊堆棧中彈出,臨時變量彈出L堆棧,;
(6) DB和DI寄存器內(nèi)容交換,。
當(dāng)調(diào)用功能塊FB時,STEP 7并不一定要求給FB形參賦予實(shí)參,,除非參數(shù)是復(fù)式數(shù)據(jù)類型的IO形參或參數(shù)類型形參,。如果沒有給FB形參賦予實(shí)參,則功能塊FB就調(diào)用背景數(shù)據(jù)塊內(nèi)的數(shù)值,。該數(shù)值是在功能塊的變量聲明表內(nèi)或背景數(shù)據(jù)塊內(nèi)設(shè)置的形參初始數(shù)值,。
3) 調(diào)用功能塊FC
當(dāng)調(diào)用功能塊FC時會有以下事件發(fā)生:
(1) 功能塊FC實(shí)參的指針存到調(diào)用塊的L堆棧;
(2) 調(diào)用塊的地址和返回位置存儲在塊堆棧,調(diào)用塊的局部數(shù)據(jù)壓入L堆棧,;
(3) 功能塊存儲臨時變量的L堆棧區(qū)被推入L堆棧上部,;
(4) 當(dāng)被調(diào)用功能塊FC結(jié)束時,先前塊的信息存儲在塊堆棧中,,臨時變量彈出L堆棧,。
因?yàn)楣δ軌KFC不用背景數(shù)據(jù)塊,不能分配初始數(shù)值給功能塊FC的局部數(shù)據(jù),,所以必須給功能塊FC提供實(shí)參,。
STEP 7為功能塊FC提供了一個特殊的返回值輸出參數(shù)(關(guān)鍵字:RET_VAL)。當(dāng)在文本文件中創(chuàng)建功能塊FC時,,你可以在定義功能塊FC命令后輸入數(shù)據(jù)類型(如BOOL或INT),。對文本文件進(jìn)行編譯時,STEP 7會自動生成RET_VAL輸出參數(shù),。當(dāng)用STEP 7的程序編輯器(Program Editor)以增量模式創(chuàng)建功能塊FC時,,可在FC的變量聲明表中聲明一個輸出參數(shù)RET_VAL,并指明其數(shù)據(jù)類型,。
功能塊編程與調(diào)用舉例
對功能塊編程分兩步進(jìn)行:*步是定義局部變量(填寫局部變量表),;第二步是編寫要執(zhí)行的程序,可以用梯形圖或語句表兩種形式編程,,并在編程過程中使用定義了的局部變量(數(shù)據(jù)),。
定義局部變量的工作內(nèi)容包括:
(1) 分別定義形參、靜態(tài)變量和臨時變量(FC塊中不包括靜態(tài)變量),;
(2) 確定各變量的聲明類型(Decl.),、變量名(Name)和數(shù)據(jù)類型(Data Type),還要為變量設(shè)置初始值(Initial Value)(盡管對有些變量初始值不一定有意義),。如果需要還可為變量注釋(Comment),。在增量編程模式下,STEP 7將自動產(chǎn)生局部變量地址(Address),。
寫功能塊程序時,,可以用以下兩種方式使用局部變量:
(1) 使用變量名,此時變量名前加前綴“#",,以區(qū)別于在符號表中定義的符號地址,。增量方式下,,前綴會自動產(chǎn)生,。
(2) 直接使用局部變量的地址,這種方式只對背景數(shù)據(jù)塊和L堆棧有效,。
在調(diào)用FB塊時,,要說明其背景數(shù)據(jù)塊。背景數(shù)據(jù)塊應(yīng)在調(diào)用前生成,其順序格式與變量聲明表必須保持*,。在增量方式下,,調(diào)用FB塊時,STEP 7會自動提醒并生成背景數(shù)據(jù)塊,。此時也為背景數(shù)據(jù)塊設(shè)置了初始值,,該初始值與變量聲明表中的相同。當(dāng)然也可以為背景數(shù)據(jù)塊設(shè)置當(dāng)前值(Current Value),,即存儲在CPU中的數(shù)值,。
1.二分頻器
假設(shè)功能塊FC10是二分頻器產(chǎn)生程序,功能是對不同的輸入位進(jìn)行二分頻處理,。以下給出了FC10的變量聲明表和語句表程序,。在程序中使用了跳變沿檢測指令。
1) FC10的變量聲明表(見表5.3)
Address Decl. Symbol Data Type Initial Value Comment
0.0 In INP BOOL FALSE 脈沖輸入信號
1.0 Out OUTP BOOL FALSE 脈沖輸出信號
2.0 In_Out ETF BOOL FALSE 跳變沿標(biāo)志
2) 語句表程序
Network 1
A #INP 對脈沖輸入信號產(chǎn)生RLO
FP #ETF 對前面的RLO進(jìn)行跳變沿檢測,,若有正跳沿則RLO=1,,否則RLO=0
NOT 取反RLO
BEC 若RLO=1(沒有正跳沿),結(jié)束塊,;若RLO=0(有正跳沿),,繼續(xù)執(zhí)行下一條指令
AN #OUTP
= #OUTP 輸出信號反轉(zhuǎn)
BEU 無條件結(jié)束塊
在功能塊FCl0中定義了三個形參,程序中以引用變量名方式使用了形參變量,。也可以為FC10在符號表中定義一個符號名,,如“BINARY",并選用以下兩種方式之一調(diào)用功能塊FC10,。調(diào)用時為形參分別賦予實(shí)參I0.0,、Q4.0和M10.0,以對輸入位I0.0進(jìn)行二分頻以產(chǎn)生輸出脈沖Q4.0,。
調(diào)用方式1 調(diào)用方式2
CALL FC10 CALL BINARY
INP:= I0.0 INP:= I0.0
OUTP:= Q4.0 OUTP:= Q4.0
ETF:= M10.0 ETF:= M10.0
2.讀模擬輸入量程序
一些S7-300的應(yīng)用系統(tǒng)中,,使用8通道模擬量模塊采集信號,當(dāng)模塊數(shù)量較多時,,讀模擬輸入量就很繁瑣,。下面給出一個通用程序FC100,利用它可以方便地把模擬量讀回并順序存入數(shù)據(jù)塊,,因?yàn)槟H肽K的起始地址,、通道數(shù)、存儲數(shù)據(jù)塊號及數(shù)據(jù)在數(shù)據(jù)塊中的存儲起始位置均是可變的,,所以可在調(diào)用FC100時靈活確定,。
Address Decl. Symbol Data Type Initial Value Comment
0.0 In PIW_Addr INT
模入模塊通道起始地址
2.0 In CH_LEN INT
要讀入的通道數(shù)
4.0 In DB_No INT
存儲數(shù)據(jù)塊號
6.0 In DBW_Addr INT
存儲在數(shù)據(jù)塊中的字地址
Network 1
L #DB_No
T LW0
OPN DB[LW 0] 打開存儲數(shù)據(jù)塊
L #PIW_Addr
SLD 3 形成模入模塊地址指針
T LD4 在臨時本地?cái)?shù)據(jù)雙字LD 4中存儲模入模塊地址指針
L #DBW_Addr
SLD 3 形成數(shù)據(jù)塊存儲地址指針
T LD8 在臨時本地?cái)?shù)據(jù)雙字LD 8中存入數(shù)據(jù)塊存儲地址指針
L #CH_LEN 以要讀入的通道數(shù)為循環(huán)次數(shù),裝入累加器1
2.讀模擬輸入量程序
一些S7-300的應(yīng)用系統(tǒng)中,,使用8通道模擬量模塊采集信號,,當(dāng)模塊數(shù)量較多時,,讀模擬輸入量就很繁瑣。下面給出一個通用程序FC100,,利用它可以方便地把模擬量讀回并順序存入數(shù)據(jù)塊,,因?yàn)槟H肽K的起始地址、通道數(shù),、存儲數(shù)據(jù)塊號及數(shù)據(jù)在數(shù)據(jù)塊中的存儲起始位置均是可變的,,所以可在調(diào)用FC100時靈活確定。
廣元西門子PLC代理商