王子牛,汪 進,程 凌,韓 輝
(1.江蘇省安全生產科學研究院,江蘇 南京 210042;2.江蘇省化工本質安全研究院,江蘇 南京 210009)
裝設有操作站、工程師站,并且放置部分控制柜、不間斷電源(uninterruptible power supply,UPS)等關鍵設備的中央控制室,作為整個工廠或企業的“大腦”,對生產運行起著監視和控制的作用,是全廠的重要區域之一。目前,國內大多數化工企業的中控室環境監測控制智能化水平較低,人員操作環境和設備運行環境不理想,安全隱患突出。無論是政府監管還是研究層面,往往更關注生產裝置而長期忽視中控室。對于化工企業而言,一旦中控室發生火災或爆炸等事故,會直接導致整個控制系統癱瘓,進而使得裝置、設備失控,極易引發嚴重的安全事故。近年來,相關學者和工程技術人員在中控室內部設備與布局方面作了較多研究,而對中控室內部環境監測和控制的研究卻較少。吳炳志[1]設計了1套中控室空氣質量自動監控系統。周琳霖[2]對中央抗爆控制室進行了空調系統設計及優化分析。殷志杰[3]提出了完善中控室溫度控制的新方法。金延柱[4]對中控室照明系統的設計作了相關研究。然而,上述研究均僅關注中控室內部環境的某個方面,尚未對整體進行分析并實現監測控制。
本文立足當前化工企業中控室現狀,將“安全”和“智能”作為設計出發點,設計了1套基于STM32和LabVIEW的中控室環境智能監測控制系統。該系統能夠采集溫度等中控室內部重要參數,并根據實時參數實現對相關設備的科學控制。同時,該系統通過上、下位機之間的數據通信,實現對環境參數和設備狀態的動態監控。
近年來,在國家大力倡導和要求下,化工生產裝置區內“減人”已得到較好落實。中控室的重要性和特殊性決定了其必須長期有人值守,且大型企業的中控室內往往人員數量較多,安全問題更加不容忽視。目前,國內大多數化工企業中控室的智能化程度較低。這主要體現在測量和控制這2個方面。如對于室內環境的溫度測量,還停留在使用壁掛直顯式測量計,依靠人工讀數記錄。部分使用數字式溫度檢測的化工企業也存在測溫點設置不合理等問題。對于溫度的控制,目前化工企業普遍采用統一的定溫空調控制方式,而忽視了中控室內不同區域、不同設備的發熱量的區別。此外,化工企業對于室內光照強度、氣體濃度等其他環境參數和室內人數也缺乏相應的實時監控,而對于照明燈的開關也基本依靠人工判斷“明暗”來手動操作等。因此,為中控室設計1套可以實現室內環境參數監控及設備控制的智能化系統,不僅可以優化中控室環境、節能降耗,還能延長儀器和設備壽命、減少安全隱患,具有十分重要的現實意義。
從上述分析的功能需求來看,系統必須實現以下功能。第一,采集中控室內不同區域的溫度信息,并根據溫度信息調節空調出風量,以實現智能控溫。第二,探測人體紅外信息,以實時統計中控室內人數。第三,探測室內的光照強度信息,并根據光強信息自動調節照明燈亮度。第四,探測室內的煙霧濃度信息,從而判斷是否發生火災并實現聲光報警功能。第五,探測可燃和有毒氣體含量信息,從而判斷是否發生可燃和有毒氣體泄漏,進而控制新風系統的開關并實現聲光報警功能。第六,實時監控顯示環境參數和設備狀態。
整個系統由下位機和上位機2個部分組成。下位機是整個系統的檢測和控制單元,通過對合理布置在中控室內的各傳感器采集的環境參數進行處理,以實現對各參數和設備的控制。本文設計系統選用STM32F429IG作為主控芯片。STM32F429IG具有1 MB閃存、260 KB靜態隨機存取存儲器(static random-access memory,SRAM),以及多達14路定時器、140個輸入/輸出(input/output,I/O)口和12位模數轉換器(analog-to-digital converter,ADC),主頻高達180 MHz,在滿足各功能要求的同時也使本文系統更易于擴展和升級。上位機平臺基于LabVIEW開發,實現對環境參數以及被控設備狀態信息的實時接收、解析、處理、顯示和存儲。上、下位機間通過RS-485串口進行通信。
系統總體如圖1所示。

