胡 姣 劉玉玲 李岳洪 吳 根 尤文濃 何文亮
(威凱檢測技術有限公司 廣州 510663)
目前,軟件功能安全評估已成為眾多智能家電合格評定過程中不可或缺的一部分,例如,洗衣機的門鎖保護[1]、電磁爐的爐面過熱保護[2]等功能。智能電飯鍋作為人們生活中廚房烹飪器具之一,利用微處理器(MCU)和智能控溫技術,實現精準的溫度控制,以達到最佳的食物烹飪效果。然而,制造商在關注產品的軟硬件設計時,往往為了追求產品的智能化可能會疏忽了標準GB 4706.1/IEC60335-1標準第19章非正常工作下的19.11.3條款對保護性電子電路以及22.46條款對軟件保護的相關要求,從而導致產品質量風險。本文針對上述問題,從GB 4706.1/IEC60335-1標準及產品特殊標準第19章非正常工作的試驗和附錄R要求對可編程電子電路控制故障/錯誤措施等軟件的相關要求進行分析,旨在為此提供有益的見解和參考。
圖1為智能電飯鍋器具的電路框圖,使用發熱管加熱。為了防止過熱導致的火災危險,電飯鍋的發熱管一端串聯了熱熔斷體,并通過繼電器來控制加熱。當電流通過繼電器的線圈時,繼電器吸合,使發熱管工作,從而形成了硬件保護電路。發熱管的另一端是由NTC溫度傳感器、微處理器(MCU)以及繼電器組成的“NTC—MCU—繼電器”保護性電子電路,異常工作情況下,一旦溫度傳感器檢測到鍋內溫度超過設定的閾值,微處理器(MCU)便會觸發保護機制。MCU通過控制三極管Q1、Q2的通斷,控制繼電器以切斷電熱元件(如發熱管)的電源,停止加熱。

圖1 智能電飯鍋的電路框圖
依據GB 4706.1/IEC 60335-1第 19.5條款要求“控制器不短路,而電熱元件的一端要與其外鞘相連”。將電熱元件與繼電器連接的一端與外鞘相連接,即失效掉“NTC—MCU—繼電器”電路,當電熱元件溫度過熱時,熱熔斷體開路,切斷電熱元件的電源,從而實現硬件過熱保護,符合標準要求。
19.5條款試驗第二次要求“改變器具電源極性,電熱元件另一端要與電熱元件的外鞘相連,重復此試驗”。當發熱元件與接地外鞘相連接,即熱熔斷體失效時,此時產品的過熱是依靠電子電路保護“NTC—MCU—繼電器”。當溫度過高時,NTC感應溫度并反饋MCU,MCU將信號傳遞給繼電器控制電路,以切斷電熱元件(如發熱管)的電源,停止加熱從而實現過熱保護,符合標準要求。
根據GB 4706.1/IEC 60335-1中第19.11.3條款要求,如果器具裝有使其符合第19章要求的保護電子電路,則需對保護電子電路依次施加19.11.2中的a)~g)的單一故障試驗再重復19章測試。
19.11.2 條款單一故障,某電飯鍋發熱管驅動電路圖如圖2所示。三極管Q1、Q3分別連接芯片的兩個驅動控制端,三極管Q2的基極B與Q1的集電極C串聯,二者由同一驅動電平控制。GB 4706.1/IEC 60335-1 的19.11.2 d)條款中要求非集成電路電子元件的任何兩個接線處的短路。即對繼電器驅動電路中的三極管Q1 的集電極C和發射集E進行短路時,Q1持續導通,Q2導通。此時MCU給Q3觸發信號,則12 V電壓經過Q2與Q3后繼電器導通,NTC檢測到過熱時,Q3切斷繼電器電路,形成“NTC—MCU—Q3—繼電器”組成的保護電路。當施加三極管Q3的CE短接時,通過“NTC—MCU—Q1—Q2—繼電器”的形成保護性電子電路的回路。

