何謙益, 左正興, 馮慧華, 李 龍, 郭宇耀
(北京理工大學(xué) 機(jī)械與車輛學(xué)院,北京 100081)
基于STM32的自由活塞內(nèi)燃發(fā)電機(jī)電控系統(tǒng)設(shè)計(jì)
何謙益, 左正興, 馮慧華, 李 龍, 郭宇耀
(北京理工大學(xué) 機(jī)械與車輛學(xué)院,北京 100081)
圍繞STM32F407設(shè)計(jì)了符合自由活塞內(nèi)燃發(fā)電機(jī)控制需求的電控系統(tǒng),并匹配設(shè)計(jì)了對(duì)應(yīng)軟件.從樣機(jī)結(jié)構(gòu)特點(diǎn)、運(yùn)行特點(diǎn)入手,分析了控制系統(tǒng)具體功能與需求,提出STM32與FPGA聯(lián)合控制的總體方案,并介紹了處理器單元模塊、數(shù)據(jù)采集模塊、驅(qū)動(dòng)模塊以及通信模塊的硬件設(shè)計(jì).提出通過(guò)運(yùn)行速度調(diào)整后續(xù)控制參數(shù)的控制策略并進(jìn)行仿真,使用軟件分層設(shè)計(jì)思想以及前沿工具STM32CubeMX進(jìn)行ECU軟件開發(fā).最后試驗(yàn)驗(yàn)證了ECU與PC之間串口通信的實(shí)現(xiàn).
自由活塞內(nèi)燃發(fā)電機(jī);電控系統(tǒng);串口通信
自由活塞內(nèi)燃發(fā)電機(jī)(Free-piston Engine Generator,簡(jiǎn)稱FPEG)是由自由活塞內(nèi)燃發(fā)動(dòng)機(jī)與直線電機(jī)耦合而成的一種新型能量轉(zhuǎn)換裝置.得益于其結(jié)構(gòu)的特殊性,具有傳遞路徑短、結(jié)構(gòu)緊湊等優(yōu)點(diǎn),應(yīng)用前景廣闊[1-3].但也因其唯一運(yùn)動(dòng)部件活塞組件不受機(jī)械限制,沒有固定的上下止點(diǎn),給整機(jī)控制帶來(lái)了很大困難.機(jī)器運(yùn)動(dòng)規(guī)律完全取決于其受力狀態(tài),因此,在壓縮沖程中施加給活塞組件的能量要恰好使活塞完成壓縮沖程,能量過(guò)多將活塞位移過(guò)度,甚至損壞發(fā)動(dòng)機(jī),能量不足將導(dǎo)致發(fā)動(dòng)機(jī)失火.所以控制問(wèn)題是關(guān)乎自由活塞內(nèi)燃發(fā)電機(jī)穩(wěn)定運(yùn)行的核心問(wèn)題[4].
現(xiàn)階段對(duì)FPEG控制方面的研究成果大多停留在控制策略層面[5-8],雖然有少數(shù)研究人員對(duì)控制系統(tǒng)展開過(guò)研發(fā)[9],但因當(dāng)時(shí)控制芯片發(fā)展條件所限,所選用的微控制器(Micro Controller Unit,簡(jiǎn)稱MCU)性能遠(yuǎn)落后于當(dāng)前的主流芯片.本文針對(duì)自由活塞內(nèi)燃發(fā)電機(jī)的控制問(wèn)題,提出STM32與FPGA聯(lián)合控制的方案,對(duì)FPEG電子控制系統(tǒng)的硬件進(jìn)行設(shè)計(jì),提出通過(guò)運(yùn)行速度調(diào)整后續(xù)控制參數(shù)的控制策略,在軟件分層思想的指導(dǎo)下,運(yùn)用前沿開發(fā)工具STM32CubeMX進(jìn)行軟件開發(fā),并實(shí)現(xiàn)ECU與上位機(jī)之間的串口通信.
FPEG一種常見的結(jié)構(gòu)如圖1所示.兩個(gè)氣缸分布在左右兩側(cè),中間為直線電機(jī),活塞連桿與電機(jī)中間的動(dòng)子磁芯通過(guò)螺紋固連.FPEG工作時(shí),控制系統(tǒng)需讀取左右兩側(cè)氣缸內(nèi)的壓力、活塞位置等信號(hào),將這些數(shù)據(jù)傳給MCU,計(jì)算出噴油量、點(diǎn)火時(shí)機(jī)等信息,最后通過(guò)驅(qū)動(dòng)電路來(lái)控制執(zhí)行器件工作.此外,電子控制單元(Electronic Control Unit,簡(jiǎn)稱ECU)也需要與上位機(jī)或者傳感器之間進(jìn)行通信.
圖1 FPEG樣機(jī)結(jié)構(gòu)圖
有研究者通過(guò)控制板卡或電機(jī)供應(yīng)商提供的控制平臺(tái)對(duì)自由活塞內(nèi)燃發(fā)電機(jī)進(jìn)行控制[10],但這種方法不能及時(shí)將上一行程采集到的工作狀態(tài)參數(shù)經(jīng)過(guò)計(jì)算運(yùn)用到下一行程控制當(dāng)中,極大地限制了控制策略實(shí)現(xiàn)的可能性.因此,重新設(shè)計(jì)獨(dú)立的FPEG控制系統(tǒng)有著重要意義.
通過(guò)以上分析可知FPEG對(duì)控制系統(tǒng)有如下需求:①較高的信號(hào)處理速度:FPEG沒有飛輪或液壓缸這類儲(chǔ)能機(jī)構(gòu),峰值運(yùn)動(dòng)速度和加速度明顯快于傳統(tǒng)內(nèi)燃機(jī),需要對(duì)其輸入信號(hào)進(jìn)行快速處理;②多個(gè)A/D轉(zhuǎn)換通道:控制系統(tǒng)工作時(shí)需要同時(shí)采集兩側(cè)缸內(nèi)壓力、兩側(cè)缸內(nèi)溫度、兩個(gè)進(jìn)氣流量等多個(gè)模擬量信號(hào);③強(qiáng)大的驅(qū)動(dòng)能力:需要對(duì)噴油器、點(diǎn)火裝置、步進(jìn)電機(jī)等進(jìn)行驅(qū)動(dòng);④滿足多種通信協(xié)議:ECU需要與上位機(jī)和控制板卡之間進(jìn)行通信,必須支持不同種類的通信協(xié)議例如RS-232、RS-485、CAN等.
2.1 硬件總體方案
根據(jù)上述需求,選取意法半導(dǎo)體公司推出的STM32F407控制芯片作為MCU.速度方面,STM32F407使用Cortex-M4內(nèi)核,頻率高達(dá)168 MHz,指令周期僅為5.9 ns,可完全滿足FPEG樣機(jī)25 Hz左右運(yùn)行頻率的需求;模數(shù)轉(zhuǎn)換方面,該芯片擁有3個(gè)12位A/D轉(zhuǎn)換器,多達(dá)24個(gè)通道,滿足FPEG近10項(xiàng)的輸入信號(hào)通道需求;驅(qū)動(dòng)方面,既可以驅(qū)動(dòng)普通開關(guān)式控制器,又可以通過(guò)內(nèi)置DAC或定時(shí)器輸出PWM信號(hào)控制步進(jìn)電機(jī)控制節(jié)氣門開度;通信方面,該芯片擁有多達(dá)15個(gè)接口,其中多個(gè)UART可為RS-232與RS-485協(xié)議下的通信提供硬件平臺(tái),2個(gè)CAN接口為CAN總線通信提供資源.
從功能角度而言STM32芯片更側(cè)重于任務(wù)調(diào)度,相比之下現(xiàn)場(chǎng)可編程門陣列(Field-Programmable Gate Array,簡(jiǎn)稱FPGA)具有更強(qiáng)的計(jì)算能力.所以選用二者聯(lián)合的方案,各取所長(zhǎng),運(yùn)用STM32進(jìn)行任務(wù)調(diào)度,運(yùn)用FPGA進(jìn)行主要計(jì)算或者對(duì)某些位移采集設(shè)備進(jìn)行解碼.此外,STM32也能夠勝任對(duì)自由活塞內(nèi)燃發(fā)電機(jī)控制參數(shù)的計(jì)算,因此,預(yù)留了信號(hào)輸入電路,保證在FPGA出現(xiàn)異常的情況下,可以使STM32承擔(dān)起計(jì)算任務(wù).控制系統(tǒng)硬件架構(gòu)如圖2所示.
2.2 處理器單元模塊
為提高自由活塞內(nèi)燃發(fā)電機(jī)ECU對(duì)不同MCU的兼容性,本文采用ECU處理器單元與各功能模塊分離的方案.處理器單元位于核心板,主要用來(lái)布置MCU芯片的最小系統(tǒng)以及和底板的連接電路,底板上主要用來(lái)放置輸出信號(hào)處理電路、執(zhí)行器驅(qū)動(dòng)電路、FPGA、連接器電路等功能型電路.
2.2.1 電源電路
ECU使用3.3 V電壓為STM32芯片供電,但同時(shí)也需要5 V電壓為其他器件進(jìn)行供電,如測(cè)量活塞位移的SR27A型磁柵位移傳感器等.
設(shè)計(jì)中采用2級(jí)降壓的方式,先將外部電源提供的12 V直流電轉(zhuǎn)換為5 V,一方面作為ECU中一些元器件的驅(qū)動(dòng)電源,另一方面作為輸入電壓,再經(jīng)過(guò)轉(zhuǎn)換輸出3.3 V電壓.若將12 V電壓直接轉(zhuǎn)化為3.3 V電壓,線性三端穩(wěn)壓器往往會(huì)產(chǎn)生巨大熱量,發(fā)生紋波控制問(wèn)題,故選擇先將12 V轉(zhuǎn)為5 V,再轉(zhuǎn)為3.3 V的方案.選用直流降壓轉(zhuǎn)換芯片MP2359來(lái)進(jìn)行第一級(jí)降壓得到5 V電源,正向低壓差穩(wěn)壓器AMS1117-3.3來(lái)進(jìn)行第2級(jí)降壓得到3.3 V電源.
圖2 控制系統(tǒng)硬件架構(gòu)
2.2.2 時(shí)鐘電路
STM32F407內(nèi)部已經(jīng)包含了16 MHz的高速內(nèi)部振蕩電路和32 kHz,但是精度都不高.因?yàn)镕PEG運(yùn)行速度快,對(duì)點(diǎn)火時(shí)刻有著嚴(yán)格的要求,低精度時(shí)鐘會(huì)影響點(diǎn)火時(shí)刻的準(zhǔn)確性,所以在外部增加了高精度25 MHz和32.768 kHz的時(shí)鐘晶振電路,分別為系統(tǒng)的可靠工作提供時(shí)序基準(zhǔn),以及為看門狗和實(shí)時(shí)時(shí)鐘提供驅(qū)動(dòng).
2.3 數(shù)據(jù)采集模塊
測(cè)量缸內(nèi)溫度、缸內(nèi)壓力、進(jìn)氣流量等絕大部分傳感器輸出信號(hào)為模擬量,需要進(jìn)行穩(wěn)壓或模數(shù)轉(zhuǎn)換處理才能供控制芯片使用.模擬信號(hào)被分成2路:一路經(jīng)過(guò)穩(wěn)壓電路直接輸入給STM32F407芯片內(nèi)置ADC,另一路通過(guò)外置模數(shù)轉(zhuǎn)換電路處理后輸入給FPGA.
對(duì)模擬信號(hào)只需進(jìn)行簡(jiǎn)單的分壓與穩(wěn)壓處理,將輸出電壓穩(wěn)定在3.3 V左右,滿足STM32F407芯片輸入電壓條件即可直接輸入.通過(guò)2個(gè)分壓電阻和一個(gè)穩(wěn)壓二極管即可實(shí)現(xiàn)該功能.
在A/D轉(zhuǎn)換電路的設(shè)計(jì)過(guò)程中,將模擬量到數(shù)字量的轉(zhuǎn)換過(guò)程分為2步來(lái)進(jìn)行,第1步是通過(guò)型號(hào)為L(zhǎng)M2901D的電壓比較器來(lái)進(jìn)行鑒幅,將連續(xù)的模擬量轉(zhuǎn)換成階躍式的數(shù)字量,第2步是在施密特觸發(fā)器中將信號(hào)整形成規(guī)則的矩形脈沖.
2.4 執(zhí)行器驅(qū)動(dòng)模塊
FPEG的執(zhí)行器有3類: ①需要大功率來(lái)驅(qū)動(dòng),例如點(diǎn)火系統(tǒng);②普通開關(guān)類執(zhí)行器,例如噴油器、油泵驅(qū)動(dòng)器等;③需要PWM信號(hào)來(lái)驅(qū)動(dòng),例如控制氣門開度的電機(jī).
FPEG樣機(jī)使用商用點(diǎn)火系統(tǒng),由12 V直流電壓驅(qū)動(dòng),選用高速高電壓功率MOS管和IGBT驅(qū)動(dòng)芯片IR2101S可滿足其需求.點(diǎn)火驅(qū)動(dòng)電路原理圖如圖3所示, 大電容和穩(wěn)壓二極管的作用是與HO、LO后面的負(fù)載組成一個(gè)升壓電路,在VB口上產(chǎn)生一個(gè)12 V電壓,芯片會(huì)用VB口的電壓來(lái)驅(qū)動(dòng)NMOS上管.由MCU發(fā)出邏輯信號(hào),經(jīng)LIN或HIN口進(jìn)入驅(qū)動(dòng)芯片,后經(jīng)過(guò)低端推挽輸出極將功率進(jìn)行放大后輸出12 V的電壓對(duì)后面的點(diǎn)火模塊進(jìn)行驅(qū)動(dòng).
圖3 點(diǎn)火驅(qū)動(dòng)電路原理圖
FPEG中的噴油器與燃油泵均可由12 V直流電壓驅(qū)動(dòng),與點(diǎn)火系統(tǒng)相比,對(duì)功率的要求較低,所以驅(qū)動(dòng)信號(hào)可視為開關(guān)信號(hào).因?yàn)閷?duì)噴油器的控制本質(zhì)是對(duì)電磁閥的啟閉進(jìn)行控制,故選用英飛凌公司為驅(qū)動(dòng)感性負(fù)載推出的4通道低側(cè)開關(guān)TLE6228.在電路設(shè)計(jì)上,通過(guò)穩(wěn)壓二極管外接12 V直流電源,運(yùn)用TLE6228的輸出信號(hào)控制穩(wěn)壓二極管通斷,進(jìn)而控制12 V直流電源對(duì)噴油器或燃油泵進(jìn)行驅(qū)動(dòng).
FPEG中控制節(jié)氣門開度的步進(jìn)電機(jī)可由大小為5 V的PWM信號(hào)驅(qū)動(dòng).設(shè)計(jì)中,直接使用ECU發(fā)出PWM信號(hào)來(lái)控制作為開關(guān)的三極管,并在三極管集電極外接5 V直流電源以滿足步進(jìn)電機(jī)的控制需求.
2.5 通信模塊
FPEG要求其ECU工作過(guò)程中與其他多個(gè)單位進(jìn)行通信,其中包括:直線電機(jī)驅(qū)動(dòng)控制卡、上位機(jī)、特定傳感器.
ECU不能驅(qū)動(dòng)工作電壓高達(dá)380 V的直線電機(jī),需要在ECU與驅(qū)動(dòng)控制板卡建立通信,通過(guò)板卡使用外部電源對(duì)直線電機(jī)進(jìn)行控制與驅(qū)動(dòng),這里通過(guò)CAN總線通信實(shí)現(xiàn).ECU也需要和作為上位機(jī)的PC進(jìn)行通信,在PC上顯示FPEG的工作狀況以及實(shí)時(shí)參數(shù),通過(guò)串口通信或者CAN總線通信實(shí)現(xiàn),其中串口通信操作簡(jiǎn)單但是對(duì)環(huán)境的要求相對(duì)嚴(yán)格,例如2個(gè)通訊端之間的距離不宜太長(zhǎng),適合在前期調(diào)試時(shí)使用.RS-485總線通信協(xié)議適用于大部分傳感器,主要為了滿足測(cè)量活塞組件位置的直線位移傳感器與FPGA的通信需求.自由活塞內(nèi)燃發(fā)電機(jī)ECU的通信模塊架構(gòu)如圖4所示.
圖4 ECU通信模塊架構(gòu)圖
3.1 軟件開發(fā)思想
在自由活塞內(nèi)燃發(fā)電機(jī) ECU軟件開發(fā)過(guò)程中,運(yùn)用了軟件分層設(shè)計(jì)的思想.分層思想將系統(tǒng)按不同職責(zé)組織成有序?qū)哟?,其中每一層僅提供若干服務(wù)供其相鄰的上層使用,僅調(diào)用其相鄰下層的服務(wù).根據(jù)中航工業(yè)洛陽(yáng)電光設(shè)備研究所孫磊的觀點(diǎn),分層架構(gòu)通常在邏輯上進(jìn)行垂直層次劃分,在從下到上依次包括:驅(qū)動(dòng)層、基礎(chǔ)層、中間層、應(yīng)用層[11].這種分層方式適用于手機(jī)這種功能十分齊全的嵌入式系統(tǒng),對(duì)于自由活塞內(nèi)燃發(fā)電機(jī)電子控制單元,暫不需要實(shí)現(xiàn)如此復(fù)雜的功能,所以在軟件分層上可以進(jìn)行一定簡(jiǎn)化,具體分為:驅(qū)動(dòng)層、基礎(chǔ)層、應(yīng)用層.
3.2 驅(qū)動(dòng)層軟件
STM32CubeMX是2016年以來(lái)被STM32開發(fā)者廣泛使用的一個(gè)新工具,由ST公司原創(chuàng),目的是減少開發(fā)工作時(shí)間和費(fèi)用.從本質(zhì)上說(shuō)STM32CubeMX是一個(gè)圖形化的C代碼自動(dòng)生成環(huán)境.在編寫ECU底層驅(qū)動(dòng)程序時(shí),使用STM32CubeMX工具來(lái)進(jìn)行輔助編程.
首先將外部25 MHz的晶振經(jīng)過(guò)倍頻與分頻得到多種頻率的時(shí)鐘脈沖,其中:168 MHz的時(shí)鐘提供給內(nèi)核與系統(tǒng)總線AHB,AHB在ECU與上位機(jī)串口通信時(shí)為直接內(nèi)存存取端口 (Direct Memory Access,簡(jiǎn)稱DMA)與內(nèi)置存儲(chǔ)器提供總線通道;42 MHz的APB1時(shí)鐘,為FPEG電控單元與上位機(jī)、傳感器之間的通信提供時(shí)鐘脈沖;84 MHz的APB2時(shí)鐘,為所有傳感器的模數(shù)轉(zhuǎn)換、所有控制信號(hào)的輸出提供時(shí)鐘脈沖.
其次,根據(jù)FPEG的控制需求對(duì)各外部設(shè)備進(jìn)行配置,例如根據(jù)各傳感器額定參數(shù),確定ADC的分辨率,其中大部分設(shè)置為10位;根據(jù)火花塞驅(qū)動(dòng)電路,將相應(yīng)的GPIO設(shè)置為低速下拉輸出模式等.
3.3 控制軟件
控制程序在ECU軟件整體架構(gòu)中位于應(yīng)用層與基礎(chǔ)層,建立在驅(qū)動(dòng)層之上,其核心是控制策略.本文采用通過(guò)速度調(diào)整后續(xù)點(diǎn)火時(shí)刻、噴油量的控制策略,旨在彌補(bǔ)某沖程循環(huán)變動(dòng)導(dǎo)致的擾動(dòng),維持樣機(jī)穩(wěn)定運(yùn)行.根據(jù)樣機(jī)運(yùn)行過(guò)程中若受循環(huán)變動(dòng)的影響,對(duì)本行程異側(cè)氣缸點(diǎn)火時(shí)機(jī)、下行程同側(cè)氣缸的噴油量與點(diǎn)火時(shí)機(jī)進(jìn)行調(diào)整.當(dāng)檢測(cè)到樣機(jī)運(yùn)行受影響時(shí),異側(cè)氣缸內(nèi)已完成油氣混合,暫無(wú)法對(duì)異側(cè)氣缸噴油、進(jìn)氣量進(jìn)行修正.以左側(cè)氣缸發(fā)生循環(huán)變動(dòng)為例,若左側(cè)氣缸運(yùn)行速度慢于預(yù)期,則控制本行程右側(cè)點(diǎn)火時(shí)刻提前,下行程左側(cè)噴油量增加、點(diǎn)火時(shí)刻提前.其控制策略邏輯如圖5所示.對(duì)控制模型進(jìn)行仿真結(jié)果見圖6.從圖中可以看出當(dāng)機(jī)器運(yùn)行0.15 s后,由于循環(huán)變動(dòng)導(dǎo)致左側(cè)缸內(nèi)燃燒不充分,能量不足,最大速度明顯低于前3個(gè)循環(huán),但通過(guò)提高噴油量等措施進(jìn)行能量補(bǔ)償,使下一個(gè)循環(huán)機(jī)器工作恢復(fù)正常.
圖5 控制策略邏輯圖
圖6 控制模型仿真結(jié)果
3.4 串口通信
本ECU使用USART1與上位機(jī)進(jìn)行通信.USART通信軟件需要初始化串口通信模塊,包括:串口時(shí)鐘的開啟、GPIO的設(shè)置、NVIC的設(shè)置、DMA的配置、奇偶校驗(yàn)等的配置,最后使能串口中斷.當(dāng)數(shù)據(jù)接收或發(fā)送中斷請(qǐng)求發(fā)生時(shí),ECU會(huì)進(jìn)入中斷函數(shù)完成數(shù)據(jù)的接收和發(fā)送,之后清除中斷標(biāo)志位,等待下一輪中斷事件.
4.1 串口讀寫函數(shù)
上位機(jī)軟件的設(shè)計(jì)在LabView環(huán)境中進(jìn)行.在上位機(jī)與下位機(jī)通信時(shí),需要特定的通信協(xié)議來(lái)進(jìn)行二者信息的對(duì)接,本控制系統(tǒng)規(guī)定串口每次發(fā)送12字節(jié)的字符串:其中首個(gè)字節(jié)為起始幀,數(shù)據(jù)上行時(shí)為0xFF,下行時(shí)為0xFE;第2與第3個(gè)字節(jié)為標(biāo)識(shí)區(qū);之后8個(gè)字節(jié)為數(shù)據(jù)位;最后一個(gè)為校驗(yàn)字節(jié),即前面11個(gè)字節(jié)之和對(duì)256的余數(shù).
4.2 串口通信試驗(yàn)驗(yàn)證
用ECU向上位機(jī)按通信協(xié)議發(fā)送一串字符,得到結(jié)果如圖7所示,其中,左邊為上位機(jī)串口收發(fā)程序的前面板,右邊為串口調(diào)試助手,顯示PC串口實(shí)際接收到的數(shù)據(jù).從圖中可以看出,ECU發(fā)送的12字節(jié)十六進(jìn)制字符串校被上位機(jī)成功接收.
圖7 串口通信PC接收正確數(shù)據(jù)驗(yàn)證圖
再用ECU向上位機(jī)發(fā)送不符合通信協(xié)議的字符串,其中校驗(yàn)位由72改為了88,其結(jié)果如圖8所示.可以看出已經(jīng)有一個(gè)由相應(yīng)的字符串進(jìn)入PC串口,但是沒有通過(guò)和校驗(yàn)函數(shù),上位機(jī)程序拒絕接收.通過(guò)對(duì)比證明了ECU與PC實(shí)現(xiàn)了串口通信.
圖8 串口通信PC接收錯(cuò)誤數(shù)據(jù)驗(yàn)證圖
1)提出MCU與計(jì)算模塊FPGA聯(lián)合的新方案,圍繞微控制器STM32F407,結(jié)合自由活塞內(nèi)燃發(fā)電機(jī)控制特點(diǎn),對(duì)控制系統(tǒng)進(jìn)行了硬件設(shè)計(jì)與制作.
2)提出通過(guò)速度調(diào)整后續(xù)點(diǎn)火時(shí)刻、噴油量
和進(jìn)氣量的控制策略,并進(jìn)行仿真驗(yàn)證;運(yùn)用分層思想進(jìn)行ECU軟件設(shè)計(jì),并在驅(qū)動(dòng)程序的開發(fā)中使用新工具STM32CubeMX.
3)使用核心板與底板分離的方案,適應(yīng)能力強(qiáng),能夠很好地應(yīng)對(duì)控制芯片領(lǐng)域快速的更新?lián)Q代,方便未來(lái)對(duì)FPEG控制系統(tǒng)的設(shè)計(jì).
[1] Mikalsen R, Roskilly A P. Performance simulation of a spark ignited free-piston engine generator [J]. Applied Thermal Engineering, 2008, 28(15):1726-1733.
[2] Mao J, Zuo Z, Feng H. Parameters coupling designation of diesel free-piston engine with linear alternator [J]. Applied Energy, 2011, 88(12):4577-4589.
[3] Mao J, Zuo Z, Liu D. Numerical simulation of a park ignited two-stroke free-piston engine generator[J]. Journal of Beijing Institute of Technology, 2009, 1(3):283-297.
[4] 田春來(lái). 直線電機(jī)式自由活塞發(fā)動(dòng)機(jī)運(yùn)動(dòng)特性與控制策略研究[D]. 北京:北京理工大學(xué), 2012.
[5] Mikalsen R, Roskilly A P. An investigation into the free-piston engine concept and its potential for high efficiency and low emissions power generator [D]. Newcastle upon Tyne, UK: Newcastle University,2008.
[6] Mikalsen R, Roskilly A P. The control of a free-piston engine generator. Part 1: Fundamental analyses [J]. Applied Energy, 2010, 87(4):1273-1280.
[7] Mikalsen R, Roskilly A P. The control of a free-piston engine generator. Part 2: Engine dynamics and piston motion contro [J]. Applied Energy, 2010, 87(4):1281-1287.
[8] 唐玉梅. 內(nèi)燃—直線發(fā)電集成動(dòng)力系統(tǒng)中自由活塞發(fā)動(dòng)機(jī)空燃比與點(diǎn)火時(shí)刻的控制[D]. 江蘇:南京理工大學(xué), 2008.
[9] 閆紅力,徐 兵,楊華勇. 基于DSP的液壓自由活塞發(fā)動(dòng)機(jī)控制器的設(shè)計(jì)[J]. 機(jī)床與液壓, 2006(4):115-116
[10]王夢(mèng)秋. 點(diǎn)燃式FPEG啟動(dòng)過(guò)程仿真與實(shí)驗(yàn)研究[D]. 北京:北京理工大學(xué), 2014.
[11]孫 磊. 嵌入式軟件分層架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)[J]. 軟件導(dǎo)刊,2014,13(6):14-15.
Electronic Control System Design of the Free-Piston EngineGenerator based on STM32
HE Qian-yi, ZUO Zheng-xing, FENG Hui-hua, LI Long, GUO Yu-yao
(School of Mechanical Engineering, Beijing Institute of Technology, Beijing 100081, China)
Based on the STM32F407, an electronic control unit (ECU) and its corresponding software were designed for its electronic control system of a Free-Piston Engine Generator (FPEG). According to the features of the prototype in its structure and operation modes, the specific functions and requirements of the system were analyzed and a general control scheme was proposed of combining the STM32 with the FPGA. The hardware design of such modules of the system was introduced as a processor, a data acquisition, a driver and a communication. The strategy of adjusting the subsequent control parameters was proposed based on the operation speed, and the simulation was conducted. By means of the layered structure design concept, the ECU software was developed with an advanced tool, STM32CubeMX. The feasibility and robustness of the serial communication is verified between the ECU and the principal computer.
free-piston engine generator; electronic control system; serial communication
1009-4687(2017)02-0001-06
2016-12-16
何謙益(1991-),男,碩士,研究方向?yàn)榘l(fā)動(dòng)機(jī)電子控制.
TK441
A