專利名稱:分層式發(fā)動機電子控制程序構(gòu)架的制作方法
技術(shù)領(lǐng)域:
發(fā)動機電子控制程序軟件是發(fā)動機電子控制系統(tǒng)的核心。本發(fā)明系適用于一切發(fā)動機電子控制單元的軟件。
背景技術(shù):
隨著大量的嵌入式產(chǎn)品涌向市場,汽車產(chǎn)品開發(fā)商將面臨著激烈的市場競爭。誰能在最短的時間內(nèi)推出高質(zhì)量的產(chǎn)品,誰就能搶占先機??s短開發(fā)周期,提高開發(fā)效率,成為汽車產(chǎn)品開發(fā)商重點關(guān)注的問題。在開發(fā)和管理與應(yīng)用不相關(guān)的控制單元軟件時,尤其是像車用嵌入式軟件,存在重復的巨額開銷。隨著新的算法、模型和芯片的引入,對軟件的改動較大,甚至需要完全重新開發(fā)。
上述問題歸結(jié)到一點,就是車用控制軟件缺乏重用性和并行性。本發(fā)明基于上述需求提出一種分層式發(fā)動機電子控制程序構(gòu)架,通過適當?shù)脑O(shè)置和軟件的編程,可實現(xiàn)對各種傳感器信號和狀態(tài)的采集、對混合氣形成的控制、對混合氣點燃以及對發(fā)動機其它特殊功能與狀態(tài)的控制。
發(fā)明內(nèi)容
程序框架采用模塊化設(shè)計,并設(shè)置配置選項,方便實現(xiàn)軟件系統(tǒng)的可裁剪特性。軟件實現(xiàn)方法采用分層思想。
從對象的角度出發(fā),在嵌入式軟件范疇內(nèi)可分為兩部分,即底層和應(yīng)用層。而底層則劃分為三層底層基礎(chǔ)程序進行的是對物理層資源的直接控制,基于物理的寄存器控制,分為控制操作、狀態(tài)操作、數(shù)據(jù)操作;交互層程序處理的是接口電路,通過調(diào)用底層函數(shù)接口,對板上的接口電路芯片進行控制,進而對相關(guān)的外圍驅(qū)動、輸入電路實施有效控制;診斷層程序利用硬件電路提供的診斷功能實現(xiàn)各個輸入輸出端口的底層故障診斷功能。應(yīng)用層程序考慮的是應(yīng)用策略的實施,通過調(diào)用交互層函數(shù)接口,驅(qū)動同一應(yīng)用層面的執(zhí)行器件,同時從傳感器等信號輸入器件上得到數(shù)據(jù)輸入,根據(jù)功能也可以劃分為應(yīng)用層接口層、應(yīng)用層診斷層和應(yīng)用層控制層三個子層面。
底層基礎(chǔ)程序的構(gòu)建主要是基于發(fā)動機電子控制單元的核心控制主芯片內(nèi)部資源和功能,建立完整的功能函數(shù)程序,采用宏定義的方式提供函數(shù)的完整參數(shù)列表,方便調(diào)用時對可選參數(shù)的取值范圍進行查找。對外提供的形式為接口函數(shù)。依據(jù)函數(shù)的相關(guān)性進行歸類,分別建立不同的庫文件。以Freescale的16位單片機9s12dp512為例,分別建立以下功能驅(qū)動函數(shù)MCU的初始化函數(shù)(包括時鐘的設(shè)置、看門狗、RTI、端口的初始化),ECT模塊函數(shù)(包括模塊的初始化、時鐘的設(shè)置、輸入捕捉的讀取、輸出比較的設(shè)置、中斷的開關(guān)控制、中斷入口),SPI模塊函數(shù)(包括模塊的初始化、波特率設(shè)置、數(shù)據(jù)極性的設(shè)置、發(fā)送函數(shù)、接收函數(shù)),PWM模塊(包括模塊的初始化,時鐘源的選擇、占空比的設(shè)置、PWM的使能與關(guān)閉),AD模塊(包括AD的初始化,AD數(shù)據(jù)的讀取),IO設(shè)置函數(shù)(包括IO的初始化,狀態(tài)的讀取、電平的設(shè)置),中斷模塊函數(shù)(包括中斷功能的初始化,中斷的入口函數(shù)),K線模塊函數(shù),F(xiàn)lash、EEPROM函數(shù),CAN模塊函數(shù)。
底層交互層程序的構(gòu)建主要是基于發(fā)動機電控單元核心控制主芯片以外的芯片資源和功能,建立完整的功能函數(shù)程序,采用宏定義的方式提供函數(shù)的完整參數(shù)列表,方便調(diào)用時對參數(shù)范圍的查找和確定。對外接口函數(shù)采用針對電控單元管腳的方式,即每個功能有哪些管腳可以實現(xiàn),則將管腳號作為參數(shù)提供給函數(shù),即可實現(xiàn)該功能在該管腳上的實現(xiàn)。依據(jù)函數(shù)的硬件相關(guān)性予以劃分,分別建立不同的庫文件。以某電控單元為例,建立以下功能函數(shù)電源控制函數(shù)(常規(guī)電源和高電壓),小電流低位開關(guān)控制函數(shù)(6路),大電流低位開關(guān)控制函數(shù)(18路),氧傳感器控制函數(shù)(包括加熱控制,AD和通訊),步進電機控制函數(shù),熱偶傳感器控制函數(shù)。底層診斷層程序也是針對發(fā)動機電控單元管腳的,不同類型的管腳提供不同的診斷范疇,主要包括驅(qū)動線圈的開路短路、傳感器開路短路和溫度過高等。以某電控單元為例,包括初始化函數(shù)(包括診斷和通訊功能的初始化),模擬量診斷函數(shù),整形模塊診斷函數(shù),高速響應(yīng)電磁閥低位開關(guān)診斷函數(shù)(12路),點火線圈低位開關(guān)診斷函數(shù)(6路),小電流低位開關(guān)診斷函數(shù)(6路),步進電機診斷函數(shù)(雙路雙向),OBD診斷函數(shù),K線通訊函數(shù)。
應(yīng)用層分解為三個子層面應(yīng)用接口層、應(yīng)用診斷層和應(yīng)用控制層。
應(yīng)用層接口層則是面對發(fā)動機控制建立的一系列接口功能函數(shù),實現(xiàn)具體的傳感器執(zhí)行器對應(yīng)的發(fā)動機控制量的實現(xiàn)。以某電控單元為例,包括曲軸信號處理函數(shù)(相位精確定位,轉(zhuǎn)速信號采集),凸輪信號處理函數(shù)(判缸,相位粗略定位),每缸噴射信號處理函數(shù)(持續(xù)角,提前角),點火信號處理函數(shù)(閉合角,提前角),MAP標定函數(shù)(窗口,存儲),開關(guān)量濾波函數(shù),模擬量濾波及標定函數(shù),高速響應(yīng)電磁閥驅(qū)動函數(shù),點火驅(qū)動函數(shù),MAP查找函數(shù)(一維,二維)等。
應(yīng)用層診斷層是根據(jù)法規(guī)要求,基于底層診斷層的管腳功能診斷建立的發(fā)動機電控系統(tǒng)的各個部件功能診斷,并具有詳細的存儲策略。例如,面對歐III標準提供的OBDII診斷策略。
應(yīng)用層控制層是根據(jù)控制要求,建立的發(fā)動機控制策略,并基于應(yīng)用層接口層予以實現(xiàn),主要也是滿足排放法規(guī)和動力性需求。由于應(yīng)用層控制層跟電控單元的硬件已經(jīng)沒有任何關(guān)聯(lián)性,因此不受底層硬件改動的任何影響。
本發(fā)明的優(yōu)點在于(1)本發(fā)明采用模塊化結(jié)構(gòu)設(shè)計,同層各模塊與其他模塊之間沒有互相調(diào)用關(guān)系,因此可以同時開發(fā),適合軟件工程的大批量生產(chǎn)方式。
(2)本發(fā)明采用由底層基礎(chǔ)層、底層交互層、底層診斷層、應(yīng)用層組合形成不同的控制系統(tǒng)軟件結(jié)構(gòu),其中各個層面之間的耦合最小化,可以實現(xiàn)某一層面的修改對其他層面的影響最小化,利于實現(xiàn)軟件的重用性。例如由于噴嘴驅(qū)動芯片的更換,交互層軟件進行了更新,但是由于提供給應(yīng)用層的接口不變,因此應(yīng)用層程序不必修改。
(3)為了適應(yīng)軟件開發(fā)的專業(yè)化和保密要求,給應(yīng)用層提供的軟件接口采用基于管腳功能的函數(shù)形式,使用者不必了解電控單元軟硬件內(nèi)部設(shè)計而把其作為一個黑盒整體使用,利于各層面的軟件開發(fā)同步進行,各自實現(xiàn)其專業(yè)化需要,更利于知識產(chǎn)權(quán)的保護。
圖1分層式發(fā)動機電子控制程序構(gòu)架底層基礎(chǔ)層,2-底層交互層,3-底層診斷層,4-應(yīng)用層接口層,5-應(yīng)用層診斷層,6-應(yīng)用層控制層。
圖2分層式發(fā)動機電子控制程序構(gòu)架應(yīng)用實例本圖是一個應(yīng)用于天然氣發(fā)動機電子控制系統(tǒng)分層式程序構(gòu)架的實例。針對于不同的軟件層面,對同一端口的解釋不盡相同。
相對于應(yīng)用層軟件的輸入輸出接口定義,1-空調(diào)請求,2-空調(diào)開關(guān),3-點火開關(guān),4-機油壓力,5-怠速觸點開關(guān),6-加速觸點開關(guān),7-曲軸位置,8-凸輪位置,9-燃氣溫度,10-燃氣壓力,11-進氣溫度,12-進氣壓力,13-增壓器出口壓力,14-冷卻液溫度,15-加速踏板正向位移,16-加速踏板反向位移,17-燃氣開關(guān),18-曲軸箱放氣,19-電子風扇,20-轉(zhuǎn)速表驅(qū)動,21-噴氣嘴高位驅(qū)動,22-噴氣嘴低位驅(qū)動,23-點火驅(qū)動,24-增壓器電子放氣閥,25-電子節(jié)氣門驅(qū)動,26-K線通訊,27-CAN通訊,28-節(jié)氣門正向位移,29-節(jié)氣門反向位移,30-線性氧傳感器輸入,31-排氣溫度信號輸入,32-電控單元ECU。
相對于底層軟件的輸入輸出接口定義,1-開關(guān)量,2-開關(guān)量(中斷),3-開關(guān)量,4-開關(guān)量,5-開關(guān)量,6-開關(guān)量,7-整形輸入量,8-整形輸入量,9-模擬量,10-模擬量,11-模擬量,12-模擬量,13-模擬量,14-模擬量,15-模擬量,16-模擬量,17-小電流低位,18-小電流低位,19-小電流低位,20-小電流pwm低位,21-大電流pwm高位,22-大電流pwm低位,23-點火低位,24-中等電流pwm低位,25-中等電流pwm低位,26-k線通訊,27-CAN通訊,28-模擬量,29-模擬量,30-模擬量,31-模擬量,32-電子控制單元ECU。
實施方式本發(fā)明根據(jù)不同應(yīng)用層控制策略的要求通過適當配置軟硬件資源,可實現(xiàn)對各種傳感器信號和狀態(tài)的采集、對混合氣形成的控制、對混合氣點燃以及對發(fā)動機其它特殊功能與狀態(tài)的控制,從而可實現(xiàn)對特定燃料的發(fā)動機的電子控制系統(tǒng)的快速應(yīng)用開發(fā)。
本發(fā)明用于天然氣發(fā)動機控制系統(tǒng)的實施實例為傳感器信號有空調(diào)請求,空調(diào)開關(guān),點火開關(guān),機油壓力,怠速觸電開關(guān),加速觸點開關(guān),曲軸位置,凸輪位置,車速信號,燃氣溫度、壓力,進氣歧管溫度,進氣歧管壓力,增壓器出口壓力,冷卻液溫度,加速踏板正向位移,加速踏板反向位移,節(jié)氣門正向位移,節(jié)氣門反向位移,線性氧傳感器和排氣溫度傳感器。
執(zhí)行部件有6只高速電磁鐵控制的天然氣噴嘴、6只用于點燃混合氣的點火線圈,燃氣開關(guān),三通電磁閥曲軸箱放氣,電子風扇,車輛轉(zhuǎn)速表,增壓器電子放氣閥、電子節(jié)氣門正反向驅(qū)動。
通信接口1個K線,2個CAN總線接口由于底層、交互層和診斷層軟件均采用基于管腳的方式,用戶只需對管腳解釋予以定義,然后制作具體的控制策略并在此基礎(chǔ)上編制應(yīng)用軟件。
控制的實現(xiàn)過程應(yīng)用軟件通過輸入接口采集凸輪軸位置傳感器信號,以識別發(fā)動機的缸序、壓縮上止點位置并計算出發(fā)動機轉(zhuǎn)速;根據(jù)加速踏板位置傳感器識別司機的控制意圖,再驅(qū)動電子節(jié)氣門進行正反轉(zhuǎn)運動,快速而精確的定位節(jié)氣門,根據(jù)進氣壓力傳感器、進氣溫度傳感器、冷卻水溫傳感器等信號通過本發(fā)明特有的高速響應(yīng)電磁閥驅(qū)動方式控制電磁閥控制天然氣噴入氣缸的時刻和噴射量,通過點火線圈的驅(qū)動控制以獲得精確的點火時刻和閉合角,通過寬域氧傳感器的閉環(huán)反饋實現(xiàn)對空燃比的精確控制,通過對排氣溫度的反饋實現(xiàn)扭矩的精細控制,從而實現(xiàn)滿足排放法規(guī)標準下的精細控制的輸出扭矩;通過對怠速觸點開關(guān)、加速觸點開關(guān)、空調(diào)開關(guān)信號等的識別,按既定的策略控制發(fā)動機與車輛匹配的運行狀態(tài)。
本實施例僅用于說明本發(fā)明而不限制本發(fā)明,本發(fā)明在用于其它燃料發(fā)動機電子控制的實施方法依次類推。
權(quán)利要求
1.分層式發(fā)動機電子控制程序構(gòu)架,其特征在于電子控制單元程序由底層基礎(chǔ)層、底層交互層、底層診斷層、應(yīng)用層診斷層和應(yīng)用控制層組成。
2.根據(jù)權(quán)力要求1所述的分層式發(fā)動機電子控制程序,其特征在于底層基礎(chǔ)程序是對采用本程序構(gòu)架的電子控制單元微控制器(MCU)硬件資源的直接控制,基于微控制器的寄存器控制,分為控制操作、狀態(tài)操作、數(shù)據(jù)操作。
3.根據(jù)權(quán)力要求1所述的分層式發(fā)動機電子控制程序,其特征在于底層交互層程序處理的是采用本程序構(gòu)架的電子控制單元接口電路,通過建立底層函數(shù)接口,對本程序構(gòu)架所針對的電子控制單元的接口電路芯片進行控制,進而對相關(guān)的外圍驅(qū)動、輸入電路實施有效控制。
4.根據(jù)權(quán)力要求1所述的分層式發(fā)動機電子控制程序,其特征在于診斷層程序利用硬件電路提供的診斷功能實現(xiàn)采用本程序構(gòu)架的電子控制單元各個輸入輸出端口及外接傳感器和執(zhí)行器進行在線故障診斷功能。
5.根據(jù)權(quán)力要求1所述的分層式發(fā)動機電子控制程序,其特征在于應(yīng)用控制層程序是采用本程序構(gòu)架的電子控制單元運用于具體控制對象應(yīng)用策略的實施,通過調(diào)用交互層函數(shù)接口,驅(qū)動同一應(yīng)用層面的執(zhí)行器件,同時從傳感器等信號輸入器件上得到數(shù)據(jù)輸入。
6.根據(jù)權(quán)力要求1所述的分層式發(fā)動機電子控制程序構(gòu)架,其特征在于適用于任何采用以微控制器為核心的發(fā)動機電子控制系統(tǒng)。
全文摘要
本發(fā)明設(shè)計一種用于發(fā)動機電子控制單元的分層式程序構(gòu)架,由底層基礎(chǔ)層、底層交互層、底層診斷層、應(yīng)用層組成,底層基礎(chǔ)程序進行的是對物理層資源的直接控制,基于物理的寄存器控制,分為控制操作、狀態(tài)操作、數(shù)據(jù)操作;交互層程序處理的是接口電路,通過調(diào)用底層函數(shù)接口,對板上的接口電路芯片進行控制,進而對相關(guān)的外圍驅(qū)動、輸入電路實施有效控制;診斷層程序利用硬件電路提供的診斷功能實現(xiàn)各個輸入輸出端口的底層故障診斷功能;應(yīng)用層程序考慮的是應(yīng)用策略的實施,通過調(diào)用交互層函數(shù)接口,驅(qū)動同一應(yīng)用層面的執(zhí)行器件,同時從傳感器等信號輸入器件上得到數(shù)據(jù)輸入,應(yīng)用層根據(jù)功能也可以劃分為應(yīng)用層接口層、應(yīng)用層診斷層和應(yīng)用層控制層三個子層面,這些層次的不同組合適用于各種形式的基于單片機的發(fā)動機電控單元。
文檔編號G05B23/02GK101055470SQ200710107259
公開日2007年10月17日 申請日期2007年5月25日 優(yōu)先權(quán)日2007年5月25日
發(fā)明者張育華, 孔峰, 宋雪樺, 王飛 申請人:鎮(zhèn)江恒馳科技有限公司