国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于STM32的自由活塞內燃發(fā)電機電控系統設計

2017-07-07 12:30:38何謙益左正興馮慧華郭宇耀
車輛與動力技術 2017年2期
關鍵詞:上位串口活塞

何謙益, 左正興, 馮慧華, 李 龍, 郭宇耀

(北京理工大學 機械與車輛學院,北京 100081)

基于STM32的自由活塞內燃發(fā)電機電控系統設計

何謙益, 左正興, 馮慧華, 李 龍, 郭宇耀

(北京理工大學 機械與車輛學院,北京 100081)

圍繞STM32F407設計了符合自由活塞內燃發(fā)電機控制需求的電控系統,并匹配設計了對應軟件.從樣機結構特點、運行特點入手,分析了控制系統具體功能與需求,提出STM32與FPGA聯合控制的總體方案,并介紹了處理器單元模塊、數據采集模塊、驅動模塊以及通信模塊的硬件設計.提出通過運行速度調整后續(xù)控制參數的控制策略并進行仿真,使用軟件分層設計思想以及前沿工具STM32CubeMX進行ECU軟件開發(fā).最后試驗驗證了ECU與PC之間串口通信的實現.

自由活塞內燃發(fā)電機;電控系統;串口通信

自由活塞內燃發(fā)電機(Free-piston Engine Generator,簡稱FPEG)是由自由活塞內燃發(fā)動機與直線電機耦合而成的一種新型能量轉換裝置.得益于其結構的特殊性,具有傳遞路徑短、結構緊湊等優(yōu)點,應用前景廣闊[1-3].但也因其唯一運動部件活塞組件不受機械限制,沒有固定的上下止點,給整機控制帶來了很大困難.機器運動規(guī)律完全取決于其受力狀態(tài),因此,在壓縮沖程中施加給活塞組件的能量要恰好使活塞完成壓縮沖程,能量過多將活塞位移過度,甚至損壞發(fā)動機,能量不足將導致發(fā)動機失火.所以控制問題是關乎自由活塞內燃發(fā)電機穩(wěn)定運行的核心問題[4].

現階段對FPEG控制方面的研究成果大多停留在控制策略層面[5-8],雖然有少數研究人員對控制系統展開過研發(fā)[9],但因當時控制芯片發(fā)展條件所限,所選用的微控制器(Micro Controller Unit,簡稱MCU)性能遠落后于當前的主流芯片.本文針對自由活塞內燃發(fā)電機的控制問題,提出STM32與FPGA聯合控制的方案,對FPEG電子控制系統的硬件進行設計,提出通過運行速度調整后續(xù)控制參數的控制策略,在軟件分層思想的指導下,運用前沿開發(fā)工具STM32CubeMX進行軟件開發(fā),并實現ECU與上位機之間的串口通信.

1 控制系統需求分析

FPEG一種常見的結構如圖1所示.兩個氣缸分布在左右兩側,中間為直線電機,活塞連桿與電機中間的動子磁芯通過螺紋固連.FPEG工作時,控制系統需讀取左右兩側氣缸內的壓力、活塞位置等信號,將這些數據傳給MCU,計算出噴油量、點火時機等信息,最后通過驅動電路來控制執(zhí)行器件工作.此外,電子控制單元(Electronic Control Unit,簡稱ECU)也需要與上位機或者傳感器之間進行通信.

圖1 FPEG樣機結構圖

有研究者通過控制板卡或電機供應商提供的控制平臺對自由活塞內燃發(fā)電機進行控制[10],但這種方法不能及時將上一行程采集到的工作狀態(tài)參數經過計算運用到下一行程控制當中,極大地限制了控制策略實現的可能性.因此,重新設計獨立的FPEG控制系統有著重要意義.

通過以上分析可知FPEG對控制系統有如下需求:①較高的信號處理速度:FPEG沒有飛輪或液壓缸這類儲能機構,峰值運動速度和加速度明顯快于傳統內燃機,需要對其輸入信號進行快速處理;②多個A/D轉換通道:控制系統工作時需要同時采集兩側缸內壓力、兩側缸內溫度、兩個進氣流量等多個模擬量信號;③強大的驅動能力:需要對噴油器、點火裝置、步進電機等進行驅動;④滿足多種通信協議:ECU需要與上位機和控制板卡之間進行通信,必須支持不同種類的通信協議例如RS-232、RS-485、CAN等.

2 ECU硬件設計

2.1 硬件總體方案