圖1 系統總體框圖
傳統的中控室溫度控制設計思路是采用中央空調,通過設定理想溫度值來實現中控室內整體溫度的穩定。然而,這一做法忽略了機柜室、操作區、UPS室等區域對溫度的不同需求及發熱量的差別。根據測算及數值模擬分析[5],中控室內溫度分布是不均的。操作區整體溫度、操作臺溫度、計算機溫度、機柜內外部溫度、UPS溫度等都存在差異,同一時間最多可相差十幾度。尤其大功率設備的散熱已經超出了《控制室設計規范》(HG/T 20508)[6]、《工業建筑供暖通風與空氣調節設計規范》(GB 50019)[7]等現行標準規范的要求。溫度是電子元器件發生故障的主要因素。這種“冷熱不均”的現象在夏季尤為明顯,也是造成控制系統在夏季故障率直線升高的原因。此外,統一溫度的控制模式能耗較大,也不夠經濟。
因此,本文采用多點測溫、多點控制的設計方案,通過劃分測溫區域,在不同的重要設備處分別設置溫度傳感器,并根據測得的實際溫度值與設定值對比,決定出風口的開啟程度(即給風量)。
溫度測量及控制原理如圖2所示。

圖2 溫度測量及控制原理示意圖
考慮到實用性與簡易性,溫度傳感器采用美國達拉斯公司生產的DS18B20溫度傳感器。該傳感器是1種單總線器件,可以直接將感知到的外界溫度轉換成串行數字信號,并提供給STM32處理。該傳感器體積小、功耗低、抗干擾能力強,測溫范圍為-55~+125 ℃[8],非常適合室內環境的溫度測量。本文系統使用DS18B20組成測溫模塊,線路簡易、成本較低。由于該系統采用單線技術,在1根通信線上可掛多個器件,通過接到多個地址線即可實現與單片機的通信。這根信號線既可以傳輸時鐘,又可以雙向傳輸數據,因此可以實現多點測溫。DQ腳是數據I/O腳,連接到STM32的I/O口,用于傳輸采集到的溫度信息。由于其單總線特性,通常要外接1個阻值為5 kΩ左右的上拉電阻,即圖2中的R8。這使得該總線閑置時,其電壓狀態為高電平。
為實現多點控溫,空調送風通道可設計成分支結構,并在中控室各關鍵部位分別安裝配有風道擋板的出風口。當各點傳感器反饋回來的溫度值高于或低于各設定值時,其對應調大或調小各自風道擋板的開度,從而改變進入中控室的空調風量。當溫度處于設定范圍內時,其保持開度不變。擋板開度的調節通過將電脈沖信號轉化為位移的步進電機來實現。電機驅動芯片選用脈沖寬度調制(pulse width modulation,PWM)斬波型雙極性正弦步進電機驅動芯片TB6600HG。在STM32中,除定時器TIM6和TIM7以外,其他定時器總共可產生最多30路獨立PWM輸出信號。通過將PWM信號作為TB6600HG的時鐘信號、使能信號EN控制開關、方向信號DIR控制正反轉,從而實現對兩相步進電機正向和反向運動的控制[9]。
人數實時統計功能通過紅外光電傳感器來實現。本文選用E18-D80NK紅外光電傳感器。該傳感器集發射和接收于一體,原理是發射頭發出調制發射光,經反射后至接收頭進行解調。其本質上是1個NPN型的光電開關。當檢測到有物體經過時,輸出低電平;反之,則輸出高電平。與DS18B20類似,只需要1根信號線和1個10 kΩ左右的上拉電阻,其即可實現與STM32的連接。
E18-D80NK檢測電路如圖3所示。

圖3 E18-D80NK檢測電路
本文根據中控室實際構造,使用2套傳感器組合的方式實現統計人數的目標。2套傳感器前后安裝在進門處,之間隔有一定的距離,以防止誤觸發。當有人從中控室外進入室內時,先觸發外傳感器輸出低電平,再觸發內傳感器使人數增加1個。反之,當有人離開中控室時,先觸發內傳感器再觸發外傳感器,則人數減少1個。
中控室的防火至關重要。在火災發生之際第一時間監測到并進行報警響應極為關鍵。本文采用MQ-2煙霧傳感器對室內煙霧進行實時探測。由于其氣敏材料的性質,當與煙霧接觸時,傳感器的電導率會發生變化。煙霧濃度越高,則電導率越大。因此,要獲得氣體濃度相對應的輸出,只需搭建簡單電路反映其電導率的變化即可。
煙霧濃度檢測電路如圖4所示。

