PLC的控制方式屬于存儲(chǔ)程序控制,其控制功能是通過(guò)存放在存儲(chǔ)器內(nèi)的程序來(lái)實(shí)現(xiàn)的,若要對(duì)控制功能作必要修改,只需改變控制程序即可,這就實(shí)現(xiàn)了控制的軟件化。可編程控制器的優(yōu)點(diǎn)在于"可"字,從軟件來(lái)講,其控制程序可編輯、可修改;從硬件上講,其外部設(shè)備配置可變。構(gòu)建一個(gè)PLC控制系統(tǒng)的重心就在于控制程序的編制,但外部設(shè)備的選用也將對(duì)程序的編制產(chǎn)生影響。因此在進(jìn)行程序設(shè)計(jì)時(shí)應(yīng)結(jié)合實(shí)際需要,硬、軟件綜合考慮。本文就硬、軟兩方面,選取梯形圖為編程語(yǔ)言,以松下電工FPO-C32型PLC為例,對(duì)PLC使用過(guò)程中易出現(xiàn)的幾個(gè)問(wèn)題及解決方法進(jìn)行了分析。
一、外部輸入設(shè)備的選用與PLC輸入繼電器的使用
1. 外部輸入信號(hào)的采集
PLC的外部設(shè)備主要是指控制系統(tǒng)中的輸入輸出設(shè)備,其中輸人設(shè)備是對(duì)系統(tǒng)發(fā)出各種控制信號(hào)的主令電器,在編寫控制程序時(shí)必須注意外部輸入設(shè)備使用的是常開還是常閉觸點(diǎn),并以此為基礎(chǔ)進(jìn)行程序編制。否則易出現(xiàn)控制錯(cuò)誤。
在PLC內(nèi)部存儲(chǔ)器中有于輸入狀態(tài)存儲(chǔ)的輸入繼電器區(qū),各輸入設(shè)備(開關(guān)、按鈕、行程開關(guān)或傳感器信號(hào))的狀態(tài)經(jīng)由輸入接口電路存儲(chǔ)在該區(qū)域內(nèi),每個(gè)輸入繼電器可存儲(chǔ)一個(gè)輸入設(shè)備狀態(tài)。PLC中使用的"繼電器"并非實(shí)體繼電器,而是"軟繼電器",可提供無(wú)數(shù)個(gè)常開、常閉觸點(diǎn)用于編程。每個(gè)"軟繼電器"僅對(duì)應(yīng)PLC存儲(chǔ)單元中的一位(bit),該位狀態(tài)為"1",表示該"軟繼電器線圈"通電,則程序中所有該繼電器的觸點(diǎn)都動(dòng)作。輸入繼電器作為PLC接收外部主令信號(hào)的器件,通過(guò)接線與外部輸入設(shè)備相聯(lián)系,其"線圈"狀態(tài)只能由外部輸入信號(hào)驅(qū)動(dòng)。輸入信號(hào)的采集工作示意圖如圖1。
輸入繼電器線圈其狀態(tài)取決于外部設(shè)備狀態(tài)
PLC輸入信號(hào)采集示意圖
圖1中,輸入設(shè)備選用的是按鈕SB0的常閉觸點(diǎn),輸入繼電器X0的線圈狀態(tài)取決于SB0的狀態(tài)。該按鈕未按下時(shí),輸入繼電器X0線圈狀態(tài)為"1"通電狀態(tài),程序中所有X0觸點(diǎn)均動(dòng)作,即常開觸點(diǎn)接通,常閉觸點(diǎn)斷開;若按下該按鈕,則輸入繼電器X0線圈狀態(tài)為"0"斷電狀態(tài),程序中所有X0觸點(diǎn)均恢復(fù)常態(tài)。如果輸入繼電器連接的輸入設(shè)備是按鈕SB0的常開觸點(diǎn),則情況恰好相反:在該按鈕未按下時(shí),輸入繼電器X0線圈狀態(tài)為"0"斷電狀態(tài),程序中所有X0觸點(diǎn)均不動(dòng)作;若按下該按鈕,輸入繼電器X0線圈狀態(tài)為"1"通電狀態(tài),程序中所有X0觸點(diǎn)均動(dòng)作。
2. 停車按鈕使用常閉型
由于PLC在運(yùn)行程序判別觸點(diǎn)通斷狀態(tài)時(shí),只取決于其內(nèi)存中輸入繼電器線圈的狀態(tài),并不直接識(shí)別外部設(shè)備,因此編程時(shí),外部設(shè)備的選用與程序中的觸點(diǎn)類型密切相關(guān)。這是一個(gè)在對(duì)照電氣控制原理圖進(jìn)行PLC編程時(shí)易出現(xiàn)的問(wèn)題。典型的例子是基本控制--"起保停控制"中的停車控制。
圖2 "起保??刂?電氣原理圖
圖2為"起保??刂?電氣原理圖,在該系統(tǒng)中,按鈕SB0用于停車控制,因此使用其常閉觸點(diǎn)串聯(lián)于控制線路。SBl為起動(dòng)按鈕,使用其常開觸點(diǎn)。若使用相同的設(shè)備(即停車SB0用常閉觸點(diǎn),起動(dòng)SBl用常開觸點(diǎn)),利用PLC進(jìn)行該控制,則需編程梯形圖程序(圖3):
圖3 "起保??刂?梯形圖程序(停車按鈕使用常閉觸點(diǎn))
I/O分配:SB0--X0,SBl--Xl,輸出Y0
該梯形圖中停車信號(hào)X0使用的是常開觸點(diǎn)串聯(lián)在控制線路中,這是因?yàn)橥獠客\囋O(shè)備選取按鈕常閉觸點(diǎn)所致,不操作該按鈕,則輸出Y0正常接通,若按下該按鈕,輸出Y0斷電。
3. 停車按鈕使用常開型
若希望編制出符合我們平時(shí)閱讀習(xí)慣的梯形圖程序(圖4),則在選用外部停車設(shè)備時(shí)需使用按鈕SB0的常開觸點(diǎn)與X0相連。
圖4 "起保??刂?梯形圖程序(停車按鈕使用常開觸點(diǎn))
I/O分配:SB0--X0,SBl--Xl,輸出Y0
圖3、4梯形圖完成相同的控制功能,程序中停車信號(hào)X0使用的觸點(diǎn)類型卻不相同,其原因就是連接在輸入繼電器X0上的外部停車按鈕觸點(diǎn)類型選用不同。圖4所示梯形圖程序更加符合我們的閱讀習(xí)慣,也更易分析其邏輯控制功能,因此在PLC構(gòu)成控制系統(tǒng)中,外部開關(guān)、按鈕無(wú)論用于起動(dòng)還是停車,一般都選用常開型,這是一個(gè)在使用PLC時(shí)需要格外注意的問(wèn)題。
二、PLC的"串行"運(yùn)行方式與控制程序的編制
PLC與繼電接觸器控制的重要區(qū)別之一就是工作方式不同。繼電接觸器控制系統(tǒng)是按"并行"方式工作的,也就是說(shuō)是按同時(shí)執(zhí)行的方式工作的,只要形成電流通路,就可能有幾個(gè)電器同時(shí)動(dòng)作。而PLC是以"串行"方式工作的,PLC在循環(huán)執(zhí)行程序時(shí),是按照語(yǔ)句的書寫順序自上而下進(jìn)行邏輯運(yùn)算,而前面邏輯運(yùn)算的結(jié)果會(huì)影響后面語(yǔ)句的邏輯運(yùn)算結(jié)果。因此梯形圖編程時(shí),各語(yǔ)句的位置也會(huì)對(duì)控制功能產(chǎn)生關(guān)鍵影響。例如:
5 程序1
程序1調(diào)試結(jié)果:X0接通3次,Y3接通,X0再接通1次,Y3斷開。
6 程序2
程序2程序調(diào)試結(jié)果.X0接通3次,Y3接通即斷開。
上面兩個(gè)程序中,輸出Y3、計(jì)數(shù)器CTl02及內(nèi)部通用繼電器R0前面的邏輯條件均相同,僅僅是計(jì)數(shù)器CTl02所在語(yǔ)句位置發(fā)生了變化,而兩段程序的運(yùn)行結(jié)果就截然不同。這是因?yàn)镃Tl02對(duì)輸出Y3的影響方式發(fā)生了變化。執(zhí)行段程序時(shí),將首先判斷輸出Y3的狀態(tài),再判斷CTl02的狀態(tài),CTl02的狀態(tài)變化只能在下一個(gè)掃描周期對(duì)Y3產(chǎn)生影響;而執(zhí)行第二段程序時(shí),將首先判斷CTl02的狀態(tài),再判斷輸出Y3的狀態(tài),CTl02的狀態(tài)變化將在該掃描周期直接影響Y3的狀態(tài)。
從以上討論可以得出,由于PLC采用"串行"工作方式,所以即使是同一元件,在梯形圖中所處的位置不同,其工作狀態(tài)也會(huì)有所不同,因此在利用梯形圖進(jìn)行控制程序編制時(shí),應(yīng)對(duì)控制任務(wù)進(jìn)行充分分析,合理安排各編程元件的位置,才能夠更為準(zhǔn)確地實(shí)現(xiàn)控制。
西門子模塊6ES7222-1HF22-0XA8
三、PLC的編程元件
PLC的各種功能主要是通過(guò)運(yùn)行控制程序來(lái)實(shí)現(xiàn)。編制程序時(shí),需要合理使用PLC提供的編程元件(即軟元件)。FPO型PLC中常用的編程元件有兩種:位元件(bit)和字元件(word)。位元件實(shí)際上是PLC內(nèi)存區(qū)域所提供的一個(gè)二進(jìn)制位單元,又被稱為軟繼電器,主要用作基本順序指令的編程元件,如輸入繼電器Xn、輸出繼電器Yn、內(nèi)部通用繼電器Rn、定時(shí)(計(jì)數(shù))器等,其參與控制的方式主要是通過(guò)對(duì)應(yīng)觸點(diǎn)的通斷狀態(tài)改變影響邏輯運(yùn)算結(jié)果即輸出。
字元件則為PLC內(nèi)存區(qū)域內(nèi)的一個(gè)字單元(16bit),主要用作功能指令和高級(jí)指令的編程元件,通常用以存放數(shù)據(jù),如數(shù)據(jù)寄存器DTn,定時(shí)(計(jì)數(shù))器的設(shè)定值SVn、經(jīng)過(guò)值EVn等。字元件沒(méi)有觸點(diǎn),通常以整體內(nèi)容參與控制。
整體式PLC的每一個(gè)I/O點(diǎn)的平均價(jià)格比模塊式的便宜,且體積相對(duì)較小,所以一般用于系統(tǒng)工藝過(guò)程較為固定的小型控制系統(tǒng)中;而模塊式PLC的功能擴(kuò)展靈活方便,I/O點(diǎn)數(shù)量、輸入點(diǎn)數(shù)與輸出點(diǎn)數(shù)的比例、I/O模塊的種類等方面,選擇余地較大。維修時(shí)只要更換模塊,判斷故障的范圍也很方便。因此,模塊式PLC一般適用于較復(fù)雜系統(tǒng)和環(huán)境差(維修量大)的場(chǎng)合。
2.安裝方式的選擇
根據(jù)PLC的安裝方式,系統(tǒng)分為集中式、遠(yuǎn)程I/O式和多臺(tái)PLC聯(lián)網(wǎng)的分布式。集中式不需要設(shè)置驅(qū)動(dòng)遠(yuǎn)程I/O硬件,系統(tǒng)反應(yīng)快、成本低。大型系統(tǒng)經(jīng)常采用遠(yuǎn)程I/O式,因?yàn)樗鼈兊难b置分布范圍很廣,遠(yuǎn)程I/O可以分散安裝在I/O裝置附近,I/O連線比集中式的短,但需要增設(shè)驅(qū)動(dòng)器和遠(yuǎn)程I/O電源。多臺(tái)聯(lián)網(wǎng)的分布式適用于多臺(tái)設(shè)備分別獨(dú)立控制,又要相互聯(lián)系的場(chǎng)合,可以選用小型PLC,但必須要附加通信模塊。
3.相當(dāng)?shù)墓δ芤?/span>
一般小型(低檔)PLC具有邏輯運(yùn)算、定時(shí)、計(jì)數(shù)等功能,對(duì)于只需要開關(guān)量控制的設(shè)備都可滿足。對(duì)于以開關(guān)量控制為主,帶少量模擬量控制的系統(tǒng),可選用能帶A/D和D/A單元。具有加減算術(shù)運(yùn)算。數(shù)據(jù)傳送功能的增強(qiáng)型低檔PLC。
對(duì)于控制較復(fù)雜,要求實(shí)現(xiàn)PID運(yùn)算、閉環(huán)控制、通信聯(lián)網(wǎng)等功能,可視控制規(guī)模大小及復(fù)雜程度,選用中檔或高檔PLC。但是中、高檔PLC價(jià)格較貴,一般大型機(jī)主要用于大規(guī)模過(guò)程控制和集散控制系統(tǒng)等場(chǎng)合。
4.響應(yīng)速度的要求
PLC的掃描工作方式引起的延遲可達(dá)2-3個(gè)掃描周期。對(duì)于大多數(shù)應(yīng)用場(chǎng)合來(lái)說(shuō),PLC的響應(yīng)速度都可以滿足要求,不是主要問(wèn)題。然而對(duì)于某些個(gè)別場(chǎng)合,則要求考慮PLC的響應(yīng)速度。為了減少PLC的I/O響應(yīng)的延遲時(shí)間,可以選用掃描速度高的PLC,或選用具有高速I/O處理功能指令的PLC,或選用具有快速響應(yīng)模塊和中斷輸入模塊的PLC等。
5.系統(tǒng)可靠性的要求
對(duì)于一般系統(tǒng)PLC的可靠性均能滿足。對(duì)可靠性要求很高的系統(tǒng),應(yīng)考慮是否采用冗余控制系統(tǒng)或熱備用系統(tǒng)。
6.機(jī)型統(tǒng)一
一個(gè)企業(yè),應(yīng)盡量做到PLC的機(jī)型統(tǒng)一。主要考慮以下三個(gè)方面的問(wèn)題:
(l)同一機(jī)型的PLC,其編程方法相同,有利于技術(shù)力量的培訓(xùn)和技術(shù)水平的提高。
(2)同一機(jī)型的PLC,其模塊可互為備用,便于備品備件的采購(gòu)和管理。
(3)同一機(jī)型的PLC,其外圍設(shè)備通用,資源可共享,易于聯(lián)網(wǎng)通信,配上位計(jì)算機(jī)后易于形成一個(gè)多級(jí)分布式控制系統(tǒng)
Programming
人性化軟件,提升編程效率
STEP 7- Micro/WIN SMART 是專門為S7-200 SMART 開發(fā)的編程軟件,能在WINOOWs XP SP3/WINOOWs 7 上運(yùn)行,支持LAD、FBD、STL語(yǔ)言。安裝文件小于100 MB。在沿用STEP 7- Micro/WIN 編程理念的同時(shí),更多的人性化設(shè)計(jì)使編程更容易上手,項(xiàng)目開發(fā)更加高效。
- 全新菜單設(shè)計(jì)
摒棄了傳統(tǒng)的下拉式菜單,采用了新穎的帶狀式菜單設(shè)計(jì),所有菜單選項(xiàng)一覽無(wú)余,形象的圖標(biāo)顯示,操作更加方便快捷。
雙擊菜單即可隱藏,給編程窗口提供更多的可視空間。
- 全移動(dòng)式窗口設(shè)計(jì)
軟件界面中的所有窗口均可隨意移動(dòng)、并提供八種拖拽放置方式。
主窗口、程序編輯窗口、輸出窗口、變量表、狀態(tài)圖等窗口均可按照用戶的習(xí)慣進(jìn)行組合,最大限度的提高編程效率。
- 變量定義與程序注釋
用戶可根據(jù)工藝需求自定義變量名,并且直接通過(guò)變量名進(jìn)行調(diào)用,*享受高級(jí)編程語(yǔ)言的便利。根據(jù)實(shí)現(xiàn)的功能,特殊功能寄存器調(diào)用后自動(dòng)命名,更加便捷。
STEP 7- Micro/WIN SMART 提供了完善的注釋功能,能為程序塊、編程網(wǎng)絡(luò)、變量添加注釋,大幅提高程序的可讀性。當(dāng)鼠標(biāo)移動(dòng)到指令塊時(shí),自動(dòng)顯示各管腳支持的數(shù)據(jù)類型。
- 強(qiáng)大的密碼保護(hù)
STEP 7- Micro/WIN SMART 不僅對(duì)計(jì)算機(jī)中的程序源提供密碼保護(hù),同時(shí)對(duì)CPU 模塊中的程序也提供密碼保護(hù),滿足用戶對(duì)密碼保護(hù)的不同需求,完美保護(hù)用戶的知識(shí)產(chǎn)權(quán)。
STEP 7- Micro/WIN SMART 對(duì)程序源實(shí)現(xiàn)三重保護(hù):包括為為工程、POU(程序組織單元)、數(shù)據(jù)頁(yè)設(shè)置密碼,只有授權(quán)的用戶才能查看并修改相應(yīng)的內(nèi)容。
編程軟件對(duì) CPU 模塊里的程序提供4 級(jí)不同權(quán)限密碼保護(hù)。
- 新穎的設(shè)置向?qū)?br style="margin: 0px; padding: 0px;" />STEP 7- Micro/WIN SMART 集成了簡(jiǎn)易快捷的向?qū)гO(shè)置功能,只需按照向?qū)崾驹O(shè)置每一步的參數(shù)即可完成復(fù)雜功能的設(shè)定。新的向?qū)Чδ茉试S用戶直接對(duì)其中某一步的功能進(jìn)行設(shè)置,修改已設(shè)置的向?qū)П銦o(wú)需重新設(shè)置每一步。
向?qū)гO(shè)置支持以下功能:
• HSC(高速計(jì)數(shù))
• 運(yùn)動(dòng)控制
• PID
• PWM(脈寬調(diào)制)
• 文本顯示
- 狀態(tài)監(jiān)控
在STEP 7- Micro/WIN SMART 狀態(tài)圖中,可監(jiān)測(cè)PLC 每一路輸入/ 輸出通道的當(dāng)前值,同時(shí)可對(duì)每路通道進(jìn)行強(qiáng)制輸入操作來(lái)檢驗(yàn)程序邏輯的正確性。
狀態(tài)監(jiān)測(cè)值既能通過(guò)數(shù)值形式,也能通過(guò)比較直觀的波形圖來(lái)顯示,二者可相互切換。
另外,對(duì)PID 和運(yùn)動(dòng)控制操作,STEP 7- Micro/WIN SMART 通過(guò)專門的操作面板可對(duì)設(shè)備運(yùn)行狀態(tài)進(jìn)行監(jiān)控。
- 便利的指令庫(kù)
在PLC 編程中,一般將多次反復(fù)執(zhí)行的相同任務(wù)編寫成一個(gè)子程序,將來(lái)可以直接調(diào)用。使用子程序可以更好地組織程序結(jié)構(gòu),便于調(diào)試和閱讀。
STEP 7- Micro/WIN SMART 提供便利的指令庫(kù)功能,將子程序轉(zhuǎn)化成指令塊,與普通指令塊一樣,直接拖拽到編程界面就能完成調(diào)用。指令庫(kù)功能提供了密碼保護(hù)功能,防止庫(kù)文件被隨意查看或修改。
另外,西門子公司提供了大量完成各種功能的指令庫(kù),均可輕松添加到軟件中。