摘要 介紹基于PLC技術(shù),使電控發(fā)動機教學(xué)實驗臺實現(xiàn)故障設(shè)置、數(shù)據(jù)采集等功能的方法。
關(guān)鍵詞 PLC;LabVIEW;虛擬儀器;電控發(fā)動機;實驗臺
中圖分類號 G712 文獻(xiàn)標(biāo)識碼 A 文章編號 1671-489X(2008)10-0070-03
Design of Electronic Control Engine’s Lab Equipment Based on PLC//Chen Ning
Abstract The paper mainly expounds the methods that electronic control engine’s lab equipment achieve setting fault and data acquisition based on PLC technic.
Key words Programmable Logic Controller(PLC);LabVIEW;Virtual Instrument;Electronic Control Engine;lab equipment
Author’s address Zhejiang Institute of Mechanical Electrical Engineering,Hangzhou,310053
我國政府分別于1994年頒布《汽車工業(yè)產(chǎn)業(yè)政策》和2004年頒布《汽車產(chǎn)業(yè)發(fā)展政策》以來,汽車產(chǎn)業(yè)快速成長為國民經(jīng)濟(jì)四大支柱產(chǎn)業(yè)之一。2006年我國汽車產(chǎn)量為728萬輛,超過德國而居世界第三位,汽車銷量為721.6萬輛,超過日本而居世界第二位,我國的汽車工業(yè)即便在全球范圍也具有舉足輕重的地位。
快速發(fā)展的汽車產(chǎn)業(yè)引發(fā)了高技能、高素質(zhì)的從業(yè)人員的供需矛盾。矛盾的解決之道,一方面需要各類教育培訓(xùn)機構(gòu)加強汽車行業(yè)人才的培養(yǎng);另一方面實驗實訓(xùn)教學(xué)設(shè)備必須緊跟汽車技術(shù)發(fā)展的潮流,才能滿足汽車技術(shù),尤其是汽車電子技術(shù)日新月異發(fā)展的狀況。但是早期的汽車電控系統(tǒng)教學(xué)設(shè)備,往往采用按鍵開關(guān),只能對汽車電路進(jìn)行斷路、開路設(shè)置,故障點和故障類型設(shè)置單一,也難以模擬復(fù)雜的汽車電控系統(tǒng)數(shù)據(jù)流信息。近年來,隨著計算機技術(shù)、控制技術(shù)和虛擬儀器技術(shù)的發(fā)展,出現(xiàn)了由計算機系統(tǒng)主導(dǎo),進(jìn)行故障設(shè)置、教學(xué)和考核的汽車電控系統(tǒng)教學(xué)實驗臺,借助計算機平臺無論是故障設(shè)置的復(fù)雜程度、仿真程度都得到極大的提高。但是,這類教學(xué)實驗臺必須解決計算機發(fā)出故障設(shè)置指令,直至執(zhí)行部件產(chǎn)生動作設(shè)置故障成功的問題,用以代替、提升傳統(tǒng)的按鍵開關(guān)設(shè)置故障的模式。
現(xiàn)在控制領(lǐng)域主要采用單片機和PLC作為控制設(shè)備。其中,單片機是一種芯片,配合外圍電路來現(xiàn)實所需要的各種功能,大都用匯編語言、C語言等來開發(fā)嵌入式軟件。PLC是一種可編程的控制器,大都采用梯形圖編程,也可以用組態(tài)軟件,易于使用,并且隨著電子技術(shù)的發(fā)展,其成本也迅速降低。綜合考慮,采用PLC來實現(xiàn)本文的功能更具優(yōu)勢。同時,基于PLC技術(shù)設(shè)計的電控發(fā)動機實驗臺對其他汽車電控系統(tǒng)的教學(xué)實驗臺極具借鑒意義。
1 系統(tǒng)總體設(shè)計
本文中的控制是與測量緊密結(jié)合的,實現(xiàn)邊采集邊控制的閉環(huán)控制系統(tǒng),如圖1所示。
系統(tǒng)可以采用NI公司的PCI-6024E數(shù)據(jù)采集卡為核心實現(xiàn)數(shù)據(jù)采集功能。為了防止現(xiàn)場信號受外界的影響,所以在送入A/D前應(yīng)進(jìn)行信號調(diào)理,包括放大、濾波、隔離、保持等。
控制單元以PLC為核心構(gòu)成;上位監(jiān)控可采用LabVIEW,充分利用其強大的虛擬儀表功能、豐富的圖形界面模塊、數(shù)值分析、數(shù)字信號處理等功能。PLC與PC機通過串行連接將實現(xiàn)上位機對PLC的控制,其系統(tǒng)框圖見圖2。
其中,PLC選擇三菱FX系列PLC,串口功能選擇MAXIM的MAX232芯片實現(xiàn)。
控制環(huán)節(jié)流程圖如圖3所示。
數(shù)據(jù)采集子程序始終工作,不斷測量電路中各端子在某一時刻t的電壓參數(shù)Ut。
故障設(shè)置子程序根據(jù)故障設(shè)置的內(nèi)容,調(diào)用故障模式,其內(nèi)容包括故障設(shè)置部位,如是空氣流量傳感器還是節(jié)氣門位置傳感器等;還包括故障性質(zhì),如是短路還是斷路等;還包括此故障模式下電路端子應(yīng)該出現(xiàn)的故障電壓數(shù)據(jù)值Uk。最后,向PLC發(fā)出控制指令。
系統(tǒng)達(dá)到穩(wěn)定和收斂的控制準(zhǔn)則可以表達(dá)為:
ΔU=|ut-uk|≤γ
以ΔU來判斷故障設(shè)置是否有效。其
中γ是一個預(yù)先設(shè)置值,根據(jù)一定的算法和多次試驗得到。其值過大,會導(dǎo)致精度過低,產(chǎn)生偽故障;其值過小,會導(dǎo)致故障設(shè)置進(jìn)入多次循環(huán)。
2 PLC的工作模式
FX系列PLC通信采用異步格式,由1位起始位、7位數(shù)據(jù)位、1位偶校驗位及1位停止位組成,比特率為9 600bps,字符為ASCⅡ碼,數(shù)據(jù)格式如圖4所示。
FX系列PLC有4條通信命令,分別是讀命令、寫命令、強制通命令、強制斷命令,如表1所示。
計算機向PLC發(fā)送的報文格式如圖5。其中,STX為開始標(biāo)志:02H;ETX為結(jié)束標(biāo)志:03H;CMD為命令的ASCⅡ碼;SUMH、SUML為按字節(jié)求累加和,溢出不計。由于每字節(jié)十六進(jìn)制數(shù)變?yōu)閮勺止?jié)的ASCⅡ碼,故校驗和為SUMH與SUML。
PLC向PC發(fā)的應(yīng)答報文格式如圖6所示。
PC與FX系列PLC間采用應(yīng)答方式通信,傳輸出錯,則組織重發(fā)。PLC根據(jù)PC的命令,在每個循環(huán)掃描結(jié)束處的END語句后組織自動應(yīng)答,不必在PLC一方編寫程序。其傳輸過程如圖7所示。
3 PLC與LabVIEW的串行通信
由于FX系列PLC只有PTS422和RS485的串行通信接口,所以與PC機進(jìn)行串口通信時要接一個RS232與PTS422(或RS485)的轉(zhuǎn)換電纜,完成通信的硬件連接。
用PC機的RS-232接口與PLC通信,需要對PLC一些參數(shù)進(jìn)行配置。采用FX系列PLC的默認(rèn)設(shè)置為,啟動位:1位;數(shù)據(jù)長度:7位;停止位:2位;奇偶校驗:偶校驗;波特率:9 600 b/s。
通信格式設(shè)置完之后,PC機開始向PLC傳送數(shù)據(jù)。其過程如圖8所示。
1)通信開始先由PC機向PLC發(fā)出呼叫,由于是一對一的呼叫,不需要地址碼;
2)PLC接受到呼叫信號后,以相應(yīng)的字符發(fā)送應(yīng)答信號;
3)PC機收到正確的應(yīng)答信號后,將數(shù)據(jù)傳送給PLC;
4)PLC接收到數(shù)據(jù)后,以相應(yīng)的字符發(fā)送結(jié)束信號;
5)PC機收到結(jié)束信號后停止傳送數(shù)據(jù),通信結(jié)束。
在LabVIEW的程序中可采用下列步驟實現(xiàn)與PLC之間的通訊:
1)初始化串口,設(shè)置雙方通訊的端口號、波特率、數(shù)據(jù)位、停止位、奇偶校驗等,與PLC的設(shè)置相同;
2)把要發(fā)送的數(shù)據(jù)按PIE命令幀的格式打包;
3)寫端口,把整個命令幀發(fā)送到串口;
4)延時等待PIE的應(yīng)答幀到達(dá)串口;
5)讀串口,讀取PLC的應(yīng)答幀;
6)把讀取的應(yīng)答幀解包,讀取相應(yīng)的數(shù)據(jù)。
LabVIEW與PLC的通訊過程中,上位機的命令幀格式如圖9所示。
其中@表示一幀的開始,上位機按“節(jié)點號”來識別PLC;識別碼是兩個字符的上位機命令代碼,它表示上位機要對PLC進(jìn)行何種操作;正文包括起始字和字?jǐn)?shù),起始字指的是要讀寫通道的起始地址,字?jǐn)?shù)是指要讀寫的通道個數(shù);FCS碼(兩個字符)用于校驗,由上位機計算并設(shè)置在命令幀里,安排在終止符前,以檢查在傳送數(shù)據(jù)時是否發(fā)生錯誤。FCS碼的具體算法是:從一幀數(shù)據(jù)的開始到幀正文結(jié)束(FCS之前)所有數(shù)據(jù)字符ASCII碼執(zhí)行“異或”操作的結(jié)果,此結(jié)果是一個8位二進(jìn)制數(shù),然后分別把其高4位和低4位轉(zhuǎn)換成兩個16進(jìn)制數(shù)表示的ASCII碼;終止符是“*”。
同理,PLC在接收命令幀后要返回相應(yīng)的應(yīng)答幀,其格式就是在識別碼的后面加一個結(jié)束碼,結(jié)束碼表示返回給PLC的錯誤代碼,如果正確為00H,其他為不同的錯誤代碼。
LabVIEW與PLC串行通信的VI程序面板如圖10所示。
4 結(jié)論
基于PLC技術(shù)所實現(xiàn)的電控發(fā)動機教學(xué)實驗臺,具有開發(fā)周期短、功能強的優(yōu)點,借助強大的計算機平臺與虛擬儀器技術(shù)支持,很好地解決了故障設(shè)置的問題。故障的類型與復(fù)雜程度可以高度吻合實際的發(fā)動機電控系統(tǒng)故障情況。并且,可以與教學(xué)、考核等其他計算機所實現(xiàn)的功能很好地協(xié)調(diào)工作。
基于本文電控發(fā)動機教學(xué)實驗臺,已經(jīng)陸續(xù)研制了10余臺,在汽車技術(shù)人才的培養(yǎng)中發(fā)揮了重要作用。