楊賢沛,王振華,朱成瑋,肖進
(上海交通大學(xué) 動力機械與工程教育部重點實驗室,上海 200240)
自由活塞發(fā)電機(Free Piston Linear Generator, FPLG)是將自由活塞發(fā)動機與直線電機串聯(lián)耦合的動力系統(tǒng),具有結(jié)構(gòu)簡單、熱效率高、功率質(zhì)量比大等優(yōu)點,可以作為新能源汽車增程器,具有廣泛應(yīng)用前景[1-3]。自由活塞式發(fā)動機的上、下止點會隨燃燒工況變化,發(fā)動機穩(wěn)定運行對于噴油、點火控制的精確度和優(yōu)化策略有較高要求[4-5]。近年來處理器和存儲技術(shù)快速發(fā)展,美國國家儀器公司(NI)的嵌入式控制器性能已經(jīng)可以滿足自由活塞發(fā)電機的控制需求。LabVIEW作為NI公司開發(fā)的軟件產(chǎn)品,允許圖形編程,編程難度較低。本文運用LabVIEW進行模塊化編程,實現(xiàn)對自由活塞發(fā)電機的控制[6]。
圖1 自由活塞發(fā)電機示意圖
對置式自由活塞發(fā)電機的結(jié)構(gòu)如圖1所示,兩個對置的二沖程自由活塞發(fā)動機位于直線電機兩端,連桿通過螺紋將直線電機的動子和兩個發(fā)動機的活塞串聯(lián)。啟動時電機為驅(qū)動狀態(tài),電機動子驅(qū)動活塞向左運動,控制器采集燃燒室的缸壓、動子的位移信號、進氣溫度信號,計算燃燒所需噴油量、點火時間,在設(shè)定位置驅(qū)動左側(cè)氣缸噴油器、點火線圈。左缸燃燒后,活塞受膨脹力驅(qū)動向右運動,電機由驅(qū)動狀態(tài)轉(zhuǎn)換為發(fā)電狀態(tài),電機動子切割磁感線產(chǎn)生電流。當活塞運動到右側(cè)氣缸設(shè)定的噴油位置和點火位置時,右缸的噴油器和點火線圈工作使右缸燃燒,驅(qū)動活塞向左運動。當噴油或點火控制不精確,噴油或點火與設(shè)定位置有較大偏差時,發(fā)動機容易失火。而如果直線電機不在設(shè)定時刻轉(zhuǎn)換工作狀態(tài),發(fā)動機可能撞缸或者失火。
圖2 系統(tǒng)硬件總體架構(gòu)
圖3 濾波模塊
圖4 進氣溫度傳感器外電路
圖5 點火線圈驅(qū)動電路
如圖2所示,系統(tǒng)采用NI公司的cRIO9039作為控制器,通過控制板卡讀取數(shù)據(jù)、輸出命令,并存儲數(shù)據(jù)。該控制器包含有1.91 GHz的四核CPU、2 GB運行內(nèi)存、16 GB閃存和Kintex-7 FPGA,可以使整個程序運行周期短至0.05 ms,實時保存進氣溫度、進氣壓力、活塞位置、缸內(nèi)壓力等數(shù)據(jù)??刂破鞑宀壑杏?個C系列模塊,其中NI9205數(shù)據(jù)采集卡讀取各個傳感器數(shù)據(jù),NI9401信號輸出卡控制點火和繼電器,NI9751驅(qū)動噴油器。
NI9205信號采集模塊可以識別±200 mV到±10 V的電壓信號,32個AI端口滿足信號處理需求,并且為控制系統(tǒng)功能擴展預(yù)留端口?;钊灰菩盘柺莾蓚€相隔1/4磁極距的霍爾信號傳感器輸出的差分信號±sin、±cos,信號范圍在2.25到2.75。位移傳感器位于直線電機中,由于電機動子運行時振動和環(huán)境影響,信號會受到較多干擾,需要將信號經(jīng)濾波器濾波后,再接入NI9205板卡。Butterworth濾波通帶特性平坦,阻帶衰減速度快,故采用7階巴特沃斯無源LC低通濾波器。如圖3所示,其中R1=50 Ω,R2=50 Ω,L1=470 nH,L2=820 nH,L3=470 nH,C1=56 pF,C2=267 pF,C3=267 pF,C4=68 pF。
進氣溫度值與傳感器中熱敏電阻值相關(guān)。如圖4所示,將進氣傳感器與3 kΩ外接電阻串聯(lián),接入5 V電源兩端。由外接電阻兩端電壓計算出熱敏電阻阻值,查表可得進氣溫度值。
Kistler 6125C缸壓傳感器的信號經(jīng)電荷放大器轉(zhuǎn)換為電壓信號,由設(shè)定電壓與壓力比例關(guān)系得到缸壓值。進氣壓力傳感器直接輸出電壓信號,查表得進氣壓力值。
Kistler 6125C缸壓傳感器的信號經(jīng)電荷放大器轉(zhuǎn)換為電壓信號,由設(shè)定電壓與壓力比例關(guān)系得到缸壓值。進氣壓力傳感器直接輸出電壓信號,查表得進氣壓力值。
噴油驅(qū)動采用NI 9751,該板卡是3通道直噴器驅(qū)動模塊,可以直接驅(qū)動系統(tǒng)的兩個直噴噴油器。點火驅(qū)動電路如圖5所示,采用Fairchild公司的FGBS3040 IGBT模塊,控制信號為NI9401輸出的5 V TTL信號。當控制信號為高電平時,12 V電源為點火線圈充電,高電平時間達到設(shè)定Dwell Time后,控制信號變?yōu)榈碗娖?,點火線圈通過火花塞釋放存儲的電能。
圖6 電機切換電路
電機狀態(tài)切換電路由兩個三相繼電器和一個三相整流橋構(gòu)成。通過NI9401輸出的5 V TTL信號控制繼電器開關(guān)。當繼電器1閉合、繼電器2斷路時,電機處于驅(qū)動狀態(tài);當繼電器1斷路、繼電器2閉合時,電機處于發(fā)電狀態(tài),輸出的三相交流電經(jīng)整流橋整流后轉(zhuǎn)換為直流電,電能通過整流橋后的電阻消耗。電機切換電路執(zhí)行時間為10 ms,自由活塞發(fā)電機的運行頻率為15~30 Hz,滿足需求。
系統(tǒng)程序分為FPGA程序和Real-Time程序。FPGA程序運行在控制器的FPGA中,直接通過底層邏輯執(zhí)行,時鐘為48 MHz,實時性高,但是FPGA資源有限,所以FPGA程序只是通過與C系列模塊的通訊,實現(xiàn)數(shù)據(jù)I/O,進行簡單且重復(fù)性高的信號處理。Real-Time程序運行在cRIO的實時控制器中,可調(diào)用較多資源,實現(xiàn)信號分析、復(fù)雜控制邏輯等功能[7]。
FPGA程序主要實現(xiàn)傳感器信號的讀取和噴油器、點火線圈、繼電器信號輸出端口的設(shè)置。如圖7所示,設(shè)置模塊4(NI9205)的0-7端口為各個傳感器信號的輸入端口,模塊1(NI9401)的3、4端口對應(yīng)繼電器1、繼電器2的控制端口。其中繼電器1和繼電器2的信號為相反關(guān)系,使得繼電器1閉合時繼電器2斷開。
圖7 FPGA傳感器和繼電器信號I/O
圖8中定時循環(huán)程序設(shè)置NI9751模塊參數(shù)的接口,如噴油器通道使能、噴油器類型、噴油電流參數(shù)。
圖8 噴油驅(qū)動設(shè)置
圖9 點火驅(qū)動端口設(shè)置
圖9的While循環(huán)程序設(shè)置點火驅(qū)動的控制信號端口,當點火使能為True時,NI9401輸出一個周期的PWM波形,高電平時間為設(shè)定值dwell。
如圖10所示,Real-Time程序分為信號處理模塊、噴油點火模塊和狀態(tài)切換模塊。程序在一個定時循環(huán)結(jié)構(gòu)內(nèi),處理FPGA傳遞過來的信號,計算噴油與點火參數(shù),判斷電機工作狀態(tài),輸出命令到FPGA的噴油器、點火線圈和繼電器控制端口。
圖10 Real-Time程序總框圖
圖11 信號處理模塊程序
圖12 位移處理模塊
圖13 狀態(tài)切換程序框圖
如圖11所示,信號處理模塊將FPGA程序讀取的進氣壓力、進氣溫度、缸壓、位移電壓信號由對應(yīng)關(guān)系轉(zhuǎn)換為信號實際值,并將這些信號傳遞到狀態(tài)轉(zhuǎn)換和噴油點火模塊。
圖12為信號處理中的位移處理模塊,位移信號由歸一化后的霍爾傳感器信號sinθ和cosθ計算得到,其中θ為電氣角度。由于該自由活塞發(fā)電機的最大行程為83 mm,電機磁極距為71.2 mm,不同磁極距時位移計算方法不同。通過計數(shù)值K判斷當前磁極距,K的初始值為0,活塞每經(jīng)過一次磁極距交接點,K值就加1。當K為偶數(shù)時,當前磁極距為第一磁極距;位移L計算公式為:
當K為奇數(shù)時,當前磁極距為第二磁極距;位移L計算公式為:
圖13為狀態(tài)切換模塊,程序分噴油點火啟動判斷模塊、電機力輔助模塊、撞缸保護模塊。在自由活塞發(fā)電機啟動過程中,電機處于驅(qū)動狀態(tài),活塞被驅(qū)動壓縮做功,當燃燒室內(nèi)壓力達到設(shè)定值后,噴油點火啟動判斷模塊啟動噴油點火功能,將使能信號傳遞到噴油點火模塊,自由活塞發(fā)動機會在下一個循環(huán)的噴油點火設(shè)定位置噴油點火。撞缸保護模塊同樣運行在啟動過程中,如果電機力過大,活塞會撞到缸蓋,為防止撞缸,撞缸保護模塊會在設(shè)定位置斷開電機力。電機力輔助模塊會在左缸噴油點火后,選取點火后缸壓的峰值,如果峰值大于設(shè)定值,則該缸燃燒,電機力斷開,電機轉(zhuǎn)換為發(fā)電狀態(tài);如果缸壓峰值小于設(shè)定值,則左缸失火,電機力會持續(xù)到右缸的點火位置,若右缸點火后缸壓達到設(shè)定值,則點火成功,電機轉(zhuǎn)換為發(fā)電狀態(tài),否則電機仍然處于驅(qū)動狀態(tài),直到發(fā)動機點火成功。
圖14 噴油點火模塊框圖
圖14為噴油點火模塊,由于噴油和點火動作都是在壓縮過程中執(zhí)行的,所以將噴油點火模塊放在同一個條件結(jié)構(gòu)下。當狀態(tài)切換模塊的噴油點火使能信號傳遞過來時,噴油和點火程序同時被使能。
圖15為噴油控制模塊,該模塊負責(zé)噴油壓力、噴油脈寬、噴油位置的控制。由進氣溫度和掃氣結(jié)束壓縮開始時刻的缸壓計算出噴油量,然后通過噴油量和噴油壓力在噴油器特性曲線查表得到對應(yīng)的噴油脈寬,噴油器在壓縮起始位置噴射。當自由活塞發(fā)電機需要停機時,停機模塊會執(zhí)行,逐步減小噴油脈寬,直到停機。
圖15 噴油控制模塊
圖16為點火控制模塊,控制點火位置和點火能量。點火模塊使能后,活塞經(jīng)過點火位移時,點火控制模塊會按照設(shè)定的Dwell值,通過NI9401輸出PWM波形的點火命令。
圖16 點火控制模塊
a)位移-時間圖 b)缸壓-時間圖圖17 FPLG啟動過程
在自由活塞發(fā)電機上驗證設(shè)計的控制系統(tǒng),樣機最大行程為84 mm,缸徑為50 mm,直線電機啟動力為100 N,噴油壓力為5 MPa,點火延遲時間為1.5 ms,燃油當量比為0.6,點火位置為33 mm,噴油位置為11.3 mm,失火判斷缸壓為1.3 MPa。圖17為自由活塞發(fā)電機啟動過程,9.1 ms時左側(cè)缸壓達到0.9 MPa,噴油點火模塊啟動,電機轉(zhuǎn)換為發(fā)電狀態(tài)?;钊蛴腋走\動過程中,發(fā)動機開始噴油點火, 右缸混合氣體點燃, 缸壓峰值為1.486 MPa,活塞受膨脹力作用,向左運動;左側(cè)氣缸噴油點火,左缸點燃,缸壓峰值1.45 MPa,活塞向右運動;右側(cè)氣缸噴油點火,缸壓峰值為0.946 MPa,右缸失火,電機轉(zhuǎn)換為驅(qū)動狀態(tài),驅(qū)動活塞往復(fù)運動,直到10 ms后活塞再次向右運動,右缸點燃,電機轉(zhuǎn)換為發(fā)電狀態(tài)。
1)利用cRIO9039作為控制器,NI9205、NI9751、NI9751等C系列模塊作為控制板卡,基于LabVIEW編程實現(xiàn)了對自由活塞發(fā)電機的檢測和控制,能夠準確、及時地在設(shè)定位置噴油、點火以及轉(zhuǎn)換直線電機的工作狀態(tài)。
2)設(shè)計電機力輔助控制策略。根據(jù)缸壓信號判斷氣缸失火狀態(tài),直線電機會在氣缸失火時轉(zhuǎn)換為驅(qū)動狀態(tài),保證系統(tǒng)的連續(xù)運行。
3)控制系統(tǒng)采用模塊化設(shè)計,可擴展性高,有利于進一步優(yōu)化控制策略。
參考文獻:
[1]Mikalsen R, Roskilly A P. Performance simulation of a spark ignited free-piston engine generator[J].Applied Thermal Engineering, 2008, 28(14):1726-1733.
[2]Xiao J, Li Q, Huang Z. Motion characteristic of a free piston linear engine[J].Applied energy, 2010, 87(4): 1288-1294.
[3]林濱濱, 肖進, 張磊. 基于Simulink和GT-Power的自由活塞發(fā)動機仿真[J].內(nèi)燃機與動力裝置, 2017, 34(1):17-23.
[4]張磊, 肖進. 基于Matlab/Simulink的自由活塞式發(fā)電機運動仿真分析[J].內(nèi)燃機與動力裝置, 2016, 33(1):59-64.
[5]李慶峰, 劉濤, 肖進,等.基于MC9S12的自由活塞式內(nèi)燃機電控系統(tǒng)設(shè)計[J].內(nèi)燃機工程, 2011, 32(1):19-23.
[6]陳樹學(xué),劉萱. LabVIEW 寶典[M].北京: 電子工業(yè)出版社,2011.4-5.
[7]美國國家儀器公司. CompactRIO開發(fā)者指南[EB/OL].ftp://ftp.ni.com/pub/branches/china/2012CompactRIODevGuide.pdf. 2012.