摘要:經濟飛速發展,能源問題也越來越備受關注。解決能源短缺問題除了一方面節約能源消耗外,另一方面就是開發使用新能源,太陽能作為一種綠色
環保的清潔能源,越來越得到各國的重視,對于光伏系統的研究和應用也越顯重視。為此,本文開發了基于VC++的光伏逆變器的數據采集與監控系統。
引言
經濟飛速發展,能源問題也越來越備受關注。解決能源短缺問題除了一方面節約能源消耗外,另一方面就是開發使用新能源,太陽能作為一種綠色環保的清潔能源,越來越得到各國的重視,對于光伏系統的研究和應用也越顯重視。光伏系統中zui為關鍵的技術就是逆變。光伏逆變器主要實現逆變功能,并且決定了整個系統的穩定性與使用的可靠性。為了更好地對光伏
逆變器集中控制與維護,實現數據的檢測、分析與管理,進一步提高系統的使用性能,開發一套具有數據采集、實時顯示運行狀態、數據存儲、歷時查詢及報表打印等功能的監控軟件是系統管理員所期望的,也是完善光伏并網系統所*的。為此,本文開發了基于VC++的光伏逆變器的數據采集與監控系統。
1、光伏并網逆變系統工作原理
太陽能電池陣列將接收到的太陽能直接轉換后在三相逆變器的輸出端輸出高頻SPWM波,基波是正弦波,經過電感濾波后,向電網饋入與電網電壓同頻同相的正弦波電流,實現并網電流的正弦化和單位功率因數。這里,三相逆變器為電流控制型電壓源逆變器。如果要使光伏陣列在并網發電時,使其工作穩定,能夠輸出zui大功率,則必須首先穩定其工作電壓,并找出其zui大功率點的工作電壓。本課題設計的是非隔離的10kW三相并網逆變器系統,采用兩級拓撲結構。前級采用帶MPPT的DC-DCBOOST壓電升路,后級采用DC-AC的逆變電路,兄圖1。本系統中并網光伏逆變器直流zui高輸入電壓為450V,額定功率為10kW,交流輸出并入380V交流電網。逆變器的硬件系統有三個主要部分:功率電路、控制電路和驅動電路。
逆變器的主拓撲結構采用三相全橋逆變電路,如圖1所示,功率器件使用IGBT,開關頻率為15kHz,為了防止電能從電網流入太陽能光伏陣列,在直流側加了防反二極管;逆變器的輸出端使用了LC濾波電路濾除高頻分量,在逆變器的輸入端和輸出端都安裝了接觸器,當逆變器檢測到外部故障時,都立即關斷接觸器,實現逆變器的可靠隔離和保護。逆變器采用大電容解耦,在解耦電容的兩端增加了放電通道,以保證維護人員的人身安全,逆變器還提供了較好的人機界面,當出現故障時,通過發光二極管的組合編碼,給出故障的具體類型。逆變器冷卻
方式采用自然空氣冷卻和強制風冷相結合的方式,當系統檢測到的溫度高于設定值時啟動風扇,進行強制風冷,當溫度較低時,采用自然空氣冷卻。
逆變器的控制電路的主控制器使用的是TI公司的TMS320F28335芯片,該芯片具有處理性能更快、外設集成度高、A/D轉換速度更快等特點。該芯片的采用可以很好滿足對三相全橋逆變器進行實時控制的要求。
2、監控系統的硬件基礎
2.1TMS320F2812DSP控制芯片提供串行通信接口SCI
F2812控制芯片除了負責對光伏你變系統電路的控制、數據的采集之外,還負責與上位機之間實現數據的傳輸。SCI是SerialCommunicationInterface的簡稱,即串行通信接口。SCI是一個雙線的異步串口,具有接收和發送兩根信號線的異步串口,一般可以看作是UART(通用異步接收/發送裝置),X281x的SCI模塊支持CPU與采用NRZ(非歸零)標準格式的異步外圍設備之間的數據通信。RS-485采用的是差分傳輸方式,使得在通信速率、抗干擾和傳輸距離方面都有較大的改善和優點。本文中就是采用SN65LBC184芯片將SCI設計成串口RS485,控制芯片F2812就能夠和使用RS232/USB/RS85等接口的設備實現通信。具體的轉換電路如圖2所示。
2.2RS485到RS-232的轉換
目前大部分的工控PC機都只是提供RS232接口和USB接口,所以為了實現RS-485與監控系統的通信,需要將RS485轉換成RS232電平,這里選用HIN232和MAX485芯片設計了RS232和RS485的電平轉換電路,具體如圖3所示。
3、監控系統的軟件設計
3.1軟件通信協議
監控軟件顯示的數據是由下位機按照一定的數據格式發送到PC上位機,為了保證數據的正確性和安全性,我們這里采用的是Modbus協議。Modbus協議是應用于電子控制器上的一種通用的語言。控制器之間、控制器與網絡以及和其他的設備之間都可以通過它進行相互通信,Modbus協議已經成為一種工業標準。在Modbus通信網絡中設備都必須選擇相同的傳輸模式和串口參數。
本系統采用RTU模式:
當控制器設為在Modbus網絡上以RTU(遠程終端單元)模式通信,在消息中的每8Bit字節包含兩個4Bit的十六進制字符。這種方式的主要特點是:在同樣的波特率下,可比ASCII方式傳送更多的數據。
代碼系統
·8位二進制,十六進制數0、、、、9,A、、、、F
·消息中的每個8位域都是一個兩個十六進制的字符組成每個字節的位
·一個起始位
·8個數據位,zui小的有效位先發送
·1個奇偶校驗位,無校驗則無
·1個停止位(有校驗時),2個Bit(無校驗時)錯誤檢測域
·CRC(循環冗長檢測)
CRC產生過程中,每個8位字符都單獨和寄存器內容相或(OR),結果向zui低有效位方向移動,zui高有效位以0填充。LSB被提取出來檢測,如果LSB為1,寄存器單獨和預置的值或一下,如果LSB為0,則不進行。整個過程要重復8次。在zui后一位(第8位)完成后,下一個8位字節又單獨和寄存器的當前值相或。zui終寄存器中的值,是消息中所有的字節都執行之后的CRC的值。CRC添加到一幀數據中時,低字節先加入,然后高字節。
3.2上位機的界面
3.2.1主界面
監控系統啟動后,顯示主界面。利用VC環境下的菜單控件在主界面添加監控系統的功能菜單,有主運行界面、串口設置、逆變器數據、歷史數據、參數設置等菜單項。主運行界面在下面詳細介紹。串口設置主要是負責設置PC上位機串口參數設置,串口的參數設置一定要和下位機的串口參數設置一致,才能保證通信成功。逆變器數據界面主要顯示的是當前逆變器運行的狀態數據,包括直流電壓、直流電流、分別三相電壓、三相電流、功率因數、并網頻率等實時參數。歷史數據是下來菜單,主要有日志查詢、歷史工作狀態數據、故障報表等。可以完成歷史數據、故障報表、日志和曲線的保存和打印。參數設置時有一個用戶登錄窗口,只有輸入正確的用戶名和密碼,才可以成功登錄設置窗口。選擇不同的子菜單能很方便地在不同的功能窗口進行切換。
3.2.2狀態運行界面
監控系統的主運行界面如圖5所示,在主運行界面中顯示了歷史總發電量、累計發電時間、日發電量、煙塵等減排量、瞬時功率實時曲線等數據。這些數據是通過RS-485從F2812獲得的。F2812從RS-485接收到上位機發來的啟動發送數據命令后,終端定時將所需的一幀數據按照規定的協議發給上位機。上位機將接收到的數據處理之后,進行顯示和存儲。系統運行條件下指示燈為綠色。采用TeeChart控件來實現瞬時功率的實時曲線顯示。TeeChart控件適用于VB、VC++、ASP等系統平臺,提供了上百種2D和3D圖形風格、40余種數學和統計功能、加上無限制的軸和多種調色板組件可以選擇,以及20多種用于圖表操作的工具,將圖表制作與操作功能發揮得,為程序設計人員提供了一個、直觀、節省時間的編程接口。這里使用了TeeChart控件中的實時曲線顯示功能,定時讀取相應瞬時功率數據庫的數據,然后將數據以實時曲線的形式顯示。
3.2.3監控軟件的數據庫的設計
在監控系統中,往往需要對歷史數據進行查詢,生成報表并打印,以便后期對數據的整理、分析和處理。VC6.0具有良好的數據庫接口能力,能很方便地對多種類型的數據庫進行操作。本監控系統采用ADO編程方式建立了四個ACCESS數據庫,分別是歷史運行數據數據庫、日志數據庫、故障數據庫和用戶登錄信息數據庫。每個數據庫中的表都是以日期命名,每天建立一個新表,這樣既不會造成文件的重復也利于文件表的查詢,每個表都以運行日期和運行的時間作為索引,可以方便地進行記錄的瀏覽和查詢。在開發工程中引入ADO動態鏈接庫文件,初始化COM環境,連接數據庫和操作數據表,利用griddata控件負責對數據進行顯示和編輯。
3.3監控軟件通信過程
本監控軟件通過使用MSComm控件進行串口編程,采用其中的查詢方式的通信方法,用戶通過檢查CommEvent屬性的值來檢測時間和通信錯誤。在通信過程中分別利用voidSetCommEvent(shotnNewValue)方法和shortGetCommEvevt()方法設置和獲取CommEvent的屬性值。串口處于接收狀態時,清空串口接收緩沖區,讀入數據。數據校驗正確無誤后,判斷功能碼,對數據區數據切分,運行數據直觀地通過曲線或編輯控件顯示,將需要保存的數據存入數據庫。對于存入數據庫的時間,在軟件實現過程中可自行設定。判定如果為故障數據則需立即存儲,此時下位機F2812控制芯片立即斷開各個開關,進入待機狀態。在通信頻繁的情況下,采用MSComm控件的查詢方式更為方便。
4、結束語
本系統是采用VC++6.0和面向控制對象的思想開發的可視化人機交互監控軟件,充分利用TeeChart控件、ADO控件、Inmagelist控件等控件,使得系統具有良好的用戶界面和數據庫接口能力,能夠更加方便地對逆變器的工作數據、故障及日志進行存儲管理,方便對逆變器歷史數據的查詢與維護。系統己在PC機和逆變器之間進行了調試,實現了PC機對逆變器工作狀態的監視、控制和數據存儲等功能。