CPLD在多功能諧波分析儀設計中的應用
提出一種基于可編程邏輯器件(CPLD)的電力諧波分析儀,提高了諧波分析的精度及響應速度,同時大大精簡了硬件電路,系統升級非常方便。文章給出了主要的設計過程和仿真波形。
關鍵詞:CPLD;諧波分析;頻率跟隨
Application about CPLD on Design of Harmonic Analyzer
REN Zihui, LI Haigang
(Information & Electrical Engineer College, China University of Minin g & Technology,
Xuzhou 221008, China)
Xuzhou 221008, China)
Key words: CPLD; harmonic analysis; frequency?following
1采樣方法比較
對三相電壓、電流6路模擬量進行數據采集時,一般有兩種方法:①同相電壓電流交替采樣法:在被測信號的一個周期內,采樣256點,其中128個奇數點為電壓采樣點;128個偶數點為電流采樣點。采電壓和采電流的時差為Δt=T/256(T為被測信號周期)。由Δt引起的同相電壓電流的相位誤差為δui=360*f*n*Δt(度)。式中f——被測信號頻率,n——諧波次數。由上式可知相位誤差隨時差Δt、諧波次數n增大而增大,這是造成相位差存在并且不一致的根本原因。另外還有一個原因,當電網頻率畸變時,由于采樣是定時采樣,不能跟隨頻率變化,也會造成測量誤差。②同相電壓電流整周期同步采樣法:同相電壓、電流采取的是同步采樣,分時傳輸的方法。這樣,就不存在時差問題,相位差也就不存在;對于電網頻率畸變的問題,常用的方法是鎖相環技術。它是通過對電網電壓信號取樣進行帶通濾波,提取出電網基波信號,然后進行整形處理,獲得與基波信號頻率一致的方波信號,將它進行鎖相倍頻,獲得輸出頻率為f0=N*fi的方波信號,以此作為整周期同步采樣脈沖信號。由此,采樣間隔也就隨被測信號的頻率變化而相應變化,但是,這又增加了硬件的開銷。在本設計中,采用的是整周期同步采樣方法:由CPLD和單片機配合產生符合要求的整周期同步采樣脈沖信號。
對三相電壓、電流6路模擬量進行數據采集時,一般有兩種方法:①同相電壓電流交替采樣法:在被測信號的一個周期內,采樣256點,其中128個奇數點為電壓采樣點;128個偶數點為電流采樣點。采電壓和采電流的時差為Δt=T/256(T為被測信號周期)。由Δt引起的同相電壓電流的相位誤差為δui=360*f*n*Δt(度)。式中f——被測信號頻率,n——諧波次數。由上式可知相位誤差隨時差Δt、諧波次數n增大而增大,這是造成相位差存在并且不一致的根本原因。另外還有一個原因,當電網頻率畸變時,由于采樣是定時采樣,不能跟隨頻率變化,也會造成測量誤差。②同相電壓電流整周期同步采樣法:同相電壓、電流采取的是同步采樣,分時傳輸的方法。這樣,就不存在時差問題,相位差也就不存在;對于電網頻率畸變的問題,常用的方法是鎖相環技術。它是通過對電網電壓信號取樣進行帶通濾波,提取出電網基波信號,然后進行整形處理,獲得與基波信號頻率一致的方波信號,將它進行鎖相倍頻,獲得輸出頻率為f0=N*fi的方波信號,以此作為整周期同步采樣脈沖信號。由此,采樣間隔也就隨被測信號的頻率變化而相應變化,但是,這又增加了硬件的開銷。在本設計中,采用的是整周期同步采樣方法:由CPLD和單片機配合產生符合要求的整周期同步采樣脈沖信號。
2.1系統的工作原理
首先讓被測信號經過抗混疊低通濾波器電路進行預處理,對其中1路信號通過測頻模塊進行精確的頻率測量,把頻率參數傳輸到單片機,由其通過運算確定分頻系數,然后,回送到CPLD的總控制器中,總控制器由此產生采樣脈沖信號。在采樣過程中,對于同相電壓、電流信號采用的是同步保持,通過多路開關分時采樣。其中,3路采樣保持器的控制信號Ca,Cb,Cc,多路開關的地址選通信號A1,A2,A3由CPLD控制產生。把選通的1路信號送入AD開始轉換,并檢測轉換結束信號。當一次AD轉換結束時,通過RAM地址發生器產生的地址和讀寫控制時序,把AD轉換的結果直接送入雙口RAM存儲。然后,進行下一次采樣。當A相信號采樣完成后,就順序采樣B相、C相信號。本設計中的MCS?51單片機主要負責運算及人機接口的管理,這將大大提高整個系統的運行效率,提高了運算的精度,又兼顧了運算的響應速度。
2.2主要硬件的選擇
由于CPLD是高速器件,所以在采樣頻率很高的時候,多路開關和AD轉換器就成為制約采樣頻率的主要因素。當采樣頻率達到兆級的時候,RAM的存儲速度又成為了另外一個制約因素。
在本設計中,要求分析的諧波次數達到50次,被測信號在45Hz~55Hz范圍內,頻率自動跟隨。根據香農定理知:采樣頻率應該大于或者等于被測信號頻率的2倍。要求每個周期采樣128點,這樣總的采樣頻率為f=128*55*2=14.08kHz,所以采樣周期為T=1/fs=71.02μs。采樣保持器選擇AD582,它是反饋型結構,在精度要求不高(≤0.1%)而速度要求較高時,可選用CH=1000pF,捕捉時間tAC≤6μs。多路開關選用MAX382,它開關速度快,在雙電源,連續供電工作方式下,典型開關時間在100ns左右。它的主要特點是:工作電壓低、通道電阻小(≤100Ω)、具有數字輸入鎖存、TTL/CMOS電平兼容、具有ESD靜電保護功能等。ADC轉換器選用MAX172,該芯片是5V電源供電的12位模數轉換芯片,CMOS工藝制造,速度快,轉換時間為10μs,具有基準源,外接時鐘,頻率要求為1.25MHz。
首先讓被測信號經過抗混疊低通濾波器電路進行預處理,對其中1路信號通過測頻模塊進行精確的頻率測量,把頻率參數傳輸到單片機,由其通過運算確定分頻系數,然后,回送到CPLD的總控制器中,總控制器由此產生采樣脈沖信號。在采樣過程中,對于同相電壓、電流信號采用的是同步保持,通過多路開關分時采樣。其中,3路采樣保持器的控制信號Ca,Cb,Cc,多路開關的地址選通信號A1,A2,A3由CPLD控制產生。把選通的1路信號送入AD開始轉換,并檢測轉換結束信號。當一次AD轉換結束時,通過RAM地址發生器產生的地址和讀寫控制時序,把AD轉換的結果直接送入雙口RAM存儲。然后,進行下一次采樣。當A相信號采樣完成后,就順序采樣B相、C相信號。本設計中的MCS?51單片機主要負責運算及人機接口的管理,這將大大提高整個系統的運行效率,提高了運算的精度,又兼顧了運算的響應速度。
2.2主要硬件的選擇
由于CPLD是高速器件,所以在采樣頻率很高的時候,多路開關和AD轉換器就成為制約采樣頻率的主要因素。當采樣頻率達到兆級的時候,RAM的存儲速度又成為了另外一個制約因素。
在本設計中,要求分析的諧波次數達到50次,被測信號在45Hz~55Hz范圍內,頻率自動跟隨。根據香農定理知:采樣頻率應該大于或者等于被測信號頻率的2倍。要求每個周期采樣128點,這樣總的采樣頻率為f=128*55*2=14.08kHz,所以采樣周期為T=1/fs=71.02μs。采樣保持器選擇AD582,它是反饋型結構,在精度要求不高(≤0.1%)而速度要求較高時,可選用CH=1000pF,捕捉時間tAC≤6μs。多路開關選用MAX382,它開關速度快,在雙電源,連續供電工作方式下,典型開關時間在100ns左右。它的主要特點是:工作電壓低、通道電阻小(≤100Ω)、具有數字輸入鎖存、TTL/CMOS電平兼容、具有ESD靜電保護功能等。ADC轉換器選用MAX172,該芯片是5V電源供電的12位模數轉換芯片,CMOS工藝制造,速度快,轉換時間為10μs,具有基準源,外接時鐘,頻率要求為1.25MHz。
在本設計中選用的是EP1K100QC208-3,它是ALTERA公司推出的ACEX1K系列下的一款FPGA芯片。上電時需要重新對芯片進行配置。片內有100,000可用門,有4,992個邏輯單元,內嵌12個EAB。每個EAB的容量為512Byte,可以非常方便地構造RAM、ROM、FIFO或雙口RAM等功能。本設計中6KB的雙口RAM正是基于此構建的。其有208個管腳,可用I/O管腳數為147個。
本設計的軟件是在MAX+plusII10.2下完成的,頂層文件是*.gdf圖形文件,低層用AHDL硬件描述語言來描述。
3.1測頻模塊
測頻模塊的主要作用是:①測量電網頻率;②確定分頻系數,產生跟隨頻率變化的同步脈沖。測頻原理:由于測量的頻率在50Hz左右,采用脈寬測量方式,即首先對被測信號進行2分頻,使信號的正負脈寬相等,然后利用正脈寬對50MHz的標準脈沖進行計數。正脈寬上升沿來時,計數器開始對標準脈沖計數;下降沿來時,鎖存當前的計數值Con。通過以下關系確定頻率f、分頻系數N。
分頻系數為:系統時鐘源頻率與分頻得到脈沖頻率(256*f)的比值的一半再減去1,即:
3.2S/H時序控制模塊
由于采用的是同相電壓、電流同步采樣技術,所以對S/H的控制時序要求嚴格。同步采集某相電壓電流1次的時間≤71.02μs。同相電壓、電流間要求是同時保持,分時采樣。由于ADC582的捕捉時間約為6μs,所以S/H時序脈沖低電平應至少為10μs,在此期間,采樣保持器處于跟蹤狀態;高電平為60μs,在高電平期間,采樣保持器處于保持狀態。前30μs對電壓信號進行AD轉換并存儲;后30μs對電流信號進行AD轉換并存儲。仿真波形如圖2。
3.1測頻模塊
測頻模塊的主要作用是:①測量電網頻率;②確定分頻系數,產生跟隨頻率變化的同步脈沖。測頻原理:由于測量的頻率在50Hz左右,采用脈寬測量方式,即首先對被測信號進行2分頻,使信號的正負脈寬相等,然后利用正脈寬對50MHz的標準脈沖進行計數。正脈寬上升沿來時,計數器開始對標準脈沖計數;下降沿來時,鎖存當前的計數值Con。通過以下關系確定頻率f、分頻系數N。
分頻系數為:系統時鐘源頻率與分頻得到脈沖頻率(256*f)的比值的一半再減去1,即:
3.2S/H時序控制模塊
由于采用的是同相電壓、電流同步采樣技術,所以對S/H的控制時序要求嚴格。同步采集某相電壓電流1次的時間≤71.02μs。同相電壓、電流間要求是同時保持,分時采樣。由于ADC582的捕捉時間約為6μs,所以S/H時序脈沖低電平應至少為10μs,在此期間,采樣保持器處于跟蹤狀態;高電平為60μs,在高電平期間,采樣保持器處于保持狀態。前30μs對電壓信號進行AD轉換并存儲;后30μs對電流信號進行AD轉換并存儲。仿真波形如圖2。
在AD582控制脈沖一個周期的高電平期間,要采集電壓、電流各1次,所以多路開關MAX382需要選通2次,AD芯片MAX172也需要啟動2次。第1次MAX382選通起始于AD582控制脈沖上升沿來臨以后的1μs時刻;第2次起始于中間31μs處,延時1μs。這是因為采樣保持器的輸出還有一段波動,經過一定時間tST才保持穩定,為了量化的準確,所以在保持指令發出后,延時1μs。AD啟動脈沖開始于AD582控制脈沖2μs、32μs處,也延時1μs。MAX172的控制端有:CS,HEN,RD;轉換結束狀態線:BUSY。當CS=0,RD=0,BUSY=0時,AD正在轉換;BUSY=1時,轉換結束;HEN=1,讀轉換結果的高4位數據,HEN=0時,讀轉換結果的低8位數據。該模塊要結合硬件來仿真。MAX172的控制時序圖如圖3。
?
ACEX1K100器件內嵌EAB單元,可構成容量大約為6KB的雙口RAM,由于MAX172是12位AD,而MCS-51的數據總線只有8位,所以,需要把1次采樣的數據分成2個字節,分別存儲。因為電壓、電流分時交替轉換,所以,在地址發生器中要有一個確定的映射規則,調整其存儲地址,以使電壓、電流在雙口RAM中分塊順序存儲。另外,在雙口RAM中,當對同一地址單元同時進行讀寫時,要有一個仲裁機制,對其進行控制;當讀寫發生沖突時,我們約定:CPLD寫雙口RAM具有優先權,只有當寫操作結束后,MCS-51單片機才被允許讀該單元。該模塊的仿真波形見圖4。
3.5通信模塊
該模塊是在CPLD內部構建一個串行發送電路端口,實現MCS-51單片機與CPLD器件之間的通信功能。(1)在正常工作模式下,頻率、同步脈沖的分頻系數等重要數據需要通信。(2)在系統升級模式下,單片機發送控制數據給CPLD實現升級。通信方式為串行單工通信,MCS-51單片機發送數據,CPLD接受數據。通信波特率約定為9600bps,通信的幀結構:1幀10位數據,1位起始位(低電平),8位數據位,低位在前;1位停止位(高電平)。幀與幀之間有3位空閑位(高電平)以確保通信正確。??
3.5通信模塊
該模塊是在CPLD內部構建一個串行發送電路端口,實現MCS-51單片機與CPLD器件之間的通信功能。(1)在正常工作模式下,頻率、同步脈沖的分頻系數等重要數據需要通信。(2)在系統升級模式下,單片機發送控制數據給CPLD實現升級。通信方式為串行單工通信,MCS-51單片機發送數據,CPLD接受數據。通信波特率約定為9600bps,通信的幀結構:1幀10位數據,1位起始位(低電平),8位數據位,低位在前;1位停止位(高電平)。幀與幀之間有3位空閑位(高電平)以確保通信正確。??
在電力諧波分析儀的設計中,CPLD的應用使采樣的速率大大提高,由于采用頻率跟隨技術,可以滿足高精度的測量需要。另外,也減輕了MCS-51單片機的負擔,提高了系統的響應速度,實時性更強。該設計還有另外一個優點,系統升級方便,只要把ADC芯片換成MAX162,單片機的程序稍做修改即可。當然也可以實現在線修改,實現遠程控制等功能。
評論
查看更多