根據上述需求,選取意法半導體公司推出的STM32F407控制芯片作為MCU.速度方面,STM32F407使用Cortex-M4內核,頻率高達168 MHz,指令周期僅為5.9 ns,可完全滿足FPEG樣機25 Hz左右運行頻率的需求;模數轉換方面,該芯片擁有3個12位A/D轉換器,多達24個通道,滿足FPEG近10項的輸入信號通道需求;驅動方面,既可以驅動普通開關式控制器,又可以通過內置DAC或定時器輸出PWM信號控制步進電機控制節(jié)氣門開度;通信方面,該芯片擁有多達15個接口,其中多個UART可為RS-232與RS-485協議下的通信提供硬件平臺,2個CAN接口為CAN總線通信提供資源.

從功能角度而言STM32芯片更側重于任務調度,相比之下現場可編程門陣列(Field-Programmable Gate Array,簡稱FPGA)具有更強的計算能力.所以選用二者聯合的方案,各取所長,運用STM32進行任務調度,運用FPGA進行主要計算或者對某些位移采集設備進行解碼.此外,STM32也能夠勝任對自由活塞內燃發(fā)電機控制參數的計算,因此,預留了信號輸入電路,保證在FPGA出現異常的情況下,可以使STM32承擔起計算任務.控制系統硬件架構如圖2所示.

2.2 處理器單元模塊

為提高自由活塞內燃發(fā)電機ECU對不同MCU的兼容性,本文采用ECU處理器單元與各功能模塊分離的方案.處理器單元位于核心板,主要用來布置MCU芯片的最小系統以及和底板的連接電路,底板上主要用來放置輸出信號處理電路、執(zhí)行器驅動電路、FPGA、連接器電路等功能型電路.

2.2.1 電源電路

ECU使用3.3 V電壓為STM32芯片供電,但同時也需要5 V電壓為其他器件進行供電,如測量活塞位移的SR27A型磁柵位移傳感器等.

設計中采用2級降壓的方式,先將外部電源提供的12 V直流電轉換為5 V,一方面作為ECU中一些元器件的驅動電源,另一方面作為輸入電壓,再經過轉換輸出3.3 V電壓.若將12 V電壓直接轉化為3.3 V電壓,線性三端穩(wěn)壓器往往會產生巨大熱量,發(fā)生紋波控制問題,故選擇先將12 V轉為5 V,再轉為3.3 V的方案.選用直流降壓轉換芯片MP2359來進行第一級降壓得到5 V電源,正向低壓差穩(wěn)壓器AMS1117-3.3來進行第2級降壓得到3.3 V電源.

圖2 控制系統硬件架構

2.2.2 時鐘電路

STM32F407內部已經包含了16 MHz的高速內部振蕩電路和32 kHz,但是精度都不高.因為FPEG運行速度快,對點火時刻有著嚴格的要求,低精度時鐘會影響點火時刻的準確性,所以在外部增加了高精度25 MHz和32.768 kHz的時鐘晶振電路,分別為系統的可靠工作提供時序基準,以及為看門狗和實時時鐘提供驅動.

2.3 數據采集模塊

測量缸內溫度、缸內壓力、進氣流量等絕大部分傳感器輸出信號為模擬量,需要進行穩(wěn)壓或模數轉換處理才能供控制芯片使用.模擬信號被分成2路:一路經過穩(wěn)壓電路直接輸入給STM32F407芯片內置ADC,另一路通過外置模數轉換電路處理后輸入給FPGA.

對模擬信號只需進行簡單的分壓與穩(wěn)壓處理,將輸出電壓穩(wěn)定在3.3 V左右,滿足STM32F407芯片輸入電壓條件即可直接輸入.通過2個分壓電阻和一個穩(wěn)壓二極管即可實現該功能.

在A/D轉換電路的設計過程中,將模擬量到數字量的轉換過程分為2步來進行,第1步是通過型號為LM2901D的電壓比較器來進行鑒幅,將連續(xù)的模擬量轉換成階躍式的數字量,第2步是在施密特觸發(fā)器中將信號整形成規(guī)則的矩形脈沖.

2.4 執(zhí)行器驅動模塊

FPEG的執(zhí)行器有3類: ①需要大功率來驅動,例如點火系統;②普通開關類執(zhí)行器,例如噴油器、油泵驅動器等;③需要PWM信號來驅動,例如控制氣門開度的電機.

FPEG樣機使用商用點火系統,由12 V直流電壓驅動,選用高速高電壓功率MOS管和IGBT驅動芯片IR2101S可滿足其需求.點火驅動電路原理圖如圖3所示, 大電容和穩(wěn)壓二極管的作用是與HO、LO后面的負載組成一個升壓電路,在VB口上產生一個12 V電壓,芯片會用VB口的電壓來驅動NMOS上管.由MCU發(fā)出邏輯信號,經LIN或HIN口進入驅動芯片,后經過低端推挽輸出極將功率進行放大后輸出12 V的電壓對后面的點火模塊進行驅動.

圖3 點火驅動電路原理圖