圖2 某電飯鍋電熱管驅動電路圖
在上述19.11.2單一故障上重復19.5章實驗,即三極管 Q3 短接與19.5熱熔斷體失效,此時產品的過熱是仍然是依靠電子電路保護,即溫度傳感器檢測到溫度異常,MCU控制三極管的Q1+Q2驅動信號使繼電器斷開,停止加熱,形成溫度檢測電路即“NTC—MCU—Q1—Q2—繼電器”保護性電子電路,依據GB 4706.1/IEC 60335-1 22.46要求通過附錄R評估軟件符合性。
電飯鍋等家電產品通常使用負溫度系數熱敏電阻(NTC)作為溫度傳感器。而溫度是烹飪過程中的一個重要參數。NTC通過將反饋信號傳遞給芯片A/D轉換器,然后MCU根據A/D寄存器轉換的結果來進行溫度測量,從而實現溫度控制和過熱保護。圖3列示了熱敏電阻在不同溫度下的阻值和相應的AD值。從表中可以觀察到,NTC是一種溫度敏感的電阻元件,其電阻值隨溫度的變化而變化。因此它可以快速而準確地感應到鍋內溫度的變化。同時NTC的電阻值隨溫度的升高而下降,這種非線性特性使得電飯煲可以更精確地控制溫度,實現控制加熱功率,以維持所需的烹飪溫度。從而確保了食物在整個烹飪過程中被烹飪得均勻和完美。

圖3 熱敏電阻不同溫度下的阻值對應的AD值
另一方面NTC還用于監測鍋底溫度過熱,從而觸發過熱保護機制。一旦NTC檢測到溫度超過設定的閾值,電飯煲可以立即停止加熱,以防過熱導致的火災或器具不安全的危險。
如果NTC損壞或失效,將會造成智能電飯煲的溫度控制失效以及過熱導致的火災危險。通常智能電飯鍋溫度檢測非正常保護功能軟件部分設計包含兩部分:一是鍋底過熱保護;二是鍋底NTC出現短路、開路和阻值固定不變時的故障處理措施。
過熱保護中,軟件程序通過設定一個超溫范圍值,即當溫度 AD值超出預設范圍時(如鍋底溫度超過168 ℃),即認為鍋底溫度異常。
NTC失效故障處理,智能電飯鍋中一般選用的NTC阻值其常溫25 ℃下為50 kΩ和100 kΩ兩種類型。依據CTL0725A 決議要求選用一個中間電阻值的固定電阻代替NTC,即使用常溫(25 ℃)下R/2 NTC的阻值模擬固定阻值失效。為了符合標準要求如圖4案列代碼選取溫度(15~50)℃下NTC的AD值范圍作為固定阻值不變的監測點。正常加熱過程中,若鍋底溫度 AD值在這個范圍內長時間保持不變且持續超過2 min,即認為鍋底熱敏電阻(NTC)失效,這意味著NTC無法根據溫度變化正常調整其阻值,因此電飯煲會軟件程序進入故障保護狀態,切斷加熱元件的電源,停止加熱。

圖4 鍋底NTC失效代碼檢測
除了軟件程序負責保護智能電飯鍋過熱和NTC失效故障外,另一方面也要關注的是可編程電子電路MCU自身的故障,防止MCU本身的故障導致家電整機非正常功能保護的缺失。A/D轉換的溫度準確性在這類產品中至關重要,A/D 轉換器的轉換結果的準確度直接影響NTC采樣的準確性。一般情況下A/D轉換器的似真性檢查是通過芯片自身“自校準”方式進行考察,即將已知的電壓信號輸入到A/D轉換器中,將A/D轉換的結果與已知的電壓值進行比較用以校準和故障檢測。
圖5所示為A/D轉換器準確性的“自校準”方式流程圖。如圖所示,首先確定用于A/D轉換校準的預設值,即已知的電壓值,可利用 MCU本身內部電壓源作為參考值,也可利用RC電路模擬一個外部參考電壓源。以其作為輸入到A/D轉換器的準確電壓信號,用于A/D轉換的理論輸入值。

