5.1 程式設計流程
隨著半導體製程技術的進步,積體電路所使用的邏輯閘數不斷地擴充,因 此在設計電路時,無法再利用傳統的電路圖設計方式來實現龐大功能之硬體,
利用VHDL設計數位電路為目前的趨勢,將多功能之IC架構,分割成多個獨立 功能的方塊,再加以模組化,則可增加設計電路之彈性,也可使電路系統易於 維護。圖5-1為積體電路設計的流程圖,首先訂定積體電路的相關規格,其中 包括積體電路內部所使用的資料長度、系統的取樣頻率與電路之輸入輸出腳位 等。待規格訂定完畢後,利用VHDL語言設計電路,並將各個功率因數計算方 法分割為各別獨立功能之電路,同時分別模擬並驗證各子電路功能,再根據階 層式電路設計的技巧,將不同功能方塊所對應的子電路組成完整的電路。利用 VHDL設計電路的過程中,以Xilinx公司所開發的ISE6.1進行程式的撰寫、電路 編譯與模擬驗證,待利用模擬驗證電路之功能正確後,再以Modelsim進行時序 模擬,待時序模擬正確,即可下載至晶片上完成設計。本研究利用模擬與實測 波形資料,同時比對軟體MATLAB計算的結果,以驗證所設計晶片的可行性。
5.2 功率因數計算模組介紹
圖5-2為功率因數計算IC之功能架構圖,功率因數計算IC的運算過程,必 須使用多種數學邏輯運算,可概分為兩個運算模組,各模組分述如下:
圖5-1 電路設計流程圖
圖 5-2 功率因數計算IC功能架構圖 5.2.1 FFT計算模組
FFT計算模組的功能為,讀取電壓與電流的瞬時值,執行FFT計算後輸出,
以作為下一級電路輸入。設計中所使用的FFT計算亦為採用Xilinx公司所開發 之FFT core,此FFT core可以計算長度為2 ~4 2 的DFT與IDFT,其計算法則為14 採用Cooley-Tukey所提出之分時FFT演算法。它同時提供連續運算所需之輸入 與輸出之記憶體。本研究針對電壓與電流兩通道的瞬時值執行長度為64的FFT 運算,運算後可得到各頻域上的實部與虛部數值。
5.2.2 絕對值模組
絕對值模組的功能為,讀取FFT模組計算後各頻域上的實部與虛部數 值,執行平方、加法及平方根運算,以計算出各頻域的大小值,其中平方根 運算是利用Xilinx 公司所開發之正規化座標轉換數位計算矽智產(generalized coordinate rotational digital computer IP,CORDIC core)來實現。CORDIC core 能計算三角函數、方程式邊界值、雙曲線函數與平方根函數。
5.2.3 有效值模組
有效值模組的功能為讀取三相電壓或電流後,代入有效值定義式,以作為下 一級電路的輸入。
64 N )
n ( xk )
n ( xk 2 *
N ) 2 n (
Xrms re 2 im 2 (5.1) 其中
xk
re( n )
,xk
im( n )
分別為瞬時電壓或電流的實部與虛部,n為相對應之計 數值。式(5.1)中的
2 N
2 也利用CORDIC core來實現,使用CORDIC core時,只要 選定
sin( )
函數,輸入二進制的
值,其中
值介於0~ 之間,就可以產生所 需之數值,為求得2 N
2 之近似值,
值設定為"0000000011100111" ,圖5-3為 CORDIC core的電路模擬結果,第12列計算值為"000000010110101",經轉換為 0.02209與2 N
2 的誤差率僅有0.023%。
圖 5-3 CORDIC core的電路模擬結果 5.3 模擬波形資料結果分析
本 研 究 所 採 用 之 FPGA 晶 片 係 為 Xilinx 公 司 所 研 製 之 Spartan 系 列 之 XC3S1500晶片,其具有高速計算能力及充裕的內部記憶體,因此十分適用於 數位運算晶片之實作。在設計數位IC時,有一個很重要必須考慮的因素,就是 數位資料處理技術,若以浮點數運算則有較精確的計算優點,缺點是浮點數運 算以硬體電路實現較為複雜,而固定點數運算由於電路實現簡單,在很多工業 運用上,使用率遠高於採用浮點數運算。在合成一個整數計算IC設計上,適當 地量化數值扮演著重要的角色。
圖5-4 模擬三相三線系統方塊圖
利用軟體Simulink及Sim Power System所提供的模組(black)建構模擬方塊 圖,架構如圖1,並以Matlab計算分析,模擬程序說明如下:
1. 模 擬 電 源 為 33w 220V 對 稱 電 壓 源 模 組 (Symmeytical Three-phase Voltage)。
2. 負載側三相負載分別以並聯RLC負載模組(parallel RLC load black)及諧 波電流模組(harmonic current source black)所構成。
3. 電壓與電流量測模組(measurement block)分別擷取三相負載端的相電壓 及線電流瞬時值。模擬負載初值為三相平衡且無諧波污染,每項基本波負載 均為5kW與1.65kvar電感性,亦即PF1=0.9496。
4. 將電壓與電流量測模組所擷取到的瞬時值送入FPGA所設計的晶片模組 做計算,進而求取各種電力量及功率因數。
5.3.1 諧波及不平衡對視在功率及功率因數的影響
依據負載測基本波電力量三相平衡與否以及有無諧波的考慮,分析四種負載 狀況如表5-1所示,於負載端計算所得六種功率因數結果列於表5-2~5-5中,可 觀察的結果如下:
1. 因 Case1 為三相負載平衡且無諧波的情況,故負載端六種功率因數值均相 同。
2. Case2 為模擬諧波的影響,初始條件如表 5-1 的 Case1 的三相平衡無諧波負 載,及基本波實功率與虛功率分別 5kW 及 1.65kvar 落後性,在包含 0~220%
的 3 次與 5 次諧波電流,圖 5-4 為各功率因數值相對於SeN變化曲線,其說 明如下:
a. 各功率因數計算值隨
S
eN上升而下降,由於並無安裝虛功率改善設備,故其 Q1為正值,使得 PF1、PF1M1及 PF1M2有相同計算值,因此三功率 因數並不包含諧波成份,所以無法反映諧波所造成之損失。
b.
PF
e PF
A PF
V,諧波成分愈高,其值越低。3. Case3 為評估三相不平衡負載對功率因數的影響,初始條件為 Case1 的三相 平衡無諧波負載,及基本波實功率與虛功率分別 5kW 及 1.65kvar 落後性,
在保持三相總負載量不變的情況下,固定 T 相負載,而將 S 相負載逐漸地 的移轉至 R 相,使得
S
1U漸漸增加至 55%,圖 5-5 為各功率因數值相對於S
1U變化曲線,其說明如下:
三相負載狀況 Case1 Case2 Case3 Case4
)
QR1 1.65 1.65 1.65~2.365 1.65~2.365
var) k (
QS1 1.65 1.65 1.65~0.935 1.65~0.935
基本波
表5-2 計算Case1三相負載端所得六種功率因數
功率因數定義 PFe PFA PFV PF1 PF1M1 PF1M2
Case1 0.9496 0.9496 0.9496 0.9496 0.9496 0.9496
表5-3計算Case2三相負載端所得六種功率因數
0 0.9496 0.9496 0.9496 0.9496 0.9496 0.9496
20 0.9311 0.9311 0.9311 0.9496 0.9496 0.9496
40 0.8812 0.8812 0.8812 0.9496 0.9496 0.9496
60 0.8135 0.8135 0.8135 0.9496 0.9496 0.9496
80 0.7404 0.7404 0.7404 0.9496 0.9496 0.9496
100 0.6702 0.6702 0.6702 0.9496 0.9496 0.9496
120 0.6065 0.6065 0.6065 0.9496 0.9496 0.9496
140 0.5505 0.5505 0.5505 0.9496 0.9496 0.9496
160 0.5019 0.5019 0.5019 0.9496 0.9496 0.9496
180 0.4598 0.4598 0.4598 0.9496 0.9496 0.9496
200 0.4234 0.4234 0.4234 0.9496 0.9496 0.9496
220 0.3917 0.3917 0.3917 0.9496 0.9496 0.9496
圖5-5
S
eN對六種功率因數值的變化曲線表5-4計算Case3三相負載端所得六種功率因數
S (%) S
1 U 1
PFe PFA PFV PF1 PF1M1 PF1M2
0 0.9496 0.9496 0.9496 0.9496 0.9496 0.9496
5 0.9477 0.9496 0.9496 0.9496 0.9496 0.9496
10 0.9440 0.9496 0.9496 0.9496 0.9496 0.9496
15 0.9378 0.9495 0.9496 0.9496 0.9496 0.9496
20 0.9294 0.9493 0.9496 0.9496 0.9496 0.9496
25 0.9189 0.9491 0.9496 0.9496 0.9496 0.9496
35 0.8927 0.9485 0.9496 0.9496 0.9496 0.9496
40 0.8773 0.9481 0.9496 0.9496 0.9496 0.9496
45 0.8609 0.9475 0.9496 0.9496 0.9496 0.9496
50 0.8436 0.9467 0.9496 0.9496 0.9496 0.9496
55 0.8256 0.9455 0.9496 0.9496 0.9496 0.9496
圖5-6
S
1U對六種功率因數值的變化曲線表5-5計算Case4三相負載端所得六種功率因數
S (%) S
1 e
eN (%)
S S
1 U 1
PFe PFA PFV PF1 PF1M1 PF1M2
100 0 0.6702 0.6702 0.6702 0.9496 0.9496 0.9496
100 5 0.6698 0.6700 0.6702 0.9496 0.9496 0.9496
100 10 0.6685 0.6693 0.6702 0.9496 0.9496 0.9496
100 15 0.6663 0.6682 0.6702 0.9497 0.9497 0.9497
100 20 0.6633 0.6666 0.6702 0.9497 0.9497 0.9497
100 25 0.6595 0.6646 0.6703 0.9497 0.9497 0.9497
100 30 0.6550 0.6621 0.6703 0.9497 0.9497 0.9497
100 35 0.6497 0.6591 0.6703 0.9497 0.9497 0.9497
100 40 0.6438 0.6556 0.6703 0.9497 0.9497 0.9497
100 45 0.6373 0.6517 0.6703 0.9497 0.9497 0.9497
100 50 0.6302 0.6472 0.6703 0.9497 0.9497 0.9497
100 55 0.6227 0.6423 0.6704 0.9497 0.9497 0.9497
圖5-7 Case4中固定
S
eN,改變S
1U對六種功率因數值的變化曲線將所設計的模擬系統方塊圖中電壓與電流量測模組所擷取到電壓與電流的 瞬時值,送入所建構FPGA的系統電路模組中計算。在數位電路中,由於浮點 運算需要相當大的電路面積與運算時間,為了節省成本,我們將電壓與電流的 瞬時值作預先處理,使得所有的數值皆為整數,處裡的步驟如下:
1. 由於線電壓與相電壓分別為 380V 與 220V,於是將所有的瞬時值分別除 上個別的峰值(peak value)537.4V 與 311V,予以標么化。
2. 利用 Case1 中三相平衡無諧波,在負載基本波實功率與虛功率為 5kW 與 1.65kvar 的情況下,計算出線電流基本波有效值為 23.9A,與電壓處理模式 相同,將所有線電流瞬時值除以峰值 33.8A。
3. 將所有的數值乘上 1000 以增加 FPGA 所能讀取的有效位數。
4. 將 FPGA 所計算出的數值與 Matlab 做比對,因此定義
- 100%
0 15709 15668 -0.259% 15709 15681 -0.178% 15709 15680 -0.182%
20 16022 15979 -0.266% 16022 15992 -0.189% 16022 15992 -0.190%
40 16928 16887 -0.241% 16928 16900 -0.163% 16928 16900 -0.165%
60 18338 18296 -0.230% 18338 18310 -0.153% 18338 18310 -0.154%
80 20148 20104 -0.219% 20148 20119 -0.142% 20148 20119 -0.142%
100 22259 22212 -0.210% 22259 22229 -0.133% 22259 22229 -0.133%
120 24594 24542 -0.213% 24594 24560 -0.136% 24594 24560 -0.136%
140 27096 27042 -0.198% 27096 27062 -0.127% 27096 27062 -0.127%
160 29723 29666 -0.192% 29723 29684 -0.132% 29723 29684 -0.132%
180 32443 32382 -0.188% 32443 32405 -0.118% 32443 32405 -0.118%
200 35236 35170 -0.187% 35236 35196 -0.114% 35236 35196 -0.114%
220 38085 38014 -0.186% 38085 38046 -0.104% 38085 38046 -0.103%
平均
0 14917 14890 -0.179% 14917 14903 -0.091%
20 14917 14887 -0.203% 14917 14888 -0.193%
40 14917 14889 -0.190% 14917 14892 -0.167%
60 14917 14889 -0.185% 14917 14895 -0.151%
80 14917 14889 -0.186% 14917 14896 -0.139%
100 14917 14890 -0.181% 14917 14899 -0.122%
120 14917 14889 -0.187% 14917 14900 -0.116%
140 14917 14889 -0.188% 14917 14901 -0.105%
160 14917 14888 -0.193% 14917 14901 -0.109%
180 14917 14888 -0.192% 14917 14903 -0.097%
200 14917 14888 -0.192% 14917 14903 -0.093%
220 14917 14890 -0.183% 14917 14903 -0.091%
平均
誤差 -0.188% 平均
誤差 -0.123%
表5-8-1計算Case2三相負載端所得各功率因數Matlab與FPGA計算值