FPEG中的噴油器與燃油泵均可由12 V直流電壓驅動,與點火系統相比,對功率的要求較低,所以驅動信號可視為開關信號.因為對噴油器的控制本質是對電磁閥的啟閉進行控制,故選用英飛凌公司為驅動感性負載推出的4通道低側開關TLE6228.在電路設計上,通過穩(wěn)壓二極管外接12 V直流電源,運用TLE6228的輸出信號控制穩(wěn)壓二極管通斷,進而控制12 V直流電源對噴油器或燃油泵進行驅動.

FPEG中控制節(jié)氣門開度的步進電機可由大小為5 V的PWM信號驅動.設計中,直接使用ECU發(fā)出PWM信號來控制作為開關的三極管,并在三極管集電極外接5 V直流電源以滿足步進電機的控制需求.

2.5 通信模塊

FPEG要求其ECU工作過程中與其他多個單位進行通信,其中包括:直線電機驅動控制卡、上位機、特定傳感器.

ECU不能驅動工作電壓高達380 V的直線電機,需要在ECU與驅動控制板卡建立通信,通過板卡使用外部電源對直線電機進行控制與驅動,這里通過CAN總線通信實現.ECU也需要和作為上位機的PC進行通信,在PC上顯示FPEG的工作狀況以及實時參數,通過串口通信或者CAN總線通信實現,其中串口通信操作簡單但是對環(huán)境的要求相對嚴格,例如2個通訊端之間的距離不宜太長,適合在前期調試時使用.RS-485總線通信協議適用于大部分傳感器,主要為了滿足測量活塞組件位置的直線位移傳感器與FPGA的通信需求.自由活塞內燃發(fā)電機ECU的通信模塊架構如圖4所示.

圖4 ECU通信模塊架構圖

3 ECU軟件設計

3.1 軟件開發(fā)思想

在自由活塞內燃發(fā)電機 ECU軟件開發(fā)過程中,運用了軟件分層設計的思想.分層思想將系統按不同職責組織成有序層次,其中每一層僅提供若干服務供其相鄰的上層使用,僅調用其相鄰下層的服務.根據中航工業(yè)洛陽電光設備研究所孫磊的觀點,分層架構通常在邏輯上進行垂直層次劃分,在從下到上依次包括:驅動層、基礎層、中間層、應用層[11].這種分層方式適用于手機這種功能十分齊全的嵌入式系統,對于自由活塞內燃發(fā)電機電子控制單元,暫不需要實現如此復雜的功能,所以在軟件分層上可以進行一定簡化,具體分為:驅動層、基礎層、應用層.

3.2 驅動層軟件

STM32CubeMX是2016年以來被STM32開發(fā)者廣泛使用的一個新工具,由ST公司原創(chuàng),目的是減少開發(fā)工作時間和費用.從本質上說STM32CubeMX是一個圖形化的C代碼自動生成環(huán)境.在編寫ECU底層驅動程序時,使用STM32CubeMX工具來進行輔助編程.

首先將外部25 MHz的晶振經過倍頻與分頻得到多種頻率的時鐘脈沖,其中:168 MHz的時鐘提供給內核與系統總線AHB,AHB在ECU與上位機串口通信時為直接內存存取端口 (Direct Memory Access,簡稱DMA)與內置存儲器提供總線通道;42 MHz的APB1時鐘,為FPEG電控單元與上位機、傳感器之間的通信提供時鐘脈沖;84 MHz的APB2時鐘,為所有傳感器的模數轉換、所有控制信號的輸出提供時鐘脈沖.

其次,根據FPEG的控制需求對各外部設備進行配置,例如根據各傳感器額定參數,確定ADC的分辨率,其中大部分設置為10位;根據火花塞驅動電路,將相應的GPIO設置為低速下拉輸出模式等.

3.3 控制軟件

控制程序在ECU軟件整體架構中位于應用層與基礎層,建立在驅動層之上,其核心是控制策略.本文采用通過速度調整后續(xù)點火時刻、噴油量的控制策略,旨在彌補某沖程循環(huán)變動導致的擾動,維持樣機穩(wěn)定運行.根據樣機運行過程中若受循環(huán)變動的影響,對本行程異側氣缸點火時機、下行程同側氣缸的噴油量與點火時機進行調整.當檢測到樣機運行受影響時,異側氣缸內已完成油氣混合,暫無法對異側氣缸噴油、進氣量進行修正.以左側氣缸發(fā)生循環(huán)變動為例,若左側氣缸運行速度慢于預期,則控制本行程右側點火時刻提前,下行程左側噴油量增加、點火時刻提前.其控制策略邏輯如圖5所示.對控制模型進行仿真結果見圖6.從圖中可以看出當機器運行0.15 s后,由于循環(huán)變動導致左側缸內燃燒不充分,能量不足,最大速度明顯低于前3個循環(huán),但通過提高噴油量等措施進行能量補償,使下一個循環(huán)機器工作恢復正常.

