秦小英
(宣化科技職業學院,河北張家口075100)
基于C++的電源遠程監控系統的研發
秦小英
(宣化科技職業學院,河北張家口075100)
對電源遠程監控系統的主要功能進行了分析,詳細設計了監控系統的整體結構和網絡結構,選擇了合適的電源數據采集方式和底層通信方式,并介紹了利用C++實現相關功能的過程。
電源;遠程監控;嵌入式;C++
遠程監控主要包括兩大部分:一部分是遠程監測;另一部分是遠程控制。因此遠程監控的實現離不開計算機、通信、自動控制等技術的快速發展。而隨著科學技術的不斷進步,自動化程度更強、智能化水平更高的監控技術也不斷涌現,使遠程監控成為工業生產、醫學系統、智能家居、安防體系等生產生活場合所必不可少的保障手段。
與此同時,科學技術的發展也使我們的生產和生活越來越離不開電力的供應。電源工作的可靠性、穩定性和相應的工作效率直接地影響著我們生產生活的方方面面,因此,加強對電源系統的有效監控,是保障國民生產和人民生活順利進行的基礎。
目前,電源模塊的設計日益復雜,逐漸向低成本、高實時性、高可靠性、高效率和可支持熱插拔方向發展[1]。這一發展方向也為電源的監控提出了更高的要求,而過去基于單片機的控制方式已不能滿足相應的要求。因此,利用嵌入式系統,采用C++語言,構建一套高效低耗的電源遠程監控系統是生產過程的基本需要。
電源監控系統的服務對象主要有三類:(1)交流配電系統:監控的參數主要有三相輸入輸出電壓、重要的開關量狀態、故障告警設備狀態;(2)直流配電系統:直流配電設備的輸入輸出電壓、電流模擬量數值、直流輸出告警(過壓、欠壓、開關、熔絲狀態等);(3)整流器設備:整流器設備的電壓、電流、設備溫度、均浮充狀態、限流或非限流、啟動停止、告警等狀態。其主要的系統功能有:(1)實時監控功能:實時監控分為兩個層次,一個是現場監控部分,主要應用于重要的電源設備,為自動監控提供必要的基礎;另一個是遠程監控,電源系統中的所有設備均增加遠程監控功能,為遠程監控提供必要的數據基礎。監控的第一步是對電源運行狀態的采集、顯示和分析;同時還能夠利用上位機發出控制命令,用來控制相應設備的運行或停止。(2)告警功能:對于超過工作閾值的設備進行狀態追蹤并報警,同時記錄故障信息(包括位置、程序等),上報至上位機,在上位機上顯示相關信息,并采取控制措施。對于具有現場控制功能的重要設備,如果超過預定時間沒有接收到上位機控制指令,則依據底層驅動自動控制程序直接進行自動的啟/停控制。(3)報表功能:對實時數據、歷史數據進行統計分析,并可以依據用戶的需求設置報表顯示、打印輸出等功能,同時,還能夠靈活地輸出各種類型的圖形。(4)系統管理功能:系統的各種設置功能及用戶權限的管理等。
系統的整體結構如圖1所示。

圖1 系統整體結構
數據的采集及執行機構的控制是整個監控系統的源頭和結尾。這兩部分的工作狀態直接影響著整個監控系統的工作性能。在本設計中,這兩部分的功能由電源采集及控制模塊來實現。如圖2所示,整個模塊的核心采用DSP數字信號處理器,所選的型號TMS320LF2407,主要的作用是對采集的信號進行處理,并對重要設備的運行狀態進行初步分析,當重要設備的運行參數值超過了相應的閾值,DSP啟動控制裝置實現現場的自動控制功能,從而可以縮短處理故障的時間。各個設備與DSP之間采用無線傳感網進行連接,整個網絡采用星形結構,采用的技術是短距離通信ZigBee技術,工作在2.4 GHz頻段,芯片選用CC2530。處于整個星形結構中心的是協調器,負責把網絡中的其他終端節點所采集的數據傳送給DSP芯片,CC2530與TMS320LF2407之間采用RS232進行連接。

