一種基于can總線的小型電控汽油機觸摸式hmi標定方法
【技術領域】
[0001]本發明涉及一種基于CAN總線的小型電控汽油機觸摸式HMI標定系統,包括上位機標定軟件和下位機ECU標定模塊兩部分。
技術背景
[0002]目前基于查表策略的電控發動機,需要根據MAP來控制發動機噴油、點火等運行,這些MAP和控制參數被存儲在E⑶的Flash當中,E⑶上電之后,將代碼和數據從Flash拷貝到RAM中運行。利用標定軟件可以在線調整RAM中運行的MAP和控制參數,刷寫Flash數據,進而獲得更優良的空燃比控制,更精確的噴油點火控制,以提高發動機性能,降低發動機排放,滿足日益嚴格的法規要求。
[0003]國際上具有代表性的標定系統有ETAS公司的INCA軟件,ATI公司的VIS1N軟件,Vector公司的CANape軟件以及dSPACE公司的CalDesk軟件等。但這些軟件都沒有專用的硬件平臺,需要安裝于PC上,在便攜性、安全性和經濟性上做出了一定的妥協。國內已申請的相關專利方面,有北汽福田汽車股份有限公司的一種混合動力汽車的標定系統及標定方法(申請公布號:CN 103162964 A),深圳市郎仁科技有限公司的手持式柴油機ECU讀取、刷寫和重新標定系統及方法(申請公布號:CN 103885436 A)等。這些發明專利雖然也都是面向標定系統,但卻不是針對通用小型汽油機的標定系統。
【發明內容】
[0004]為了完成通用小型汽油機電控系統的標定工作,本發明提供了一種功能豐富、界面友好的通用小型汽油機觸摸式HMI標定系統。
[0005]本發明的另一目的在于克服現有系統在人機交互方面的不足,現有標定軟件大多為安裝在PC電腦上的應用程序。標定系統基于CAN總線,針對小型汽油機電控系統進行了優化。
[0006]本發明的技術方案包括以下步驟:
[0007]步驟I,建立基于CAN總線的小型電控汽油機觸摸式HMI標定系統,標定系統包括上位機標定軟件和下位機ECU標定模塊兩部分,上位機標定軟件以HMI為載體,下位機為E⑶,通過CAN總線,接口類型為DB9針,實現上位機、下位機間實時、可靠的數據通信任務,使用CANopen自定義通信和標定協議;
[0008]步驟2,下位機E⑶上電運行后,程序將代碼和數據分別從PFlash和DFlash拷貝到RAM中運行,并實時采集經過硬件和軟件調節后的傳感器信號,包括曲軸位置(轉速)信號、節氣門位置(負荷)信號、氧傳感器信號、機體溫度信號、進氣溫度信號和進氣壓力信號;
[0009]步驟3,上位機標定軟件上電開始運行后,通過數據管理模塊讀取配置文件,進行初始化設定,包括定義數據結構類型、寫入初始數值以及設置主程序循環時間為50ms ;
[0010]步驟4,上位機標定軟件主函數是一個無限循環函數,通過查詢標志位響應界面操作,標定軟件界面上的控制按鈕具有通知功能,程序中當對控制按鈕進行操作時,將寫入特定數值到指定寄存器中,主函數根據指定寄存器中不同的數值來執行不同的操作;
[0011]步驟5,通信控制模塊根據通信協議將不同的控制命令封裝成CAN報文,發送到下位機ECU,下位機ECU標定模塊通過CAN驅動接收控制命令;
[0012]步驟6,下位機ECU協議控制子模塊根據通信協議解析CAN報文,并調用相應的應用程序執行對應的控制命令,程序中設定“連接/斷開”、“監測數據”、“請求MAP”、“在線調試”、“在線標定”控制命令;
[0013]步驟7,步驟6中的“監測數據”命令決定DAQ模式的開閉,若打開DAQJjWRAM中實時讀取從傳感器輸入ECU的發動機運行參數,根據通信協議將其封裝成CAN報文發送;
[0014]步驟8,步驟6中的“請求MAP”命令則根據對應MAP在RAM中的地址讀取實時數據信息,同樣根據通信協議將其封裝成CAN報文發送;
[0015]步驟9,步驟6中的“在線調試”命令將RAM中實時運行的標定MAP和變量修改為目標值;
[0016]步驟10,步驟6中的“在線標定”命令則調用Flash刷寫函數將RAM中實時運行的目標MAP和變量刷寫到DFlash的對應地址,將修改之后的數據固化到E⑶內存中;
[0017]步驟11,上位機標定軟件通過通信控制模塊接收CAN報文,根據通信協議進行解析并在軟件界面上顯示或報警,程序中設定反饋信息主要有故障碼、監測數據和MAP數據。
[0018]進一步,所述步驟I中HMI的操作界面是觸摸式顯示屏,采用Kinco公司組態編輯軟件進行設計;實時監視運行參數、故障診斷通信、在線標定以及數據保存。
[0019]進一步,所述步驟4中所述標定軟件界面主要包括監視窗口、傳感器標定、基本噴油脈寬標定、基本點火提前角標定、故障診斷以及PID整定窗口,監視窗口作為主界面,通過數值顯示、棒圖、表盤等元件實時顯示轉速、負荷、氧濃度、機體溫度、進氣溫度、進氣壓力等發動機運行參數;可以打開傳感器標定、基本噴油脈寬標定、基本點火提前角標定等窗
□ O
[0020]進一步,所述步驟10中Flash刷寫函數主要實現對DFlash的擦寫,Flash的擦除與寫入遵循以下步驟:
[0021]SI,Flash初始化操作,對FCLKDIV(Flash時鐘分頻寄存器)進行設置,以產生一個目標頻率IMHz的內部Flash時鐘FCLK ;
[0022]S2,讀取FSTAT (Flash狀態寄存器),查詢其中的CCIF (命令完成中斷標志位),等待Flash操作完成;
[0023]S3,對FSTAT (Flash狀態寄存器)中的ACCERR(錯誤標志位)進行清除,并FPV1L位寫保護;
[0024]S4,寫FCCOBIX (Flash命令對象索引寄存器),以設置FCCOB (Flash命令對象寄存器)中寫入數據的意義;
[0025]S5,寫FCCOB (Flash命令對象寄存器),根據FCCOBIX (Flash命令對象索引寄存器)的設置,分別寫入對應的命令、地址或數據;
[0026]S6,置FSTAT (Flash狀態寄存器)后開始執行Flash擦寫命令。
[0027]進一步,所述步驟10還包括,通過對prm文件進行修改操作,將MAP等標定量放置于0x0400起始的DFlash內存塊中;通過對DFlash的擦寫,實現將在線標定完成后的MAP數據固化到ECU內存中。
[0028]本發明具有以下技術功能和特點:
[0029](I)實時顯示發動機運行參數。標定系統實時采集來自電子控制單元(ECU)傳感器的數據,在監視界面以圖形、表格或數字的形式顯示發動機工作狀態,作為標定時的依據。
[0030](2)故障診斷(OBD)通信。根據制定的通信協議,在線監視傳感器、執行器數據以及發動機運行參數,接收來自電子控制單元(ECU)故障診斷模塊的故障碼,查詢診斷數據庫并報告相應故障。
[0031](3)在線標定。標定軟件向電子控制單元(E⑶)發送不同的控制命令,在線調整RAM中的MAP、PID等數據,使發動機按照不同的參數運行,并將它們刷寫至DFlash中,以使下次發動機啟動時再次調用這些運行參數。
[0032](4)歷史數據保存。根據標定結果,記錄參數并存儲到外部U盤,以便后期進行處理和分析。
【附圖說明】
[0033]圖1 為上位機 Kinco MT4414TE-CAN ;
[0034]圖2為主界面監視窗口 ;
[0035]圖3為故障診斷窗口 ;
[0036]圖4為HMI標定軟件通信控制模塊程序流程圖;
[0037]圖5為標定系統硬件結構圖;
[0038]圖6為CAN總線收發器原理圖;
[0039]圖7為標定系統總體架構;
[0040]圖8為標定系統軟件流程圖。
【具體實施方式】
[0041]本發明的目的通過如下技術方案完成:
[0042]標定系統開發內容包括上位機標定軟件和下位機ECU標定模塊兩部分,在小型汽油機電控系統軟硬件平臺上,通過上、下位機的“橋梁” 一一CAN總線,實現各節點間實時、可靠的數據通信任務。上位機標定軟件以觸摸式人機交互設備(HMI)為載體進行開發,包含前臺界面、數據管理和通信控制三個子模塊。其中,標定界面提供人機交互訪問并響應用戶操作,數據管理優化全局變量并建立工程文件,通信控制合理組織、發送與接收數據,是實現通信協議的重點環節。下位機E⑶主芯片選用