圖5 A/D轉換器校驗流程圖
其次,確定連接A/D輸入芯片引腳與配置A/D轉換器。連接A/D轉換器的輸入引腳,以將內部參考電壓作為輸入信號。在MCU的軟件中配置A/D轉換器,以啟動單次或連續的A/D轉換并設置適當的采樣速率、分辨率和參考電壓。
在此之后進行A/D轉換并計算差異,啟動A/D轉換,使其將內部參考電壓轉換為數字值。確保在轉換期間沒有任何干擾或變化,以保持輸入信號的穩定性,從A/D轉換器中讀取轉換的結果。將A/D轉換結果與文檔中提供的內部參考電壓的預期值進行比較,計算兩者之間的差異或誤差。通過計算百分比誤差:誤差百分比 = [(實際值 - 預期值)/ 預期值]×100 % 得到A/D轉換器的輸出與預期值之間的差異百分比。
最后分析結果,根據計算的誤差百分比,評估A/D轉換器的性能。如果誤差在合理范圍內,則A/D轉換器可正常工作。如果誤差很大,則A/D轉換器存在問題。
圖6為A/D轉換代碼舉例。該示例代碼采用芯片內部參考電壓為1.25 V,將芯片一個引腳連接到1/4VDD(已知VDD 5 V電壓),通過AD轉換器直接檢測1/4VDD電壓AD值,并求10次平均值后得到1/4 VDD電壓AD值,設定容差范圍為正負5 %,則電壓值在1.187 5 V到1.315 V的范圍內,換算成AD值范圍在60~67。如果1/4 VDD電壓AD值超出了定義的邊界范圍,則說明A/D轉換的結果不在預期的范圍內,設置錯誤標志。

圖6 A/D轉換代碼
內部參考電壓檢查方法僅適用于具備內部參考電壓的MCU型號。對于其他型號,可能需要考慮使用其他方法,如校準、多次采樣和平均值等。同時,內部參考電壓本身也可能受到溫度、電壓等因素的影響,因此在檢測過程中需要考慮這些因素。最終的故障檢測方法應根據應用需求和MCU的特性進行選擇和定制。
為此在設計電飯鍋等使用A/D轉換器測量溫度的產品時,需要綜合考慮傳感器特性、MCU的A/D轉換精度和校準等因素,以確保用戶獲得準確和穩定的溫度測量結果。
除A/D轉換部分外,還應考核產品安全相關的采集、存儲、運算處理、輸出等過程中的數據,如CPU、寄存器、存儲器、I/O等有關的數據,即針對MCU器件本身也需要進行控制以防止出錯,對應故障措施要滿足IEC 60335-1:2020的R.1所述的故障/錯誤條件的措施。
隨著智能家電的不斷發展,對智能家電產品的軟件質量和安全性進行評估將成為提高家電質量的重要方向。本文以智能電飯鍋為例,探討了其在非正常工作情況下過熱保護電子電路原理,并依據GB 4706.1/IEC 60335-1第19.11.2條款規定的單一故障條件進行試驗分析。具體來說硬件層面,通過模擬傳感器NTC短路、開路和固定阻值失效等故障似真性驗證;軟件層面,通過增加合適的A/D自校驗容錯程序等措施,提高MCU輸入輸出接口的準確性,以此確保溫度采樣數據A/D轉換的準確性。
軟件評估的對象包括整個與安全相關的控制系統,涵蓋了軟件、硬件和接口。此外,還應分析MCU其他軟件部分控制故障/錯誤方法包括對芯片自身正常工作和及時動作的監測,如時鐘振蕩是否正常、寄存器讀寫是否出現滯后故障、PC指針是否正常運行以及軟件的邏輯流程等方面進行標準符合性分析。從而最終保證產品安全可靠。