• 沒有找到結果。

第二章 噴油嘴的基本控制

2.5 Position-Synchronized Pulse Generator (PSP)……同部位置脈衝產生器

2.5.3.4 HIGH_TIME

HIGH_TIME 是脈衝方波輸出的持續時間長度,其數值由中央處理單元控 制。此參數值即所謂的噴油嘴開啟時間長度(供油時間長度),亦是決定供油量的 主要參數。

第三章

封包值檢測程序(Checksum routine)

本章的內容主要是探討在本論文所研究的汽車引擎電腦程式中的封包值檢 測程序,其中包含執行封包值檢測程序的目的、方式與流程。

3.1 封包值檢測概述

封包值檢測主要是用於檢測資料在傳輸過程中是否產生錯誤或是程式的資 料是否有經過非正當的修改。在後者中若有偵測出程式被修改,則程式無法正常 執行。在一般的情形中,封包值檢測程序都是在系統主程式前段部份執行,若檢 測出錯誤則可跳過其餘的主程式程序。

封包值的計算方式就是將所有的程式資料相加求和(sum),而正確的封包值 儲存在資料的固定位置上但不被列入封包值計算,所求得的和值(sum value)與正 確的封包值(checksum value)比較,若相等則表示資料正確,反之則表示此資料 中有錯誤存在。

在汽車引擎電腦的程式中,封包值檢測是一種安全的保護措施。若程式被不 正當的修改,則引擎的運作就很可能會發生不被預期的危險狀況。所以封包值檢 測程序可以避免危險狀況發生。當汽車引擎電腦程式中的封包值檢測程序偵測出 程式資料有經過非正當的修改,則汽車引擎電腦將封鎖引擎是其不能啟動。

3.2 汽車引擎電腦中的封包值檢測程序

本論文所研究的汽車引擎電腦程式中包含兩種封包值檢測程序,而此兩種程 序都各有不同的目的。

A. 用來檢測是否需要將 ROM(Read Only Memory 唯讀記憶體)的資料重新 複製到系統記憶體(Random Access Memory 隨機存取記憶體,簡稱 RAM)中。

B. 檢測程式資料是否有錯誤存在或是有經過非正當的修改。此兩種封包值 檢測程序的細節與過程在以下的內容中敘述。

在本論文所研究的汽車引擎電腦程式中是先執行第一種封包值檢測程序,確 定所有需要複製的資料正確後再執行第二種程序以檢測系統程式資料。

3.3 關於資料複製與否的封包值檢測程序

以在引擎熄火後仍可維持記憶體中的資料。在本論文所研究的系統中將需要複製

封包值作比較。第一次開啟汽車引擎電腦時,由於系統記憶體中尚未有資料,所 進位數值 18244281H(此數值是由 SAAB 原廠所設計)填入以下系統記憶體位置 中(430EH),(4EC8H),(52C2H),(550CH),(5A76H),(5D52H),(5EF6H),(6006H),

中,此時記錄位址與前一個步驟中的封包值比較結果記錄位置相同,如下 表3-4。

表3-4 記憶體數值檢查位址與結果儲存位址關係表

檢查位置 結果記錄位置

(430EH) -> (347CH) (4EC8H) -> (3486H) (52C2H) -> (3490H) (550CH) -> (349AH) (5A76H) -> (34A4H) (5D52H) -> (34AEH) (5EF6H) -> (34B8H) (6006H) -> (34C2H) (600AH) -> (34CCH) (65C2H) -> (34D6H) (65CCH) -> (34E0H) (664AH) -> (34EAH)

註:檢查結果若相等則直接進行下一位置檢查;若不相等則填入:4eH

此檢查程序可以得知汽車引擎電腦是否為第一次開機操作,當汽車引擎電腦 第一次開機操作之後,表 3-4 中所列的檢查位置都會被填入十六進位數值 18244281H,在汽車引擎電腦尚未斷電的情況下會維持此數值,以表示已經過第 一次開機。下圖3-1 是關於資料複製與否的封包值檢測程序的流程圖。

圖3-1 資料複製封包值檢測程序流程示意圖

3.4 關於程式資料正確性的封包值檢測程序

本論文研究的汽車引擎電腦中的第二種封包值檢測程序主要是檢測係同程 式資料是否有錯誤或是非正當程序修改,檢測方式是將系統程式中屬於主要程式 指令與參考變數的全部資料都相加求和,即所謂封包值。而此系統程式的正確封 包值儲存在程式資料的固定位置中,但此位置不被列入計算封包值的範圍。

