查子堯,林毅
(南京理工大學(xué)自動(dòng)化學(xué)院,江蘇 南京 210094)
隨著電子行業(yè)的快速發(fā)展,目前越來(lái)越多的嵌入式系統(tǒng)需要用到通信模塊,比如近場(chǎng)通信(Near Field Communication,NFC)、4G、WIFI等。由于這些芯片的存在,系統(tǒng)故障掉電時(shí)會(huì)消耗巨大電流,導(dǎo)致電壓在2 ms以?xún)?nèi)就跌落至單片機(jī)工作電壓以下,因此數(shù)據(jù)在掉電時(shí)無(wú)法備份存儲(chǔ)[1]。目前的電力電子設(shè)備,掉電時(shí)存儲(chǔ)數(shù)據(jù)的時(shí)間一般需要10~20 ms,若數(shù)據(jù)較多可能還需要更長(zhǎng)時(shí)間[2]。為了保證在故障掉電時(shí)有足夠的時(shí)間保存數(shù)據(jù),需要延長(zhǎng)系統(tǒng)的掉電時(shí)間。
文中通過(guò)低壓差線性穩(wěn)壓器(Low Dropout,LDO)和超級(jí)電容實(shí)現(xiàn)射頻系統(tǒng)中的掉電存儲(chǔ)電路,并通過(guò)軟件控制射頻工作。其特點(diǎn)是面向射頻系統(tǒng),精確控制掉電時(shí)間并且頻繁掉電時(shí)也能保證一定的掉電時(shí)間。
汽車(chē)電子行業(yè)中,嵌入式系統(tǒng)主要通過(guò)蓄電池給單片機(jī)以及各類(lèi)外設(shè)芯片供電,通過(guò)MCU驅(qū)動(dòng)射頻芯片和FRAM。嵌入式射頻系統(tǒng)的總體框架如圖1所示。
圖1 系統(tǒng)總體框圖
物料搬運(yùn)行業(yè)準(zhǔn)則中,規(guī)定電壓跌落時(shí)間至少大于50 ms,這是因?yàn)樵诎徇\(yùn)過(guò)程中,貨物抖動(dòng)可能導(dǎo)致負(fù)載變大,拉低電動(dòng)叉車(chē)的電池電壓,這個(gè)過(guò)程一般在50 ms左右。在此期間,單片機(jī)不能重啟,也就是工作電壓不能低于1.8 V[3]。
按照汽車(chē)電子的標(biāo)準(zhǔn),當(dāng)B+電壓低于額定電壓的40%,并超過(guò)5 ms,則認(rèn)為電源已經(jīng)斷開(kāi),此時(shí)可以進(jìn)行關(guān)機(jī)、掉電保存等操作。如果未達(dá)到5 ms電壓就恢復(fù)至額定電壓的40%以上,此時(shí)認(rèn)為電源未斷開(kāi),屬于正常的電壓抖動(dòng)[4]。按照此標(biāo)準(zhǔn),軟件通過(guò)ADC得到電源電壓,當(dāng)判斷電源已經(jīng)斷開(kāi)時(shí),產(chǎn)品開(kāi)始進(jìn)行掉電保存。
目前,延長(zhǎng)掉電時(shí)間的處理方法主要可分為以下3類(lèi):1)通過(guò)電源管理芯片,檢測(cè)掉電事件的發(fā)生;2)通過(guò)儲(chǔ)能元件,比如電容,延長(zhǎng)掉電時(shí)間;3)各類(lèi)芯片采用低功耗模式[5]。文獻(xiàn)[6]結(jié)合了第二類(lèi)和第三類(lèi)方法,采用鋰電池作為備用電源,同時(shí)斷電時(shí)進(jìn)入低功耗模式,結(jié)果表明,該方法能夠在突發(fā)斷電時(shí)延長(zhǎng)掉電時(shí)間,但低功耗下備用電源的掉電時(shí)間不能精確控制。文獻(xiàn)[7]結(jié)合第一類(lèi)和第二類(lèi)方法,通過(guò)分壓網(wǎng)絡(luò)采集信號(hào)并通過(guò)FPGA控制備用電池,該方案能夠準(zhǔn)確的延長(zhǎng)掉電時(shí)間,但是遇到頻繁掉電的情況時(shí),掉電時(shí)間會(huì)越來(lái)越短。對(duì)于嵌入式系統(tǒng),掉電時(shí)間過(guò)短會(huì)影響數(shù)據(jù)保存,而掉電時(shí)間過(guò)長(zhǎng)則會(huì)影響系統(tǒng)正常關(guān)機(jī)。
文獻(xiàn)[6]中的斷電保護(hù)電路主要由兩節(jié)鋰電池(8.4 V)和充電管理芯片BQ2057CSN構(gòu)成。當(dāng)外系統(tǒng)正常供電時(shí),對(duì)采集存儲(chǔ)系統(tǒng)供電并對(duì)斷電保護(hù)電路中的鋰電池進(jìn)行充電。如果外系統(tǒng)供電失效,鋰電池進(jìn)行供電。其優(yōu)勢(shì)在于動(dòng)態(tài)補(bǔ)償鋰電池的內(nèi)阻以減少充電時(shí)間,并有溫度檢測(cè)功能,當(dāng)溫度超過(guò)允許范圍時(shí)可停止對(duì)電池進(jìn)行充電。其缺點(diǎn)在于掉電時(shí)間的長(zhǎng)短受到鋰電池剩余電量的影響,系統(tǒng)關(guān)閉時(shí)間不可控,當(dāng)出現(xiàn)連續(xù)掉電時(shí)無(wú)法可靠保障掉電安全。
圖2 鋰電池方案電路圖
文中設(shè)計(jì)的掉電系統(tǒng)電路圖如圖3、4所示。
圖3 DC-DC電路圖
圖4 LDO電路圖
LDO穩(wěn)壓器是一種低功耗的線性穩(wěn)壓器,LDO線性穩(wěn)壓器的壓差低于普通的穩(wěn)壓芯片,因此在系統(tǒng)掉電時(shí),它的持續(xù)工作時(shí)間也比普通穩(wěn)壓芯片的時(shí)間長(zhǎng)[8]。其壓差是將輸出電壓維持在其額定值上下100 mV之內(nèi)所需的輸入電壓與輸出電壓差額的最小值。在電池電壓經(jīng)過(guò)DC-DC后再經(jīng)過(guò)LDO二次降壓,可以有效地延長(zhǎng)掉電時(shí)間。
DC/DC芯片采用的是LM5008ASD,該芯片輸入范圍為12~96 V,能夠應(yīng)對(duì)汽車(chē)電子的大部分工況,并且在電壓抖動(dòng)時(shí)能夠平緩輸出[9]。
超級(jí)電容是利用活性炭多孔電極和電解質(zhì)組成的雙電層結(jié)構(gòu)獲得超大的容量,并且使用壽命長(zhǎng)。在低功耗的嵌入式系統(tǒng)中,選用容量較小的超級(jí)電容便能大幅度延長(zhǎng)掉電時(shí)間[10]。
相比現(xiàn)有的掉電方案,文中方案的優(yōu)勢(shì)在于能夠通過(guò)超級(jí)電容準(zhǔn)確控制具體的掉電時(shí)間。嵌入式系統(tǒng)中超級(jí)電容容量無(wú)需過(guò)大,因此充電速度較快,在上電后的幾十毫秒內(nèi)便能充滿(mǎn),因此能很好地應(yīng)對(duì)頻繁掉電狀況。
射頻系統(tǒng)中的單片機(jī)采用的是英飛凌的XMC 1404-F064X0200,該單片機(jī)的最低工作電壓是1.8 V,通過(guò)SPI與FRAM進(jìn)行通信。
射頻芯片ST25R3911的工作電壓為2.4~5.5 V。主要用于直接驅(qū)動(dòng)天線。通過(guò)天線識(shí)別各類(lèi)NFC卡。而高頻的來(lái)源則是振蕩器的輸入,一般為13.56 MHz或27.12 MHz。
存儲(chǔ)芯片是富士通鐵電存儲(chǔ)器MB85RS64,該芯片具有64K的存儲(chǔ)空間,電壓為3~5.5 V。
綜上所述,要求負(fù)載功耗最大時(shí),斷開(kāi)電源不會(huì)導(dǎo)致鐵電無(wú)法保存。鐵電的最低工作電壓為3 V,MCU的最低工作電壓為1.8 V,因此要滿(mǎn)足電壓跌落至1.8 V的時(shí)間大于50 ms,同時(shí)電壓從48 V*40%跌落至3 V的時(shí)間超過(guò)15 ms。
一般超級(jí)電容等效阻值在100 mΩ左右,而LDO輸出電阻值經(jīng)過(guò)測(cè)量在200 mΩ左右,射頻場(chǎng)關(guān)閉時(shí)消耗的總電流為300 mA。因此可計(jì)算出LDO和超級(jí)電容消耗的電壓值為[11]:
Vout的值設(shè)定為5 V,Vin的值為5.3 V,從而在超級(jí)電容上產(chǎn)生的放電電壓值為:
由此可以計(jì)算出電容的大小為:
由于電容加大會(huì)導(dǎo)致電壓跌落時(shí)間變長(zhǎng),也會(huì)產(chǎn)生新的問(wèn)題。當(dāng)電壓低于1.8 V時(shí),單片機(jī)停止工作,電流減小,此時(shí)電壓會(huì)升高,然后單片機(jī)又會(huì)重新啟動(dòng),也就是電壓震蕩[12]。這個(gè)問(wèn)題的解決辦法是通過(guò)增加電阻進(jìn)行吸收,或者通過(guò)軟件來(lái)保證,這里采用軟件的方法,因此掉電保存前要判斷工作的時(shí)間,防止連續(xù)保存[13]。
軟件控制的核心是檢測(cè)掉電信號(hào)并控制射頻場(chǎng)。軟件框圖如圖5所示。
圖5 軟件流程圖
通過(guò)單片機(jī)定時(shí)器中斷可以實(shí)時(shí)讀取電源電壓值,在跌落時(shí)通過(guò)高優(yōu)先級(jí)中斷進(jìn)行掉電保存,并防止電壓抖動(dòng)帶來(lái)的二次保存。
考慮到這里掉電時(shí)間一般是ms級(jí)的,檢測(cè)電壓的周期只需比1 ms小一些。通過(guò)定時(shí)器中斷設(shè)置,每250 μs讀取一次AD采樣的值,與預(yù)設(shè)值進(jìn)行比較。1/250 μs=4 kHz,而系統(tǒng)內(nèi)部時(shí)鐘頻率為48 MHz,因此時(shí)鐘裝載的值為48 000 000/4 000=12 000,并將中斷優(yōu)先級(jí)設(shè)置為最高0??捎肵MC的庫(kù)函數(shù)進(jìn)行設(shè)置[14]。
然后通過(guò)中斷事件讀取AD采樣的B+電壓,這樣就可以達(dá)到快速檢測(cè)掉電信號(hào)的目的。首先要確定其正常工作電壓,再根據(jù)行規(guī)判斷掉電的依據(jù)。在此基礎(chǔ)下,保證一些參數(shù)數(shù)據(jù)有足夠的時(shí)間保存。
如果電源斷開(kāi)的時(shí)候,射頻場(chǎng)處于打開(kāi)狀態(tài),此時(shí)由于射頻的功率較大,掉電時(shí)間會(huì)非??靃15]。在判斷電源已關(guān)斷時(shí),就要以最快速度關(guān)閉射頻場(chǎng),因?yàn)樯漕l芯片消耗電流非???,如果射頻場(chǎng)打開(kāi)時(shí)即使增加了LDO和超級(jí)電容,也無(wú)法滿(mǎn)足要求。如果時(shí)間仍然不夠,在電壓跌落至一定程度時(shí)就需要關(guān)閉射頻場(chǎng)??梢园凑瘴锪习徇\(yùn)行業(yè)準(zhǔn)則和低速電動(dòng)叉車(chē)的規(guī)定進(jìn)行設(shè)置。
正常工作狀態(tài)下電壓會(huì)穩(wěn)定在48 V,如果有電壓抖動(dòng)也不會(huì)超過(guò)200 ms。在這期間關(guān)閉射頻場(chǎng)停止識(shí)別功能,對(duì)于用戶(hù)的使用沒(méi)有影響,因此在電壓低于工作電壓75%時(shí)就關(guān)閉射頻場(chǎng),電壓恢復(fù)至80%以上時(shí)重新打開(kāi)射頻場(chǎng)。
綜上,通過(guò)ADC實(shí)時(shí)讀取電壓值,當(dāng)B+電壓低于額定電壓的40%,并超過(guò)5 ms,則認(rèn)為電源已經(jīng)斷開(kāi),此時(shí)可以進(jìn)行關(guān)機(jī)、掉電保存等操作。如果未達(dá)到5 ms,電壓就恢復(fù)至額定電壓的40%以上,此時(shí)認(rèn)為電源未斷開(kāi),屬于正常的電壓抖動(dòng)。在此基礎(chǔ)上,若電壓低于75%就自動(dòng)關(guān)閉射頻場(chǎng)。
經(jīng)過(guò)硬件和軟件的優(yōu)化后,此時(shí)射頻場(chǎng)在打開(kāi)和關(guān)閉狀態(tài)下,掉電時(shí)間相差不大,都能很好地滿(mǎn)足要求,僅使用超級(jí)電容的開(kāi)場(chǎng)掉電波形圖如圖6所示,改良后的開(kāi)場(chǎng)掉電波形如圖7所示。
圖6 射頻場(chǎng)打開(kāi)時(shí)掉電波形圖
圖7 改良后射頻場(chǎng)開(kāi)時(shí)的掉電波形
與圖6相比,可以看出電壓跌落至75%時(shí),射頻場(chǎng)關(guān)閉,電壓下降幅度明顯減小。從40%的電壓跌落至3.3 V的時(shí)間為25 ms左右,可以保證跌電的存儲(chǔ)。單片機(jī)從5 V跌落至1.8 V的時(shí)間為52 ms左右,滿(mǎn)足物料搬運(yùn)和汽車(chē)電子行業(yè)的要求。并且掉電波形更為平滑,在3.3 V和1.8 V處電壓抖動(dòng)較小。
該系統(tǒng)采用文獻(xiàn)[16]的方法時(shí),掉電的波形如圖8所示。電壓從5 V跌落至1.8 V的時(shí)間為56 ms左右。與圖6比較,掉電時(shí)電壓波動(dòng)明顯較大,且在電壓跌落至1.8 V時(shí)會(huì)有大概2 ms的抖動(dòng),可能會(huì)引起單片機(jī)重啟。
文中設(shè)計(jì)了一種面向射頻的單片機(jī)掉電存儲(chǔ)系統(tǒng),從經(jīng)濟(jì)性出發(fā),通過(guò)軟件和硬件,減少掉電時(shí)的電流消耗并延長(zhǎng)掉電時(shí)間,使產(chǎn)品滿(mǎn)足物料搬運(yùn)和汽車(chē)電子行業(yè)的要求。該方案能讓掉電波形更為平滑,減少電壓抖動(dòng),精確控制掉電時(shí)間,以保證數(shù)據(jù)保存的可靠性。