圖4 煙霧濃度檢測電路
煙霧濃度檢測電路實現了煙霧濃度信號與開關量、模擬電壓量之間的轉換。當環境煙霧濃度值大于設定的報警閾值時,通過與經LM358放大后的電壓信號比較,連接至單片機I/O口的DOUT端輸出低電平,隨即STM32輸出信號以驅動蜂鳴器進行報警。
除此之外,對于窗戶不常開、通風條件有限的中控室,還需在新風系統進風處安裝可燃有毒氣體探測器[10],以保證室內空氣環境安全。探測信號連至本文系統。當可燃有毒氣體含量超標時,立刻關閉新風系統,同時由上、下位機進行聲光報警。
中控室一般采用人工照明與自然采光相結合的方式,傳統的恒照度光源不夠科學,也不夠節能。《控制室設計規范》(HG/T 20508—2014)給出了不同區域照度的標準值范圍[6],在目前中控室設計建設時一般都已采用了能夠提供符合照度標準值的照明燈。但從人因工程的角度考慮,不同光照環境對中控室操作員的工作狀態具有重要影響。當外界光照強度處于一定值時,若不打開照明燈,可能造成中控室內照度較低。其直接后果是增加操作員的疲勞和不舒適感,甚至進一步使得操作員視力、精力和記憶力下降。這極易造成操作失誤或在控制系統發出報警的第一時間不能作出正確處理,繼而引發事故。相反,若打開照明燈,可能使得照度過高或產生眩光,從而導致顯示設備所顯示信息的對比度降低、信息的可讀性變差。這同樣會使得操作員的疲勞感增加、注意力降低[4]。
光照檢測電路如圖5所示。

圖5 光照檢測電路
因此,根據外界自然光照水平的不同,實現照明燈照度的自動調節很有必要。本文光照檢測元件選用光敏電阻,通過搭建外圍電路將光強信號轉換為電壓信號,再送到ADC以轉換成數字量。
發光二極管(light emitting diode,LED)的發光強度由流過LED的電流決定。因此,本設計通過軟件編程改變單片機PWM輸出信號的占空比,即高低電平的持續時間,以控制LED燈的導通時間,從而實現亮度調節[11]。
LED驅動電路如圖6所示。

圖6 LED驅動電路
EN信號可以控制金屬一氧化物半導體(metal oxide semiconduction,MOS)管U1的導通和關斷,從而控制LED的開和關。TPS92515穩壓芯片的PWM端接收來自STM32的PWM信號,以實現對LED亮度的調節。此外,當檢測到的光照值低于設定的下限值時,事故應急照明立即自動打開。
系統采用RS-485總線進行上、下位機間的通信。RS-485總線傳輸距離長、抗干擾能力強,在工業場景普遍應用。
本文選用MAX485芯片作為低功耗收發器,并使用Modbus協議進行信息交互。
通信電路如圖7所示。

圖7 通信電路
通信電路中,GPIO為使能引腳,采用低電平接收、高電平發送。
系統的上位監控平臺基于LabVIEW開發,主要包括串口通信、數據接收和處理、表格查詢和加密登陸這4個部分。
LabVIEW中的虛擬儀器軟件架構(virtual instrument software architecture,VISA)組件是其與其他設備實現串口通信的橋梁。整個串口通信模塊的設計可以類比為通電話:首先,VISA打開函數,相當于拿起電話準備撥號;然后,VISA配置串口函數,相當于給通信對方撥號碼,即配置與下位機匹配的波特率等信息;隨后,通過VISA讀取函數數據信息;最后,即通話結束后,需要掛斷電話,即通過VISA關閉函數以釋放串口的控制權。串口通信規定8位數據位、1位停止位,無奇偶校驗位,波特率為9 600 bit/s。
本文采用事件結構進行串口初始化。系統只在改變串口設置時進行一次初始化,并自動投入運行,以避免因循環結構內串口的反復初始化而造成的錯誤。同時,為避免數據在串口緩沖區中溢出,本文添加了屬性節點用于判斷緩沖區是否有數據進入,以便通知VISA讀取數據。此外,本文還在VISA讀取數據前添加了VISA清空I/O緩沖區函數,以避免出現上、下位機間發送數據出現混亂和冗余。
VISA串口通信程序如圖8所示。

圖8 VISA串口通信程序框圖
實時、準確地接收、讀取和處理下位機傳來的數據是上位機設計中的關鍵部分。本文設計采用層疊式順序結構,并通過截取字符函數對按順序發送來的數據進行“解包”,以按需要截取數據。層疊式順序結構確保子程序框圖按順序執行,不僅效率較高,而且直觀、簡潔。設計中順序結構共使用了8幀,完成了對溫度信息、風道擋板開度信息、光照強度信息、人數信息、煙霧濃度信息、可燃有毒氣體信息、報警信息等數據的接收、顯示和存儲。
以溫度為例,下位機程序將溫度數據分為十位和個位發送。數據占隊列中的2位。VISA讀取到由串口傳送來的數據信息,在數據緩沖區完成對數據的采集。這部分程序首先通過截取字符串函數以截取前2位字節,再通過十進制數字符串至數值轉換函數將其轉換為數字型變量,以便顯示和進行其他數據處理。寫入測量文件節點用于存儲各點溫度數據,以便留存記錄和分析數據。其他數據的接收與之同理,只是后續處理方式由參數類型(如接通布爾燈、創建表格記錄報警時間等)決定。
數據接收和處理程序如圖9所示。