若汽車引擎電腦程式計算所得的封包值不等於儲存在程式資料中的正確封 包值,則汽車引擎電腦會阻斷引擎啟動同時提醒使用者檢查系統,以避免引擎發 動後發生不被預期的危險狀況。若要修改系統程式,則必須將此封包值檢測程序 做適當的修正,以確保新的程式能夠通過此封包值檢測,如此才可以使引擎正常 發動。下圖3-2 關於程式資料正確性的封包值檢測程序的流程圖。

圖3-2 程式資料正確性封包值檢測程序流程示意圖

3.5 封包值檢測程序範例

在本段內容中將針對3.3 與 3.4 所討論兩種不同意義的封包值檢測程序各舉 出一個範例作進一步的說明。

3.5.1 資料複製與否的封包值檢測程序範例

假設有一段儲存於唯讀記憶體(ROM)且需要被複製於系統記憶體(RAM)中

118H)。在上一次執行汽車引擎電腦程式時,在主程式尾段會將第一段(100H ~ 式時,在程式尾段都會將一特定數值18244281H(此數值是由 SAAB 原廠所設計) 儲存在固定的系統記憶體位置中。判斷這些固定記憶體位置中的數值是否等於 18244281H 就可以得知此汽車引擎電腦是否為第一次操作。

3.5.2 程式資料正確性的封包值檢測程序範例

系統程式計算獲得封包值後,立即與儲存在唯讀記憶體中的正確的封包值作 比較。在本範例中計算獲得的封包值與正確的封包值相等,此時汽車引擎電腦得 以進行正常的控制程序並等待引擎啟動。若程式資料經過非正當程序修改,將第 十個位元組的資料數值由91 改成 81,而修改後的程式資料如:4D 51 57 5A 60 6C 73 76 7B 81 93 A5 20 30 4E 55 69 71 73 7B 99 99 99 CD 1F 31 50 58 5E 61 00 00 0C 52,而系統記算獲得的封包值為:

4D + 51 + 57 + 5A + 60 + 6C + 73 + 76 + 7B + 81 + 93 + A5 + 20 + 30 + 4E + 55 + 69 + 71 + 73 + 7B +

99 + 99 + 99 + CD + 1F + 31 + 50 + 58 + 5E + 61 = 00000C42

因為程式資料被修改,所以系統計算獲得的封包值00000C42 與正確的封包 值00000C52 不相等,此時汽車引擎電腦會阻斷引擎起動同時進入特殊程序後停 止操作。

第四章

汽車引擎控制曲線(Control Matrices for the Engine in an Automobile)是一種 儲存在汽車引擎電腦中且數值固定的資料表[1],可以讓中央處理單元在決定引

1. 汽車引擎供油控制曲線(Fuel Injection Control Matrices for the Engine in an Automobile):主要控制引擎噴油嘴所噴射出的燃油量,使引擎獲得 最佳燃燒效率,同時提升動力輸出。

2. 汽車引擎點火時序控制曲線(Ignition Timing Control Matrices for the Engine in an Automobile):主要控制點火系統運作的時機與時間順序,

點火系統在最佳的時機點火一樣能夠提高引擎性能。

3. 汽車引擎室增壓控制曲線(Boost Pressure Control Matrices for the Engine in an Automobile):主要控制渦輪引擎系統的渦輪增壓器所提供的引擎 增壓值,在不同的環境條件下,引擎必須得到最適當的增壓值才有最佳 的動力輸出表現。

本論文主要的研究目摽是針對汽車引擎供油的控制曲線。

4.2 汽車引擎供油控制曲線的主要功能

當汽車引擎在運轉時,引擎電腦必須快速決定正確的供油量,此時汽車引擎 供油控制曲線(Fuel Injection Control Matrices for the Engine in an Automobile)就 是最佳且最有效率的資料依據[1]。汽車引擎電腦用以決定供油量的外界環境參 數有:進氣歧管壓力、進氣溫度、引擎轉速、引擎冷卻劑溫度、廢氣中的含氧量

與節流閥位置等六項。每一項環境參數都有其特殊的用途,在第二章的內容已說

速的效果。

圖4-1 節流閥位置-引擎轉速對應供油量的控制曲線圖

在上圖4-1 中,節流閥位置座標的數值是以節流閥開起的程度作依據,其數 值的範圍由 0%(節流閥完全關閉)至 100%(節流閥完全開啟),在此範圍之間共 分十六個等級。引擎轉速座標的計算單位是rpm(revolution per minute),以每分 鐘曲軸旋轉多少圈計算,其數值的範圍由0 rpm 至 6200 rpm。在本論文第二章已

出的廢氣不多導致渦輪增壓器供油的壓力也不會太大(進氣歧管壓力 小),所以供油量不會太多造成引擎積碳。2.引擎在高轉速且進氣歧管壓 力較小時,通常都是需要減速時發生,所以汽車引擎電腦將供油量減少使 行車速度降下來。

圖4-2 進氣歧管壓力-引擎轉速對應供油量的控制曲線圖

在上圖4-2 中,進氣歧管壓力座標的數值是以壓力單位 kPa 作依據,其數值 的範圍由100 kPa(一大氣壓)至 300 kPa(渦輪增壓器提供極高增壓值),在此範圍 之間共分十二個等級。引擎轉速座標的計算與節流閥位置-引擎轉速對應供油量 的控制曲線相同,其數值範圍也是中分十六個等級。

4.3.3 進階版程式中所獲得的汽車引擎供油控制曲線

在4.3.1 節與 4.3.2 節中所探討的引擎供油控制曲線,都是在原廠基本版的汽 車引擎電腦程式中所找到的。在這一節的內容中則是探討在進階版程式中所獲得 的引擎供油控制曲線。

進階版程式中擁有與4.3.1 節及 4.3.2 節中所討論的相同定義與相同功能的引 擎供油控制曲線,兩種版本程式的控制曲線之間亦有向同的特質,而最大的不同 在於曲線的平滑(smooth)程度與供油量峰值(top value)範圍的大小。在進階版程 式中的供油控制曲線比基本版程式中的平滑,且峰值更大範圍也比較廣。所以進

進氣歧管壓力 引擎轉速

供 油 量 參 考 值

2

τ

壽命也會相對的減少。

圖4-3 進階程式中節流閥位置-引擎轉速對應供油量的控制曲線圖

圖4-4 進階程式中進氣歧管壓力-引擎轉速對應供油量的控制曲線圖

以上圖4-3 以及圖 4-4 即為進階程式中的汽車引擎供油控制曲線圖,在圖中 可以看到與基本版程式的控制曲線最顯著的相異特質,就是進階版程式的控制曲 線峰值範圍增大了不少。峰值範圍大也就是進階版程式可以使引擎獲得高燃油量 的時機比基本版程式多,相對的產生較大的動力以及消耗較多的燃油。本論文第 五章就是討論將進階版程式的供油控制曲線取代基本版程式的供油控制曲線的 實車道路測試實驗結果。

引擎轉速 節流閥位置

引擎轉速

進氣歧管壓力 供

油 量 參 考 值

供 油 量 參 考 值

1 τ

2

τ

圖4-5 燃油噴射時間詳細計算流程圖

第五章

力等參數的量測數據以及噴油嘴端電壓變化的波形圖。在以下的段落中說明各階 段的實驗結果,其中實驗的量測數據以列表方式呈現;電壓變化波形圖的水平座 標是時間(毫秒 ms),垂直座標是電壓(伏特 V),水平座標每一格的刻度大小代 表2 ms,垂直座標每一格的刻度大小代表 5 V,在波形圖中水平中心線處電壓值 為0 V(接地)。

5.2.1 基本版引擎供油控制曲線實驗結果

表5-1 基本版引擎供油控制曲線參數量測數據

引擎轉速 噴油嘴開啟持續時間 進氣歧管壓力 節流閥開啟程度 1000 rpm 3.90 ms 157 kPa 10.2 % 2000 rpm 3.60 ms 150 kPa 18.4 % 3000 rpm 3.50 ms 150 kPa 22.7 %

由上表5-1 中可以得知,若汽車駕駛人須要較高的引擎轉速,則勢必將節流 閥開啟程度加大(汽車駕駛人踩下更多油門)。在一般的情況下,汽車引擎在低轉

由上表5-1 中可以得知,若汽車駕駛人須要較高的引擎轉速,則勢必將節流 閥開啟程度加大(汽車駕駛人踩下更多油門)。在一般的情況下,汽車引擎在低轉

相關文件