圖5 控制策略邏輯圖

圖6 控制模型仿真結果

3.4 串口通信

本ECU使用USART1與上位機進行通信.USART通信軟件需要初始化串口通信模塊,包括:串口時鐘的開啟、GPIO的設置、NVIC的設置、DMA的配置、奇偶校驗等的配置,最后使能串口中斷.當數據接收或發(fā)送中斷請求發(fā)生時,ECU會進入中斷函數完成數據的接收和發(fā)送,之后清除中斷標志位,等待下一輪中斷事件.

4 上位機程序開發(fā)與驗證

4.1 串口讀寫函數

上位機軟件的設計在LabView環(huán)境中進行.在上位機與下位機通信時,需要特定的通信協議來進行二者信息的對接,本控制系統規(guī)定串口每次發(fā)送12字節(jié)的字符串:其中首個字節(jié)為起始幀,數據上行時為0xFF,下行時為0xFE;第2與第3個字節(jié)為標識區(qū);之后8個字節(jié)為數據位;最后一個為校驗字節(jié),即前面11個字節(jié)之和對256的余數.

4.2 串口通信試驗驗證

用ECU向上位機按通信協議發(fā)送一串字符,得到結果如圖7所示,其中,左邊為上位機串口收發(fā)程序的前面板,右邊為串口調試助手,顯示PC串口實際接收到的數據.從圖中可以看出,ECU發(fā)送的12字節(jié)十六進制字符串校被上位機成功接收.

圖7 串口通信PC接收正確數據驗證圖

再用ECU向上位機發(fā)送不符合通信協議的字符串,其中校驗位由72改為了88,其結果如圖8所示.可以看出已經有一個由相應的字符串進入PC串口,但是沒有通過和校驗函數,上位機程序拒絕接收.通過對比證明了ECU與PC實現了串口通信.

圖8 串口通信PC接收錯誤數據驗證圖

5 總 結

1)提出MCU與計算模塊FPGA聯合的新方案,圍繞微控制器STM32F407,結合自由活塞內燃發(fā)電機控制特點,對控制系統進行了硬件設計與制作.

2)提出通過速度調整后續(xù)點火時刻、噴油量

和進氣量的控制策略,并進行仿真驗證;運用分層思想進行ECU軟件設計,并在驅動程序的開發(fā)中使用新工具STM32CubeMX.

3)使用核心板與底板分離的方案,適應能力強,能夠很好地應對控制芯片領域快速的更新換代,方便未來對FPEG控制系統的設計.

[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] 田春來. 直線電機式自由活塞發(fā)動機運動特性與控制策略研究[D]. 北京:北京理工大學, 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] 唐玉梅. 內燃—直線發(fā)電集成動力系統中自由活塞發(fā)動機空燃比與點火時刻的控制[D]. 江蘇:南京理工大學, 2008.

[9] 閆紅力,徐 兵,楊華勇. 基于DSP的液壓自由活塞發(fā)動機控制器的設計[J]. 機床與液壓, 2006(4):115-116

[10]王夢秋. 點燃式FPEG啟動過程仿真與實驗研究[D]. 北京:北京理工大學, 2014.

[11]孫 磊. 嵌入式軟件分層架構設計與實現[J]. 軟件導刊,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-),男,碩士,研究方向為發(fā)動機電子控制.

TK441

A

猜你喜歡
上位串口活塞
一種活塞擠壓式室內通風設備的研發(fā)與應用
淺談AB PLC串口跟RFID傳感器的通訊應用
特斯拉 風云之老阿姨上位
車迷(2018年12期)2018-07-26 00:42:22
“三扶”齊上位 決戰(zhàn)必打贏
基于ZigBee和VC上位機的教室智能監(jiān)測管理系統
USB接口的多串口數據并行接收方法探索
基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
地礦測繪(2015年3期)2015-12-22 06:27:26
以新思路促推現代農業(yè)上位
學習月刊(2015年3期)2015-07-09 03:51:04
基于并行控制的FPGA多串口拓展實現
KS Kolbenschmidt公司的新型鋼活塞
洛扎县| 托克托县| 峨眉山市| 平定县| 托里县| 武夷山市| 昌江| 凤凰县| 盐池县| 常山县| 池州市| 宜章县| 江口县| 巴塘县| 万全县| 广平县| 砚山县| 隆回县| 平武县| 盐亭县| 武穴市| 怀化市| 高安市| 灵寿县| 贺州市| 北票市| 姚安县| 洛宁县| 彩票| 泰宁县| 洛扎县| 沙河市| 龙岩市| 韶山市| 科技| 曲沃县| 鲁山县| 德兴市| 新蔡县| 赣州市| 兴化市|