圖2 數據采集及控制模塊框圖
整個電源的數據采集主要是電壓、電流和溫度等信息。電壓的采集選用PT03C-2/2電壓互感器,電流采集選用CT03-5/2.5電流互感器,溫度選用DTH溫度傳感器。PT03C-2/2和CT03-5/2.5采集來的數據傳送至SAMES SA9904B。作為測量電壓、電流、頻率、測量有功與無功電能的主流芯片,SAMES SA9904B包含了與微控制器通訊的集成SPI串行接口。各相測得的有功與無功電能,電源電壓與頻率可經由SPI接口從24位元暫存器取得。當全負載時SA9904B有功與無功電能暫存器可保存積存的電能至少52 s。由于電流互感器和電壓互感器的采集閾值超過了SA9904B,所以在互感器和SA9904B之間需要增加信號調理電路。信號調理電路的作用:一方面可以把采集信號轉化為SA9904B芯片可以接收的范圍;另一方面信號調理電路還應該實現對兩種互感器所采集信號的濾波。這些采集數據經調理后傳送至SA9904B,再經過SA9904B芯片內部的轉換模塊對電流和電壓進行模/數變換和數字運算,得到有功電能、無功電能和頻率等值,最后利用SPI接口將這些電氣量值傳送至芯片CC2530,再經過無線傳感網傳送至TMS320LF2407,從而得到最終的測量值。
當數據從CC2530協調器傳送至TMS320LF2407中后,利用CAN總線的形式將數據傳送至嵌入式網關。在本設計中,CAN收發器選用的是PCA82C250,網關選用的是S3C6410,由S3C6410將數據傳送至Internet網,再經Internet網傳送入上層的監控中心(圖3)。

圖3 網關原理圖
在穩定的硬件支持下,網關所要實現的功能就是將各DSP芯片從底層無線傳感網采集來的數據上傳至上層服務器,同時獲取服務器下傳的數據和命令到底層的數據傳感網。在數據的傳遞過程中,由于底層DSP與網關之間所應用的通信方式是CAN現場總線形式,而在網關與上層服務器中間所采用的是Internet網,這就需要在兩種數據傳輸協議間搭建相應的數據通道。
搭建一個數據通道的前提是在網關上移植一個合適的操作系統。本設計所選用的操作系統是Linux,并采用使用socket套接字,利用TCP/IP完成相應的數據傳輸。
網關的功能是實現下層數據與上層數據的傳遞,而整個系統的控制核心是服務器與客戶機所組成的上層監控體系[2]。本設計利用C++語言來實現相應的功能,相應的開發環境采用Qt。
服務器的主要實現步驟如下:
(1)創建QtcpServer對象,并開始監聽
為了整體的實現便利,這里創建了Server類,下面是實現的構造函數:

(2)實現incomingConnection函數
該函數是系統要求實現的函數,如果有新的連接,系統會自動調用該函數,本程序中的實現如下:

(3)實現數據接收的槽函數,并連接相應的信號
由第二步的實現也可以看到,本程序是用多線程實現多客戶端連接的。而數據接收函數當然就是在線程中創建:



和客戶端不同的是,如果socket連接斷開,不需要重新連接,只需要將socket鏈表中對應的socket刪除,并提示斷開連接即可。
本設計下層采用無線傳感網、DSP、CAN總線及嵌入式網關等技術,實現了底層數據的采集和傳輸,上層服務器用C++語言實現了電源系統的遠程控制功能。經測試證明,該系統結構合理,數據的傳輸、處理過程流暢,遠程控制效果良好。
[1]賞星耀,項新建.雙電源智能自動切換系統的研究[J].機電工程,2006(7):18-19.
[2]曲延濱,王建平.基于CAN總線和DSP的變電站監控系統[J].電力系統自動化,2003(12):86-88.
Development of power supply remote monitoring system based on C++
QIN Xiao-ying
(Xuanhua Science&Technology Vocational College,Zhangjiakou Hebei 075100,China)
The main function of the remote monitoring system for power supply was analyzed.The overall structure and network structure of the monitoring system was designed.The right power source data acquisition way and underlying communication mode were chosen.The realization of related functions with C++language was introduced.
power supply;remote monitoring;embedded type;C++
TM 762
A
1002-087 X(2016)08-1706-03
2016-03-09
秦小英(1973—),女,河北省人,本科,講師,主要研究方向為計算機教學。