西門子代理商-鎮(zhèn)江
西門子代理商-鎮(zhèn)江
西門子代理商-鎮(zhèn)江
線性化結(jié)構(gòu)和分塊式結(jié)構(gòu)的PLC程序
①PLC程序的結(jié)構(gòu)體系
無論P(yáng)LC控制系統(tǒng)有多么復(fù)雜,歸根到底,PLC用戶程序都是由大量基本編程指令所組成的集合。在已經(jīng)掌握SIEMENS S7 PLC程序基本指令使用與編程方法的基礎(chǔ)上,設(shè)計(jì)者就可以根據(jù)控制對(duì)象各部分的不同要求,通過對(duì)要求的分解,運(yùn)用基本指令編制出相應(yīng)的程序網(wǎng)絡(luò)(Network)或由幾個(gè)網(wǎng)絡(luò)組成的簡單"功能程序段"。在此基礎(chǔ)上,只要再將這些程序網(wǎng)絡(luò)或功能程序段,按照控制系統(tǒng)的動(dòng)作要求,以S7程序規(guī)定的格式進(jìn)行排列與組合,就可以組成完整的PLC程序。
所謂PLC的程序結(jié)構(gòu),就是組成PLC程序的各種網(wǎng)絡(luò)或“功能程序段”在PLC內(nèi)部的組織、管理形式。
在PLC上,從CPU操作系統(tǒng)對(duì)程序執(zhí)行管理的角度看,PLC程序可以分為"線性化結(jié)構(gòu)"與"分塊式結(jié)構(gòu)"兩種不同的結(jié)構(gòu)體系,每一體系又可以分為若干個(gè)不同的結(jié)構(gòu)形式。
a.線性化結(jié)構(gòu)體系。采用線性化結(jié)構(gòu)體系的PLC用戶程序不分塊,全部指令都集中在同一個(gè)程序塊中。執(zhí)行PLC程序時(shí),CPU的每次循環(huán)掃描都是按照從上至下的次序,執(zhí)行PLC用戶程序的所有指令。
線性化結(jié)構(gòu)體系是一種控制對(duì)象相對(duì)較簡單的小型PLC系統(tǒng)常用的結(jié)構(gòu)體系。b.分塊式結(jié)構(gòu)體系。分塊式結(jié)構(gòu)體系的PLC用戶程序由多個(gè)不同的"程序塊"所組成,執(zhí)行PLC程序時(shí),需要根據(jù)外部輸入條件與程序中規(guī)定的控制要求,由負(fù)責(zé)管理的主程序通過對(duì)不同程序塊的調(diào)用與選擇,決定每次循環(huán)掃描實(shí)際需要執(zhí)行的程序塊。
對(duì)于控制復(fù)雜、程序容量大的大中型PLC控制系統(tǒng),出于方便設(shè)計(jì)、檢查、調(diào)試等方面的考慮,通常采用分塊式結(jié)構(gòu)。
PLC用戶程序的兩種結(jié)構(gòu)體系各有其特點(diǎn),實(shí)際使用時(shí)采用何種程序結(jié)構(gòu)體系,一方面取決于PLC所具備的功能,另一方面取決于程序設(shè)計(jì)者的選擇。
②線性化結(jié)構(gòu)
按照線性化結(jié)構(gòu)體系設(shè)計(jì)時(shí),程序常見的形式有"普通線性化結(jié)構(gòu)"與“分時(shí)管理線性化結(jié)構(gòu)”兩種。
a.普通線性化結(jié)構(gòu)。普通的線性結(jié)構(gòu)程序?yàn)楹唵?,設(shè)計(jì)者只需要將由基本指令組成的全部網(wǎng)絡(luò)與功能程序段,進(jìn)行逐網(wǎng)絡(luò)、逐段排列即可。
只要程序中沒有特定的次序要求(如為了產(chǎn)生邊沿脈沖的需要等),組成程序的各網(wǎng)絡(luò)與功能程序段就可以在PLC程序中任意排列,其位置與程序的執(zhí)行結(jié)果無關(guān)。
CPU執(zhí)行普通的線性結(jié)構(gòu)程序時(shí),總是對(duì)全部程序指令按照輸入采樣、執(zhí)行程序、輸出刷新三個(gè)階段不斷循環(huán),全部輸入、輸出信號(hào)的采樣與刷新時(shí)間統(tǒng)一,每次處理的時(shí)間(循環(huán)掃描時(shí)間)固定。
在S7PLC中,如果將全部PLC用戶程序都編制在組織塊OB1中,即屬于此結(jié)構(gòu)。
b.分時(shí)管理線性化結(jié)構(gòu)。在部分PLC中,為了滿足控制系統(tǒng)中需要高速處理的信號(hào)特殊控制要求,線性結(jié)構(gòu)的程序也可以采用"分時(shí)管理線性化結(jié)構(gòu)"的結(jié)構(gòu)形式(見圖5-50)。
圖5-50 分時(shí)管理線性化的程序結(jié)構(gòu)
采用“分時(shí)管理線性化結(jié)構(gòu)”時(shí),設(shè)計(jì)者可以根據(jù)控制系統(tǒng)的需要,將線性化結(jié)構(gòu)的PLC用戶程序劃分為“高速掃描循環(huán)”與“普通掃描循環(huán)”兩部分。
程序中的高速掃描部分可以由設(shè)計(jì)者定義掃描時(shí)間間隔,在執(zhí)行過程中這一時(shí)間間隔保持固定不變。即:對(duì)于高速掃描程序段,設(shè)計(jì)者可以人為地規(guī)定程序的執(zhí)行時(shí)間,CPU必須在規(guī)定的時(shí)間內(nèi)完成高速掃描程序段的輸入采樣、執(zhí)行程序、輸出刷新循環(huán)過程。因此,PLC對(duì)“高速掃描循環(huán)”程序中輸入/輸出信號(hào)的處理速度,可以遠(yuǎn)遠(yuǎn)**正常PLC循環(huán)程序中對(duì)輸入/輸出信號(hào)的處理速度。
程序中的其他部分為普通掃描部分,執(zhí)行正常速度的掃描。在程序的執(zhí)行過程中,如果普通掃描部分的程序執(zhí)行時(shí)間已經(jīng)到達(dá)高速掃描時(shí)時(shí)間間隔,CN立即中斷普通掃描,保存執(zhí)行狀態(tài),并轉(zhuǎn)人對(duì)高速程序段的掃描;等到高速段程序執(zhí)行結(jié)束后,再繼續(xù)恢復(fù)對(duì)普通程序的掃描(見圖5-50)。這樣的過程在整個(gè)PLC程序執(zhí)行個(gè)需要進(jìn)行多次。由于高速掃描的多次中斷,普通PLC程序段的掃描時(shí)間將比正常執(zhí)行的情況長。
采用這種方式的特點(diǎn)是:在線結(jié)構(gòu)體系的程序可以處理PLC的高速輸入/輸出信號(hào),以滿足特殊的控制要求。當(dāng)然,根據(jù)實(shí)際系統(tǒng)的需要,程序中也可以沒有高速掃描的程序段,但是,不可以將全部程序都作為高速程序。
③分塊式結(jié)構(gòu)
分塊式結(jié)構(gòu)體系的PLC程序由多個(gè)程序塊組成,由統(tǒng)一的程序"組織塊"對(duì)各程序塊進(jìn)行組織與調(diào)度,"組織塊"根據(jù)規(guī)定的條件與順序依次調(diào)用各程序塊。
采用了分塊式結(jié)構(gòu)體系的PLC程序,在實(shí)際處理過程中可以根據(jù)不同的外部輸入條件與控制要求,每次循環(huán)掃描可以跳過某些程序塊,僅對(duì)需要處理的程序塊進(jìn)行掃描,從而加快PLC程序的執(zhí)行速度,縮短掃描時(shí)間。
根據(jù)PLC的不同,分塊式結(jié)構(gòu)體系的PLC程序可以采用主、子程序結(jié)構(gòu),功能調(diào)用式結(jié)構(gòu)與結(jié)構(gòu)化編程等形式實(shí)現(xiàn)。
a.主、子程序結(jié)構(gòu)。采用主、子程序結(jié)構(gòu)的PLC用戶程序,一般可以由主程序、子程序、中斷程序等不同的程序塊所組成,并且按照規(guī)定的順序排列(如在S7-200中,程序塊按照主程序、子程序、中斷程序的順序依次排列)。
在主、子程序結(jié)構(gòu)程序中,主程序?yàn)镻LC每次掃描都必須執(zhí)行的程序塊,必須重點(diǎn)予以編制;而子程序、中斷程序則可以根據(jù)實(shí)際需要進(jìn)行編寫與調(diào)用。
主、子程序結(jié)構(gòu)的PLC程序與線性化結(jié)構(gòu)相類似,如果程序中沒有編制子程序、中斷程序,只有主程序,它便成了線性結(jié)構(gòu)的程序。
b.功能調(diào)用式結(jié)構(gòu)。功能調(diào)用式結(jié)構(gòu)的PLC程序執(zhí)行過程與主、子程序結(jié)構(gòu)類似,但組成程序的各邏輯塊按照不同的功能進(jìn)行編排,無主、子之分。組成功能調(diào)用式結(jié)構(gòu)的每一程序塊都代表著控制對(duì)象的一組相對(duì)獨(dú)立動(dòng)作,邏輯塊由特定的"塊"進(jìn)行統(tǒng)一的管理與調(diào)用。
在S7-300/400系列PLC中,用于管理與調(diào)用的程序塊稱為組織塊(OB1),其余邏輯塊分別稱程序塊(FC)、功能塊(FB)、數(shù)據(jù)塊(DB)等。
一般而言,功能調(diào)用式PLC程序在CPU的一個(gè)掃描周期內(nèi),對(duì)同一程序塊的調(diào)用次數(shù)不會(huì)過一次;當(dāng)過一次時(shí)則稱為“結(jié)構(gòu)化編程”。
c.結(jié)構(gòu)化編程。結(jié)構(gòu)化編程的程序結(jié)構(gòu)形式與調(diào)用式完全相同,程序同樣由多個(gè)程序塊組成,并通過"組織塊"對(duì)其進(jìn)行組織與管理,但它采用了"參數(shù)化編程"的方法。
采用結(jié)構(gòu)化編程的程序,在同一PLC掃描周期內(nèi)可以多次重復(fù)調(diào)用程序中的同一程序塊,因此,對(duì)于動(dòng)作相同或相似的程序,可以通過在PLC程序中編寫一個(gè)"公用程序塊"、利用重復(fù)調(diào)用來實(shí)現(xiàn)。
為了保證"公用程序塊"能控制不同的對(duì)象,必須將組成程序的各種操作數(shù)進(jìn)行"參數(shù)化"。
(a)“公用程序塊”中的所有信號(hào)的地址必須是可以變化的,即“公用程序塊”中一般不能使用"**地址",而應(yīng)采用"程序變量"(形式參數(shù))進(jìn)行編程。
(b) 調(diào)用“公用程序塊”前,為了使得程序中的所有信號(hào)有明確的含義,必須對(duì)“程序變量"(形式參數(shù))進(jìn)行賦值,即將"程序變量"定義成有明確含義的**地址。因此,CPU必須劃分一個(gè)專門的存儲(chǔ)器區(qū)域用于存儲(chǔ)這些賦值參數(shù)。S7-300/400中的"局部變量堆棧L"與"即時(shí)數(shù)據(jù)塊DI"就是為了實(shí)現(xiàn)這一目的而專門設(shè)定的存儲(chǔ)區(qū)域。
結(jié)構(gòu)化編程的程序簡潔,所占用的內(nèi)存容量小,但需要涉及程序塊、功能塊、數(shù)據(jù)塊、局部變量等概念,對(duì)編程人員的要求高。
有關(guān)結(jié)構(gòu)化編程中的“程序變量”、“參數(shù)”等概念,將在下面具體介紹。
詞條
詞條說明
連云港西門子PLC授權(quán)代理商一、 準(zhǔn)備設(shè)備1. 一臺(tái)ST40 CPU2. 一根網(wǎng)線3. 若干導(dǎo)線及電源線4. 一臺(tái)電腦(臺(tái)式 筆記本)任意一臺(tái)5. 8個(gè)指示燈二、 編寫程序一步:(在桌面點(diǎn)擊STEP 7-MicroWIN SMART編程軟件快捷方式并打開它)二步:(編寫程序)1.上電一個(gè)掃描周期置位一個(gè)位Q0.0(SM0.1 置位指令)2.使用SM0.5(每0.5秒觸發(fā)一次) 沿脈沖(上升
西門子顯示屏代理商|授權(quán)代理商PLC可編程控制器系統(tǒng)RAM存儲(chǔ)區(qū)簡介PLC可編程控制器系統(tǒng)RAM存儲(chǔ)區(qū)包括I/O映象區(qū)以及各類軟設(shè)備(例如:邏輯線圈、數(shù)據(jù)寄存器、計(jì)時(shí)器、計(jì)數(shù)器、變址寄存器、累加器等)存儲(chǔ)區(qū)。(A)I/O映象區(qū)由于PLC投入運(yùn)行后,只是在輸入采樣階段才依次讀入各輸入狀態(tài)和數(shù)據(jù),在輸出刷新階段才將輸出的狀態(tài)和數(shù)據(jù)送至相應(yīng)的外設(shè)。因此,它需要有一定數(shù)量的存儲(chǔ)單元(RAM)以供存放I/O
西門子模塊代理商-保定西門子模塊代理商-保定西門子模塊代理商-保定? ?PLC采用循環(huán)掃描的工作方式,在PLC中用戶程序按先后順序存放,CPU從一條指令開始執(zhí)行程序,直到遇到結(jié)束符后又返回一條,如此周而復(fù)始不斷循環(huán)。PLC的掃描過程分為內(nèi)部處理、通信操作、程序輸入處理、程序執(zhí)行、程序輸出幾個(gè)階段。全過程掃描一次所需的時(shí)間稱為掃描周期。當(dāng)PLC處于停狀態(tài)時(shí),只進(jìn)行內(nèi)部處理和通
西門子HMI觸摸屏代理商|PLC一級(jí)代理商PLC的輸入/輸出模塊及其在控制中的作用輸入/輸出模塊是可編程控制器PLC與工業(yè)生產(chǎn)設(shè)備或工業(yè)生產(chǎn)過程連接的借口。現(xiàn)場(chǎng)的輸入信號(hào),如按鈕開關(guān),行程開關(guān)、限位開關(guān)以及傳感輸出的開關(guān)量或模擬量(壓力、流量、溫度、電壓、電流)等,都要通過輸入模塊送到PLC。由于這些信號(hào)電平各式各樣,而可編程控制器CPU所處理的信息只能是標(biāo)準(zhǔn)電平,所以輸入模塊還需將這些信號(hào)轉(zhuǎn)換成
公司名: 潯之漫智控技術(shù)(上海)有限公司
聯(lián)系人: 劉經(jīng)理
電 話: 19873876272
手 機(jī): 19873876272
微 信: 19873876272
地 址: 上海松江石湖蕩鎮(zhèn)塔匯路755弄29號(hào)1幢一層A區(qū)213室
郵 編:
網(wǎng) 址: tianxia56.b2b168.com
公司名: 潯之漫智控技術(shù)(上海)有限公司
聯(lián)系人: 劉經(jīng)理
手 機(jī): 19873876272
電 話: 19873876272
地 址: 上海松江石湖蕩鎮(zhèn)塔匯路755弄29號(hào)1幢一層A區(qū)213室
郵 編:
網(wǎng) 址: tianxia56.b2b168.com