











摘" 要:文章提出一種基于STM32對電網調度中心工控機房進行數據采集的系統,主要是實現對工控機房溫濕度數據的采集與監測。使用STM32F103RBT6作為主控制器,設計和實現硬件系統。通過總線讀取所測量的溫濕度數據,STM32可以成功地將采集到的數據顯示到OLED屏幕上并傳送到上位機,同時通過藍牙模塊與手機相連,實現室內溫濕度的實時采集和上傳。當溫濕度超過設定閾值時,采集器會通過蜂鳴器預警并將預警信息發送至手機端。實驗結果表明,所設計的溫濕度采集器可以準確測量工控機房內的溫濕度并具備預警功能。
關鍵詞:溫濕度測量;STM32單片機;控制器;藍牙模塊;工控機房
中圖分類號:TP273;TP368.1 文獻標識碼:A" 文章編號:2096-4706(2024)11-0186-05
Design of Temperature and Humidity Collector for Power Grid Industrial Control Room Based on STM32
XIAO Yanhui, MENG Xiangbin, YIN Wenxue, LIANG Daili, LI Jiaxin
(Shenyang Institute of Engineering, Shenyang" 110136, China)
Abstract: This paper proposes a system based on STM32 for data collection in the industrial control room of the power grid dispatch center, mainly to achieve the collection and monitoring of temperature and humidity data in the industrial control room. It designs and implements a hardware system using STM32F103RBT6 as the main controller. By reading the measured temperature and humidity data through the bus, STM32 can successfully display the collected data on the OLED screen and transmit them to the upper computer. At the same time, it is connected to the mobile phone through a Bluetooth module to achieve real-time collection and upload of indoor temperature and humidity. When the temperature and humidity exceed the set threshold, the collector will give an early warning through a buzzer and send the early warning information to the mobile phone. The experimental results show that the designed temperature and humidity collector can accurately measure the temperature and humidity inside the industrial control room and has an early warning function.
Keywords: temperature and humidity measurement; STM32 Single-Chip Microcomputer; controller; Bluetooth module; industrial control room
0" 引" 言
在電網調度中心的工控機房中有很多重要的大型設備,如用于遠程調度的工業控制計算機、不間斷電源(UPS)、存儲歷史信息的存儲器及與現場進行通信的設備等,這些設備必須長期處于運行狀態以保障整個電網系統的正常運作。設備的長期運行會產生很多熱量,為防止設備過熱損壞,需要工業制冷空調使機房內的溫度保持在一定范圍內。工業制冷空調的長期使用同時會導致機房內的濕度上升,機房內的這些設備很容易受到濕度影響而發生故障[1],溫度太高或者濕度太高會導致UPS中電池的損壞或造成存儲器等設備的損壞,且容易造成火災或停電等事故,影響電網的安全運行,所以對電網調度中心的工控機房進行溫濕度監測及數據的采集是一項很重要的工作。本文設計了基于STM32單片機控制器的工控機房溫濕度采集器,可以時刻對室內溫濕度進行監測;還可以設定溫濕度的上下限閾值,當超過設定閾值時,溫濕度采集器會通過手機進行報警。
1" 總體設計
基于STM32單片機的溫濕度采集器主要包括兩部分:主體硬件設計及軟件系統的開發。本文使用STM32F103系列的微控制器作為核心控制部分,如圖1所示是STM32單片機整體硬件控制系統的框圖。從圖中可以看出,STM32主控制器通過單總線與溫濕度傳感器通信獲取實時溫濕度,然后將采集到的數據寫入STM32的Flash中,最后將數據顯示在OLED顯示屏上。STM32主控制器還可以與手機通過藍牙模塊進行數據傳輸,當溫度或濕度超過閾值時,通過手機進行報警。PC端通過RS485接口向STM32主控制器發出請求,讀取Flash寄存器中存儲的數據。
2" 硬件設計
2.1" 電源系統
本文所設計的溫濕度采集器主要工作在電網調控中心的機房中,因此應提供穩定的電源以保證整個采集器系統正常運行。目前我國提供的直流電源大多數是12 V或5 V的直流電源,然而STM32控制器所需的直流電源是3.3 V,因此在整個系統中需要一個DC-DC的直流轉換電路。如圖2所示,采用固定低壓差線性穩壓器REG1117設計穩壓電路。REG1117具有限流和熱保護功能,支持最大輸入電壓15 V,可以在-65~+150℃環境中使用,3.3 V固定的輸出電壓,符合電網調度中心工控機房的工作條件[2]。圖中C1和C2是輸出濾波電容,可抑制自激振蕩,防止輸出波形振蕩。
2.2" 單片機最小系統設計
STM32F103系列是ST公司基于32位ARM Cortex-M3內核開發的微控制器芯片,它的設計主要面向工業控制領域,提供了豐富的外設和功能、集成度高,在工業控制領域得到了廣泛的應用。利用ST公司提供的標準庫程序,開發者可以很快地開發可靠性高的工業級產品,功耗低、通信速度和運行處理速度更快[3]。經過綜合比較,STM32F103RBT6的優異性能可以達到工控機房測溫濕度的功能要求,所以最后選定STM32F103RBT6作為本系統中溫濕度采集器的核心控制器件。
其最小系統如圖3所示,最小系統中包含晶振模塊、時鐘模塊、復位模塊、指示模塊、電源模塊及下載模塊等。晶振模塊是指能夠使STM32單片機產生時鐘脈沖的電路,本文設計系統電路中采用8 MHz晶振,同時選用C3、C4、2個22 pF電容與晶振配合用于穩定晶振的振蕩頻率,防止晶振頻率受到外界干擾而發生變化[4];晶振的兩個引腳分別與STM32控制器的5、6引腳相連,分別標為OSC_IN及OSC_OUT。STM32控制器內部有RTC實時時鐘模塊,頻率為32.768 kHz,與控制器的3、4引腳相連。復位模塊可以使電路在接收到復位信號后進行復位,保障系統的正常運行。STM32F103控制器的啟動方式是受到BOOT0、BOOT1引腳控制,通過對兩個引腳進行設置,使本系統不僅可以從Flash中直接啟動,還可以從內置SRAM存儲器啟動。當設置BOOT1=0、BOOT0=1時,系統由存儲器啟動;當BOOT1=1、BOOT0=1時,系統由內置SRAM啟動,此種啟動模式常用于調試狀態。D1和D2分別是STM32工作和電源的LED指示燈,電源濾波電路由C5、C6、C8、C11組成。在最小系統中還有程序下載模塊,通過TXD和RXD引腳進行數據的下載。
2.3" 溫濕度監測模塊
要采集監測工控機房的溫濕度,本系統使用能夠對溫濕度測量精準的DHT11傳感器來設計溫度和濕度采集電路[5]如圖4所示,DHT11傳感器原理圖如圖4(a)所示。DHT11采用單總線協議與STM32控制器進行通信,工作時STM32控制器會發送復位信號,這時DHT11會從空閑的低功耗模式轉換到高速模式,等待STM32控制器復位結束后,由DHT11向控制器側發送響應信號,同時會使總線處于高電平狀態為數據傳輸做準備。DHT11進行數據傳輸時一次完整的數據為40 bit,按照高位在前,低位在后的順序傳輸數據,格式為:8 bit濕度整數數據+8 bit濕度小數數據+8 bit溫度整數數據+8 bit溫度小數數據+8 bit校驗和,一共40 bit數據[6]。為了保證傳輸的數據準確,會通過校驗位對采集到的數據進行校驗,校驗和為前4個字節數據相加,如果校驗發現數據錯誤就會把本次采集的數據包丟棄,重新采集下一次數據。
DHT11進行溫濕度采集的機制是只有在接收到STM32控制器的開始信號后才會采集一次溫濕度數據,如果沒有接收到控制器發來的復位信號,DHT11不主動進行溫濕度采集。當數據采集完畢且無開始信號后,DHT11自動切換到低速模式以減少損耗[7]。DHT11中的模數轉換芯片可以將采集到的模擬量轉化為對應的數字信息,并向微控制器輸出實時性較強的串行數據適用于對各種環境數據進行采集監控。本文設計的工控機房溫濕度采集系統,溫度和濕度數據首先由DHT11收集,然后通過單總線從引腳2連接傳輸到STM32。采集到的溫濕度信息通過OLED顯示屏連接,如圖4(b)所示,OLED顯示屏可以使采集到的溫濕度數值直觀地顯示出來,增加了可視化界面的美觀性,OLED屏的SDA、SCL分別與單片機的PB7、PB8接口相連,輸出顯示在OLED屏上。
2.4" 紅外傳感器
該模塊主要檢測調控機房內的溫度,當機房內溫度過高超過預設溫度,紅外傳感器檢測溫度越限時,蜂鳴器發出報警。本文選用HC-SR501紅外熱釋電模塊檢測機房內溫度[8],如圖5所示,HC-SR501共有三個引腳:VCC、接地端、輸出端,單片機通過判斷該引腳輸入電平來檢測溫度是否過高。
2.5" 報警模塊
報警模塊選用蜂鳴器實現[9],如圖6所示,QB12接入芯片PA5引腳,其余引腳按照要求分別接電源及地。當紅外傳感器檢測到溫度值超過預先設定的數值時,采集器會通過手機端進行報警,同時工控機房內的蜂鳴器也會通過震動進行預警,這樣可以保證第一時間排查出機房溫度異常的原因。
2.6" 藍牙模塊
機房內的溫濕度通過手機端與STM32進行無線傳輸,當機房內溫濕度過高時也會通過手機端進行報警。本文設計采用ATK-HC05藍牙模塊進行傳輸,這是一款高性能藍牙串口模塊,可以與帶藍牙功能的電腦、手機等智能終端進行配對,并且此模塊兼容5 V或3.3 V單片機系統,其引腳連接圖如圖7所示。
其中VCC接5 V或3.3 V電源;GND接地;RXD為接收端;TXD為發送端;LE為LED燈表示配對狀態輸出:當配對成功輸出高電平,LED燈亮,未配對成功輸出低電平,LED燈不亮;KEY引腳用于進入設置工作模式(AT)狀態,高電平有效,懸空狀態下默認為低電平;工作模式分為自動連接或命令回應模式。該模塊可以實現主從模式切換,提供更高性能的數據傳輸。其控制圖如圖8所示。
藍牙模塊上電之前,由于KEY引腳高電平有效,所以將KEY引腳接VCC,使引腳處于高電平,此時LED燈會緩慢閃爍(1 s閃爍1次),藍牙模塊進入設置工作模式狀態;藍牙模塊上電后,將KEY引腳懸空或接地,此時LED燈快速閃爍(1 s閃爍2次),這時進入到藍牙配對模式;當設備通過藍牙配對成功后,LED燈會呈現雙閃狀態(1次閃爍2下,2 s閃爍一次)[10]。
3" 軟件程序設計
STM32控制器通過單總線與DHT11傳感器進行通信獲得溫度和濕度數據,圖9為溫濕度采集的軟件程序設計流程圖。從圖中可以看出,首先對采集系統進行初始化并配置參數,根據DHT11功能表,STM32將總線驅動為低電平20 ms以請求DHT11的響應。如果DHT11未響應,則STM32控制器會重復驅動總線為低電平;如果DHT11響應請求,STM32將讀取DHT11的數據包,并校驗數據包是否正確,如數據不正確則會丟棄此數據包;如數據正確會校驗溫濕度是否超過設定閾值,如超過閾值會進行報警,如果數據正確會進行下一組數據傳輸直到傳輸完成。
4" 系統測試
設計的溫濕度采集器實物圖如圖10所示,首先給采集器接入電源,采集器接通電源后,紅色的電源指示燈亮,表示設備可以正常啟動。在測試階段把采集器放在室內,上電后OLED顯示屏上會分別顯示出室內的溫度值和濕度值。同時本系統還可以分別對溫濕度的上下限進行設置,如圖10(b)所示。當溫濕度超過設定的上下限閾值時,采集器會通過蜂鳴器進行報警,同時會通過手機端發送信息預警提示。
測試時把設計的溫濕度采集器放入到室內,室溫為18 ℃,濕度為35%RH,通過室內空調進行溫度調節,通過加濕器對室內濕度進行調節,得到如下測試結果:
在室內把空調溫度設置為30 ℃,每隔5分鐘對溫度記錄一次,把監測到的溫度數據通過曲線圖的形式表現出來,監測結果如圖11所示。
從圖中可以看出,室內溫度隨著時間會逐漸升高,經過一段時間后室內溫度穩定在29 ℃左右。采集溫度時會有一些誤差,誤差為±1%,在工控機房溫度誤差允許范圍內。
在濕度為35%RH環境下,打開加濕器,觀察由其引起的空氣濕度變化并監測其穩定性,每隔5分鐘記錄一次,監測結果如圖12所示。
從圖中可以看出,室內濕度隨著時間會逐漸升高,經過1個小時的測試時間,室內濕度由35%RH上升到44.5%RH,采集濕度時會有一些誤差,誤差為±2%,在工控機房溫度誤差允許范圍內。
5" 結" 論
本文設計了在電網調控中心工控機放內應用的溫濕度采集系統,通過對硬件及軟件的設計及實物測試,可以看出設計的溫濕度采集器能夠對工控機房的溫度及濕度進行監測與采集,說明器件選擇合理。本采集系統能夠保證機房內的設備工作在合適的溫濕度條件,且系統電路簡單、實用性強、造價低,具有較高的使用價值。隨著研究的不斷深入,后續還可以繼續對此系統進行改進,如在本系統中加入光敏元件或煙霧報警系統,使此采集器具有更多實用功能。
參考文獻:
[1] ZHANG L J,CHEN H J. Design of Environmental Monitoring System for Livestock Transport Carriage Based on STM32 and ZigBee [J].International Journal of Frontiers in Engineering Technology,2023,5(10):29-33.
[2] 趙靜萍.基于STM32單片機的古籍閱覽室溫濕度自動化檢測和控制系統設計 [J].自動化與儀器儀表,2023(8):209-213.
[3] 徐勝,顧俊,趙蔚,等.基于STM32和LabVIEW的多通道數據采集系統設計 [J].儀表技術與傳感器,2023(11):78-83+88.
[4] 張敏,方健,王勇,等.基于ZigBee無線通信的變電站端子箱溫濕度傳感器系統設計[J].制造業自動化,2023,45(2):169-174.
[5] 田肖.基于ZigBee的疫苗運輸車環境監測報警系統的設計與實現 [D].重慶:重慶郵電大學,2018.
[6] 劉勃妮,王麗,周炳旺.一種基于STC89C52單片機的測溫系統設計 [J].中國科技信息,2022(15):111-113.
[7] 丁一峰,李永鋮,尹宏釗,等.基于STM32的智能身份識別與紅外防疫測溫系統 [J].現代信息科技,2022,6(10):57-60.
[8] 倪丹艷.基于STM32單片機的機器人移動障礙物智能躲避系統設計 [J].自動化與儀表,2023,38(5):52-56.
[9] SOZA?SKI K. Low Cost PID Controller for Student Digital Control Laboratory Based on Arduino or STM32 Modules [J].Electronics,2023,12(15):3235.
[10] 劉娟花,楊幸芳.基于單片機的溫濕度監測系統 [J].現代電子技術,2017,40(20):165-168.
作者簡介:肖艷輝(1992.10—),女,滿族,遼寧沈陽人,助教,碩士研究生,研究方向:單片機、嵌入式。
收稿日期:2023-12-18
基金項目:遼寧省自然科學基金資助計劃面上項目(LJKMZ20221718)