摘 要:如今的系統(tǒng)要在越來越小的封裝內(nèi)實(shí)現(xiàn)不斷增加的性能,系統(tǒng)熱耗散成為了一個(gè)十分嚴(yán)重的問題。為了避免熱關(guān)機(jī)甚至系統(tǒng)故障,維持適當(dāng)?shù)臏囟仁株P(guān)鍵。因而,許多系統(tǒng)需要外加風(fēng)扇來保持足夠的空氣流通。本應(yīng)用筆記介紹了風(fēng)扇控制模塊" title="控制模塊">控制模塊的概況,提供了一個(gè)利用MAX6870監(jiān)控六個(gè)風(fēng)扇的簡單控制電路。
?
風(fēng)扇模塊概述
大型電信、網(wǎng)絡(luò)系統(tǒng)經(jīng)常使用高性能處理器,從而在一個(gè)簡單的機(jī)架上實(shí)現(xiàn)更多功能。例如,一個(gè)曾經(jīng)支持12條ADSL的線卡現(xiàn)在可以支持64條,之前能夠耗散24W (每條ADSL為2W)功率的電路板現(xiàn)在必須耗散128W的功率。用強(qiáng)勁的冷空氣氣流降低相關(guān)熱阻,以達(dá)到散熱要求。
大多數(shù)電信系統(tǒng)包含很多風(fēng)扇。為保證在一個(gè)風(fēng)扇出現(xiàn)故障的情況下系統(tǒng)仍能正常工作,系統(tǒng)經(jīng)常放置超過理論所需數(shù)目的風(fēng)扇(N+1結(jié)構(gòu)),這樣,一個(gè)系統(tǒng)可能會(huì)用到6至8個(gè)風(fēng)扇。每個(gè)風(fēng)扇都有自己的電源,使風(fēng)扇可以很容易地替換而不需要關(guān)閉整個(gè)系統(tǒng)。一個(gè)子機(jī)架風(fēng)扇組(圖1)可能包括多個(gè)風(fēng)扇模塊(譬如6個(gè)),它們由-48V" title="48V">48V電池總線供電,且由一個(gè)風(fēng)扇控制模塊統(tǒng)一控制。
?
圖1. 典型的子機(jī)架風(fēng)扇模塊
基本的風(fēng)扇模塊(圖2)包含一個(gè)隔離型DC-DC轉(zhuǎn)換器,根據(jù)風(fēng)扇類型它可以將-48V電池電壓轉(zhuǎn)換成+12V或+24V。在轉(zhuǎn)換器之前使用一個(gè)熱插拔控制器,允許在系統(tǒng)不掉電的情況下更換風(fēng)扇。同時(shí)每個(gè)風(fēng)扇為控制模塊提供一個(gè)與轉(zhuǎn)速成比例的數(shù)字輸出(PWM或PFM)。
?
圖2. 風(fēng)扇模塊的系統(tǒng)框圖
這種類型的風(fēng)扇系統(tǒng)可以有很寬的芯片選擇范圍。各種各樣的熱插拔控制器可以滿足不同性能級(jí)別的需求。譬如,Maxim的MAX5901只提供一個(gè)簡單的解決方案,而MAX5920則可以提供更高的精度,這兩種控制器都可以直接由-48V驅(qū)動(dòng)。隔離電源可以選擇MAX5021;內(nèi)置功率MOSFET的高集成度" title="高集成度">高集成度轉(zhuǎn)換器可以選擇MAX5043,它只需要一個(gè)變壓器、一個(gè)電容、一個(gè)輸出二極管和幾個(gè)電阻就可以提供50W的輸出功率,而且不需要散熱片。
風(fēng)扇控制單元可以集成到系統(tǒng)內(nèi)部,這種控制方式需要給多個(gè)風(fēng)扇模塊提供一個(gè)接口,同時(shí)還必須能夠檢測每個(gè)風(fēng)扇模塊是否工作正常。當(dāng)一個(gè)風(fēng)扇出現(xiàn)故障時(shí),它必須能夠通知主控制單元。另外,我們還希望它能夠診斷并定位究竟是哪個(gè)風(fēng)扇出現(xiàn)了故障。這種控制器可以通過很多方式實(shí)現(xiàn)上述功能。例如,通過計(jì)時(shí)器和分離器件組成的陣列來實(shí)現(xiàn)。但隨著風(fēng)扇數(shù)量的增加,分離器件的數(shù)量也增加,增大設(shè)計(jì)難度。另外一種方法利用微處理器(μC)的I/O口,可以減少分離器件數(shù)目,但需要適當(dāng)編程。
第三種而且也是相對(duì)簡單的替代方法是使用高集成度、EEPROM可配置、內(nèi)置ADC的16位可編程" title="可編程">可編程電源排序器/監(jiān)控器。例如,MAX6870,它包括6路可配置的輸入電壓檢測器、4個(gè)通用輸入、2個(gè)看門狗、8個(gè)可編程輸出以及4kb用戶EEPROM??梢酝ㄟ^I2C兼容串行接口進(jìn)行讀寫和編程。除了檢測電壓、看門狗信號(hào)、外部溫度以及其他邏輯輸入信號(hào)外,該器件還能實(shí)現(xiàn)諸如風(fēng)扇控制的功能,最多可同時(shí)檢測10個(gè)風(fēng)扇。
6風(fēng)扇控制系統(tǒng)
為了便于闡述,我們先介紹一個(gè)風(fēng)扇的控制系統(tǒng),然后擴(kuò)展到6風(fēng)扇系統(tǒng)。
我們定義報(bào)警信號(hào)用于判決被檢測風(fēng)扇是否轉(zhuǎn)動(dòng)。目前大多數(shù)風(fēng)扇都可以提供一個(gè)集電極開路輸出信號(hào)(VOC),它通過一個(gè)電阻上拉到外部電壓(VS) (本例從4V上拉到30V)。風(fēng)扇每轉(zhuǎn)一圈,該VOC輸出幾個(gè)(M)幅度在0V到VS間的脈沖(圖3)。
?
?
圖3. 圖2風(fēng)扇模塊的輸出
如果風(fēng)扇以每秒N轉(zhuǎn)的速度轉(zhuǎn)動(dòng), 則VOC每秒產(chǎn)生N × M個(gè)脈沖。輸出是一組頻率為N × M赫茲的方波。如果將該輸出接至MAX6870的一個(gè)可編程輸入端,當(dāng)風(fēng)扇停止轉(zhuǎn)動(dòng)時(shí)MAX6870的其中一個(gè)輸出端PO_將提供指示。
如果VS = 5V,輸出脈沖的范圍就是0V到5V。根據(jù)風(fēng)扇停止時(shí)的電壓(VS或0V),設(shè)定輸入欠壓或過壓門限為2.5V,譬如當(dāng)輸入電壓高于(低于) 2.5V時(shí)監(jiān)控器輸出為“真”。該配置下,當(dāng)風(fēng)扇開啟時(shí),PO_輸出不被觸發(fā),輸出端產(chǎn)生5V到0V的連續(xù)脈沖。如果風(fēng)扇停止轉(zhuǎn)動(dòng),則觸發(fā)輸出,電壓將保持高電平或低電平,具體取決于風(fēng)扇的工作極性設(shè)置。
這個(gè)方案重要的一點(diǎn)是選擇一個(gè)尖峰濾波器為每個(gè)PO_輸出提供合適的時(shí)間常數(shù)" title="時(shí)間常數(shù)">時(shí)間常數(shù)。該濾波器一定要能容忍由于風(fēng)扇電源抖動(dòng)造成的頻率脈沖突變。對(duì)于MAX6870而言,所需的時(shí)間常數(shù)在25μs到1600ms之間。
例如,當(dāng)M = 2, N = 54rps時(shí), VOC的脈沖頻率為108赫茲,周期為9.26ms。如果需要嚴(yán)格控制風(fēng)扇,選擇PO_抗尖峰時(shí)間常數(shù)為25ms,大約是1.35轉(zhuǎn)??紤]到風(fēng)扇電源的波動(dòng)(以及任何熱效應(yīng)的影響),如果風(fēng)扇停止轉(zhuǎn)動(dòng)約2秒鐘,則認(rèn)為風(fēng)扇已經(jīng)出現(xiàn)故障。在這個(gè)例子中,1.6秒的暫停時(shí)間比較合適。這意味著PO_報(bào)警會(huì)在風(fēng)扇出現(xiàn)故障后變高(或低,取決于編程設(shè)置) 25ms或1.6s。
上述例子說明了一個(gè)風(fēng)扇的控制。對(duì)于6風(fēng)扇系統(tǒng),仍可使用MAX6870,并擴(kuò)展到6個(gè)輸入和6個(gè)輸出。假設(shè)每個(gè)風(fēng)扇模塊都有獨(dú)立的轉(zhuǎn)速輸出,我們可以使用上述架構(gòu)用一個(gè)控制器分別控制每路風(fēng)扇。輸出可以定義為開漏和線或方式,提供一路報(bào)警信號(hào)(圖4)。如果需要將信號(hào)極性反相或在觸發(fā)報(bào)警前插入額外延時(shí),可以將上述信號(hào)連至一個(gè)GPI_和多個(gè)PO_,并且增大時(shí)間常數(shù)。
?
圖4. 基于MAX6870電源排序器/監(jiān)控器的6風(fēng)扇控制器
器件配置通常是一件十分耗時(shí)的工作,而MAX6870不需要軟件工程師為微處理器或其他器件編程。Maxim提供圖形界面的評(píng)估板,大大簡化了配置過程(圖5)。
?
圖5. MAX6870編程界面
通過簡單地指向界面中的某一個(gè)模塊并輸入適當(dāng)?shù)臄?shù)值(如輸入信號(hào)、時(shí)序等),工程師可以十分容易地配置MAX6870。經(jīng)過適當(dāng)配置后,點(diǎn)擊“"Load to Memory”按鍵對(duì)芯片裝載設(shè)置。MAX6870是第一款為復(fù)雜系統(tǒng)設(shè)計(jì)的多輸入控制器。由于精度高、易于編程等特點(diǎn),大大簡化了系統(tǒng)設(shè)計(jì)。