圖9 數據接收和處理程序框圖
上位機平臺中設置了表格查詢功能,可用于查詢并顯示企業排班表等。設計中使用了讀取電子表格函數,表格可以是.xls等格式,通過將電子表格中的字符串信息讀取出來以字符串數組的形式顯示。表格查詢程序如圖10所示。

圖10 表格查詢程序框圖
為保證系統的安全性,本文在上位機中設計了加密登錄模塊。這主要是為了防止非授權用戶非法進入。只有驗證賬號密碼后才能進入上位機界面。通過提示用戶輸入節點依次接入2層嵌套的事件結構:外層表示用戶名;內層表示密碼。只有當兩者同時輸入正確時,2層事件結構才都為“真”,以進入while循環從而使用系統,使得整個系統更加安全化和規范化。
加密登錄程序如圖11所示。

圖11 加密登錄程序框圖
中控室智能監控平臺整體程序如圖12所示。

圖12 中控室智能監控平臺整體程序框圖
整個程序采用模塊化的設計思想,根據設計要求通過結構節點將各功能模塊進行耦合,使其具備完整的系統功能。
中控室智能監控平臺整體程序運用while循環結構和事件結構來控制程序的開始與退出。程序的前半部分用于串口配置,后半部分用于對while循環進行適當的下位機發送數據的延時。系統中通過對循環結構配置適當的延時,以保證數據接收不會出現遺漏和混亂。整個上位監控平臺設計的關鍵部分是VISA串口通信的設計和數據的接收處理。在前面板中,通過數值顯示控件將各點的溫度、光照和人數等數據顯示出來,并設置了滑動桿以顯示風道的開啟程度,以0~100來表征。通過數值輸入控件可以在界面上直接設置各點溫度的報警上限值,當檢測到的實時溫度大于上限值時,接通高溫報警布爾燈,以通知管理人員。其他信息也直觀地反映在界面上,如當前中控室內光照強度是否滿足要求、是否發生火災和可燃有毒氣體侵入、報警時間以及中控室的人員排班表等。
本文選取某精細化工企業中控室進行功能性驗證測試。測試過程中,可以直觀地看到當前中控室內人員數量、各區域溫度及風道開度、光照強度、氣體報警和每周排班等信息實時地反映在上位監控平臺界面上。測試過程中,在中控室UPS處放置一處熱源以模擬超溫。待溫度超過設定報警閾值時,可以看到監控平臺界面超溫報警燈亮起,軟硬件均發出聲光報警。同時,風道開度增大,隨后溫度能夠在較短時間內下降到設定范圍內,以保證設備安全正常運行。人員數量檢測、智能調光等功能均運行正常。在室人數顯示與實際一致,室內光強始終處于適宜范圍內。在測試時間內,整個系統工作穩定、運行狀態良好,未出現數據異常等情況。
本文立足當前化工企業中控室內部環境監測與控制智能化程度不高、安全隱患普遍存在的現狀,設計了1套基于STM32和LabVIEW的智能控制系統。該系統一方面可以實現對中控室內溫度、光照強度、氣體濃度以及人員數量的實時采集;另一方面還可以根據上述動態參數,實現對空調、照明燈、新風系統、報警器等設備的科學控制。系統下位機將各數據通過串口傳輸至上位機平臺;上位機通過LabVIEW各函數節點對數據進行讀取和處理,從而實現實時顯示、監控和存儲。本文詳細分析了各功能模塊的設計思路和實現方式,并通過實地測試對系統功能進行了驗證。
綜上所述,本文系統基于功能強大的主控芯片STM32F429IG和編程簡單、組態靈活的LabVIEW軟件,具有界面友好、開發成本低、可靠性高、可擴展性強等特點。系統功能可根據中控室實際構造進行調整和升級,為化工企業以及其他類型中控室環境智能監測和控制提供了具有實際應用價值的參考方案,對于老舊中控室的改造和新建中控室的優化具有很強的指導意義。本文還對安全生產領域研究焦點從傳統生產區域延伸到非生產區域具有一定的啟發意義。