design and implementation of a buck converter by kemjika ananaba
May 7, 2017 | Author: kemito2001 | Category: N/A
Short Description
Download design and implementation of a buck converter by kemjika ananaba...
Description
ACKNOWLEDGEMENT To properly recognize all of the people responsible for bringing me to this point in my life would take a considerable amount of space. Nevertheless, here is an attempt, mediocre at best, to recognize those individuals responsible for this thesis and master's degree. Only by the grace of God have I come this far. God's never ending grace and mercy and his ultimate plan for my life have molded me for his desired purpose. My parents have given me moral foundations, financial assistance, and spiritual guidance beyond what any daughter could ask for. My perfect sisters, they are truly gifts from God. Afe has been my best friend throughout this period. Mr Calum Cossar was very kind and helpful in serving on my thesis Supervisor amidst his very busy schedule. Ian Young is a very talented Technician. I have gained a greater respect for the work he does and the environment in which he works. The construction of my project could not have been done without him. Graham Morton took his time in putting me through the basics of Visual Basics programming.
1
TABLE OF CONTENTS LIST OF FIGURES ............................................................................................................. 4 LIST OF TABLES .............................................................................................................. 7 CHAPTER ONE.................................................................................................................. 8 1.1 Introduction................................................................................................................ 8 1.2 Thesis Structure ......................................................................................................... 9 CHAPTER TWO ............................................................................................................... 11 2.1 Power Converter System ......................................................................................... 11 2.1.1 AC/DC Rectifier ............................................................................................... 11 2.1.2 DC-DC Converter ............................................................................................. 12 2.1.2 Buck Converter ................................................................................................. 14 2.1.3 Power Inverter ................................................................................................... 19 2.2 Portunus Simulation ............................................................................................. 21 2.3 Graphic User Interface ............................................................................................. 21 CHAPTER THREE ........................................................................................................... 23 3.1 Buck Converter Design............................................................................................ 23 3.2 Sizing Components .................................................................................................. 23 3.2.2 Switch Rating .................................................................................................... 26 3.2.3 Diode Rating ..................................................................................................... 28 3.2.4 Output Capacitor Selection ............................................................................... 29 3.3 Open Loop Buck Converter Design ........................................................................ 31 3.3.1 Inductance ......................................................................................................... 31 3.3.2 Capacitance ....................................................................................................... 34 3.3.3 Diode rating....................................................................................................... 35 3.3.4 Switch................................................................................................................ 35 3.4 Closed Loop Buck Converter .................................................................................. 36 3.4.1 Control Topology .............................................................................................. 37 3.5 Graphic User Interface ............................................................................................. 40 3.5.1 Input Parameters ............................................................................................... 41 3.5.2 Output Parameters ............................................................................................. 42 CHAPTER FOUR ............................................................................................................. 43 2
4.1 Simulation Results And Measured Experimental Results ....................................... 43 4.1.3 Buck Converter Testing and Simulation ........................................................... 47 4.1.4 Inverter Simulation ........................................................................................... 53 CHAPTER FIVE ............................................................................................................... 55 5.1 Conclusion ............................................................................................................... 55 REFERENCE .................................................................................................................... 57 APPENDIX A ................................................................................................................... 59 APPENDIX B.................................................................................................................... 60 APPENDIX C.................................................................................................................... 61 APPENDIX D ................................................................................................................... 72
3
LIST OF FIGURES Fig 1.1 Variation of generator output with wind energy
Fig 1.2 PM Generator Test Rig
7 8
Fig 2.1 Power Converter System
10
Fig 2.2 Three phase Bridge Rectifier
10
Fig 2.3 Rectifier input waveforms and output waveform
11
Fig 2.4 DC-DC Converter
11
Fig 2.5 Pulse-Width Modulation
12
Fig 2.6 Pulse Frequency Modulation
13
Fig 2.7 Basic Buck Converter Circuit
13
Fig 2.8 (a) Circuit with switch ON (b) Circuit with switch OFF
14
Fig 2.9 Voltage and Current Waveforms through the inductor
14
Fig2.10 Continuous and Discontinuous conduction mode Waveform
17
Fig 2.11 Basic DC/AC inverter
18
Fig 2.12 a) Triangular and control waveforms b) PMW signal for S1 and S4 c) PMW signal for S2 and S3 19 Fig 3.1 Buck Converter With Component Rating
23
Fig 3.2 Inductor Voltage and Inductor current
24
Fig 3.3 Inductor Current at Critical Inductance
25
Fig 3.4 Current Waveform (a) Inductor Current (b) Switch Current (c) Diode Current 26 Fig 3.5 Diode current wave form
27
Fig3.6 Capacitor Current Waveform
29
Fig 3.7 buck converter
31
Fig 3.8 Inductor Current At L= 0.3mh
31
4
Fig 3.9 Inductor Current At L= 0.7mh
31
Fig 3.10 Output voltage and inductor current at L= 0.7mH and C= 362µF
33
Fig 3.11 Output voltage and inductor current at L= 0.7mH and C= 1000µF
34
Fig 3.12 Voltage Output
35
Fig 3.13 Inductor current
35
Fig 3.14 Output current
35
Fig 3.15 Closed Loop Buck Converter
36
Fig 3.16 Closed Loop Buck Control Topology
36
Fig 3.17 Closed Loop Buck Converter and Open Loop Buck Converter
37
Fig 3.18 Error voltage and PWM input signal of the closed loop buck converter
38
Fig 3.19 Input voltage (VMI.1) and output voltage (R1.V) of the closed loop buck converter
38
Fig 3.20 Input Voltage (VMI.1) and output voltage (R1.V) of the open loop buck converter
38
Fig 3.21 Closed Loop Converter Output (R1.V) and Open Loop Output (R9.V) with Voltage input of 32V
38
Fig 3.22 Open-loop Simulation Panel
39
Fig 3.23 Closed-loop Simulation Panel
40
Fig 3.24 User Interface – Controller Interaction
41
Fig 4.1 Generator Dynamometer
43
Fig4.2 Variation of generation voltage verses speed
44
Fig 4.3 Generator Voltage Output at 500rpm
44
Fig 4.4 Three Phase Voltage Output from Portunus Generator Model
45
Fig 4.5: Rectifier output without a Capacitor (a) using Portunus simulation (b) experimental result (c) Simulation and experimental results
45
Fig 4.6 Portunus Rectifier Model
45
5
Fig 4.7 Rectifier output with 1000uF Capacitor
46
Fig 4.8 Rectifier – Open Loop Buck converter Portunus Model
46
Fig4.9 Buck Output at voltage input of 30V and power output of 50W
47
Fig4.10 Buck Output at voltage input of 60V and power output of 50W
48
Fig4.11 Buck Output at voltage input of 30V and power output of 10W
49
Fig4.12 Buck Output at voltage input of 60V and power output of 10W
50
Fig 4.13 Inverter Model
52
Fig 4.14 Inverter Output
52
Fig 4.15 Experimental Setup
53
Fig 5.1 Efficiency Verses Speed of Generator
54
6
LIST OF TABLES
Table 3.1: Inductor cores and Corresponding Parameters
33
Table 3.2: Inductor parameters
34
Table 4.1: Generator Output voltage with corresponding speed
44
Table 4.2: Variation of generator speed with DC Voltage output
45
Table 4.3: Variation of Buck Output Voltage with input voltage of 30V
48
Table 4.4: Variation of Buck Output Voltage with input voltage of 60V
49
Table 4.5: Variation of Buck Output Voltage with input voltage of 30V
50
Table 4.6: Variation of Buck Output Voltage with input voltage of 60V
51
Table 4.7 Buck Output at varying Power Output (10W- 50W) with generator speed 500 rpm
52
Table 4.8 Buck Output at varying Power Output (10W- 50W) with generator speed 750 rpm
52
Table 4.9 Buck Output at varying Power Output (10W- 50W) with generator speed 1000 rpm 52
7
CHAPTER ONE 1.1 Introduction Wind power is the most fast growing energy source in the world and is competitive against conventional energy sources. Since wind energy is a technology of variable output as shown in Fig 1.1, it needs to be considered as one aspect of a variable, dynamic electricity system. Integration of larger wind farms to the utility grid is increasingly problematic because Distribution and Transmission System Operators require a wind power station to behave similarly to a conventional power station. A widely used solution is a synchronous generator combined with a full-scale converter21. Permanent magnet synchronous generators are becoming popular in industry applications with advantages such as small size, less weight and flexible design structure.
Permanent magnet generators represent a simple and reliable form of
generator construction that is suitable for situations where high reliability is needed. When uncontrolled the generator output voltage varies over a wide range dependent on generator speed. It is inconvenient for the voltage supplied to vary over a range therefore a form of stabilization is needed23.
courtesy of http://www.wind-energy-the-facts.org
Fig 1.1 Variation of wind energy 8
An inexpensive and efficient power converter for grid connection is required for these energy systems. The power converter system converts the synchronous generator output of variable voltage magnitude with variable frequency to a constant sinusoidal voltage with constant frequency. The scope of the project centers on the modeling of an electronic power converter System which is used with a SPEED controller for generator voltage control. In general the power conversion system consists of a rectifier that forms the dc link that is regulated to a constant output with the use of a buck converter. The constant dc output is fed to the externally controlled inverter that performs a D.C to A.C conversion shown in Fig 1.2. The inverter also determines load frequency.
Fig 1.2 PM Generator Test Rig 1.2 Thesis Structure This thesis examines the construction of a buck converter and its incorporation in a power conversion system. The buck converter is built using the circuit simulator and design tool Portunus to model the circuit. An additional requirement would be to create 9
a Graphic User Interface panel using Visual Basic Language which would allow the user to input generator control parameters and also display the generator output in a user friendly style. As the developer of this project, my specific aims were to:
Study buck converter
Learn about the Portunus Simulation Software.
Test and measure the voltage output of the Synchronous Generator at different Speeds
Design the buck converter to provide a constant 12V output
Simulate the ac-dc-ac power converter design using Portunus Stimulation Software.
The operation of the power converter with a description of its major components is detailed in Chapter two. Chapter three derives the Equations required in the modeling of the buck converter, and its design. The closed loop buck converter, experiments and corresponding Portunus simulations are described in detail in Chapter four. Chapter five will discuss the conclusions reached during the construction of this converter, with recommendations on how it can be improved.
10
CHAPTER TWO 2.1 Power Converter System This project has been broken down into three major circuit topologies. The three circuit topologies are the AC/DC rectifier, DC/DC converter and the DC/AC inverter. These three components work together to convert a varying AC input voltage to a constant controlled AC voltage and frequency. A block diagram of the power converter is shown in Fig 2.1 below
3- Phase Rectifier UNREGULATED AC INPUT
DC – DC Converter UNREGULATED DC
CONSTANT DC
Single phase Inverter REGULATED AC OUTPUT
Fig 2.1 Power Converter System 2.1.1 AC/DC Rectifier A Three Phase Rectifier consists of six diodes and converts the unregulated AC voltage to unregulated DC voltage. Fig 2.2 highlights a Full-Wave Bridge Rectifier.
Courtesy Of http://services.eng.uts.edu.au/~venkat/pe_html/ch05s1/ch05s1p1.htm
Fig 2.2 Three phase bridge rectifier The bridge circuit has two halves, the positive half consisting of the Diodes D1, D3 and D5 and the negative half consisting of the diodes D2, D4 and D6. At any time, one diode from each half conducts when there is current flow. If the phase sequence of the source 11
be RYB, the Diodes are triggered in the sequence D1 and D2 , D3 , D4, D5 , D6 and D1 and so on. As a result, all current that flows out of the rectifier will be positive 13. The output waveform is now the absolute value of the input waveform. Fig 2.2 shows both the input waveforms and the output waveform of the Full-Wave Bridge Rectifier. The threephase bridge rectifier circuit has three-legs, each phase connected to one of the three phase voltages. Voltage
E2.V E3.V Vout.V E1.V
40
20
0
-20
5 m 10 m 15 m 20 m 25 m 30 m 35 m 40 m 45 m 50 m 55 m 60 m 65 m 70 m 75 m 80 m 85 m 90 m 95 m t/s
Time(s)
Fig 2.3 Rectifier input voltage waveforms (E1,E2,E3) and output voltage waveform (Vout) 2.1.2 DC-DC Converter The DC-DC Converter is a circuit employing switching network that converts a DC voltage from one level to another DC voltage (Fig 2.4). They are mainly used to provide a dc power supply with adjustable output voltage, for general use.
INPUT DC VOLTAGE
Switching Element
OUTPUT DC VOLTAGE
Fig 2.4 DC-DC Converter There are basically two ways to achieve the voltage regulation by ; i)
Pulse width Modulation (PWM): this is achieved by varying the on period (Ton) of the switch while keeping the switching period T is kept constant as shown in Fig 2.5. Here Duty cycle (D) refers to the ratio of the period for which the switch is kept ON 12
to the cycle period. Usually control by pulse width modulation is the preferred method since constant frequency operation leads to optimization of LC filter and the ripple content in output voltage can be controlled. ii) Pulse Frequency Modulation (PFM): Here the on period (Ton) is kept constant and the switching period T is varied as shown in Fig 2.6. The design of the LC filter is difficult in this case. Switch position
1
Time (s) 1
0
Time (s) 1
0
Fig 2.5 Pulse-Width Modulation
Time (s)
Switch position
1
Medium D
0
Time (s)
1
Small D
0 Time(s)
Fig 2.6 Pulse Frequency Modulation 13
There are three basic types of dc–dc converters: Step-down converter (buck converter) Step-up converter (Boost Converter) and Step-up-down converter (buck-boost converter) 2.1.2 Buck Converter
Fig 2.7 Basic Buck Converter Circuit A buck converter or step-down switch mode power supply can also be called a switch mode regulator. Popularity of a switch mode regulator is due to its fairly high efficiency and compact size and a switch mode regulator is used in place of a linear voltage regulator at relatively high output, because linear voltage regulators are inefficient21. Since the power devices used in linear regulators have to dissipate a fairly large amount of power, they have to be adequately cooled, by mounting them on heat sinks which makes the regulator bulky and large. In applications where size and efficiency are critical, linear voltage regulators cannot be used 16. Generally any basic switched power supply consists of five standard components as shown in Fig 2.7. a. a pulse-width modulating controller, b. a transistor switch, c. an inductor , d. a capacitor and e. a diode. Control by pulse-width modulation is necessary for regulating the output as Duty Cycle is thus adjusted to obtain the desired Voltage Output. The switch is the heart of the switched supply and it controls the power supplied to the load11. 14
An inductor is used in a filter to reduce the ripple in current. This reduction occurs because inductors are resistance to changes in current. When the current through an inductor tends to fall, the inductor tends to maintain the current by acting as a source. A capacitor is used in a filter to reduce ripple in voltage. The diode used in a switched regulator is usually referred to as a catch diode 21. The purpose of this diode is not to rectify, but to direct current flow in the circuit and to ensure that there is always a path for the current to flow into the inductor.
Courtesy of the practical design of a buck converter by Johor Bahru
Fig 2.8 (a) Circuit with switch CLOSED (b) Circuit with switch OPEN
Figure 2.9 shows the voltage and current waveforms through the inductor when the switch is open and closed.
15
Courtesy of the practical design of a buck converter by Johor Bahru
Fig 2.9 Voltage and Current Waveforms through the inductor 2.1.2.1 Circuit Description And Operation This circuit can operate in any of the two states as explained below. Switch Closed: In the circuit, when the switch is closed, the switch conducts the inductor current (I L) as shown in Fig 2.8a. This results in a positive voltage across the inductor as the source voltage would be greater than the output voltage. This voltage causes a linear
increase in the inductor current. When the inductor current rises, the energy stored in it increases. During this state, the inductor acquires energy3. VLON = Vin-Vo
(2.1)
TON = DT
(2.2)
The capacitor smoothens out the inductor’s current changes into a constant output voltage. Also, the capacitor is large enough so that the output voltage doesn't change significantly during one switching cycle. At this State the capacitor is getting charged. When the switch is closed, the elements carrying current are shown in Fig. 2.1 (b). Since the diode is reversed biased it is not in the picture.
16
Switch Open: When the switch is open, the Inductor maintains current to the load as shown in Fig 2.8b. As the inductor’s magnetic field collapses, current falls linearly through the inductor, its fall is determined by the voltage across the inductor and its inductance. VLOFF = -Vo
(2.3)
TOFF = (1-D)T
(2.4)
Since the average voltage across the inductor is zero at steady state, using the volt second balance equation VLON TON + VLOFF TOFF = 0
(2.5)
[Vg-Vo] DT + (-Vo) (1-D) T = 0 Vg D – Vo D – Vo + Vo D = 0 Vo = D Vg (assuming ideal components)
(2.6)
The inductor maintains current flow by reversing its voltage when the applied voltage is removed. The diode acts as a voltage controlled switch. It provides a path for the inductor current once the switch is opened thus the inductor current flows through the diode12. 2.1.2.2 Modes Of Operation The dc-dc converters have two distinct modes of operation: Continuous-current conduction mode (CCM) and discontinuous current- conduction mode (DCM). The buck converter and its control are designed based on both modes of operation.
17
Current (A)
(a)
Time (s)
Current (A)
(b)
Time (s)
Fig.2.10 a) Continuous Conduction Mode (b) Discontinuous Current conduction mode Waveform i. In the Continuous conduction mode, the inductor current flows continuously that is the inductor current is always above zero during the OFF period as shown in Fig 2.10b. Here the voltage output varies linearly with the duty ratio of the switch for a given dc voltage input. It doesn’t depend on other circuit parameters (inductor and capacitor value)14. Vo/Vg = Ton/T =Duty Ratio. Therefore in the continuous current conduction mode, the output voltage can be controlled by controlling the duty cycle in a range of 0-1.
ii. In the Discontinuous conduction mode, the inductor current is discontinuous that is it remains zero for some time as shown in Fig 2.10a. This is because the load current is reduced to a value that causes the average inductor current to be reduced to a value that causes the average inductor voltage to be less than half the inductor ripple current(1). In the OFF period, the power to the load resistance is supplied by the capacitance alone. Thus in the Discontinuous Conduction mode, the output voltage is dependent on the circuit component values and the duty ratio of the switch 14.
18
2.1.3 Power Inverter Switch mode dc to ac inverter are used to produce a sinusoidal ac output with controllable magnitude and frequency. There are two main types of switch mode inverters; voltage source inverters and current source inverters 5. Voltage source inverters can further be divided into the following categories: a) Pulse width modulated inverters: here the voltage magnitude and frequency is controlled by pulse width modulation of the inverter switches b) Square wave inverters: here only the frequency of the output voltage can be controlled. The output voltage wave 2.1.3.1 Topology Of The Conventional Inverter The conventional single phase inverter (full bridge) utilizes four switches and four diodes as shown in Fig 2.11. The switches can be any switching power electronic device. Fig 2.2 shows the single phase inverter topology with outputs Vr and a bus voltage of Vo. The ideal switches facilitate the explanation of the generation of the control signals. The diodes across each switch are necessary when driving inductive loads. The diodes carry regenerative currents at times when the current direction in an inductive load and the applied voltage have opposite polarity. The output Vr switches between –Vo and Vo.
Fig 2.11 Basic DC/AC inverter
19
2.1.3.2 Generation Of Pulse Width Modulation Signals A block diagram for the generation of PWM signals is shown in Fig 2.12. The control input is the desired waveform characteristic to be seen at the output (SINE.OUT). Usually, this is a sine wave of fixed frequency with a normalized amplitude. The repetitive waveform input is a triangle wave (TRIANG1.OUT) with a frequency considerably higher than the frequency of the control signal. The triangle wave thus becomes a carrier frequency for the control signal. The comparator operates on two conditions: sine.out< triang1.out and sine.out> triang1.out as shown in Fig 2.12a. When sine.out< triang1.out, the output of the comparator (Fig 2.12b) is a logic high signal and the switches S1 and S4 are closed. For sine.out> triang1.out, the output of the comparator is a logic low signal and the switches S2 and S3 are closed (Fig 2.12c). The values of the logic signal from the comparator are used to drive the switching elements. When in one of these states, the output voltage has a value of either the positive DC bus or the negative DC bus.
Fig 2.12 a) Triangular and control waveforms b) PMW signal for S1 and S4 c) PMW signal for S2 and S3 20
2.2 Portunus Simulation To ensure stability, power quality, and reliability, each new system should be simulated before it is implemented in the field. The simulation is intended to confirm that a particular control the results in the desired system or to reveal necessary design modifications, or both. Using the Portunus simulation environment, an electronic power converter system consisting of the rectifier, buck converter, inverter and their corresponding control units was designed. With a library of the power electronic modules available, it is easy to set up a particular system configuration. The Portunus software is a vital circuit simulation environment that allows rapid testing of parameters and calculation jobs within a broad range of applications. It is a coupled system simulator which allows both analogue and digital components within a most user friendly interface. Portunus has the flexibility to incorporate user-defined components into the system. These components can be created using C++ programs, sub-sheets, nonlinear look-up tables, or direct imports of SPICE or VHDL-AMS models8. Portunus only generates theoretical circuit output values which would only be observed under ideal conditions therefore Portunus will be used as a guide for the buck converter design and the comparison of laboratory experiments with simulated results.
In this project, the tools that Protunus Simulation Software offers for simulating and designing energy systems that include power converters that can also comprise of a rectifier, a DC bus, a Buck converter, and an inverter is emphasized. However the microcontrollers for the buck converter and the DC-AC inverter will be simulated with the use of ideal sources that will duplicate each controller’s desired output waveform.
2.3 Graphic User Interface
The Graphical User Interface is developed as the front end application to the FCIV microcontroller using Visual Basic. The user can specify the kind of control and the
21
values of components functions. In the program the parameters of the equivalent circuit can be entered on the circuit diagram. The programming environment for the FCIV controller utilizes a R232 link to communicate between the FCIV controller and GUI (on the developer’s computer). The GUI interface displays all output parameters and the kind of control is specified by the user. Buttons are provided to start and download control parameters into the FCIV Controller. Visual Basic is based on one of the world’s most widely known languages, Basic, and is endowed with the ability to build applications for Microsoft Windows. In addition, the language is appropriate for implementing Internet-based and World-Wide-Web based applications, and it contains built-in features such as graphical user interface components, file processing, linking to other Microsoft products such as Microsoft Word and Microsoft Access, and database processing. The language is extensible so that independent software vendors can provide component for a vast array of application arenas15.
22
CHAPTER THREE 3.1 Buck Converter Design The voltage output is controlled by using a high frequency pulse-width-modulated control (PWM) signal to drive the switching element (transistor or switch). Typically the frequency of the pulse width modulated control signal is in the range of tens to hundreds of kilo-Hz. There are two benefits, as frequency goes up, components become smaller, lighter and cheaper. Another benefit is that the delay from input to output created by the switching time is lower. Typically, it is commended that the buck converter should be run in continuous mode for expected loads. First of all, the gain is stable. In continuous mode, the output Voltage (Vo) is approximately set by input voltage (Vg) and the duty cycle only, regardless of load or other component values. In discontinuous mode, Vo depends on Vg, Duty cycle, inductor value, load and Frequency.
Secondly, for continuous and discontinuous modes, the frequency responses are different. The transient response in continuous mode can change in discontinuous mode. Thirdly the continuous mode operation tends to produce smaller ripple in output Voltage Vo and interference (3). 3.2 Sizing Components During component selection, each component is selected based on certain circuit parameters.
23
Courtesy of practical design of Buck Converter by Johor Bahru
Fig. 3.1 Buck Converter With Component Rating 3.2.1 Inductor Since the size of the inductor determines the operating mode of the buck converter, inductor design plays an important role in buck converter design. The inductor functions by taking energy from the electrical circuit storing it in a magnetic field and subsequently returning this energy to the circuit4. When the inductor is discharging3; VL= -Vo = L diL /dt
(3.1)
diL/dt = -Vo/L
(3.2)
∆iLoff = -Vo/L * [∆toff] ∆iLoff = -Vo/L * [1-D]T
(3.3)
When the inductor is charging,
VL= Vs -Vo = L diL /dt diL/dt = [Vs –Vo]/L ∆iLon = (Vs-Vo/L )* [∆ton] ∆iLon = [Vs-Vo/L ]* DT
(3.4)
24
Voltage (V)
Vs- Vo
Time -Vo
ton
toff
Current (A)
iLMAX iR iMIN
∆iL
Time
Fig 3.2 Inductor Voltage and Inductor current Fig 3.2 shows the current and voltage waveform through the inductor. ILMIN = IL – |∆iL|/2 = Vo/R - (1-D)Vo/ 2LF = Vo [1/R - (1-D)/ 2LF] ILMAX = IL + |∆iL|/2 = Vo/R + (1-D)Vo/ 2LF = Vo [1/R + (1-D)/ 2LF]
(3.5) (3.6)
3.2.1.1 Critical Inductance (LC) The critical Inductance value is the minimum inductance value at which the inductor current reaches Boundary conduction mode. Any inductance value lower than the critical inductance causes the buck converter to operate in the discontinuous current conduction mode. The inductor value is critical to maintaining current to the load while the switch is off. It is necessary to determine the minimum inductance necessary to support the output current of the Buck converter so that the load is supported under worst-case conditions of output voltage and input current3.
25
CURRENT
iL
AT L = LC
Fig 3.3 Inductor Current at Critical Inductance In order to obtain the critical inductance the maximum inductor current ripple ∆i L or minimum percentage load requirement is specified. ILMIN = 0 = IL – [|∆iL|/2 ] = Vo [1/R - (1-D)/ 2LF] LC = (1-DMAX)RMAX / 2F
(3.7)
RMAX = Vo/IMIN
(3.8)
DMAX = duty cycle calculated at minimum input voltage F= Frequency
Peak current through the inductor determines the inductor's required saturation-current rating, which in turn dictates the approximate size of the inductor. Saturating the inductor core decreases the converter efficiency, while increasing the temperatures of the inductor, the MOSFET and the diode3. The peak current rating of the inductor is determined with the maximum inductor current. The worse case minimum inductor current occurs at maximum load. 3.2.2 Switch Rating Transistors chosen for use in switching power supplies must have fast switching times and should be able to withstand the voltage spikes produced by the inductor. Voltage rating: With an ideal switch, the maximum switch voltage (V switchmax) is the maximum voltage input3. But for a non ideal switch, V switchmax = Vinmax + VF where VF is the maximum forward drop across the switch at maximum load current.
26
Current Rating: The switch current rating is calculated based on the average value of switch current. During Ton , the inductor current is equal to switch current. During Toff switch current is equal to zero.
ON
OFF
ON
OFF
t
(a) iswitch
(b)
iDiode t T
2T
Fig 3.4 Current Waveform (a) Inductor Current (b) Switch Current (c) Diode Current Fig 3.4 shows the current wave forms through the diode, switch and diode.
Iswitch = (iLmin + iLmax) * ton / 2T
(3.8)
Iswitch = [(iLmax - ∆iL )+ iLmax] * DT / 2T = [2iLmax - ∆iL ] * D / 2 Iswitch = [ iLmax - ∆iL /2] * D = iL * D Iswitch > iL * Dmax
(3.9)
27
3.2.3 Diode Rating It is necessary that the diode should be able to turn off relatively fast. Diodes known as the fast recovery diodes are used in these applications. The diodes average current ID is equal to the load current times the portion of the time the diode is conducting Toff as shown in Fig 3.5. The diode's forward-current specification must meet or exceed the maximum output current3.
Current (A) iDiode OFF
Fig 3.5 Diode current wave form
OFF Time (s)
Idiode = (iLmin + iLmax) * toff / 2T (3.10)
Idiode = [(iLmax - ∆iL )+ iLmax] * (1-D)T / 2T = [2iLmax - ∆iL ] * (1-D) / 2 Idiode = [ iLmax - ∆iL /2] * (1-D) = iL * (1-D) Idiode> iL * (1-Dmin)
(3.11)
The maximum reverse voltage on the diode is the maximum input voltage. The current voltage ratings are low enough that a small Schottky diode or a fast recovery diode could be used for this application. Power dissipation is the limiting factor when choosing a diode. The worst-case average power can be calculated as follows: Pdiode = (1- Dmin) * iL * VD
(3.12)
where VD is the voltage drop across the diode at the given output current IOMAX.
28
3.2.4 Output Capacitor Selection The capacitor voltage should withstand the maximum output voltage. Ideally Vcmax = VO + ∆Vo/2
(3.13)
Where ∆Vo = ripple voltage VO = output voltage Output capacitance is required to minimize the voltage overshoot and ripple present at the output of a buck converter. Since switched power regulators are usually used in high current, high-performance power supplies, the capacitor should be chosen for minimum loss. Loss in a capacitor occurs because of its internal series resistance and inductance. Capacitors for switched circuits are chosen on the basis of effective series resistance (ESR). For very high performance power supplies, sometimes it is necessary to parallel capacitors to get a low enough effective series resistance. The maximum allowed outputvoltage overshoot and ripple are sometimes specified at the time of design. Thus, to meet the ripple specification for a buck converter circuit, an output capacitor with ample capacitance and low ESR is included. The output voltage ripple could be reduced by
Reducing the ESR by paralleling capacitors or using capacitors with lower ESR
The current ripple is reduced by increasing the circuit inductance or increasing the switching Frequency
The current ripple in the inductor current flows through the capacitor leaving the average flowing through the load1.
29
ic ON
OFF
ON
OFF
t
Ic
+Q t
-Q T/2
Fig 3.6 Capacitor Current Waveform
T
Fig 3.6 shows the capacitor current waveform. Minimum output capacitance9 Q = ½ (T/2)(∆iL/2) = ∆iL/8F = [(Vo/L)(1-D)T] / 8F = (1-D)Vo/8LF2 Q= C*∆Vo C= Q/∆Vo = [(1-D) Vo]/∆Vo 8LF2 =
(3.14)
Vo/∆Vo =
(3.15)
∆Vo = ripple Voltage ∆Vo/Vo = percentage Ripple
30
3.3 Open Loop Buck Converter Design In the buck converter been designed, the circuit has the following specification:
Specification
Value
Input Voltage (Vin)
32 – 64 V
Power Output (Po)
10 – 50 W
Switching Frequency (F)
20 kHz
Loading (R)
3 – 14 (Ω)
Output Voltage (Vout)
12 V
Time period of operation = T= Ton + Toff T= 1/F = 1/20000 = 50 us
The Duty Cycle D is ; Dmin = Vo/Vin(max) = 12/64 = 0.19 Dmax = Vo/Vin(min) = 12/32 = 0.375
3.3.1 Inductance The minimum required inductance is LC = (1-DMAX) RMAX / 2F LC = (1-0.375)*14 / 2* 20000 LC = 2.1875 x 10-4 Henry The Basic Buck circuit is simulated using the Portunus software using a period T = 50us and pulse-width Duty Cycle of 0.19 (Fig 3.7). During Ton, the switch S1 drops to 0.01 Ω connecting 64V (VIN) to L2. During T off , the switch S1 pops open to 1 MΩ effectively disconnecting voltage input from the inductor L2. R represents the load powered by the Buck Converter. With an inductance L equal to 0.3mH, the resulting inductor wave form is as shown in Fig 3.8. 31
Fig 3.7 buck converter L2.I 2 1.5 1 500 m 0 50 u
100 u
150 u
200 u
250 u
300 u
350 u
400 u
450 u
500 u 550 u t/s
600 u
650 u
700 u
750 u
800 u
850 u
900 u
950 u
Fig 3.8 Inductor Current at L= 0.3mh L2.I
1
500 m
0 50 u
100 u
150 u
200 u
250 u
300 u
350 u
400 u
450 u
500 u 550 u t/s
600 u
650 u
700 u
750 u
800 u
850 u
900 u
950 u
Fig 3.9 Inductor Current at L= 0.7mh The resulting critical inductance is 0.3mH. For the actual Buck Converter, an inductor of size 0.7mH was selected, easily guaranteeing enough inductance to sustain continuous current operation as shown in Fig 3.9. With the inductor size taken into consideration, the 0.7mH inductor was designed with the following parameters: Peak winding current Imax (A)
5
Inductance L (H)
0.0007 32
Winding fill factor Kµ
0.3
Core maximum flux density Bmax(T)
0.5
Air gap Lg (m) = [µ0LI2max / B2max Ae ] * 104
(3.16)
With µ0 = 4*π 10-7 AL is equal to the inductance, in mH, obtained with a winding of 1000 turns. AL = 10 B2max Ae2 / L I2max
(3.17)
L = AL N2 10-9 (Henries) (3.18) N = √( L/ AL 10-9) (3.19) Where N = number of turns Using Equations 3.15 – 3.18, the following results were obtained(16,17,18,19). CORE
AC
MLT
WA
AL
N
Lg
ETD 29
0.76
5.33
0.903
82.51
93
1.16
ETD 34
0.97
6.00
1.23
134.41
73
0.91
ETD 39
1.25
6.86
1.74
223.21
56
0.7
ETD 44
1.73
7.62
2.14
427.56
41
0.51
Table 3.1 inductor cores and Corresponding Parameters Where Ae = Effective Core Area (cm2) MLT = Mean Turn Area (cm) WA = Winding Area (cm2) Lg = Air gap (mm) Using the ETD 39, the following parameters were obtained using
33
Aw= Kµ WA / N
(3.20)
Where Aw = Bare copper Area A wire with bare copper area AW less than or equal to this value is selected using the metric Wire Gauge table is included in Appendix D. R= ρN(MLT)/ Aww Where Aww = bare copper area of actual copper used Ρ = resistivity of copper = 1.724 * 10-6 Ω-cm The resulting Inductor Design Parameter is shown in Table 3.2. Type of Core
ETD 39
Number of Turns(n)
64
Air Gap
1mm
Wire Bare Area (metric format)
0.91186 mm
Wire Bare Area (Aww)
6.5 x 10 -3cm2
Winding resistance R(Ω)
0.102
Table 3.2 Inductor Design parameters
3.3.2 Capacitance The key factor in determining the size of the capacitor is the amount of ripple voltage desired. Specifically, it is preferable to minimize ripple voltage. A larger capacitor leads to smaller ripple voltage. It was decided for this thesis that the ripple voltage, defined as ΔVo /Vo is about 0.1% Solving for the capacitor size using equation 3.14 yields C=
=
= 362 microfarad
A Portunus Model is simulated using an inductance of 0.7mH and capacitance of 362uF as shown in Fig 3.10
34
L2.I R1.V 20
10
0 10 m
20 m
30 m
40 m
50 m
60 m
70 m
80 m
90 m
100 m 110 m 120 m 130 m 140 m 150 m 160 m 170 m 180 m 190 m t/s
Fig 3.10 Output voltage and inductor current at L= 0.7mH and C= 362µF L2.I R1.V 20
10
0 10 m
20 m
30 m
40 m
50 m
60 m
70 m
80 m
90 m
100 m 110 m 120 m 130 m 140 m 150 m 160 m 170 m 180 m 190 m t/s
Fig 3.11 Output voltage (R1.V) and inductor current (L2.I)at L= 0.7mH and C= 1000µF
The actual capacitor chosen for this thesis was 1000uF as shown in Fig 3.11. When substituted into equation 3.15 this value yields a peak-to-peak ripple voltage of 0.036 %.
3.3.3 Diode rating From Equation 3.11, the diode current rating > 4 * (1-0.1875) = 3.25A Diode reverse voltage rating = 64V The diode chosen for the actual buck converter was a Fast Soft Recovery Diode, model 20ETF04PbF, manufactured by Vishay. Specification sheets on this device are included as Appendix A. This device is rated for 600V @ 20 amps. Most importantly, the diode reverse recovery time is 60ns, which is 833 times less than the period of the 20 kHz switching frequency.
3.3.4 Switch For the current rating, from equation 3.8, the current rating of the switch should be greater than 4*0.375= 1.5A. The maximum voltage rating is the maximum input voltage that is 64V. 35
A 600V, SMPS Series N-Channel IGBT with Anti-Parallel Hyper-fast Diode was chosen as the switch. The complete description of this component is found in Appendix B. Fig 3.12 – 14 below show the waveforms obtained with the switching model simulation when using the actual buck component parameters.
R1.V 25 20 15 10 5 0 5m
10 m
15 m
20 m
25 m
30 m
35 m
40 m
45 m
50 m t/s
55 m
60 m
65 m
70 m
75 m
80 m
85 m
90 m
95 m
Fig 3.12 Voltage Output L2.I 15
10
5
0 5m
10 m
15 m
20 m
25 m
30 m
35 m
40 m
45 m
50 m t/s
55 m
60 m
65 m
70 m
75 m
80 m
85 m
90 m
95 m
Fig 3.13 inductor current R1.I 1.5 1 500 m 0 5m
10 m
15 m
20 m
25 m
30 m
35 m
40 m
45 m
50 m t/s
55 m
60 m
65 m
70 m
75 m
80 m
85 m
90 m
95 m
Fig 3.14 Output current 3.4 Closed Loop Buck Converter Here control is introduced into the buck converter circuit. The feedback circuit monitors the output voltage and compares it with a reference voltage, which is set electronically to the desired output. If there is an error in the output voltage, the feedback circuit is employed to varying the duty cycle in order to bring the output voltage as close as possible to the reference voltage. 36
This control is necessary because input voltage variations and load variations can cause the output voltage to change. This control is carried out by the FCIV (flexible controller integrated test platform) controller as shown in Fig 3.15.
Fig 3.15 closed loop buck converter 3.4.1 Control Topology PWM OUT BUCK CONVERTER
ERROR AMP. A
COMPARATOR
Carried out in the FCIV Controller
SAW TOOTH VOLTAGE SOURCE REFERENCE VOLTAGE
Fig 3.16 Closed Loop Buck Control Topology 3.4.1.1 Error Amplifier The essential part of the automatic control is the error amplifier which measures how close the voltage output is to the reference voltage. The measurement of error is simple the difference between voltage output and the reference voltage 5. 37
Verror= Vref - Vo If Verror is positive , the duty cycle is increased and if Verror is negative then the duty cycle is decreased and if Verror is zero then the current duty cycle is maintained. 3.4.1.2 Pulse width Modulation In order to obtain the PWM signal, the saw tooth waveform V saw is compared with the Verror signal. When Verror is greater than Vsaw then the output from the comparator is zero and when Verror is less than Vsaw then the output from the comparator is zero. Thus the duty cycle of the PWM output signal is proportional to the Error Voltage.
Portunus simulation of closed loop buck converter
Fig 3.17 Closed Loop Buck Converter and Open Loop Buck Converter The closed loop buck converter and the open loop buck converter are simulated using Portunus as shown in Fig 3.17.
38
R7.V PWMD2
5
0 500 u
1m
1.5 m
2m
2.5 m
3m
3.5 m
4m
4.5 m
5m
5.5 m
6m
6.5 m
7m
7.5 m
8m
8.5 m
9m
9.5 m
t/s -5
Fig 3.18 Error voltage and PWM input signal of the closed loop buck converter
VM1.V R1.V 30 20 10 0 2m
4m
6m
8m
10 m 12 m 14 m 16 m 18 m 20 m 22 m 24 m 26 m 28 m 30 m 32 m 34 m 36 m 38 m 40 m 42 m 44 m 46 m 48 m t/s
Fig 3.19 Input voltage (VMI.1) and output voltage (R1.V) of the closed loop buck converter VM1.V R1.V 30 20 10 0 2m
4m
6m
8m
10 m
12 m
14 m
16 m
18 m
20 m
22 m
24 m
26 m t/s
28 m
30 m
32 m
34 m
36 m
38 m
40 m
42 m
44 m
46 m
48 m
Fig 3.20 Input Voltage (VMI.1) and output voltage (R1.V) of the open loop buck converter R1.V R9.V
25 20 15 10 5 0 5m
10 m
15 m
20 m
25 m
30 m
35 m
40 m
45 m
50 m
55 m
60 m
65 m
70 m
75 m
80 m
85 m
90 m
95 m
Fig 3.21 Closed Loop Converter Output (R1.V) and Open Loop Output (R9.V) with Voltage input of 32V
From comparing the wave forms in Fig 3.19 and 3.20, it can be seen that the output of open loop buck converter varies with variation of the input voltage. 39
3.5 Graphic User Interface The user interface to the FCIV controller is developed using Visual Basic 2008. The goal of the user interface is to make the user interaction with the FCIV controller as easy as possible. Here panels are provided in order to drive the buck converter in either the open loop or closed loop operation. Circuit parameters are downloaded into the FCIV control with the use of text boxes shown in Fig 3.18 and Fig 3.19.
Fig 3.22 Open Loop Simulation panel.
40
Fig 3.23 Closed-loop Simulation Panel 3.5.1 Input Parameters Ki and Kp: these are buck gain parameters which are used in the closed loop buck control carried out by the flexible controller integrated platform. Duty Cycle: This is an open loop input parameter which is used to control the ON/OFF position of the Buck converter switch. Frequency: this controls the output frequency of the inverter output voltage. 41
Modulation Index : this controls the output waveform of the inverter output waveform. 3.5.2 Output Parameters The buck output and the generator output are output parameters obtained from the FCIV. The specific steps taken during the interaction between the user interface and the FCIV controller when data is been inputted by the user as shown Fig3.24.
USER
BUCK OUTPUT
Send buck output
MODE OF BUCK OPERATION
FLEXIBLE Set mode
INPUT PARAMETERS
CONTROLLER INTEGRATED
CONFIG Send parameters START
PLATFORM
Start controller
Change parameters STOP
Stop controller
Fig 3.24 User Interface – Controller Interaction Some back calculations are performed in order to recalculate design parameters after standardization. The source code for the software developed using visual basic is included in appendix C.
42
CHAPTER FOUR 4.1 Simulation Results And Measured Experimental Results In order to verify the theoretical models, experiments using the designed Buck Converter and the FCIV controller as the switch controller was using on the output of the generator rig as shown in Fig 4.1. The results presented in tables and graphs are obtained from; i. Simulation using Portunus ii. Experimental Results from the Experimental set up iii. Numerical calculations
Fig.4.1 Generator Dynamometer
43
4.1.1 Generator No Load Testing Power Rating: 0.18 kW Generator Speed (rpm) Generator voltage 100 4.5 200 9.5 300 14 400 18.8 500 23.8 600 28.2 700 33 800 37.8 900 42.5 1000 49.7 1100 52.3 1200 57.1 1300 61.7 1400 66.6 1500 70.7 Table 4.1 Generator Output voltage with corresponding speed.
Fig.4.2 Variation of generation voltage verses speed The generator voltage output and frequency increases with speed as shown in Fig 4.2. The generator output voltage waveform is not perfectly sinusoidal as shown in Fig 4.3. The voltage waveform was fed into the Portunus rectifier model resulting in results shown in Fig 4.4. 44
Fig. 4.3 Generator Voltage Output at 500rpm
LOOKUP1.OUT LOOKUP2.OUT LOOKUP3.OUT
20 10 0 5m
10 m
15 m
20 m
25 m
30 m
35 m
-10
40 m 45 m t/s
50 m
55 m
60 m
65 m
70 m
75 m
80 m
-20
Fig 4.4 Three Phase Voltage Output from Portunus Generator Model 4.1.2 Rectifier Testing and Simulation When the generator output is rectified with a three phase rectifier and the generator torque and output DC voltage is measure for a generator speed range of 500 – 1000 rpm. SPEED (RPM) 500 700 900 1000
BIN(V) 31.9 44.5 57.8 64
TORQUE 0.042 0.047 0.05 0.05
Table 4.2 Variation of generator speed with DC Voltage output
45
Fig 4.5: Rectifier output without a Capacitor (a) using Portunus simulation (b) experimental result (c) Simulation and experimental results Using a capacitance of 1000uF as a filter, the Potunus model as shown in Fig 4.6 outputs the waveform shown in Fig 4.7
46
Fig 4.6 Portunus Rectifier Model R1.V
30
20
10 5m
10 m
15 m
20 m
25 m
30 m
35 m
40 m 45 m t/s
50 m
55 m
60 m
65 m
70 m
75 m
80 m
Fig 4.7 Rectifier output with 1000uF Capacitor 4.1.3 Buck Converter Testing and Simulation The designed Buck Converter is connected to a DC power supply and the FCIV controller where the output voltages are obtained at different duty Cycles. The Open Loop Buck converter is modeled using Portunus simulation (Fig 4.7) and measurements were obtained. The measurements are tabled and plotted below (Fig. 4.8- 4.11).
Fig 4.8 Rectifier – Open Loop Buck converter Portunus Model
47
Load =50W Input Voltage = 30V Experimental results Simulation results PWM (%) Buck Voltage O/P Buck Voltage O/P 10 1.8 2.18 20 4.4 5.6 25 5.7 7.06 30 7.0 8.5 35 8.3 9.96 40 9.6 11.4 45 10.8 12.86 50 12.1 13.7 Table 4.3 : Variation of Buck Output Voltage with input voltage of 30V
Fig.4.9 Buck Output at voltage input of 30V and power output of 50W
48
Loading =50W
Input Voltage = 60V
Experimental results Simulation results PWM (%) Buck Voltage O/P Buck Voltage O/P 5 1.5 2.7 10 4.0 5.28 15 6.5 9.5 20 9.0 12.57 25 11.5 15.6 26 11.9 16.2 27 12.4 16.8 Table 4.4 : Variation of Buck Output Voltage with input voltage of 60V
Fig.4.10 Buck Output at voltage input of 60V and power output of 50W
49
Load =10W
Input Voltage = 30V
Experimental results Simulation results PWM (%) Buck Voltage O/P Buck Voltage O/P 10 2.0 2.18 20 4.8 5.76 25 6.2 7.25 30 7.6 8.7 40 10.4 11.7 45 11.8 13.1 46 12.1 14 Table 4.5: Variation of Buck Output Voltage with input voltage of 30V
Fig.4.11 Buck Output at voltage input of 30V and power output of 10W
50
Load =10W
Voltage = 60V
Experimental results Simulation results PWM (%) Buck Voltage O/P Buck Voltage O/P 5 1.8 2.78 10 4.5 5.15 20 10 12.3 21 10.6 12.9 23 11.7 14 24 12.2 15 Table 4.6: Variation of Buck Output Voltage with input voltage of 60V
Fig.4.12 Buck Output at voltage input of 60V and power output of 10W From Fig 4.5 - 4.8 the simulated vary from the experimental results due to the fact that the simulation makes use of ideal components. Voltage drop across each component need to be taken into consideration. The buck converter was then tested with the actual PM Generator and Rectifier as an input and the above measurements are repeated.
51
SPEED(rpm) TORQUE(Nm) Bin (V)
Bout(V)
B(out I)
DC
500
0.29
27.2
12
0.87
50
500
0.34
26.5
11.5
1.07
50
500
0.41
25.6
11
1.3
50
500
0.5
24.3
10.1
1.69
50
Table 4.7 Buck Output at varying Power Output (10W- 50W) with generator speed 500 rpm Power Input = torque *speed/60 *2π
(4.1)
Power Output = Bout(V) * Bout(I)
(4.2)
Efficiency = Power Output/Power Input
(4.3)
At maximum loading, efficiency = 10.44/15.18 = 69% SPEED(rpm) TORQUE(Nm) Bin (V)
Bout(V)
B(out I)
DC
750
0.22
41.4
12.4
0.9
34
750
0.29
40.4
11.9
1.24
34
750
0.36
39.2
11.4
1.6
34
750
0.48
37.4
10.4
2.3
34
Table 4.8 Buck Output at varying Power Output (10W- 50W) with generator speed 750 rpm At maximum loading, efficiency = 11.16/17.28 = 65% SPEED(rpm) TORQUE(Nm) Bin (V)
Bout(V)
B(out I)
DC
1000
0.17
60.6
12.2
0.86
23
1000
0.2
59.9
11.9
1.17
23
1000
0.26
58.8
11.4
1.6
23
1000
0.38
56.6
10.5
2.6
23
Table 4.9 Buck Output at varying Power Output (10W- 50W) with generator speed 1000 rpm 52
At maximum loading, efficiency = 10.5/17.8 = 59% From the tables above the efficiency of the power converter rig i.e. Buck Converter + Rectifier shows that the efficiency drops with increase in speed. 4.1.4 Inverter Simulation The inverter was tested with the Buck converter and the FCIV controller. The resulting current wave form was distorted due to current drop in the switches. The Portunus inverter model is as shown below.
Fig. 4.13 Inverter Model
R1.V 5 2.5 0 50 m
100 m
150 m
-2.5
200 m
250 m
300 m
350 m t/s
400 m
450 m
500 m
550 m
600 m
650 m
Fig 4.14 Inverter Output
53
Fig 4.15 Experimental Setup
54
CHAPTER FIVE 5.1 Conclusion This thesis has presented the design of the Buck Converter and its implementation in the power converter Unit. The buck converter was designed to operate with the input range of 32-64V DC. A load range of 3-14 was selected that would result in a power output range of 10-50W. The control of the buck converter is carried out by the by the flexible controller integrated platform developed in the SPEED laboratory. A user end interface to the FCIV controller using visual basic programming was designed. A complete model comprising of a rectifier, buck converter and inverter was created using the Portunus simulation software. Due to equipment limitation and the prototype nature of the buck converter the efficiency 67% was obtained.
Fig. 5.1 Efficiency Verses Speed of Generator Fig 5.1 illustrates the efficiencies obtained at different speeds. This is due to the losses due to Resistance of the switch, Diode forward voltage drop, Inductor winding resistance, Capacitor equivalent resistance.
55
When the Buck Converter is operated in closed loop, the losses are not considered as it does not affect the buck converter output as the control loop compensates for the voltage drop by increasing the duty cycle.
56
REFERENCE [1] Donald Schelle and Jorge Castorena. Maxim Integrated Products. Retrieved from Maxim Integrated Products website: http://powerelectronics.com/power_systems/dc_dc_converters/power_buckconverter_ design_demystif [2] AWG to Metric Conversion table . Retrieved from Engineering ToolBox website: http://www.engineeringtoolbox.com/awg-wire-gauge-d_731.html [3] The practical design of a buck converter by Johor Bahru. Retrieved from IEEE Website: http://ewh.ieee.org/r10/malaysia/ie_ia_pel/pecon2008/akhtar_tutorial.pdf [4] Bennett, J. C. (2006). Practical computer analysis of switch mode power supplies. CRC Press. [5] Buck Conver Basics. Retrieved from eCircuit Center website: www.ecircuitcenter.com/Circuits/smps_buck/smps_buck.html [6] Unitode Magnetics Design Handbook . [7] 600 Watt Pure Sine Wave Inverter. Retrieved from http://www.donrowe.com/inverters/puresine 600.html [8] Portunus Information. Retrieved from Cedrat Groupe Website: http://www.cedrat.com/en/software-software-solutions/portunus.html [9] Introduction to power supplies . Retrieved from National Semiconductor website: http://www.national.com/an/AN/AN-556.pdf [10] Lee, Yim. (1993). Computer-aided analysis and design of switch mode power supplies. CRC Press. [11] Mohan,Undeland and Robbins. (2007). Power electronics: converters, applications and design. Wiley India. [12] Raymond A. Mack, J. (2005). Demystifying Switching Power Supplies . Newnes. [13] Operation Of A 3-Phase Fully-Controlled Rectifier. Retrieved from university of Sydney website: http://services.eng.uts.edu.au/~venkat/pe_html/ch05s1/ch05s1p1.htm [14] Step down: SMPS Buck Converter Ideal Circuit. Retrieved from university of Sydney website: http://services.eng.uts.edu.au/~venkat/pe_html/ch07s1/ch07s1p1.htm#intro
57
[15] Robert Warren Erickson, D. M. (2001). Fundamentals of Power Electronics. Springer. [16] ETD39 Datasheet. Retrieved from Fexxocube website: http://www.ferroxcube.com/prod/assets/etd39.pdf [17] ETD44 Datasheet. Retrieved from Fexxocube website: http://www.ferroxcube.com/prod/assets/etd44.pdf [18] ETD34 Datasheet. Retrieved from Fexxocube website: http://www.ferroxcube.com/prod/assets/etd34.pdf [19] ETD29 Datasheet. Retrieved from Fexxocube website: http://www.ferroxcube.com/prod/assets/etd29.pdf [20] Feucht, D. L. (n.d.). Practical Design of a Buck Converter. AnalogZONE . [21] Understanding variable output characteristics of wind Power. Retrieved from wind energy the facts.org website: http://www.wind-energy-thefacts.org/_includes/print.php?lg=en&cmp_id=48&safe_mode= 8/13/2009
58
APPENDIX A
59
APPENDIX B
60
APPENDIX C Public Class Simulation_Form Dim Dim Dim Dim Dim Dim Dim Dim
bytLength As Byte bytPackage11(10) As Byte, bytPackage8(7) As Byte bytEcho11(10) As Byte, bytEcho8(7) As Byte vntwarning As Object blnComunication As Boolean bytStatusInfo As Byte intStatusInfo As Integer varStatusInfo As Object
Dim intRun As Integer Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim
intDCF As Integer intVF As Integer intKpF As Integer intKiF As Integer lngDC As Long intDC As Integer intVref As Integer intKp As Integer intKi As Integer intBM As Integer
Dim intFrequency As Integer Dim intFF As Integer Dim intMI As Integer Dim intMIF As Integer Private Sub cmdDL_Click() intKp = txtKP.Text intKi = txtKI.Text intMI = txtModulationIndex.Text
End Sub 'Sequence to carry out Serial Communications via RS232 Port '-------------------------------------------------------------------------------------------------------------Public Sub Comunication(ByVal bytLength As Byte, ByRef bytPackage() As Byte) Dim intCount As Integer ' Used to count read/write buffers through TX/RX arrays Dim varWarning As VariantType ' Used to Launch Error Warnings Dim intVerify As Integer ' Used to wait check message is recieved. Dim intError As Integer ' Used to timeout the waiting for a message to be recieved intError = 0
61
intCount = 11 Try MSComm1.Open() Catch ex As Exception 'SetButtonForStop() varWarning = MsgBox("Unable to open Comm port ", MsgBoxStyle.Critical, "Communications Error") Return End Try 'Open Serial Port Try MSComm1.Write(bytPackage, 0, intCount) ' Write bytPackage to the output buffer of the serial port Do Until intVerify = intCount If intVerify = intCount Then ' wait until 11 bytes are recieved Exit Do End If intVerify = MSComm1.BytesToRead intError += 1 If intError = 500 Then Throw New ApplicationException("Timeout") ' if recieve operation times out then throw an exception End If Threading.Thread.Sleep(1) ' delay a millisecond per loop (500ms delay total) Loop Catch writeExc As Exception ' Warning information when communication fails varWarning = MsgBox("The Interface has not been able to " & _ "send data to the FCIV, please check the status of the " & _ "serial Port", MsgBoxStyle.Critical, "Communications Error") varWarning = MsgBox("The FC4 interface will now close, " & _ "please re-check all connections", _ MsgBoxStyle.Critical, "Interface Shutdown") Close() ' Close the programme if the communications fail End Try Try ' MSComm1.Read(bytRecieve, 0, intCount) ' Read the serial port input buffer and store in bytReceive Catch readException As System.TimeoutException ' If the read operation times out show warning varWarning = MsgBox("The Interface has not recieved data " & _ "from FCIV, check serial connection", _
62
MsgBoxStyle.Critical, "Communications Error") varWarning = MsgBox("The FC4 interface will now close, " & _ "please re-check all connections", _ MsgBoxStyle.Critical, "Interface Shutdown") Close() ' Close programme if the communications fail End Try MSComm1.Close() ' Close the Serial Port End Sub Private Sub btn_configure_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_configure.Click If ValidateForm() Then 'Enable buttons after connecting successfully to Controller via the port btn_run.Enabled = True btn_run.BackColor = Color.FromArgb(0, 192, 0) 'green btn_configure.Enabled = True ' intRun = 1 End If 'Package to send Buck Mode Command bytLength = 11 Call BuildPackage(bytLength, 18, 108, 0, _ CByte(intBM), 0) Call Comunication(bytLength, bytPackage11) If intFF = 1 Then intFrequency = txtFrequency.Text / 2 'Package to send Frequency Command bytLength = 11 Call BuildPackage(bytLength, 18, 100, 0, _ CByte(intFrequency), 0) Call Comunication(bytLength, bytPackage11) intFF = 0 End If If intMIF = 1 Then 'Package to send Mod Index Command bytLength = 11 intMI = txtModulationIndex.Text Call BuildPackage(bytLength, 18, 102, 0, _ CByte(intMI), 0) Call Comunication(bytLength, bytPackage11) intMIF = 0 End If If intDCF = 1 Then 'Package to send Duty Cycle Command bytLength = 11
63
Call BuildPackage(bytLength, 18, 104, 0, CByte(Fix(intDC / 256)), CByte(intDC Mod 256)) Call Comunication(bytLength, bytPackage11) intDCF = 0 End If If intVF = 1 Then 'Package to send Vref Command intVref = txtRefVoltage.Text bytLength = 11 Call BuildPackage(bytLength, 18, 105, 0, _ CByte(Fix(intVref / 256)), CByte(intVref Mod 256)) Call Comunication(bytLength, bytPackage11) intVF = 0 End If If intKpF = 1 Then 'Package to send Kp Command bytLength = 11 intKp = txtKP.Text Call BuildPackage(bytLength, 18, 106, 0, _ CByte(Fix(intKp / 256)), CByte(intKp Mod 256)) Call Comunication(bytLength, bytPackage11) intKpF = 0 End If If intKiF = 1 Then 'Package to send Ki Command intKi = txtKI.Text bytLength = 11 Call BuildPackage(bytLength, 18, 107, 0, _ CByte(Fix(intKi / 256)), CByte(intKi Mod 256)) Call Comunication(bytLength, bytPackage11) intKiF = 0 End If End Sub Private Sub btn_stop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) End Sub Private Sub Label11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) End Sub Private Sub GroupBox4_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox4.Enter End Sub
64
Private Sub txt_gen_voltage_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txt_gen_voltage.TextChanged End Sub Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdbCloseLoop.CheckedChanged If rdbCloseLoop.Checked = True Then txtDutyCycle.Enabled = False txtKP.Enabled = True txtKI.Enabled = True txtRefVoltage.Enabled = True intBM = 2 'closed loop End Sub Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdbOpenLoop.CheckedChanged If rdbOpenLoop.Checked = True Then txtDutyCycle.Enabled = True txtKP.Enabled = False txtKI.Enabled = False txtRefVoltage.Enabled = False intBM = 1 'open loop End Sub Private Sub Label10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label10.Click End Sub Private Sub GroupBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox1.Enter End Sub Private Sub Label11_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label11.Click End Sub Private Sub btn_run_stop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_run.Click If intRun = 1 Then btn_run.BackColor = Color.FromArgb(0, 192, 0) 'green intRun = 0 btn_run.Text = "RUN" btn_run.Enabled = False btn_configure.Enabled = True bytLength = 11 Call BuildPackage(bytLength, 18, 103, intRun, intRun, intRun) Call Comunication(bytLength, bytPackage11)
65
Else btn_run.BackColor = Color.FromArgb(192, 0, 0) 'red intRun = 1 btn_run.Text = "STOP" bytLength = 11 Call BuildPackage(bytLength, 18, 103, intRun, intRun, intRun) Call Comunication(bytLength, bytPackage11) End If End Sub Private Sub SetButtonsFor_op_control() txtDutyCycle.Enabled = True txtKP.Enabled = False txtKI.Enabled = False txtRefVoltage.Enabled = False intRun = 0 intFrequency = 50 intMI = 100 intDC = intVref intKp = intKi =
375 = 1000 20 15
intFF = 0 intMIF = 0 intDCF = 0 intVF = 0 intKpF = 0 intKiF = 0
'Package to send Frequency Command bytLength = 11 Call BuildPackage(bytLength, 18, 100, 0, _ CByte(intFrequency), 0) Call Comunication(bytLength, bytPackage11) 'Package to send Mod Index Command bytLength = 11 Call BuildPackage(bytLength, 18, 102, 0, _ CByte(intMI), 0) Call Comunication(bytLength, bytPackage11) 'Package to send Duty Cycle Command bytLength = 11 Call BuildPackage(bytLength, 18, 104, 0, _ CByte(Fix(intDC / 256)), CByte(intDC Mod 256)) Call Comunication(bytLength, bytPackage11)
66
'Package to send Vref Command bytLength = 11 Call BuildPackage(bytLength, 18, 105, 0, _ CByte(Fix(intVref / 256)), CByte(intVref Mod 256)) Call Comunication(bytLength, bytPackage11) 'Package to send Kp Command bytLength = 11 Call BuildPackage(bytLength, 18, 106, 0, _ CByte(Fix(intKp / 256)), CByte(intKp Mod 256)) Call Comunication(bytLength, bytPackage11) 'Package to send Ki Command bytLength = 11 Call BuildPackage(bytLength, 18, 107, 0, _ CByte(Fix(intKi / 256)), CByte(intKi Mod 256)) Call Comunication(bytLength, bytPackage11) End Sub Public Sub BuildPackage(ByVal intLength As Integer, ByVal bytCmd As Byte, ByVal bytFunc1 As Byte, ByVal bytFunc2 As Byte, _ ByVal bytMsb As Byte, ByVal bytLsb As Byte) Dim intCount As Integer Select Case intLength Case 8 bytPackage8(0) bytPackage8(1) bytPackage8(2) bytPackage8(3) bytPackage8(4)
= = = = =
8 0 1 64 bytCmd
'No. bytes lsb 'No. bytes msb 'Destination 'Source 'Select Test Function
Command bytPackage8(5) = bytFunc1 'data 1, test function bytPackage8(6) = bytFunc2 'data 2 bytPackage8(7) = bytPackage8(0) Xor bytPackage8(1) 'checksum For intCount = 2 To 6 ' XOR of all bytes excluding the checksum bytPackage8(7) = bytPackage8(7) Xor bytPackage8(intCount) Next intCount Case 11 bytPackage11(0) bytPackage11(1) bytPackage11(2) bytPackage11(3) bytPackage11(4) bytPackage11(5) Identifier (PI) bytPackage11(6) bytPackage11(7) bytPackage11(8) bytPackage11(9)
= = = = = =
11 0 1 64 bytCmd bytFunc1
'No. bytes lsb 'No. bytes msb 'Destination 'Source 'Command 'data 1, Parameter
= = = =
bytMsb bytLsb 0 0
'data 'data 'data 'data
2, msb 3, lsb 4 5
67
bytPackage11(10) = bytPackage11(0) Xor bytPackage11(1) 'checksum For intCount = 2 To 9 ' XOR of all bytes excluding the checksum bytPackage11(10) = bytPackage11(10) Xor bytPackage11(intCount) Next intCount End Select Timer1.Enabled = True End Sub Private Sub optCL_Click() txtDutyCycle.Enabled = False txtKP.Enabled = True txtKI.Enabled = True txtRefVoltage.Enabled = True intBM = 2 'Package to send Buck Mode Command bytLength = 11 Call BuildPackage(bytLength, 18, 108, 0, _ CByte(intBM), 0) Call Comunication(bytLength, bytPackage11) End Sub Private Sub optOL_Click() txtDutyCycle.Enabled = True txtKP.Enabled = False txtKI.Enabled = False txtRefVoltage.Enabled = False intBM = 1 'Package to send Buck Mode Command bytLength = 11 Call BuildPackage(bytLength, 18, 108, 0, _ CByte(intBM), 0) Call Comunication(bytLength, bytPackage11) End Sub Private Sub txtDC_Change() intDCF = 1 txtDutyCycle.ForeColor = Color.FromArgb(192, 0, 0) End Sub
68
Private Sub txtFreq_Change() intFF = 1 txtFrequency.ForeColor = Color.FromArgb(192, 0, 0) End Sub Private Sub txtKi_Change() intKiF = 1 txtKI.ForeColor = Color.FromArgb(192, 0, 0) End Sub Private Sub txtKp_Change() intKpF = 1 txtKP.ForeColor = Color.FromArgb(192, 0, 0) End Sub Private Sub txtMI_Change() intMIF = 1 txtModulationIndex.ForeColor = Color.FromArgb(192, 0, 0) End Sub
Private Sub txtVref_Change() intVF = 1 txtRefVoltage.ForeColor = Color.FromArgb(192, 0, 0) End Sub Private Function ValidateForm() As Boolean If (rdbCloseLoop.Checked = True) Then 'KP validation If (txtKP.Text.Trim() = "" Or intKp > 100) Then MsgBox("kp cannot be blank or zero", MsgBoxStyle.Exclamation, "kp") txtKP.Focus() Return False End If 'KI validation If (txtKI.Text.Trim() = "" Or intKi > 100 Or intKi > intKp) Then MsgBox("ki cannot be blank ", MsgBoxStyle.Exclamation, "ki") txtKI.Focus()
69
Return False End If 'Ref Voltage validation If (txtRefVoltage.Text.Trim() = "" Or intVF > 2048) Then MsgBox("Ref Voltage cannot be blank", MsgBoxStyle.Exclamation, "Ref Voltage") txtRefVoltage.Focus() Return False End If ElseIf (rdbCloseLoop.Checked = False) Then 'Duty cycle validation If (txtDutyCycle.Text.Trim() = "" Or intDC > 3750) Then MsgBox("DutyCycle.Text cannot be blank or greater than 100", MsgBoxStyle.Exclamation, "DutyCycle") txtDutyCycle.Focus() Return False End If End If If (txtModulationIndex.Text.Trim() = "" Or intMI > 100) Then MsgBox("Modulation Index cannot be blank", MsgBoxStyle.Exclamation, "Modulation Index") txtModulationIndex.Focus() Return False End If 'frequecy validation If (txtFrequency.Text.Trim() = "" Or txtFrequency.Text = "0") Then MsgBox("Frequency cannot be blank or zero", MsgBoxStyle.Exclamation, "Frequency") txtFrequency.Focus() Return False End If Return True End Function Private Sub btn_run_EnabledChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_run.EnabledChanged End Sub Private Sub txtFrequency_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFrequency.TextChanged intFF = 1 End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
70
End Sub Private Sub txtDutyCycle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDutyCycle.TextChanged intDCF = 1 lngDC = txtDutyCycle.Text * 3750 lngDC = lngDC / 100 intDC = lngDC End Sub Private Sub txtRefVoltage_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtRefVoltage.TextChanged intVF = 1 End Sub Private Sub txtKI_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtKI.TextChanged intKiF = 1 End Sub Private Sub txtKP_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtKP.TextChanged intKpF = 1 End Sub Private Sub Simulation_Form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load intRun = 0 End Sub Private Sub txtModulationIndex_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtModulationIndex.TextChanged intMIF = 1 End Sub End Class
71
APPENDIX D
72
View more...
Comments