文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2012)06-0076-03
對于互聯(lián)網(wǎng)數(shù)據(jù)中心(以下簡稱IDC)來說,良好的環(huán)境狀態(tài)是保證設(shè)備正常運(yùn)轉(zhuǎn)的條件,而對IDC環(huán)境狀態(tài)的檢測是使其保持良好環(huán)境的重要措施[1-5]。根據(jù)電子信息系統(tǒng)IDC設(shè)計規(guī)范(GB50174-2008),開機(jī)時,IDC設(shè)備最優(yōu)的環(huán)境是溫度為22~24 ℃,相對濕度為40%~55%;停機(jī)時,IDC設(shè)備環(huán)境要求是溫度為5~35 ℃,相對濕度為40%~70%。因為IDC的不間斷供電系統(tǒng)(UPS)工作時會釋放出氫氣,可能發(fā)生爆炸或火災(zāi)等安全隱患,所以為了保證IDC設(shè)備的安全運(yùn)行,除了溫度和濕度的檢測外,還需檢測IDC的空氣中氫氣密度和煙塵濃度。
系統(tǒng)還可以通過無線通信網(wǎng)絡(luò)將檢測信息與工作人員時刻保持聯(lián)系。
1 IDC環(huán)境檢測系統(tǒng)的總體設(shè)計
IDC環(huán)境檢測系統(tǒng)的結(jié)構(gòu)如圖1所示,主要由四部分組成:數(shù)據(jù)采集、STM32主板、無線通信和觸摸屏。
1.1 數(shù)據(jù)采集
IDC環(huán)境檢測系統(tǒng)采集環(huán)境的溫度、濕度和空氣中氫氣密度、煙霧濃度。
由于IDC的空間較小,本系統(tǒng)檢測該空間4個點的溫濕度。系統(tǒng)選用溫濕度一體傳感器DHT21,DHT21的溫度測量范圍是-20 ℃~+60 ℃,分辨率為0.1 ℃。DHT21濕度測量有效范圍是20~90%RH,當(dāng)溫度控制在25 ℃左右恒溫時,精度可達(dá)到±3%RH。DHT21是數(shù)字傳感器,DHT21與CPU之間單通道串行通信, 傳送距離在20 m以上[6]。
普通的環(huán)境檢測系統(tǒng)只針對空氣中的溫度測量,由于IDC設(shè)備局部空氣不流通引起的溫度失常則是無法檢測到的。IDC環(huán)境檢測系統(tǒng)選用8路AD590溫度傳感器,專用于檢測容易發(fā)生異常的設(shè)備的溫度。AD590是單片集成兩端感溫電流源,輸出恒流模擬信號,接線的長短不會影響檢測到的溫度值,這樣傳感器可以安放在機(jī)房內(nèi)的任何位置。AD590的測溫范圍為-55 ℃~+150 ℃,在測量范圍內(nèi),非線性誤差僅為±0.3 ℃。
因為空氣中氫氣和煙霧密度異常的可能性較小,且檢測精度要求較低,所以系統(tǒng)只設(shè)1路氫氣密度和1路煙霧密度的測量。可以選用電壓模擬信號的傳感器,這樣便于軟件編程和電路設(shè)計。系統(tǒng)分別選用MQ-2和MQ-8這兩個空氣質(zhì)量傳感器。
1.2 無線通信
IDC環(huán)境監(jiān)控系統(tǒng)采用TC35短消息模塊實現(xiàn)無線通信,TC35短消息模塊通過RS-232標(biāo)準(zhǔn)接口與STM32通信,通過移動通信網(wǎng)絡(luò)與工作人員的手機(jī)進(jìn)行通信。工作人員不必時刻守著機(jī)房,不僅減少了IDC設(shè)備對工作人員的輻射量,同時可以騰出時間做其他工作,提高了工作人員的利用率。
1.3 觸摸屏
觸摸屏的作用是顯示系統(tǒng)的工作信息,對整個系統(tǒng)功能進(jìn)行調(diào)試設(shè)置。通過RS-232標(biāo)準(zhǔn)接口與STM32通信。
1.4 STM32主板
STM32是整個系統(tǒng)數(shù)據(jù)處理中心。機(jī)房內(nèi)用電設(shè)備眾多,可能會產(chǎn)生多種信號干擾。為了保證CPU的工作正常穩(wěn)定,必須選用安全可靠的處理芯片并對CPU進(jìn)行電路隔離與信號屏蔽。
本系統(tǒng)是基于ARM體系型號為STM32F103RBT6微處理器進(jìn)行設(shè)計的。STM32F103RBT6包含2個12 bit的ADC,分12個I/O通道,不需要外部輔助硬件就能實現(xiàn)多路傳感器同時提取數(shù)據(jù);具有3個USART,滿足液晶及遠(yuǎn)程控制部分的串行通信。
2 STM32主板的電路設(shè)計
STM32主板的電路設(shè)計主要分為傳感器DHT21的電路設(shè)計、傳感器AD590的電路設(shè)計、空氣質(zhì)量傳感器MQ-2與MQ-8的電路設(shè)計和RS232通信電路的設(shè)計。
2.1 傳感器DHT21的電路設(shè)計
DHT21是數(shù)字傳感器,DHT21與STM32之間單總線串行通信。DHT21與STM32之間選用單通道的高速光耦合器6N137(如圖2所示)。IDC環(huán)境檢測系統(tǒng)共有4路溫濕度一體傳感器DHT21,分別連接到STM32的4個普通I/O口。
2.2 傳感器AD590的電路設(shè)計
AD590的信號轉(zhuǎn)換電路如圖3所示。AD590輸出電流以絕對溫度零度(-273℃)為基準(zhǔn),每增加1℃,它會增加1 μA輸出電流。在室溫23℃時,其輸出電流Io=(273+23)=296 μA。Vo的值為Io乘上10 K,以室溫23℃而言,輸出值為10 K×298 μA=2.96 V 。當(dāng)溫度在-55 ℃~+150 ℃內(nèi)變化時,AD590輸出是2.18 V~4.23 V的電壓信號,通過差分放大電路,把信號調(diào)整到0.18 V~2.23 V。然后通過AD7741把電壓模擬信號轉(zhuǎn)換成相應(yīng)的頻率信號,經(jīng)光電隔離,最后連接到STM32的ADC采樣引腳。
IDC環(huán)境檢測系統(tǒng)共有8路溫度傳感器AD590。為了減少AD590的信號轉(zhuǎn)換電路,IDC環(huán)境檢測系統(tǒng)對8個溫度傳感器AD590采用掃描的方式讀數(shù)。通過CD4028依次對8個溫度傳感器供電,再通過CD4051依次連接8個溫度傳感器到模擬信號轉(zhuǎn)換電路。這里STM32輸出到CD4051和CD4028的信號速度較慢,選用光電隔離元件TLP521就可以滿足要求。
2.3 傳感器MQ-2和MQ-8的電路設(shè)計
空氣質(zhì)量傳感器MQ-2和MQ-8輸出電壓模擬信號,它們的工作原理相同,這里以MQ-2為例設(shè)計電路。因為只有1路MQ-2,所以MQ-2可安裝在STM32主板上,不需使用光電隔離,MQ-2的輸出信號直接到STM32的ADC口上。RS的變換范圍是5 kΩ~20 kΩ,R1=5 kΩ,這樣輸出點的電壓范圍是1 V~2.5 V。
2.4 RS-232通信的電路設(shè)計
TC35和觸摸屏的通信都是RS-232標(biāo)準(zhǔn)接口與STM32通信,IDC環(huán)境檢測系統(tǒng)選用MAX232芯片實現(xiàn)兩路TTL-RS232電平轉(zhuǎn)換。
3 STM32的軟件設(shè)計
根據(jù)IDC環(huán)境檢測系統(tǒng)的工作要求,設(shè)計STM32的主程序流程圖如圖4所示。
STM32的軟件設(shè)計主要包括3個部分:傳感器數(shù)據(jù)的采集、與TC35模塊的通信以及與觸摸屏的通信。
3.1 STM32采集傳感器數(shù)據(jù)的軟件設(shè)計
3.1.1 DHT21數(shù)據(jù)的采集[7-8]
STM32與 DHT21之間的通信采用單總線數(shù)據(jù)格式, 一次通信時間5 ms左右, 一次完整的數(shù)據(jù)傳輸為40 bit,高位先出。數(shù)據(jù)格式為:濕度高8 bit+濕度低8 bit+溫度高8 bit+溫度低8位+校驗和8 bit。
首先初始化STM32的I/O口,使之作為推拉式輸出,輸出18 ms以上的低電平,然后輸出20~40 μs的高電平。然后改變I/O口為上拉式輸入, DHT21會發(fā)送80 μs的低電平,說明DHT21發(fā)送響應(yīng)信號,DHT21發(fā)送響應(yīng)信號后,把總線拉高80 μs,準(zhǔn)備發(fā)送數(shù)據(jù),每一位數(shù)據(jù)都以50 μs低電平時隙開始,高電平的長短確定了數(shù)據(jù)位是0還是1,高電平時間為26~28 ?滋s表明該數(shù)據(jù)為0,高電平時間為70 μs表明該數(shù)據(jù)為1。
3.1.2 AD590數(shù)據(jù)的采集
IDC共有8路AD590,采用循環(huán)掃描的方式。首先CD4028的地址引腳DCBA輸入0001,CD4051的地址引腳CBA輸入001,抬高CD4051的輸入使能引腳INH電平,這樣開通AD590_1,然后等待200 ms,預(yù)熱AD590,最后讀取一定時間AD7741的脈沖次數(shù)。所讀取AD7741的次數(shù)反映AD590檢測溫度的大小,這樣即讀完一路AD590檢測的溫度值。通過改變CD4028和CD4051的地址重復(fù)上述步驟,依次讀取8路AD590檢測的溫度值。
3.1.3 MQ-2和MQ-8數(shù)據(jù)的采集
MQ-2和MQ-8輸出的是電壓信號,STM32可以直接通過帶有復(fù)用功能ADC(模擬數(shù)字轉(zhuǎn)換器)的I/O口,把電壓模擬信號轉(zhuǎn)換成12位數(shù)字信號,通過STM32內(nèi)部集成DMA控制器,把ADC讀取的數(shù)字信號傳輸?shù)絊TM32內(nèi)存,每次需要傳輸200個數(shù)據(jù),并求平均值,這樣可以保證最后輸出的空氣中氫氣密度和煙霧濃度值穩(wěn)定。
3.2 STM32與TC35模塊通信的設(shè)計[8]
使用TC35模塊前,要在TC35模塊上插入一張SIM卡,確定TC35模塊連接上移動網(wǎng)絡(luò)。STM32與TC35模塊之間是通過串口通信的。首先STM32向TC35模塊發(fā)送初始化指令:AT+CNMI=2,1(指令功能:短信提示),AT+CMGF=1(指令功能:英文方式發(fā)送)。初始化之后,如果TC35模塊接收到信,向STM32發(fā)送指令:+CMTI:“SM”,1(表示有短信接收,存在SIM卡的第1個位置);此時STM32向TC35模塊發(fā)送指令:AT+CMGR=1;(指令功能:讀取SIM卡的第一個位置的短信);然后STM32會接收到:+CMGR:“REC UNREAD”,“+8613*********”,“10/06/07,15:02:08+32”(表示短信未讀,短信來源號碼,接收時間);abc(表示短信內(nèi)容);STM32接受到任何短信,識別短訊來源號碼是否是事先設(shè)定的號碼,如果是,則發(fā)送:AT+CMGS=“13*********”(功能:向設(shè)定好的號碼發(fā)送短信);STM32等待TC35回復(fù),等收到回復(fù)后,發(fā)送IDC環(huán)境數(shù)據(jù)信息:ab****** (IDC環(huán)境數(shù)據(jù));STM32發(fā)送信息結(jié)束標(biāo)識:1A;STM32收到指令:+CMGS:11(IDC環(huán)境數(shù)據(jù)發(fā)送成功)。
3.3 STM32與觸摸屏通信的軟件設(shè)計[9]
觸摸屏用來顯示IDC環(huán)境數(shù)據(jù)和設(shè)置對應(yīng)環(huán)境值的安全范圍。首先要把設(shè)計好的背景圖片存儲在觸摸屏的Flash里面,存入觸摸屏的控制程序(此程序設(shè)定觸摸屏按鍵代碼)。
STM32控制觸摸屏的主要代碼如下:
AA 52 CC 33 C3 3C(清屏指令)
AA 70 01 CC 33 C3 3C(背景圖片選擇指令,其中01表示圖片的地址)
AA 53 00 80 00 F0 32 32 46 35 CC 33 C3 3C(在溫度后面顯示22.5,其中00 80 和00 F0是顯示文字的坐標(biāo),32 32 46 35是22.5的ASCII碼)
觸摸屏按鍵返回碼:
AA 71 00 01 CC 33 C3 3C(其中00 01表示鍵碼)
通過實際測試IDC環(huán)境檢測系統(tǒng),系統(tǒng)檢測到的環(huán)境溫度、濕度和空氣中氫氣密度、煙霧濃度數(shù)值穩(wěn)定,精度符合要求,通過移動通信網(wǎng)絡(luò),管理人員就可以隨時查看IDC環(huán)境狀況,減輕了IDC工作人員的負(fù)擔(dān)。IDC環(huán)境檢測系統(tǒng)的優(yōu)勢已經(jīng)得到體現(xiàn),幫助解決了很多IDC環(huán)境保障問題,對同類檢測系統(tǒng)的實現(xiàn)也有一定的參考價值。
參考文獻(xiàn)
[1] 史水娥,楊豪強(qiáng). 基于ARM9處理器的機(jī)房環(huán)境遠(yuǎn)程監(jiān)測系統(tǒng)設(shè)計[J].河南師范大學(xué)學(xué)報(自然科學(xué)版),2010,38(3):57-59.
[2] 王劍鋒,林宣雄. 環(huán)境監(jiān)控(監(jiān)測)建設(shè)與發(fā)展過程的思考[J]. 中國環(huán)境監(jiān)測,2006,22(5):9-12.
[3] 朱偉. 數(shù)據(jù)中心機(jī)房環(huán)境監(jiān)控系統(tǒng)的研究和應(yīng)用[J]. 金融電子化,2008(4):53-55.
[4] 陳亮.鶴煤集團(tuán)機(jī)房環(huán)境監(jiān)控的應(yīng)用與發(fā)展[J]. 科技創(chuàng)業(yè),2010(8):189-190.
[5] 姜云安.大中型機(jī)房環(huán)境監(jiān)控系統(tǒng)淺談[J]. 智能建筑與城市信息,2010(8):12-15.
[6] DHT21產(chǎn)品說明書[EB/0L].(2011-02-25).http://wenku.baidu.com/view/d3b37e23bcd126fff7050b38.html?from=rec&pos=0&weight=33&lastweight=13&count=5.
[7] 倪天龍.單總線傳感器 DHT11在溫濕度測控中的應(yīng)用[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2010(6):60-62.
[8] 楊小平.基于AT89S52和DHT21的溫濕度測量系統(tǒng)設(shè)計[J].無錫職業(yè)技術(shù)學(xué)院學(xué)報,2011,10(1):62-63.
[9] 張華,高需.基于TC35模塊實現(xiàn)短消息收發(fā)[J].電腦知識與技術(shù),2010,17(6):4817-4819.
[10] 翟霄翔,郝久玉,鄭軍.電阻式觸摸屏在嵌入式系統(tǒng)中的應(yīng)用[J].電子測量技術(shù),2006,29(2):36-37.