西門子PLC S7-300/400係統塊OB\FB\FC\DB\SFC\SFB等簡介說明
發布日期:
2023-06-26

西門子PLC S7-300/400的用戶程序結構與(yu) S7-200有明顯的不同,可以使用線性化結構以及功能調用式結構與(yu) 結構化編程。

采用調用式結構與(yu) 結構化編程時,程序以組織塊(OB)、程序塊(FC)、功能塊(FB)、係統程序塊(SFC)、係統功能塊(SFB)、數據塊(DB)等形式出現,其中,組織塊(OB)、程序塊(FC)、功能塊(FB)統稱為(wei) “邏輯塊(Logic Block)”;係統程序塊(SFC)、係統功能塊(SFB)統稱為(wei) “係統塊”。

注:快捷菜單中的其它兩(liang) 項:數據類型和變量表。數據類型(UDT)用於(yu) 指定程序中數據元素的大小與(yu) 格式;變量表(VAT)用來在程序調試和運行時修改和監視變量的內(nei) 容(在地址欄中輸入地址後,符號欄中會(hui) 自動顯示在符號表中定義(yi) 的符號)。

這幾種程序塊的功能簡要說明如下:

調用程序塊:OB,FB,FC(可以調用除OB塊外的其它程序塊);

被調用程序塊:FB,FC,SFB,SFC。

1、組織塊OB

OB由係統自動調用,並執行用戶在OB塊中編寫(xie) 的程序,所以OB的基本作用是調用用戶程序。在OB塊中編寫(xie) 程序的最大容量,S7-300是16KB,S7-400是64KB。除主程序循環OB1外,其它OB均是由事件觸發的中斷。

2、函數FC

函數FC有兩(liang) 個(ge) 作用:

(1)作為(wei) 子程序用;

(2)作為(wei) 函數用,函數中通常帶形參。

函數中程序的最大容量,S7-300是16KB,S7-400是64KB。

FC的形參通常也稱為(wei) 接口區,參數類型分為(wei) 輸入參數,輸出參數,輸入/輸出參數和臨(lin) 時數據區。

在編寫(xie) 函數FC的輸出參數時,應避免沒有直接輸出(否則,可能輸出一個(ge) 隨機值,影響程序的判斷)。可以在函數的開始,將字輸出參數清0,位輸出參數複位。

3、函數塊FB

FB與(yu) FC相比,FB每次調用都必須分配一個(ge) 背景數據塊,用來存儲(chu) 接口數據區(TEMP類型除外)和運算的中間數據。其它程序可以直接使用背景數據區中的數據。

FB中程序的最大容量,S7-300是16KB,S7-400是64KB。

FB的接口區比FC多了一個(ge) 靜態數據區(STAT),用來存儲(chu) 中間變量。

程序調用FB時,形參不像FC那樣必須賦值,可以通過背景數據塊直接賦值。

由於(yu) FB帶有背景數據塊,輸出參數不會(hui) 輸出隨機值,可以不在FB中編寫(xie) 初始化程序。

4、數據塊DB

DB用來存儲(chu) 用戶數據及程序的中間變量,為(wei) 全局變量。DB的最大容量,S7-300為(wei) 32KB,S7-400為(wei) 64KB。

DB可分為(wei) 共享數據塊(Share DB)、背景數據塊(Instance DB)和用戶自定義(yi) 數據(UDT)類型的數據塊。

共享數據塊可作為(wei) 所有程序使用的全局變量,在CPU允許的條件下,一個(ge) 程序可創建任意多個(ge) DB,每個(ge) DB的最大容量為(wei) 64KB。默認條件下,共享數據塊為(wei) 掉電保持,在其屬性菜單中選中“Non Retain”可以更改為(wei) 掉電數據丟(diu) 失。如CPU中無足夠的內(nei) 部存儲(chu) 空間保存數據,可將指定的數據保存到共享數據塊。存儲(chu) 在共享數據塊中的數據可被其它任意一個(ge) 塊調用(全局變量)。這一點和背景數據塊不同,背景數據塊隻能被指定的功能塊(FB)使用,保存在背景數據塊中的數據隻能在這個(ge) 功能塊中有效。

背景數據塊與(yu) FB和SFB關(guan) 聯,也是全局變量。背景數據塊和共享數據塊相比,隻保存與(yu) FB或SFB接口數據區(Temp)相關(guan) 的數據。背景數據塊中有一種比較特殊的數據塊,稱為(wei) 多重背景數據塊。有關(guan) 多重背景數據塊的用法和使用注意事項請參看《怎樣使用多重背景數據塊》。

基於(yu) UDT的數據塊為(wei) 全局變量,提供一個(ge) 固定格式的數據結構,便於(yu) 用戶使用。

5、係統函數(SFC)和係統函數塊(SFB)

SFC和SFB集成在CPU中,相當於(yu) 係統提供的可供用戶程序調用的FC或FB,實現與(yu) CPU係統相關(guan) 的一些功能,如讀寫(xie) CPU時鍾等功能。調用SFB需要背景數據塊。

聲明:部分內(nei) 容來源於(yu) 網絡,如侵權請後台留言聯係刪除。