在本文中,筆者將帶你一起完成以智慧熔絲更換汽車熔絲的旅程,不僅有助於診斷間歇性短路,而且無需更換熔斷式熔絲,進而大大提高故障的排除效率...
從行駛於加州大蘇爾(Big Sur)山區陡峭蜿蜒的道路,到傾盆大雨中涉水坎昆(Cancun)危險的十字路口,這輛值得信賴的5速手排變速’94 BMW 325i總是與我一起風雨同舟。我喜歡這輛車,但坦承有時也得忍受偶爾發生且棘手的間歇性短路狀況,可能燒斷7.5A插片式熔絲(或稱保險絲、熔斷器)。
當這種情況發生時,車窗(馬達使用另外的15A熔絲)根本無法工作,這給我帶來很多不便,甚至可能在非常惡劣的天氣條件下還得開著車窗繼續行駛或停車至停車場。這種情況是偶然發生的,因而更加令人惱火。這表示我只能在問題出現時對其進行故障排除,有時經常發生,有時又不常發生,而且總是不確定會持續多長時間。每次發生這種情況,都必須更換熔斷的熔絲。
汽車接線圖相當神秘。儘管如此,我還是找到了由該熔絲控制的部份電路,我發現排線從引擎蓋下的主熔絲盒直接延伸至座艙中並穿過儀表板,最終到達了安裝在駕駛座椅下方的模組,車輛傾斜偵測感測器就位於該模組中。如果該感測器確定車輛正在翻覆,旋即命令車窗立即關閉,以防止乘客被甩到車外。
排線上還有多個其他負載,其中7.5A熔絲控制著供電電壓。短路可能就在這些電纜中,一一斷開它們並且反覆調試可能會找到罪魁禍首,但是這種方式可能導致車輛無法駕駛,並且可能嚴重影響車內的安全保障功能。
其他的方法是建立一個自動更換熔絲的電路,可實現:1)在沒有短路時連接負載;2)在偵測到短路時斷開它並提供指示;3)不再需要更換熔斷式熔絲;4) 不存在明顯的安全危害、火災危險或其他情況。本文將介紹另一個新興且有價值的思考元素,能讓這個專案變得更值得且有趣。
圖1:智慧熔絲示意圖顯示智慧熔絲如何代替熔絲盒中的一般熔絲。
在詳細介紹此解決方案之前,如圖1和圖2的智慧熔絲麵包板電路所示,我們將使用此智慧熔絲以取代熔絲盒中的一般(基本款)熔絲。該智慧熔絲電路有三根連接線,即紅線(Vbatt)、黑線(底盤GND-車用電池的負極)和白線(通常連接到7.5A的熔斷負載)。
紅線焊接到基本型熔絲的一側,通常連接到熔絲盒中的+12Vdc,白線焊接到通向負載的熔絲另一側。黑線則必須連接到任何方便可用的底盤GND上。這些連接操作都是在車輛熄火且鑰匙處於關閉位置的情況下進行的,相關配件也處於關閉狀態。接下來將焊接的熔絲組件插入熔絲盒中的正常插槽中。最終,智慧熔絲取代熔斷了的常規7.5A熔絲元件。
圖2:智慧熔絲麵包板電路顯示智慧熔絲的各個元件。
在這個應用中,最重要的考慮因素可能是通道電阻,因為它將承載安培級的負載電流。最好使用N通道MOSFET,其種類繁多,包括在VGS<=5V時具有幾乎完全增強通道的裝置。這表示當前市面上的「低」電壓邏輯電平裝置可以直接控制這些N通道MOSFET,而無需任何電平轉換器。然而,選擇N通道FET代表著需要高於+12V的電壓軌來提供所需的閘極閾值電壓(VGS)以增強通道並打開電晶體。此應用中的電路使用基於電感的Bang-Bang型開關穩壓器。
該智慧熔絲基於芯科科技(Silicon Labs)的EFM32TG11Tiny Gecko微控制器(MCU,在示意圖中標註為「U1」)來執作程式碼,使其就熔絲上是否存在過載電流、是否斷開電流、持續多長時間等做出所有相關決定。
為了理解高壓側起停式開關(Bang-Bang),重要的是要瞭解MCU內部的類比和數位周邊設備也是構成開關電源的一部份。參考圖3的通電和Bang-Bang功能。
圖3:智慧熔絲的通電和bang-bang功能示意圖。
圖3包括A、B和C三部份。A部份顯示開關SW1第一次閉合導通時的電流路徑,為清楚起見,這裡省略了熔絲F1,並將其視為短路。
A部份顯示當SW1閉合時,電流流過L1和D1,並對電容器C1至C3充電。C1充電後,MCU U1將開啟,如圖3中B部份電路所示(C部份是B部份的簡化版本)。MCU使用內部HFRCO振盪器啟動,並立即從19MHz切換到以38MHz運作,以實現最高效的能源使用。透過PC0,MCU開啟Q1,當Q1開啟時,MCU電路共點(以實心GND符號表示,而底盤GND則以空心GND符號代表)直接連接到電池+12V端子。MCU、其電源和相關電路都仰賴電池電壓。
程式碼中啟用專用的遲滯內部類比比較器,用於監控C1兩端的電壓(VMONAVDD,參見C部份)。當達到閾值時,VMONAVDD向CPU發出中斷以打開或關閉TIMER0。開啟時,TIMER0通過PA0驅動電流源Q5和500mA電晶體Q2。而當開啟時,D1反向偏壓,-Vbatt對L1充電。當TIMER0將其關閉時,L1正向偏壓D1,將其能量釋放到C1中,短路電流返回路徑通過RSense和Q1。如下方的一些螢幕截圖所示,開關頻率約為100kHz。一旦電感器處於開關狀態,只要SW1保持閉合,電源就可以無限期地讓MCU保持升壓(bootstrap)狀態。
現在,讓我們專注於這款智慧熔絲的關鍵負載開關特性。圖4顯示不帶電源元件的簡化版示意圖。
圖4:簡化版的通電和bang-bang功能示意圖;沒有電源元件。
在MCU bootstrap並啟動電源後,即可實現從Vbatt到負載的電流路徑。請參閱圖4中A部份和B部份的簡化版本。而圖4中C部份電路顯示的過載偵測,受到在PD6測量通過20mΩ RSense的電流影響,該電流經過配置為16非反相增益的內部運算放大器放大,最後被饋送到具有可調閾值電壓的內部類比電壓比較器(ACMP)。
請參考圖4中C部份的上半圖。對於該電路,閾值為6A,請參考圖5~圖7顯示的智慧熔絲整體性能的詳細示波器照片。在啟動時最能具體體現智慧熔絲的關鍵性能特徵,因為電路的全部功能取決於準確的bootstrap動作以及電源開關動作的啟動。
圖5:詳細的示波器截圖顯示智慧熔絲啟動的詳細操作。
圖5中的所有訊號都以MCU GND為參考;Vbatt=12.5Vdc。
圖6:示波器截圖顯示電感開關(Q2汲極)和輸出開關斜坡電壓(Q3閘極)的更多細節。
圖7:40uSec/Div的設置更詳細顯示L1充電C1 (AVDD)和開關/關閉周期。
請注意,在圖7中,Q2汲極在-Vbatt和AVDD+Vd (蕭特基)之間乾淨且快速的開關動作,幾乎沒有過衝或欠衝。
關於6A閾值過流限制的設置由幾個因素加以決定。查看圖8D部份中這些Littlefuse車用插片式熔絲類型的電流與時間關係。很明顯地,這些熔絲允許在有限的時間內承受超過額定的電流。我猜測BMW設計工程師主要根據運作期間(即運作在圖表頂部任何給定曲線的左側,在此情況下,這意味著始終維持<7.5A)一般預期的絕對峰值電流來選擇熔絲。
正常運作期間的實際電流則是未知的。它可能名義上是3A,偶爾達到6A,也可能是長時間>5A;無論哪種情況,Q1和Q3等電流流經的元件,其額定值必須能夠因應峰值電流振幅以及長週期、高電流發熱導致的熱要求。最好採用可表面安裝(相對於通孔)的FET,並能夠透過GPIO輸出直接驅動其閘極(無需電平轉換器)。
圖8:警報器、電線、校準爐和熔絲特性。
圖9(a)顯示採用DPAK+封裝的TK11S10N1L傳輸曲線,顯示這些元件的通道在Vgs=3.4V時通常可以承載8A左右的電流。這會使封裝變得很熱,但可能是可行的。這就是為什麼將智慧熔絲拉至乘客座艙這種可控制溫度環境會很方便的原因,因為RDS(on)會隨著溫度的升高而增加,從導致車子的引擎蓋下溫度更明顯升高。
圖9:我們可以看到傳輸電晶體的熱性能,以及(b)的表格和圖形結果。
為了測量傳輸電晶體(pass-transistor)的熱性能,熱敏電阻如T1–T3所示(參見圖10中黃色箭頭和文本),將T1、T2與Q1、Q3汲極接線片配對,T3測量環境溫度。這些熱敏電阻必須堅固、可靠且具有良好的可重複性,在室溫下也必須有相當高的電阻值,以免消耗過多功率。將其與校準裝置組合在一起,如圖8C中所示,以獲取熱敏電阻電阻和相關的溫度讀數。表格和圖形結果請參考圖9 (b)部份。此外,測量T3在普通空氣環境中的熱時間常數,大約為7s。
圖10將相同的實證數據顯示為最佳擬合多項式曲線,因此我們有了熱敏電阻的近似R-T方程式為:R=1.8T2-338T+1.6733*104 (如資料表所示)。
圖10:來自圖9中相同實證數據的電晶體和圖表,可最佳擬合多項式曲線。
用於評估Q1、Q3溫度性能並確定是否斷開負載以防止過熱的演算法如圖11所示。只要以下三種情況中的任何一個定時超時,就會在程式碼中執行該演算法,這由MCU的Cryotimer計時器確定:
圖11:熱演算法流程圖,用於評估Q1、Q3溫度性能並確定是否斷開負載以防止過熱。
如果符合以下條件,則根據熱考量因素斷開負載:
圖12顯示涉及整個負載開關操作的程式碼執行流程。
圖12:熱演算法的系統級程式碼執行流程圖。
關於負載開關的最後一個考慮因素是,無論何時發生短路,它都會將Vbatt連接到蜂鳴器,進而提供事件的聲音訊號。
圖13進一步直觀地突顯開關性能。請注意,電感器電流在下一個充電週期開始前有大約1微秒(µs)不連續。這使得電感電流在Vbatt增加到約14.5V的充電期間內持續間斷。
現在,除了這些詳細的電源考量之外,Tiny Gecko MCU中還提供了完整資料收集系統所需的所有功能塊。ADC上添加了另一個通道,用於在獲取熱敏電阻讀數時測量OPA1的輸出電壓(獲得的負載電流)。Bang-Bang電源考慮因素很重要,因為不僅需要充電突發之間的時間以進行溫度測量,而且還需要ADC重新配置、測量負載電流、資料儲存以供後續檢索,之後為在半秒後進行的下一輪測量重新初始化ADC。
圖13:截圖中以Bang-Bang開關動作的特寫突顯開關性能。
儲存所測得的熱量和負載電流資料的方法之一,是在非揮發性快閃記憶體中使用Silicon Labs專有的損耗平均(Wear Leveling)庫(稱為NVM3)。資料可以構造為包含4bytes大小的32位元字組,如下所示:Bits 31-24->負載電流,Bits 23-16->T1,Bits 15-8->T2,Bits 7-0->T3。
NVM3將單個32位元字儲存到Flash需要約82µs,因此Bang-Bang突發之間大約200µs綽綽有餘。字元寫入過程是一種阻擋功能,必須在電源不進行交換時發生,以避免電感過載。該專案包括一個NVM3實例;但是,為了方便起見,我們直接將資料儲存在RAM中。終端用戶可以輕鬆修改程式碼而使用NVM3實例。一旦取得相關資料並在J2上連接USART0 TX後,短接JP1將強制Tiny Gecko進入上傳模式並打開LED1。LED1上電後,移除JP1即開始資料上傳。
圖14顯示近半小時內的51個性能點。大約每0.5秒採集一次完整資料(3,060個可儲存的32位元字),但僅每半分鐘上傳一次。
圖14:這些圖表顯示了近半小時內30秒資料的性能點。
圖表顯示儲存半秒電流和溫度資料的資料擷取系統。在25.5分鐘的測量間隔內,負載電流大多在30到60mA之間,偶爾會降至30mA以下。測量系統實際上可以解析1.9mA。相對於全規模6A範圍,30mA僅為0.5%,因此在這種情況下截斷是可以接受的。
溫度資料顯示在近半小時內平緩上升,而且由於負載電流在測試期間一直非常低,Q1、Q3溫度沒有明顯上升。T1與T2、T3的差異可能是由於在測試期間位於麵包板上的位置和紙箱內部的方向不同而導致的。
進一步的測試應該揭示更多這個熔斷電路上負載的性質。總的來說,該專案成功地減少整體電線厚度,進而減輕車輛重量以及提高續航里程和降低成本。
加入LINE@,最新消息一手掌握!