劉鵬 閆曉兵 孟美含 郭頌
泰山科技學(xué)院 山東 泰安 271000
MCGS組態(tài)軟件應(yīng)用靈活,修改方便、通用性強(qiáng),它能通過對(duì)現(xiàn)場(chǎng)數(shù)據(jù)的采集處理,以動(dòng)畫顯示、報(bào)警處理、流程控制和報(bào)表輸出等多種方式向用戶提供解決方案[1]。S7-1200PLC具有邏輯運(yùn)算功能、數(shù)值運(yùn)算功能、運(yùn)動(dòng)控制功能、PID控制功能等。該控制器包含模擬量輸入輸出端口和數(shù)字量輸入輸出端口,穩(wěn)定性相對(duì)較好,工作頻率快、周期短,可根據(jù)需要擴(kuò)展模擬量輸入輸出模塊和數(shù)字量輸入輸出模塊及通信模塊,與單純的繼電器和接觸器等組成的硬件系統(tǒng)相比體積小、可靠性好、穩(wěn)定性好。電動(dòng)機(jī)控制涉及兩臺(tái)電動(dòng)機(jī)的起動(dòng)次序問題、電動(dòng)機(jī)轉(zhuǎn)速控制問題、電動(dòng)機(jī)帶載電路的電壓電流過載保護(hù)問題。
降低成本、高效穩(wěn)定控制是控制行業(yè)發(fā)展的主題方向,這里用通用版的MCGS節(jié)約成本,可視性好、升級(jí)更新方便、操作性好。電機(jī)控制已是現(xiàn)階段生產(chǎn)線中必不可少的一環(huán),電機(jī)控制精準(zhǔn),是把控加工時(shí)間和加工精度的前提。這里設(shè)計(jì)的基于MCGS和PLC的電動(dòng)機(jī)控制系統(tǒng)具有方便可靠的控制性能。
通用版MCGS包含主控窗口、設(shè)備窗口、用戶窗口和實(shí)時(shí)數(shù)據(jù)庫(kù)。在運(yùn)用通用版MCGS時(shí),首先建立實(shí)時(shí)數(shù)據(jù)庫(kù),在實(shí)時(shí)數(shù)據(jù)庫(kù)中建立控制對(duì)象并對(duì)新增的對(duì)象進(jìn)行設(shè)置[2]。電機(jī)轉(zhuǎn)速控制系統(tǒng)涉及兩臺(tái)電動(dòng)機(jī)順次配合啟停問題。針對(duì)電動(dòng)機(jī)啟停建立開關(guān)量對(duì)象類型,開關(guān)型數(shù)據(jù)類型通常與外部設(shè)備的數(shù)字量連接,使用數(shù)字信號(hào)記錄開關(guān)量(0或1),表示與當(dāng)前設(shè)備的接通或停止[3]。在電動(dòng)機(jī)啟停開關(guān)量對(duì)象數(shù)據(jù)的基本屬性里可以對(duì)對(duì)象內(nèi)容進(jìn)行注釋,實(shí)時(shí)數(shù)據(jù)庫(kù)中的對(duì)象名稱不可重復(fù)。在實(shí)時(shí)數(shù)據(jù)中建立的開關(guān)類型的數(shù)據(jù)對(duì)象還有過載報(bào)警、短路報(bào)警、非正常順次起動(dòng)報(bào)警、過壓和欠壓報(bào)警。在設(shè)定報(bào)警參數(shù)時(shí),可選擇數(shù)據(jù)對(duì)象的存盤屬性。在工業(yè)中,故障時(shí)間的記錄和報(bào)警故障值的記錄對(duì)生產(chǎn)設(shè)備的評(píng)估、檢修和升級(jí)都至關(guān)重要。
以過載保護(hù)為例,在實(shí)時(shí)數(shù)據(jù)庫(kù)中新增對(duì)象,起名為“一號(hào)電動(dòng)機(jī)過載保護(hù)”,對(duì)象內(nèi)容注釋為“一號(hào)主軸電動(dòng)機(jī)過載”,對(duì)象類型設(shè)為“開關(guān)型”,在報(bào)警屬性窗口,選中“允許報(bào)警處理”,便可進(jìn)行下面的報(bào)警設(shè)置:選擇“開關(guān)量報(bào)警”,則右側(cè)的報(bào)警注釋和報(bào)警值是可編輯更改的。一旦達(dá)到報(bào)警值,報(bào)警內(nèi)容可通過設(shè)置報(bào)警顯示工具出現(xiàn)在上位機(jī)組態(tài)界面上。
對(duì)于電動(dòng)機(jī)轉(zhuǎn)速的控制,這里選用的是PID自動(dòng)調(diào)節(jié),也可根據(jù)實(shí)際需要切換成手動(dòng)調(diào)節(jié),針對(duì)電動(dòng)機(jī)的控制,需采用速度傳感器對(duì)電動(dòng)機(jī)轉(zhuǎn)速進(jìn)行采集,傳回來的信號(hào)通過PLC的模擬量輸入端口傳入控制器,并顯示在上位機(jī)的MCGS界面中。實(shí)時(shí)轉(zhuǎn)速的顯示,在MCGS中需采用數(shù)值型的數(shù)據(jù)對(duì)象。先在實(shí)時(shí)數(shù)據(jù)庫(kù)中新增對(duì)象,針對(duì)一號(hào)電動(dòng)機(jī),其對(duì)象名稱定義為“一號(hào)電動(dòng)機(jī)轉(zhuǎn)速”,對(duì)象類型設(shè)為數(shù)值型。
這里選用的電機(jī)的額定轉(zhuǎn)速是1500r/min,可設(shè)置轉(zhuǎn)速數(shù)值的最大值和最小值,考慮到實(shí)際中可能出現(xiàn)轉(zhuǎn)速短時(shí)間突高的情況,這里的最小值設(shè)為0、最大值設(shè)為2000,并進(jìn)行報(bào)警屬性的設(shè)置,如實(shí)際轉(zhuǎn)速高于1600r/min將會(huì)出現(xiàn)報(bào)警故障,一旦出現(xiàn)轉(zhuǎn)速過高報(bào)警,如果持續(xù)5分鐘以上,利用PLC中的定時(shí)器將實(shí)現(xiàn)自動(dòng)斷電保護(hù)。在MCGS的實(shí)時(shí)數(shù)據(jù)庫(kù)中,針對(duì)一號(hào)電動(dòng)機(jī)轉(zhuǎn)速的數(shù)據(jù)對(duì)象屬性設(shè)置如上圖1所示。
圖1 一號(hào)電動(dòng)機(jī)轉(zhuǎn)速的數(shù)據(jù)對(duì)象屬性
在MCGS的用戶窗口上添加顯示電動(dòng)機(jī)轉(zhuǎn)速的元件。打開工具箱,選擇“A”標(biāo)簽元件,拖畫到用戶窗口上,在動(dòng)畫組態(tài)屬性界面進(jìn)行設(shè)置,這里是顯示電機(jī)轉(zhuǎn)速輸出的,勾選顯示輸出,出現(xiàn)顯示輸出對(duì)話框,在表達(dá)式中與建立的實(shí)時(shí)數(shù)據(jù)對(duì)像建立聯(lián)系,選擇數(shù)值量輸出,因考慮硬件精度問題和運(yùn)算的問題,小數(shù)位數(shù)選0。
本設(shè)計(jì)的主要功能是:一號(hào)電動(dòng)機(jī)先起動(dòng),延遲5min(延遲時(shí)間可在MCGS界面調(diào)整)起動(dòng)二號(hào)電動(dòng)機(jī),一號(hào)電動(dòng)機(jī)的轉(zhuǎn)速和二號(hào)電動(dòng)機(jī)的轉(zhuǎn)速各自維持在自己的設(shè)定值上(如,在MCGS界面中設(shè)置一號(hào)電動(dòng)機(jī)的轉(zhuǎn)速為1000r/min)。二號(hào)電動(dòng)機(jī)起動(dòng)前會(huì)再次檢測(cè)此時(shí)的一號(hào)電動(dòng)機(jī)轉(zhuǎn)速是否滿足要求,若不滿足要求,盡管延時(shí)時(shí)間到了也會(huì)等待一號(hào)電機(jī)轉(zhuǎn)速達(dá)標(biāo)后起動(dòng)。本項(xiàng)目選用S7-1200系列PLC,利用博圖V16版本軟件進(jìn)行編程,主要用到PID控制算法。S7-1200的PID指令采用了不完全微分PID和抗積分飽和等改進(jìn)的控制算法。
直流電動(dòng)機(jī)的本質(zhì)是將直流電電能轉(zhuǎn)換成機(jī)械能,直流電動(dòng)機(jī)一般具有起動(dòng)轉(zhuǎn)矩大、調(diào)速范圍寬、調(diào)速性能好等特點(diǎn)[4]。直流電動(dòng)機(jī)轉(zhuǎn)速閉環(huán)控制系統(tǒng)的結(jié)構(gòu)框圖如圖2所示(圖見文末),點(diǎn)畫線的部分是用PLC實(shí)現(xiàn)的,兩臺(tái)電動(dòng)機(jī)的轉(zhuǎn)速設(shè)定值是在MCGS界面上進(jìn)行設(shè)定的,并通過以太網(wǎng)通訊傳送給S7-1200 PLC。該系統(tǒng)采用模擬量輸出的速度傳感器,其輸出為4~20MA的電流信號(hào),實(shí)時(shí)反應(yīng)電動(dòng)機(jī)的轉(zhuǎn)速值,該電流信號(hào)將通過PLC模擬量輸入通道模塊中的AD轉(zhuǎn)換器,將其轉(zhuǎn)換為與轉(zhuǎn)速成比例的多位二進(jìn)制數(shù)過程變量(又稱反饋值)PV(n)。CPU將它與轉(zhuǎn)速設(shè)定值SP(n)比較,誤差e(n)=SP(n)-PV(n)[5]。
圖2 雙電動(dòng)機(jī)轉(zhuǎn)速控制系統(tǒng)框圖
模擬量與數(shù)字量間的相互轉(zhuǎn)換和PID程序的執(zhí)行都是周期性的操作,其間隔時(shí)間稱為采樣周期Ts。各數(shù)字量括號(hào)中的n表示該變量是第n次采樣計(jì)算時(shí)的數(shù)字量。
控制器以誤差值e(n)為輸入量,進(jìn)行PID控制運(yùn)算。模擬量輸出模塊的DA轉(zhuǎn)換器將PID控制器的數(shù)字量輸出值M(n)轉(zhuǎn)換為直流電壓信號(hào)UC(t),UC(t)控制晶閘管整流調(diào)壓裝置,改變電動(dòng)機(jī)的供電電壓來實(shí)現(xiàn)電動(dòng)機(jī)的調(diào)速。
常規(guī)PID控制算法的參數(shù)主要是:比例作用系數(shù)、積分作用系數(shù)、微分作用系數(shù)。3個(gè)參數(shù)控制著響應(yīng)速度、穩(wěn)定性和穩(wěn)態(tài)精度[6]。博圖指令列表的“工藝”窗格的PID控制“Compact PID”文件夾中有3條指令,其中PID Compact指令是對(duì)具有比例作用的執(zhí)行器進(jìn)行集成調(diào)節(jié)的PID控制器,具有抗積分飽和功能,并能對(duì)比例作用和微分作用進(jìn)行加權(quán)運(yùn)算:
式中,y為PID算法的輸出值;Kp為比例增益;b為比例作用權(quán)重;w為設(shè)定值;x為過程值;s為自動(dòng)控制理論中的拉普拉斯運(yùn)算符號(hào);TI為積分作用時(shí)間;TD為微分作用時(shí)間;a為微分延遲系數(shù);微分延遲T1=aTD;c為微分作用權(quán)重[7]。
采用1215C型號(hào)PLC定時(shí)間間隔執(zhí)行PID指令,設(shè)置其循環(huán)時(shí)間為100ms,在上位機(jī)中設(shè)置好期望轉(zhuǎn)速值。在本程序中,利用ManualEnable、ModeActivate和Mode配合設(shè)置了手動(dòng)調(diào)節(jié)和自動(dòng)調(diào)節(jié)兩種模式,同時(shí)設(shè)置了設(shè)定值的上下限報(bào)警和輸出值的上下限報(bào)警,當(dāng)設(shè)定值不合理時(shí),無法進(jìn)行有效輸入;當(dāng)偏差較大且偏差時(shí)間較長(zhǎng)時(shí),不會(huì)讓控制器輸出持續(xù)長(zhǎng)時(shí)間增大,在保證快速性的同時(shí),確保電機(jī)轉(zhuǎn)速在正??蛇\(yùn)行范圍內(nèi)。
用比較操作指令,一號(hào)電動(dòng)機(jī)轉(zhuǎn)速在可接收正常范圍內(nèi)時(shí),給二號(hào)電動(dòng)機(jī)的使能端發(fā)出起動(dòng)信號(hào),二號(hào)電動(dòng)機(jī)起動(dòng),并用自己的PID控制器調(diào)節(jié)運(yùn)行到設(shè)定值。
綜上,基于MCGS和西門子PLC的電動(dòng)機(jī)控制系統(tǒng),融合了MCGS組態(tài)設(shè)計(jì)、PLC程序的編寫、MCGS與PLC的通訊及變量連接,實(shí)現(xiàn)了在上位機(jī)界面給定設(shè)定值、電動(dòng)機(jī)順時(shí)起動(dòng)的功能,還可調(diào)整優(yōu)化PID的控制參數(shù)。PLC控制性能穩(wěn)定,外置PID參數(shù)在組態(tài)界面可調(diào),能夠?qū)崿F(xiàn)手動(dòng)自動(dòng)控制,方便實(shí)用。