岳陽SIEMENS西門子PLC代理商
西門子300/400PLC的程序與存儲器結(jié)構(gòu)
①S7-300/400的程序功能塊 S7-300/400的PLC用戶程序結(jié)構(gòu)與S7-200有明顯的不同,可以使用線性化結(jié)構(gòu)以及功能調(diào)用式結(jié)構(gòu)與結(jié)構(gòu)化編程。
采用調(diào)用式結(jié)構(gòu)與結(jié)構(gòu)化編程時,程序以組織塊(OB)、程序塊(FC)、功能塊(FB)、系統(tǒng)程序塊(SFC)、系統(tǒng)功能塊(SFB)、數(shù)據(jù)塊(DB)等形式出現(xiàn)。其中,組織塊(OB)、程序塊(FC)、功能塊(FB)統(tǒng)稱為“邏輯塊(Logic Block)”;系統(tǒng)程序塊(SFC)、系統(tǒng)功能塊(SFB)統(tǒng)稱為“系統(tǒng)塊”。
a.組織塊(OB)。組織塊(Organization Blocks,簡稱OB)提供了PLC內(nèi)部CPU操作系統(tǒng)與用戶程序間的接口,它是由CPU操作系統(tǒng)直接進行調(diào)用的邏輯塊,用來管理PLC 程序中各組成部分的調(diào)用和執(zhí)行中斷。OB決定了PLC用戶程序的結(jié)構(gòu)與塊的調(diào)用順序,起到了“管理”用戶程序的作用。
S7-300/400不同的CPU類型,可以選擇、支持不同的OB塊,但OB1是所有PLC用戶程序的循環(huán)控制塊,它是運行PLC用戶程序的前提條件,因此,任何PLC程序、任何CPU都不可以缺少OB1。
OB塊的調(diào)用條件被稱為"觸發(fā)事件",根據(jù)"觸發(fā)事件"的不同,OB塊可以分為若干級別,各個級別有不同的**級。高**級的 OB可以中斷低**級 OB的執(zhí)行。如果需要,S7系列PLC除OB1外,還可以使用多個OB塊。
b.程序塊(FC)●。程序塊(Function,簡稱FC)是由用戶編寫的、不需要專門數(shù)據(jù)塊的常用邏輯塊。
FC塊在程序中一般不可以重復(fù)調(diào)用,在大多數(shù)場合,F(xiàn)C塊應(yīng)直接使用PLC的"**地址"或"符號地址"進行編程,但根據(jù)需要,可以定義部分程序變量。
與S7-200一樣,F(xiàn)C塊的“臨時變量”同樣存儲在局部變量數(shù)據(jù)堆棧(L)中,這一區(qū)域為全部程序塊所公用,只可以用于FC塊內(nèi)部使用的中間運算結(jié)果寄存(這些中間運算結(jié)果不可以用于FC塊外部);程序塊執(zhí)行完成后,局部變量數(shù)據(jù)堆棧內(nèi)的數(shù)據(jù)將被其他塊所需要的內(nèi)容所替代。如果需要保存可以用于其他邏輯塊的狀態(tài),應(yīng)使用PLC的內(nèi)部標志寄存器 M或使用“數(shù)據(jù)塊DB”。
在程序塊FC中,有部分為PLC生產(chǎn)廠家所提供的、集成在S7CPU操作系統(tǒng)中的邏輯塊,稱為系統(tǒng)程序塊(System Function,簡稱SFC)。系統(tǒng)程序塊SFC屬于PLC內(nèi)部操作系統(tǒng)的一部分,用戶不需要編寫,也不可以對其進行編輯,但可以根據(jù)需要直接調(diào)用。
c.功能塊(FB)。功能塊(Function Blocks,簡稱FB塊)是由用戶編寫的、需要**數(shù)據(jù)塊(Instance Data Blocks,稱為"即時數(shù)據(jù)塊"或"背景數(shù)據(jù)塊",簡稱 DI)支持的常用邏輯塊。
FB塊與FC塊的作用基本相同,但FB中除可以使用"**地址"或"符號地址"進行編程外,在結(jié)構(gòu)化編程時必須使用"程序變量"進行編程,因此,F(xiàn)B必須配套獨立的數(shù)據(jù)存儲區(qū)域,即"即時數(shù)據(jù)塊DI"。DI一方面可以為調(diào)用FB提供執(zhí)行程序所需要的"程序變量"賦值與其他數(shù)據(jù);另一方面,功能塊FB也能通過DI給調(diào)用它的邏輯塊返回所需要的數(shù)據(jù)。
與功能調(diào)用塊FC一樣,功能塊FB中也有部分為PLC生產(chǎn)廠家所提供的、集成在S7 CPU操作系統(tǒng)中的功能塊,稱為系統(tǒng)功能塊(System Function Blocks,簡稱 SFB)。系統(tǒng)功能塊SFB同樣屬于PLC內(nèi)部操作系統(tǒng)的一部分,用戶不需要編寫,也不可以對其進行編輯,但可以根據(jù)需要直接調(diào)用。
d.數(shù)據(jù)塊(DB)。數(shù)據(jù)塊(Data Blocks,簡稱DB)是用來存放執(zhí)行用戶程序時所需的數(shù)據(jù)與存儲程序執(zhí)行結(jié)果的數(shù)據(jù)存儲區(qū),其作用與標志寄存器類似,但數(shù)量多。數(shù)據(jù)塊DB按不同的用途可以分為即時數(shù)據(jù)塊(Instance Data Blocks,又稱背景數(shù)據(jù)塊,簡稱 DI)和通用數(shù)據(jù)塊(Data Blocks,又稱共享數(shù)據(jù)塊,簡稱DB)兩類。
即時數(shù)據(jù)塊(DI)用于傳遞功能塊的參數(shù),只能被*的功能塊FB訪問。調(diào)用功能塊
●:在SIEMENS早期的SS系列PLC中,只有組織塊(OB)、功能塊(FB)、數(shù)據(jù)塊(DB)與程序塊(PB)四類邏乳塊。在S7系列PLC中,取消了程序塊(PB)的名字,而是用英文的“Function”代替了原程序塊(PB)?!癋unction”可以直譯為功能,因此,在許多書中稱為“功能”,在這里考慮到S5的繼承性,同時便于讀者與“功能塊”區(qū)別,仍然將“Function”稱為“程序塊”。
FB時,必須同時*用于該功能塊的即時數(shù)據(jù)塊DI,即時數(shù)據(jù)塊內(nèi)的數(shù)據(jù)可以自動生成、它們可以是FB變量聲明表中的數(shù)據(jù)(不含臨時變量)。
通用數(shù)據(jù)塊(DB)用于存儲PLC的全局數(shù)據(jù),所有的FB、FC或OB都可以對通用數(shù)據(jù)塊進行讀寫操作,因此,它又被稱為共享數(shù)據(jù)塊。通用數(shù)據(jù)塊內(nèi)的數(shù)據(jù)不會因用戶程序的結(jié)束而刪除。
有關(guān)功能塊、數(shù)據(jù)塊的調(diào)用、編程以及程序變量、局部變量等概念,將在下面的實例中予以詳細介紹。
②S7-300/400的程序結(jié)構(gòu)S7-300/400的PLC程序結(jié)構(gòu)隨著編程人員所采用的程序設(shè)計方法的不同而不同。一般而言,程序設(shè)計可以采用線性化編程、調(diào)用式編程、結(jié)構(gòu)化編程的方法,如圖5-53所示。
采用線性化編程時,所有程序指令都編寫在一個連續(xù)的程序塊——組織塊OB1中,*編制程序塊、功能塊、數(shù)據(jù)塊等。
采用調(diào)用式編程的程序由組織塊(OB)、程序塊(FC)、功能塊(FB)、系統(tǒng)程序塊(SFC)、系統(tǒng)功能塊(SFB)、數(shù)據(jù)塊(DB)等組成,由組織塊OB1對各邏輯塊與數(shù)據(jù)塊進行組織與管理。
采用結(jié)構(gòu)化編程的程序結(jié)構(gòu)形式與調(diào)用式編程相同,程序同樣由組織塊(OB)、程序塊(FC)、功能塊(FB)、系統(tǒng)程序塊(SFC)、系統(tǒng)功能塊(SFB)、數(shù)據(jù)塊(DB)等組成,并通過組織塊OB1對其進行組織與管理。功能塊(FB)可以用于結(jié)構(gòu)化編程,為了滿足參數(shù)化編程的需要,功能塊(FB)需要配套的即時數(shù)據(jù)塊(DI),組織塊(DB1在調(diào)用FB時,需要根據(jù)不同的控制要求,通過即時數(shù)據(jù)塊(DI)對參數(shù)進行賦值。
圖5-53為采用三種不同編程方式的程序結(jié)構(gòu)示意圖,在實際調(diào)用式編程、結(jié)構(gòu)化編程時,被組織塊OB1調(diào)用的邏輯塊還可以調(diào)用其他邏輯塊(程序嵌套)。
③S7-300/400的存儲器結(jié)構(gòu) S7-300/400 PLC的存儲器結(jié)構(gòu)可以分為基本存儲區(qū)域與程序處理區(qū)兩大部分。
a.基本存儲區(qū)域。S7-300/400PLC的基本存儲區(qū)域又可以分為裝載存儲區(qū)、系統(tǒng)存儲區(qū)、工作存儲區(qū)3部分,具體如下。
(a)裝載存儲區(qū)(Load Memory)。相當于S7-200的程序存儲區(qū),用于PLC用戶程序邏輯塊、數(shù)據(jù)塊的存儲。
(b)系統(tǒng)存儲區(qū)(System Memory)。相當于S7-200的數(shù)據(jù)存儲區(qū),用于存儲PLC運算、處理的中間。如輸入/輸出映像,標志、變量的狀態(tài)存儲,計數(shù)器、定時器的中間值,模擬量輸入/輸出狀態(tài)等,使用PLC內(nèi)部RAM。
(c)工作存儲區(qū)(Work Memory)。用于存儲當前處理的可執(zhí)行程序塊、程序塊所生成的局部變量L等。3個存儲器區(qū)域的作用以及相互間的關(guān)系如圖5-54所示。
b.程序處理區(qū)域。S7-300/400 PLC的程序處理區(qū)域又可以分為累加器、地址寄存器、數(shù)據(jù)塊地址寄存器、狀態(tài)寄存器4部分,具體如下。
(a)累加器。S7-300/400共有2個32位累加器ACCU1、ACCU2,用來進行讀入、傳送、運算、移位等操作。
(b)地址寄存器。S7-300/400共有2個32位地址寄存器 AR1、AR2,用于存放寄存器間接尋址時的地址指針。
(c)數(shù)據(jù)塊地址寄存器。S7-300/400共有2個32位數(shù)據(jù)塊地址寄存器DB、DI,用于存放程序中被打開的數(shù)據(jù)塊地址。程序執(zhí)行過程中允許同時被打開的數(shù)據(jù)塊大為2個,其中一個為共享數(shù)據(jù)塊(DB),在程序中可以任意使用;另一個為瞬時數(shù)據(jù)塊(DI),它是與功能塊FB配套使用的數(shù)據(jù)塊,在調(diào)用FB時同時打開。
(d)狀態(tài)寄存器。S7-300/400共有1個16位狀態(tài)寄存器STW,狀態(tài)寄存器用于存放程序的處理結(jié)果,如邏輯運算RLO、溢出標志OV、溢出記憶OS、條件碼CC0與C1、二進制值BR等,以顯示指令的執(zhí)行結(jié)果。
詞條
詞條說明
西門子全國代理商|觸摸屏代理商西門子PLC與觸摸屏通訊連接干擾問題怎么解決?西門子plc與觸摸屏通訊通信干擾的處理方法問題反映:一套設(shè)備,配備S7-400系統(tǒng),一臺TP 270觸摸屏放置在操作臺上,通過DP/MPI方式傳送信息,奇怪的問題是:經(jīng)常會出現(xiàn)PLC與TP屏無法建立連接,把想到的認為有干擾的地方全部檢查,并且想辦法進行屏蔽,有時可以解決問題,通訊正常,但不知什么原因又會引發(fā)同樣的故障,而且
西門子PLC代理商6ES7132-6BF01-0BA0SIMATIC ET 200SP, 數(shù)字輸出模塊, 數(shù)字輸出 8個 24V DC/0.5A 標準型, 適合用于 A0 類型的基座單元, 顏色代碼 CC02, 模塊診斷PLC控制系統(tǒng)軟件系統(tǒng)設(shè)計的步驟? ?在了解了程序結(jié)構(gòu)和編程方法的基礎(chǔ)上,就要實際地編寫?PLC?程序了。編寫?PLC?
6ES7134-6GD01-0BA1西門子代理商西門子PLC代理商西門子授權(quán)代理商西門子模塊代理商西門子總代理商擴展模塊的選用?對于小的系統(tǒng),如80點以內(nèi)的系統(tǒng),一般不需要擴展;當系統(tǒng)較大時,就要擴展。不同公司的產(chǎn)品,對系統(tǒng)總點數(shù)及擴展模塊數(shù)量都有限制,當擴展仍不能滿足需要時,可采用網(wǎng)絡(luò)結(jié)構(gòu)。同時,有些廠家產(chǎn)品的個別指令不支持擴展模塊,因此,在進行軟件編程時要注意。當采用溫度等模擬模塊時
西門子PLC模塊代理商|天津基本單元加擴展型PLC(見圖1-40)是一種由整體結(jié)構(gòu)、固定I/O點數(shù)的基本單元、可選擇擴展I/O模塊構(gòu)成的小型PLC。PLC的處理器、存儲器、電源、固定數(shù)量的輸入/輸出接口、通信接口等安裝于基本單元上。通過基本單元的擴展接口,可以連接擴展I/O模塊與功能模塊,進行I/O點數(shù)與控制功能的擴展。與整體式固定LO型PLC相比,基本單元加擴展型PLC同樣具有結(jié)構(gòu)緊湊,體積小。
公司名: 潯之漫智控技術(shù)(上海)有限公司
聯(lián)系人: 劉經(jīng)理
電 話: 19873876272
手 機: 19873876272
微 信: 19873876272
地 址: 上海松江石湖蕩鎮(zhèn)塔匯路755弄29號1幢一層A區(qū)213室
郵 編:
網(wǎng) 址: tianxia56.b2b168.com
公司名: 潯之漫智控技術(shù)(上海)有限公司
聯(lián)系人: 劉經(jīng)理
手 機: 19873876272
電 話: 19873876272
地 址: 上海松江石湖蕩鎮(zhèn)塔匯路755弄29號1幢一層A區(qū)213室
郵 編:
網(wǎng) 址: tianxia56.b2b168.com