ECE 4600 Undergraduate Final Report
Wireless Firing Pulse Interfacefor Power Electronic Converters
Academic SupervisorDr. Aniruddha Gole, Ph. D.
Submitted by Group 07Mengchen Liu
Bo.H CuiWei Li
inElectrical and Computer Engineering
in theFaculty of Engineering
of theUniversity of Manitoba
Reporting DatesSeptember 7, 2012 - March 11, 2013
Submitted OnMonday, March 11, 2013
©2013 Copyright by Mengchen Liu, Bo.H Cui, Wei Li
AbstractAs power electronic converter and inverter designs become more complex and are used more in
industrial areas, the difficulty of running power and signal wires to the devices exist. In addition to
the difficultly of running wires, crosstalk from other wires is becoming more of an issue. The use
of wireless technology can provide an alternate means of sending and receiving the required control
signals to the PE converters and feedback information back from the converters.
Our design attempted to meet the challenge by introducing wireless technology for control-
ling power electronic converters using the ZigBee protocol. Our team designed a system using the
ZigBee wireless technology that could be adaptable to many different types of power electronic
converters and then demonstrated by using a single phase half bridge converter as an example de-
sign. Our team proved that it is possible to operate these power electronic converters via a wireless
communication powered only by a 9V battery. However, a complete functional design requires
some additional work, as the software portion of the design required more resources than there was
available. The resolution has been left for future work.
i
AcknowledgementsOur design team would like to take this opportunity to acknowledge those individuals who have
supported us throughout the development of our project. We would like to thank Dr. Aniruddha
Gole for all of his help and guidance during the course of the project. We also would like to thank
Mr. Erwin Dirks for his advice on the design and component selection. Additionally, we would like
to thank Mr. Dexter Williams for his suggestions on software development. We would like send
a special thanks to Mr. Greg Hoeppner and Mr. Tim Hoeppner of Norscan Instruments Ltd. for
all of their advice and suggestions for the design and layout of the PCB and software development.
Finally, we would like to thank the ECE technologist shop staff for their assistance in acquiring all
of the components required to implement the project.
ii
ContributionsThis thesis project contributes to the power electronics technology by using wireless for com-
munication. Wireless communication will allow the power electronic systems to be installed and
used more safely and conveniently.
During the course of this project, we dividing tasks based on each design team member’s specific
strengths to maximize productivity. This project has been divided into two main parts: the wireless
interfacing design and the PE inverter design. Table 1 contains a breakdown of the tasks required to
complete the project and the associated team member(s) assigned to each task.
Table 1: Milestones, Task List, and Division of Labour
Milestones and Task Completed byResearch Wireless Interface Protocol Mengchen, Wei
- Transmitter/Receiver (ZigBee)PE Inverter (Half-Bridge Configuration) Bo.H, WeiControl System Mengchen,Wei(Closed Loop DC-to-AC Conversion)MOSFET Driver MengchenAnalog-to-Digital Conversion Mengchen
Design Hardware Interfacing MengchenPE Inverter Bo.HPower Supply GroupMicrocontroller System MengchenFeedback Circuit MengchenDigital Voltage Regulator MengchenMOSFET Driver MengchenProtection GroupSoftware (User Interface) Bo.HSoftware (ZigBee Communication) WeiSoftware (PE Controller) Mengchen
Implementation PCB Schematic (Microcontroller Board) MengchenPCB Layout (Microcontroller Board) Mengchen
Simulations and PE Inverter in PSCAD Bo.HModeling Feedback Circuit in MultiSIM MengchenPrototyping PCB (Microcontroller Board) Mengchen
Breadboard (PE Inverter) GroupBreadboard (Feedback Circuit) MengchenBreadboard (MOSFET Driver) Mengchen
Testing Software Sample Files GroupMicrocontroller Board with Software Code MengchenPE Controller Board Breadboard GroupInterfacing GroupFinal Operation Testing Group
iii
Table 2 contains each chapter of the report along with its respective author(s). Editing of the
entire document was performed by the entire design team.
Table 2: Division of Labour for the Report
Report Chapter Report Section Report Subsection Written byAbstract Bo.HAcknowledgments Bo.HContributions Bo.H, MengchenNomenclature GroupIntroduction Wei
PE Inverter Bo.HBackground ZigBee Wireless Mengchen
ProtocolSpecifications Bo.H, Mengchen
PE Inverter Bo.HLow Pass Filter Bo.H
PE Controller PE Controller Board MengchenHardware Design Board Design Interfacingand Simulation MOSFET Driver Mengchen
Feedback Circuit MengchenMicrocontroller MengchenBoard DesignDevelopment WeiEnvironment
Software Design Common Software MengchenCoordinator Bo.H, WeiEnd Device Mengchen
Prototyping Prototyping Mengchenand Testing Testing Bo.H, MengchenFuture Work GroupConclusion MengchenBudget MengchenGANTT Chart Bo.H
iv
Table of Contents
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Nomenclature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1 Objective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3 Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.1 PE Inverter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2 ZigBee Wireless Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53.1 Specification Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53.2 Wireless Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53.3 Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.4 User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.5 Power Electronic Converter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.6 Supply Voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.7 PE Inverter Output Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4 Hardware Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74.1 PE Controller Board Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
4.1.1 PE Inverter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74.1.2 Low Pass Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104.1.3 PE Controller Board Interfacing . . . . . . . . . . . . . . . . . . . . . . . 114.1.4 MOSFET Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.1.5 Feedback Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2 Microcontroller Board Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164.2.1 ZigBee Wireless Module . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.2.2 Power Supply with Scaling Circuit . . . . . . . . . . . . . . . . . . . . . . 17
v
4.2.3 Programming Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.2.4 Status LED and Software . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.2.5 Off-board Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.2.6 Decoupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.2.7 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5 Software Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225.1 Development Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225.2 Common Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.2.1 LED Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225.2.2 EEPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235.2.3 ZigBee Packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.3 Coordinator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265.3.1 Coordinator Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . 275.3.2 Coordinator PC Communication . . . . . . . . . . . . . . . . . . . . . . . 275.3.3 User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275.3.4 Coordinator ZigBee Communication . . . . . . . . . . . . . . . . . . . . . 28
5.4 End Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295.4.1 End Device ZigBee Communication . . . . . . . . . . . . . . . . . . . . . 295.4.2 End Device PE Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6 Prototyping and Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326.1 Prototyping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.1.1 Breadboard PE Inverter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326.1.2 Breadboard MOSFET Driver . . . . . . . . . . . . . . . . . . . . . . . . . 336.1.3 Breadboard Feedback Circuit . . . . . . . . . . . . . . . . . . . . . . . . 336.1.4 Microcontroller PCB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
6.2 Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356.2.1 Interfacing Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366.2.2 User Interface Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396.2.3 PE Inverter Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396.2.4 Sinusoidal Output Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477.1 Resources Required for Project Completion . . . . . . . . . . . . . . . . . . . . . 477.2 Design Improvements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Appendix A Source Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Appendix B SVN Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Appendix C Budget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Appendix D GANTT Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
VITA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
vi
List of Figures
1.1 Block diagram of the wireless control PE converter design . . . . . . . . . . . . . 12.1 Single-phase half-bridge inverter . . . . . . . . . . . . . . . . . . . . . . . . . . . 34.1 Block diagram of the PE controller board design . . . . . . . . . . . . . . . . . . . 74.2 Simulation circuit designed with the PSCAD software suite . . . . . . . . . . . . . 84.3 PSCAD simulation output without a low pass filter . . . . . . . . . . . . . . . . . 94.4 An example of SPWM used for PE conversion . . . . . . . . . . . . . . . . . . . . 104.5 Low-pass RC filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104.6 PSCAD simulation of a sinusoidal output with a low pass filter . . . . . . . . . . . 114.7 MOSFET driver design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124.8 2.49V regulator design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144.9 Reference resistors for converting the AC voltage down to 2.4V inside the feedback
circuit design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144.10 Ideal feedback circuit design without considering the DC offset . . . . . . . . . . . 154.11 Vout and Vin in the feedback circuit without considering the DC offset from the
MultiSIM simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154.12 Feedback circuit design with a 1.2V DC offset . . . . . . . . . . . . . . . . . . . . 164.13 Vout and Vin in the feedback circuit with a 1.2V DC offset from the MultiSIM
simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164.14 Microcontroller module and reset design . . . . . . . . . . . . . . . . . . . . . . . 174.15 Power supply design in the microcontroller board . . . . . . . . . . . . . . . . . . 184.16 Power scaling circuit design in the microcontroller board . . . . . . . . . . . . . . 184.17 The software write protect (SWP) connection is shown on the left and the chip select
circuit is shown on the right. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.18 The reset pin connection and debouncing circuit is displayed on the left and the
MISO switch is on the right. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.19 Status LED design in the microcontroller board . . . . . . . . . . . . . . . . . . . 204.20 Off-board connections for the microcontroller board . . . . . . . . . . . . . . . . . 204.21 Decoupling circuit for the wireless module . . . . . . . . . . . . . . . . . . . . . . 214.22 EEPROM circuit and connections . . . . . . . . . . . . . . . . . . . . . . . . . . 215.1 Flow chart showing the EEPROM write operation . . . . . . . . . . . . . . . . . . 245.2 Flow chart showing the EEPROM read operation . . . . . . . . . . . . . . . . . . 255.3 High level ZigBee data packet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265.4 Coordinator ZigBee command processing flow chart . . . . . . . . . . . . . . . . 295.5 End Device ZigBee command processing flow chart . . . . . . . . . . . . . . . . . 306.1 Breadboard PE inverter design . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326.2 Breadboard MOSFET driver design . . . . . . . . . . . . . . . . . . . . . . . . . 336.3 Breadboard feedback circuit design . . . . . . . . . . . . . . . . . . . . . . . . . . 346.4 Microcontroller PCB top side with no components . . . . . . . . . . . . . . . . . 346.5 Microcontroller PCB bottom side with no components . . . . . . . . . . . . . . . 35
vii
6.6 Microcontroller PCB with all the components . . . . . . . . . . . . . . . . . . . . 356.7 PE controller boards before connecting them together. . . . . . . . . . . . . . . . . 366.8 Microcontroller board with the oscilloscope and UART cable connected on the left
and the PE controller board with all of its components connected together on the right. 376.9 Interfacing between the PE controller board and microcontroller board . . . . . . . 376.10 Full test setup with the microcontroller board connected to the PE controller bread-
board and the oscilloscope monitoring the output of the PE inverter board. . . . . . 386.11 Measuring the PWM signal directly from the microcontroller board on the oscillo-
scope. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406.12 Close up image of the PWM signal on the oscilloscope while measuring the fre-
quency of one full period. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406.13 Measuring the output voltage of the PE inverter before the scaling circuit. . . . . . 416.14 Measuring the frequency of the PE inverter output before the scaling circuit. . . . . 416.15 Output waveform of the scaling circuit for the ADC input of the microcontroller . . 426.16 Modified PE inverter circuit after the trouble with the scaling circuit. . . . . . . . . 436.17 ADC feedback scaling circuit output after the scaling circuit modifications. . . . . 436.18 PE inverter output waveform after correcting the sinusoidal duty cycle values. . . . 446.19 Voltage output of the scaling circuit after the PE inverter DC power supply failed. . 456.20 Output of the PE inverter before the scaling circuit after the DC power supply failed. 45D.1 GANTT Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
viii
List of Tables
1 Milestones, Task List, and Division of Labour . . . . . . . . . . . . . . . . . . . . iii2 Division of Labour for the Report . . . . . . . . . . . . . . . . . . . . . . . . . . iv2.1 Wireless Protocol Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43.1 Qualitative specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53.2 Quantitative specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5C.1 Final Report Budget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
ix
Nomenclature
AC Alternating Current
ADC Analog-to-Digital Converter
BJT Bipolar Junction Transistors
DC Direct Current
DIO Digital Input / Output
EEPROM Electrically Erasable Programmable Read-Only Memory
IC Integrated Circuit
IGBT Insulated Gate Bipolar Transistors
MISO Master In Slave Out
MOSFET Metal-Oxide-Semiconductor Field-Effect Transistors
TTL Transistor-Transistor Logic
OP-AMP An Operational Amplifier
PC Personal Computer
PCB Printed Circuit Board
PE Power Electronic
PWM Pulse Width Modulation
RMS Root Mean Square
SPWM Sinusoidal Pulse Width Modulation
SVN Subversion System
SWP Software Write Protection
UART Universal Asynchronous Receiver Transmitter
UPS Uninterruptable Power Supplies
USB Universal Serial Bus
x
Chapter 1: IntroductionThe purpose of this document is to outline the details behind the design, testing, and implemen-
tation of our ECE 4600 design project. A block diagram showing the entire design can be seen in
Figure 1.1 below.
Figure 1.1: Block diagram of the wireless control PE converter design
1.1 Objective
The objective of this project was to implement a wireless communication interface for the con-
trol of a power electronic device. Our group chose to use a power electronic inverter as the power
electronic device to control.
1.2 Problem
In industry, PE converters and inverters are often placed in harsh environments where it is dif-
ficult to run wires to the controlling station. These wires may also be subjected to a significant
amount of cross-talk from other wires. Therefore, our project’s goal was to design a system using
wireless technology to control the power electronic devices.
1.3 Scope
The project scope includes the ability to communicate with multiple power electronic converters
and/or inverters. The project was limited to the design of a wireless communication system for
1
power electronic converters and/or inverters. Additionally, to show that the project can be used for
power electronic systems, a simple power electronic inverter was included in the design. The project
scope did not include designing a new form of power electronic converter and/or inverter, nor did
include the design of a new type of wireless technology.
2
Chapter 2: BackgroundThe following section provides a brief technical background of power electronic inverter tech-
nology and the ZigBee wireless technology used in this design. Section 2.1 describes the power
electronic inverter that was included in the project’s design, however, the project is designed to be
compatible with many other power electronic conversion designs. Section 2.2 describes the ZigBee
wireless technology which has many advantages over other wireless technologies.
2.1 PE Inverter
This project used a single phase half bridge power electronic inverter as an example power
electronic converter to prove the wireless technology is effective for power electronic conversion.
This section will briefly describe the single phase half bridge power electronic inverter.
The power electronic inverter is used to convert DC to AC. The conversion is done by using
PWM on two semiconductor switches as shown in Figure 2.1. The PWM signal sent to switch ”S2”
is the inverted signal that is sent to ”S1” which ensures that only one switch is on at any given
time. If both switches were on at the same time a short circuit would occur between the positive
and negative terminals of the DC power supply. By controlling the PWM duty cycle, the output
waveform can be shaped into 60Hz sinusoid. This type of waveform was desired for this project
because it is the same type of waveform found in a household wall outlet. However, due to safety
concerns, the voltage level was limited 15V p− p.
Figure 2.1: Single-phase half-bridge inverter
The flow of current during the operation of the inverter is also illustrated in Figure 2.1. The red
arrows show the current flow when switch ”S1” is on and the green arrows show the flow of current
when switch ”S2” is on.
3
This type of power electronic conversion has several applications including vehicle power con-
verters, solar power converters, induction heating devices (which require much higher AC frequen-
cies), uninterruptable power supplies (UPS), and air conditioners which use variable frequency
drives.
2.2 ZigBee Wireless Protocol
Several different wireless standards were considered for this project such as Wi-Fi, Bluetooth
and ZigBee. Since it was desirable to have a long battery life and high data rates were not required,
ZigBee was chosen as the wireless standard. Table 2.1 [1] summarized the key differences between
wireless standards.
Table 2.1: Wireless Protocol Comparison
Wireless Data Range Operating Complexity Power DevicesModule Rate Range Frequency Consumption Connecting TimeZigBee 20, 40, 10-100 868 MHz Low Very low <30ms
and meters (Europe),250 900-928Kbits/s MHz (NA),
2.4 GHz(Worldwide)
Wi-Fi 54 50-100 2.4 and High High 3-5sMbits/s meters 5 GHz
Bluetooth 1 10 2.4 GHz High Medium >10sMbits/s meters
ZigBee has two different network topologies which includes a star topology and a tree topology.
In the star topology, there are two types of nodes: a coordinator and an end device. The coordinator
acts as a server to which all the end devicesl connect and relay data. For the tree topology, a third
router node is included. The router node allows the end devices to be placed at a further distance
from the coordinator and relay the information to and from the coordinator and the end devices. In
both network topologies,, the end device will only turn on its radio for short periods of time in order
to conserve power. Routers and coordinators are constantly listening for data from end devices.
4
Chapter 3: SpecificationsThe following chapter will outline in detail the specifications for the project. Section 3.1 con-
tains a brief summary of both the qualitative and quantitative specifications for the project. Sec-
tions 3.2 to 3.7 go over the specifications in detail and give a summary of how the specification was
either met or adjusted during the course of the project.
The specifications will describe the limitations and design constraints of the project. The specifi-
cations are broken down into several sections including the Semiconductor Switch, Wireless Module
and Microcontroller, MOSFET Driver, and Protection.
3.1 Specification Summary
Table 3.1 and Table 3.2 outline the qualitative and quantitative specifications for the project,
which were modified from the original project proposal after additional research was done.
Table 3.1: Qualitative specifications
Specification Number DescriptionWireless Communication 1.1 The design must incorporate a wireless technol-
ogy to send the power electronic control signals.Power Supply 1.2 The design must be powered from a battery.User Interface 1.3 The design must be able to communicate informa-
tion to a user.Power Electronic Converter 1.4 The design must be able to control a power elec-
tronic converter/inverter.
Table 3.2: Quantitative specifications
Specification Number ValueSupply Voltage 2.1 9V DC
PE Inverter Output Frequency 2.2 60 Hz
3.2 Wireless Communication
The design must use one form of wireless communication to control the PE electronic converter.
The wireless communication should use one of the following wireless protocols:
1. ZigBee
2. Wifi
3. Bluetooth
5
Additionally, the wireless server portion of the communication must be able to support multi-
ple client devices simultaneously and be able to keep track of which device is being accessed or
controlled.
3.3 Power Supply
The power supply must be powered from a battery. This will allow the device to be placed in
harsh environments where it is not possible to run wires for power. The battery supply must be able
to supply all the circuitry without a lot of additional components to reduce the device complexity.
3.4 User Interface
The design must have a user interface where the user can control the connected devices and the
power electronic components of the connected devices. The user interface should be intuitive and
provide relevant information to the user such as signal strength and status of the connected devices.
3.5 Power Electronic Converter
The design must include at least one form of power electronic converter to show that the design
does indeed control the power electronic converter. PWM signals must be available to the power
electronic converter, and feedback inputs must be available to make a closed loop control system
for the conversion.
3.6 Supply Voltage
The supply voltage for the digital electronics should be 9V to minimize the number of additional
components that are required for the design. It is generally difficult to find a MOSFET driver
chip that can operate on voltage level less than 9V and so in order to avoid using switching boost
regulators, the battery voltage must be selected at least 9V .
3.7 PE Inverter Output Frequency
The PE inverter circuit should be able to output a frequency of 60Hz. It was chosen to be 60Hz
because this is the most common frequency used in household equipment.
6
Chapter 4: Hardware DesignThis chapter outlines the design processes and decisions that were made during the course of the
project with respect to the hardware design. This chapter also contains the simulation configurations
and results that were used in order to obtain the final hardware design.
It was decided to split the design into two separate components: a microcontroller board and a
PE controller board. Splitting the design allows the design for the wireless controller to be more
generic. If a different PE controller was required, a different PE controller could easily be designed
and connected to the microcontroller board without a significant amount of design work. However,
for this design, we have chosen to build the PE controller module as a single phase half bridge
inverter configuration as described in Chapter 2.1.
4.1 PE Controller Board Design
The PE controller board includes three major sections: the PE inverter switches, MOSFET
driver and feedback circuit. The PE controller board will connect to the microcontroller board
through the microcontroller interface as show in the Figure 4.1. The MOSFET driver will control
the IGBTs and the feedback circuit will scale the output waveform for the microcontroller.
Figure 4.1: Block diagram of the PE controller board design
4.1.1 PE Inverter
Single phase half bridge inverter configurations require two semiconductor switches. There are
several different options available for semiconductor switches such as BJTs, IGBTs, MOSFETs, and
Thyristors. For this design, IGBTs were chosen to be used since they have lower switching loses
than other devices and so will generate less heat under heavier load. This will allow us to focus
7
more of our attention toward the design of the microcontroller board. IGBTs are three-terminal
power semiconductor devices commonly used in power applications such as electronic switches.
IGBTs combine high efficiency and fast switching performance in comparison with other switching
devices. IGBTs have lower conduction losses and a lower on-state voltage drop which is ideal for
inverting DC to AC.
Figure 4.2 shows the simulation circuit that we designed using the PSCAD software suite.
PSCAD allowed us to quickly come up with a design and then simulate it to verify that they design
meets the requirements that we selected initially.
Figure 4.2: Simulation circuit designed with the PSCAD software suite
After testing a few different configurations of the design, we found that if we use a 5KHz carrier
signal to generate a PWM signal, we are able to achieve an design that is simple and produces the
required output. Initially we had not incorporated a filter into our design and the output of the
system produced a output that appeared to be square waveform which can be seen in Figure 4.3.
We selected two 470uF capacitors to filter the low order harmonics from being injected back
into the power supply. The voltage rating of the two capacitors was selected such that they both can
each sustain 50V which will allow the input to handle a maximum of 100V . For testing, we have
selected to use a 12V DC power supply, so each capacitor will only have to carry a maximum of 6V
but in the case of voltage spiking or a problem with the supply, the capacitors will not be damaged
if the supply does not exceed 100V .
We selected both IGBTs to handle a maximum of 600V break down voltage between collector
and emitter and a maximum collector current 14A. However, these devices were not specifically
selected to have a much higher rating than was required but for their cost factor. The IGBTs we
8
Figure 4.3: PSCAD simulation output without a low pass filter
cheaper than other devices and still exceeded the desired performance ratings.
The PSCAD software allows selected three different types of inverters available: a square wave
PWM, a modified sine wave, and a sine wave PWM.
The square wave PWM inverter is a basic type of inverter. It can output alternating square
waves with same pulse widths. The trouble is that this inverter is not efficient because it contain
larger harmonics which reduce the quality of the signal.
The next inverter is the modified sine wave inverter which generates a wave form more like a
square wave. It will stay at zero voltage for a set period of time before going high or low. Since
the wave is not a pure sine wave, and harmonics could cause increasing current flow that end with
system failure. So this inverter works for some of the equipment which has less sensitivity.
The third type of inverter is a sine wave PWM which was chosen for this design as shown in
Figure 4.4. The sine wave PWM works by using a method called sinusoidal pulse width modulation
(SPWM). SPWM decreases the total harmonic distortion of load current. SPWM can generate a
pure sine wave with some filtering to smooth the ouput voltage curve. Control of the switches
for SPWM requires that a reference signal and a carrier signal both be present. By comparing the
difference between the two input signals, a different pulse width is generated which will feed into
the switches of the inverter. In our design, the reference signal is a sinusoid wave form which has
the same frequency as fundamental frequency of 60Hz. Carrier signal controls switching frequency
which has a triangular waveform [2].
The third type of inverter is a sine wave PWM which was chosen for this design as shown in
Figure 4.4. The sine wave PWM works by using a method called sinusoidal pulse width modulation
(SPWM). SPWM decreases the total harmonic distortion of load current. SPWM can generate a
pure sine wave with some filtering to smooth the ouput voltage curve. Control of the switches
for SPWM requires that a reference signal and a carrier signal both be present. By comparing the
difference between the two input signals, a different pulse width is generated which will feed into
the switches of the inverter. In our design, the reference signal is a sinusoid wave form which has
the same frequency as fundamental frequency of 60Hz. Carrier signal controls switching frequency
which has a triangular waveform [2].
9
Figure 4.4: An example of SPWM used for PE conversion
4.1.2 Low Pass Filter
The PWM output voltage has fundamental frequency which is the same as the reference signal
that is 60Hz. Since the magnitudes of some harmonics are quite large, we designed a RC low pass
filter to remove harmonics at high frequency in order to solve this problem. The Equation 4.1 shown
below:
fc =1
2πRC(4.1)
The cut-off frequency we set at 60Hz. Resistor R is 120Ω, capacitor C is 22uF . The circuit of
low pass filter is shown in Figure 4.5 below:
Figure 4.5: Low-pass RC filter
From the Figure 4.6 we can see that, the AC load voltage output waveform after adding the
low-pass filter is a sine wave. This is what we expect output once we generate the PWM signal by
using wireless modules and MOSFET driver.
10
Figure 4.6: PSCAD simulation of a sinusoidal output with a low pass filter
4.1.3 PE Controller Board Interfacing
Since we chose a microcontroller which is equipped with the means of generating PWM signals,
no additional hardware will be required to perform the PWM signal generation. The microcontroller
output can then be directly fed into the MOSFET driver PWM input. The MOSFET driver will then
take the microcontroller PWM signal and generate two opposition polarity pulse signals that will
be sent to the IGBTs to create the desired output waveform. In order to monitor the output voltage,
we designed a scaling circuit that reduces PE inverter output voltage down to the range that the
microcontroller’s ADC input can accept. We called this circuit the feedback circuit because it will
be used as a feedback in the software control system for the PE inverter output control system.
The voltage range of the microcontroller analog to digital converter is 0-2.4V DC. Refer back to
Figure 4.1 to see the whole PE controller interfacing overview.
4.1.4 MOSFET Driver
A MOSFET driver capable of driving both the high and low sides of a single phase half bridge
inverter design was selected since we are using two separate IGBTs as shown in Figure 4.7. The
MOSFET driver has already been designed to adjust the timing of the on/off pulses so that both
switches are not on at the same time for any given moment. If two MOSFET drivers were selected
instead of the single MOSFET driver with this added feature, the output PWM signals would be
difficult to setup so that we could get the same functionality. It is beneficial to use N-channel
MOSFETs as the high side switches as well as the low side switches because they have a lower
’ON/OFF’ resistance and therefore less power loss. In order to achieve the extra voltage necessary
to switch on the device, a MOSFET driver is used with a bootstrap capacitor. The MOSFET driver
operates from a signal input given from the microcontroller and takes its power from the battery
voltage supply that the system uses. The power for the driver is supplied from the low voltage
source because the power consumed to drive the gate is small. When the driver is given the signal
to turn on the high side device, the gate of the MOSFET has an extra boost in charge from the
bootstrap capacitor [3].
For the MOSFET driver, we chose the IR2302 device from International Rectifier. The device
was chosen because the footprint fit in a breadboard (easy for prototyping), and the voltage supply
11
Figure 4.7: MOSFET driver design
required for the device was less than battery that we selected. The device accepts two different
signals from the microcontroller: the PWM signal to the IN pin and the shutdown (on/off) SD pin.
If the MOSFET driver receives a logic high signal, the HO pin will be driven high and if a logic low
is detected, the LO pin is driven high. The COM pin will be connected to ground. The bootstrap
capacitor and diode are connected as shown in Figure 4.7 and their values are calculated based on
the equations provided from the International Rectifiers AN-978 application note [4]. Using the
Equation 4.2 for calculating the minimum bootstrap capacitor is shown below:
CBOOT ≥2[2Qg +
Iqbs(max)f +Qis +
ICbs(leak)f ]
Vcc −Vf −VLS −VMin(4.2)
Where:
Qg = Gate charge of high-side FET = 53nC
f = frequency of operation = 60Hz
ICbs(leak) = bootstrap capacitor leakage current = (not considered as values were not avariable)
Iqbs(max) = Maximum VBS quiescent current = (not considered as values were not avariable)
Vcc = Logic section voltage source = 9V
Vf = Forward voltage drop across the bootstrap diode = 1V
VLS = Voltage drop across the low-side FET or load = 2.5V
VMin = Minimum voltage between VB and VS = 3.75V
Qis = level shift charge required per cycle (typically 5nC for 500V/600V MGDs and 20nC for
1200V MGDs) = 20nC
We also can find the CBOOTmin by using the Equation 4.3 and 4.4.
CBOOTmin =QTOT
∆VBS(4.3)
=Qg +Qis +(ILK GE + Iqbs + ILK + ILK DIODE + ILK CAP + IDS−)×THON
Vcc −Vf −VLS −VMin(4.4)
Where
ILK DIODE = 110uA
12
ILK GE = 100nA
IDS− = 150uA
ILK CAP = 0 (neglected for ceramic capacitor)
THON = 60us
Since we were unable to find some of the values for the equation, we neglected them and chose
a value much larger than was calculated. The calculated CBOOTmin was 50nF , so we chose a value
of 0.68uF for the boot strap capacitor. We chose to use a 0.1uF for the decoupling capacitor of
the device because we are not dealing with very high frequency signals, no additional decoupling
or decoupling calculations were required. For the bootstrap diode, there was only a couple of
restrictions: a fast reverse recovery time and a low forward voltage drop. Therefore we selected a
1N4448,133 for the bootstrap diode.
The switching speed of the output IGBT can be controlled by properly sizing the resistors RG
which limits the turn-on and turn-off gate current. From the IR2302 MOSFET driver data sheet and
the IGBT’s datasheet which we picked in Section 4.1, we obtained the value of CRESo f f = 26pF ,
and threshold voltage of the IGBT is Vth = 3.75V , and also dVdt = 5V/ns. Since the output resistance
of the gate driver RDRn was not available, so we selected the RGo f f much smaller than the calculated
value from Equation 4.5 [5]. We calculated RGo f f ≤ 29Ω, so we chose 10Ω.
RGo f f ≤Vth
CRESo f f × dVdt
−RDRn (4.5)
4.1.5 Feedback Circuit
The feedback circuit is designed with the specification that the output analog signal will be in
the voltage range of the microcontroller analog to digital converter. This is very important because
if the signal is not reduced to microcontroller levels, the possibility exists that the microcontroller
board may be damaged. The feedback circuit will monitor the output waveform of the PE controller
to create a close loop system for the microcontroller. The close loop system will allow the system
to be optimized in software and reduce the hardware complexity.
In order to use the regulator LM317L as shown in Figure 4.8 [6], we selected the input bypass
capacitor as the recommended values. The bypass capacitors were selected as 0.1uF at the input
voltage side and 1uF on the output voltage side. Output voltage is calculated using the Equation 4.6.
We designed the output voltage for the regulator as 2.49V to be able to utilize the entire ADC input
voltage range. Therefore, we calculated the value of the resistors R2, R1 both to be 470Ω.
VO =Vre f (1+R2
R1) (4.6)
Where Vre f ≈ 1.25V .
Since the power electronic inverter output waveform is sinusoidal from a negative output voltage
to a positive output voltage, we were required to design a scaling circuit that biased the voltage to
1.2V and then scaled the output to a value between 0V and 2.4V . We also decided to use voltage
follower which was built using an OP-AMP MCP6002-I/P to reduce the output impedance of the
13
Figure 4.8: 2.49V regulator design
scaling circuit. We then used the circuit in Figure 4.9 and the Equation 4.7 and 4.8 to find the values
of the resistances. We calculated the value of Rin = 330kΩ, Rre f = 100kΩ, and R= 68kΩ. To ensure
that the calculations were correct, we used MultiSIM to simulate the output of the scaling circuit.
We use a 7VRMS at 60Hz AC signal as input voltage. Figure 4.10 shows the complete scaling circuit
design in MultiSIM and the output of the circuit is shown in Figure 4.11.
Figure 4.9: Reference resistors for converting the AC voltage down to 2.4Vinside the feedback circuit design
Vin
Vout=
Rin +RR
(4.7)
Vin −Vout
Rin=
Vout −Vre f
Rre f(4.8)
14
Figure 4.10: Ideal feedback circuit design without considering the DC offset
Figure 4.11: Vout and Vin in the feedback circuit without considering the DCoffset from the MultiSIM simulation
During the testing phase, we found that the simulations did not match the test results exactly, so
we adjusted the resistances to correct the offsets found. We found the new values as Rin = 370kΩ,
Rre f = 100kΩ, and R = 100kΩ. Figure 4.12 shows the adjust MultiSIM circuit and Figure 4.13
shows the simulation result of the modified circuit.
15
Figure 4.12: Feedback circuit design with a 1.2V DC offset
Figure 4.13: Vout and Vin in the feedback circuit with a 1.2V DC offset fromthe MultiSIM simulation
4.2 Microcontroller Board Design
Our microcontroller board was design to be universal. It can be used as either a coordinator
node or a end device node. We were able to reduce the cost by having a single board design. The
following sections will detail the design of the microcontroller board.
16
4.2.1 ZigBee Wireless Module
The microcontroller itself is built into the wireless module which reduced the amount of design
work required for the board.
There were two options that were found for selecting a wireless microcontroller. The first option
was to purchase a ZigBee Evaluation Kit but the issue with purchasing a kit is that the cost of the
kit is over $300 and includes several additional controllers that are not required for this design. The
second option was to purchase a standalone wireless ZigBee module. The difficulty with selecting
the module is that it requires some additional design to supply the correct voltage and break out the
pins for connecting to the PE controller board. The ZigBee module was substantially cheaper at a
cost of approximately $17 per module. The module is already equipped with a built-in microcon-
troller and has very useful developer support available. Using the module also allows the PCB for
the microcontroller to be customized to contain a battery holder, EEPROM memory, status LEDs,
and off-board connections that are specific to our design.
Based on this JenNet ZigBee datasheet, we design the microcontroller board and selected the
components which will match the specification as in the manual JN5148-001 [7]. The wireless
module schematic can be seen in Figure 4.14.
Figure 4.14: Microcontroller module and reset design
4.2.2 Power Supply with Scaling Circuit
For the power supply part of the design, we decided to use a 9V battery to supply the power. A
9V battery was selected after researching information on the MOSFET driver portion of the design.
It is difficult to find a MOSFET driver that can be supplied by a voltage less than 9V .
We included an on/off switch and reverse polarity protection for the battery. The reverse polarity
protection is done with a fuse circuit, so a fuse would have to be replaced in the event of the power
being connected in reverse.
We selected a low voltage dropout regulator to supply the microcontroller power, it already
17
contained internal reverse current protection so no additional protection was added. A voltage
regulator was selected to reduce the 9V battery voltage down to the microcontroller operating levels
of 3.3V . The power supply circuit can be seen in Figure 4.15.
Figure 4.15: Power supply design in the microcontroller board
A voltage scaling circuit was also added to scale the battery voltage level to the ADC on the
microcontroller for battery level monitoring. This would allow the software to indicate to the user
when the battery level is low. The battery voltage scaling circuit can be seen in Figure 4.16
Figure 4.16: Power scaling circuit design in the microcontroller board
4.2.3 Programming Interface
A firmware programming interface was designed based on the details provided by the manufac-
turer [7]. For the programming interface, the manufacturer provided detailed specifications how to
setup the module for programming. The module contains two separate flash memories. We were
required to connect the chip selects for these together as shown on the right side of the image in
Figure 4.17. Additionally, it was required that the software write protect (SWP) pin be pulled high
to VCC as shown on the left in Figure 4.17.
18
Figure 4.17: The software write protect (SWP) connection is shown on the leftand the chip select circuit is shown on the right.
To force the device into programming mode two switches were required: a reset switch and a
switch connected to the MISO pin. A small debouncing circuit was designed for the reset switch
so that when the device is reset with the switch, it does not reset several times in the single press
potentially causing damage to the device’s memory. The reset switch and debouncing circuit can be
seen on the left in Figure 4.18 and the switch connected to the MISO pin can be seen on the right in
Figure 4.18
Figure 4.18: The reset pin connection and debouncing circuit is displayed on theleft and the MISO switch is on the right.
4.2.4 Status LED and Software
There are five status LEDs designed on the board. The power LED is directly connected to
the 3.3V supply to indicate that the power switch is in the on position. The other four LEDs are
software controlled and will be discussed further in Section 5.2.1. The circuit for the status LEDs
can be seen in Figure 4.19. To limit the current to the LEDs, we selected a resistance of 680Ω.
19
Figure 4.19: Status LED design in the microcontroller board
4.2.5 Off-board Connections
The ADC inputs and PWM outputs were routed to an off board connector to be used on the
PE controller board. Some of the unused digital input/outputs were also routed to the off board
connector so that they may be used to control the ICs on the PE controller board. Additionally, the
9V battery supply and ground is routed to the off board connection to the PE controller board.
Two UART ports were also designed. It was decided to use UART0 for debugging because this
port is used to flash the device with new software binaries. The UART1 port was then used to do
the user interface. The off board connections can be seen in Figure 4.20.
Figure 4.20: Off-board connections for the microcontroller board
4.2.6 Decoupling
Decoupling is generally required for high speed devices such as the wireless module to maintain
a constant supply voltage to the device. Since it was not know what type of decoupling was already
20
provided to the microcontroller inside the wireless module, we decided to include some basic de-
coupling starting with a 100nF capacitor and going down to 680pF . This ensures that the device
will not reset due to dipping in the supply voltage. The decoupling capacitor circuit can be seen in
Figure 4.21.
Figure 4.21: Decoupling circuit for the wireless module
4.2.7 Memory
An electrically erasable programmable read-only memory (EEPROM) was added to store ad-
ditional information for the microcontroller. Since we did not have a lot of additional information
that was required to be stored, we decided to include a small EEPROM that would only store the
device name. If in the future more memory was required, the chip could be replaced with a similar
chip since the footprint for the design is very common for EEPROM memories. A small decoupling
capacitor was added to the VCC input to the device and pull up resistors were added to both the SCL
and SDA pin. The pull up resistors are required for the I2C bus protocol. The EEPROM circuit and
connections can be seen in Figure 4.22
Figure 4.22: EEPROM circuit and connections
21
Chapter 5: Software DesignThis section details the software design portion of this project. Included in this section is a brief
description of the development environment used to design the software.
5.1 Development Environment
The project used a Jennic ZigBee wireless module as described in Section 4.2.1. Jennic provided
the Eclipse development environment ready to compile code for the wireless module. Jennic also
provided libraries and tools for debugging and flashing the wireless module. Since all of these tools
were provided, we decided to setup all the tools inside a virtual machine. The virtual machine
allowed us to distribute the required software tools to the group members.
In addition to the provided libraries, a template project was provided from Jennic for Eclipse
including source code and build configurations for the coordinator, router, and end device. Only
the coordinator and end device software was designed in this project due to time constraints, so the
router will not be discussed in the software design. More detail for the coordinator and end device
configurations will be provided in the following sections.
5.2 Common Software
The benefit of having the same hardware for all of the configurations is that most of the software
can be common to all the configurations. The common software will be described in this section.
5.2.1 LED Control
There are four LEDs that can be controlled by software. The LEDs were split up into two groups
which are activity (or status) LEDs and state LEDs.
The activity LEDs were designed so that a flag is set to indicate that there was activity for that
LED. A timer interrupted routine is called every 100ms to check if an activity LED flag has been
set, and if it is set, to turn the LED on. All other activity LEDs are turned off. This method makes it
easy for the calling software to make minimal LED on and off calls and allows the LEDs to stay on
for a long enough period for them to be seen. The activity LEDs were used for the EEPROM access
and ZigBee communication.
The state LEDs were designed to have the calling software control both the turning on and
turning off of the LED. The state LED was used for the PE converter on/off state.
22
5.2.2 EEPROM
The EEPROM software was developed to interface to the EEPROM chip that was included
on the microcontroller board. There are three public functions that are available to the rest of the
software which includes an initialization routine, a write operation, and a read operation.
The initialization routine configures the I2C bus for master mode and a bus speed of 100kHz,
which is the maximum speed that the EEPROM can be accessed.
The write operation allows writing to a specific memory location for any data size up to the
maximum size of the EEPROM. The algorithm first writes the device’s address with the start bit
and write bit set onto the bus to initialize the write. Then, the memory address is written to the bus
with the write bit set, followed by slave write operation. To determine if the byte was successfully
written to the device, the EEPROM requires that the device’s address be written to the device. If the
EEPROM responds with an acknowledgement, then the byte was written. Otherwise, the process
can be repeated to check again if the data has been successfully written. If there are more bytes
to write, the algorithm continues by writing the next memory address to the bus followed by the
next byte of data. When checking the acknowledgement for the final byte of data, the stop bit is
set to indicate to the EEPROM that no more data will be written. A flow chart illustrating the write
operation can be seen in Figure 5.1.
The read operation allows reading from a specific memory location for any data size up to the
maximum size of the EEPROM. The algorithm first writes the device’s address onto the bus with
the start bit and the write bit set. Then the memory address is written to the bus to initialize the
address pointer in the EEPROM. The device address is written to the bus again, but this time with
the read flag set. A slave read is then sent to the bus to read the byte of data. If there is another
byte to read, another read byte is sent to the bus to read the next byte of data. When the final byte is
sent, the stop bit is set to indicate that no more data will be read. A flow chart illustrating the read
operation can be seen in Figure 5.2.
23
Figure 5.1: Flow chart showing the EEPROM write operation
24
Figure 5.2: Flow chart showing the EEPROM read operation
25
5.2.3 ZigBee Packets
A simple packet was designed at a high level to handle the messaging between the coordinator
and the end devices. Since the low level ZigBee communication implemented in the Jennic libraries
already handles data packet integrity with checksums, this was not required at the higher level.
Therefore, only two different types of data are included in the high level packet, which includes a
command byte and the payload for the command. The design for the high level ZigBee data packet
can be seen in Figure 5.3.
Figure 5.3: High level ZigBee data packet
There is a separate command set for the coordinator and the end devices. The coordinator
commands are identified with a prefix SERVER and are as follows:
• SERVER GET DEVICE NAME
• SERVER SET DEVICE NAME
• SERVER START PE CONVERTER
• SERVER STOP PE CONVERTER
• SERVER REQUESTING POLL
• SERVER REQUESTING PE CONTROL
• SERVER SET PE CONTROL
The end device commands are identified with the prefix CLIENT and are listed as follows:
• CLIENT COMMAND DEVICE NAME
• CLIENT ACK POLL
• CLIENT SET DEVICE NAME SUCCESSFUL
• CLIENT SET DEVICE NAME FAILED
• CLIENT PE CONTROL STATE
5.3 Coordinator
This section will detail the specific software design for the coordinator node. The coordinators
role is to interface with the user and communicate the users requests to the connected end devices.
26
5.3.1 Coordinator Initialization
The initialization routine for the coordinator initializes the UART interface for the PC commu-
nication, the LEDs for displaying the ZigBee activity, and the data structure for the ZigBee com-
munication. Once all these routines have completed, the application passes control to the ZigBee
libraries that were provided by Jennic.
The UART interface initialization routine enables the UART interface on the UART1 port and
sets up an interrupt routine to trigger when a single data byte is received in the receive buffer. The
last step of the initialization routine is to display the default main menu to the user. The menus and
program flow are shown in more detail in Section 5.3.3.
In addition to accepting user commands, a routine is also setup to input a string of characters.
This routine is currently used only to set the connected end device’s name, however, it is generic so
that it could be used to capture other types of user input as required.
5.3.2 Coordinator PC Communication
The PC communication part of the coordinator is setup to be event driven. When data is received
from the user, the data is processed and a new menu is displayed, or a command is sent to one of
the end devices by using the ZigBee communication routines.
There are two special commands that are setup for the PC communication. The first command
is the ability to clear the user’s terminal screen and the second command is used to simulate a
backspace by first moving the cursor back one position, printing a space, and then moving back one
position again.
5.3.3 User Interface
This section will briefly overview the menu structure that the user will interact with when con-
nected to the coordinator via the UART interface. There are four menus available to the user: a
main menu, a list devices menu, a set device name menu, and a PE control menu. The main menu
is presented as the initial or default menu that is displayed to the user, which allows access to the
other three menus. The main menu is displayed below:
MAIN MENU
1. LIST DEVICES MENU
2. SET DEVICE NAME MENU
3. PE CONTROL MENU
The list devices menu was designed to list all of the connected end devices to the coordinator by
the end device’s name, followed by its signal strength obtained from the last received packet. The
signal strength is displayed in dBm and is calculated from the Link Quality Indication (LQI) from
the Jennic provided libraries.
27
The set device name menu was designed to list all of the connected end devices and by selecting
one of the devices from the list, update its device name. The devices are listed by their current
device name with a number starting from one. The number is used to select the device. Once the
device has been selected, the user interface enters a string input mode that will continue until the
user presses enter. The input mode restricts input up to the maximum device name length and also
restricts the type of input to alphanumeric text. If the device name is changed, the new device name
is sent to the end device and the end device updates its device name stored in memory.
The last menu that was designed was the PE control menu. This menu displays the end devices
by device name, followed by their PE enabled/disabled state. When the end device is selected, the
state is changed from either enabled to disabled or disabled to enabled.
5.3.4 Coordinator ZigBee Communication
The coordinator ZigBee communication portion of the software is event driven. There are two
types of events that can drive the ZigBee communication routines. The first event is from the PC
communication menus, which are explained further in Section 5.3.3, and the second, is by a data
receive event from the ZigBee communication.
There are three different types of data events that are processed on the Coordinator. These
events are the child (end device) join event, child leave event, and data packet event. Each event has
a separate routine to handle the different type of data.
The child join event first checks to see if this child is already listed in the list of devices con-
nected to the coordinator. It was found that if the end device resets without calling the child leave
event, it will still be in the list of connected devices, so routine prevents duplicate entries. If the de-
vice was not already in the list of connected devices, the device entry is cleared. A ZigBee message
is then sent to determine the device’s name. Finally, the event calls the PC communications display
menu routine to refresh the user interface.
The child leave event first checks to make sure that the device is in the list of devices and then
clears the entry. The PC communication display menu routine is called to refresh the user interface.
The data event routine starts by checking to make sure that the data packet contains at least one
byte to make sure that a command was included in the packet. Refer to Section 5.2.3 for more details
about the ZigBee data packets. The command is then processed by the server and the appropriate
action is taken. Figure 5.4 shows a flow chart for the coordinator command processing.
In addition to the command driven ZigBee communication on the coordinator, a periodic in-
terrupt is setup to poll the connected end devices to ensure that they are still connected to the
coordinator. If the device does not respond in a given amount of time, the device is automatically
disconnected from the coordinator and requires that the end device re-initialize a connection to the
coordinator to continue operation.
28
Figure 5.4: Coordinator ZigBee command processing flow chart
5.4 End Device
This section will describe the software that is specific to the end device. The software that is
specific to the end device is limited to the end device ZigBee communication handling and the PE
control hardware interface.
5.4.1 End Device ZigBee Communication
The end device handles the ZigBee communication using relatively the same method, but by
using the events specific to the end device. Unlike the coordinator, there are no server handling data
events. Therefore, the only event that the end device uses from the ZigBee communication is the
data event.
When a data event is received, the command byte is analyzed from the high level data packet.
If the command is one that the end device understands, the command is then processed and the end
device will respond to the coordinator with the result. A flow chart of the command handling can
be seen in Figure 5.5.
Additionally, when the end device is not actively communicating or performing any tasks, the
device has the ability to sleep for specified one second intervals. The sleep state is handled by the
Jennic libraries, which use a wake timer interrupt to wake the device back up after sleeping for one
second. The one second waking is done so that the end device can check with the coordinator to see
if any data events occurred while the device was sleeping. If there were data events, they could now
be handled or the device could resume sleeping for an additional second.
29
Figure 5.5: End Device ZigBee command processing flow chart
5.4.2 End Device PE Control
Each end device is equipped with three timer outputs that are used for PWM and three ADC
inputs that are designed for the feedback from the PE control. Additionally, there are several digital
inputs/outputs that are also available to the PE control circuitry. Currently there was only time to
implement the PWM signal to output the correct signal to generate a sinusoidal waveform.
The end device is in control of keeping the settings associated with the PE control stored in the
PE control section of the software. When the coordinator signals to the end device to enable the PE
control, the end device enables the PWM timer, disables the MOSFET driver shutdown signal, and
signals back to the coordinator that the PE control has been enabled.
The PWM timer is interrupt-driven and starts by sending a single timer period with the calcu-
lated duty cycle. A period of 5kHz was designed and obtained from PSCAD. In the current design,
the duty cycle is configured to generate a 60Hz sinusoidal waveform. At the end of the period,
the interrupt routine is called, the timer immediately sends the next timer period to the output and
then calculates the next duty cycle on/off percentage. It was important to have the interrupt perform
the timer operation first so that it minimizes the delay for generating the next period as the duty
cycle calculation takes time from the processor. During testing, we found that we had to offset the
calculate by 50us to account for the delay.
The duty cycle calculations were done using Excel because there was no math library currently
available with the microcontroller libraries. From Excel, a table was made with the duty cycle
calculations and transferred to the software. The software then uses the table to calculate the next
timer on/off period by converting the duty cycle to the number of counts the timer should be on and
the number of counts the timer should be off.
Due to limitations in time, the feedback portion obtained from the ADC was not yet imple-
mented. The design for the feedback was to give the microcontroller the ability to control the
30
voltage limits of the waveform and to provide feedback information to the user. The feedback infor-
mation was intended so that the user could see the waveform output without connecting any external
devices to the PE circuit.
Several other features were designed but not implemented due to time limitation. Control of the
frequency and type of waveform were also considered, but not yet implemented.
31
Chapter 6: Prototyping and TestingThis section will first describe the circuits and layouts used for testing, and then discuss the
test procedures that were performed. The prototyping section breaks up each section into their
individual parts to further explain each part. The test section will the outline the test performed
along with the results and conclusions of each test and any design/component changes.
6.1 Prototyping
The prototyping of the PE Inverter was done using a breadboard. Using a breadboard for the
power electronic design, allowed the setup to be easily changed during the prototyping phase to
make quick modifications to the circuit. Prototyping the wireless module involved purchasing a
development board from the manufacturer, which came at a large additional cost. Therefore, the
prototyping of the wireless module was modified to testing and prototyping our own PCB.
6.1.1 Breadboard PE Inverter
We set up our PE inverter on a breadboard as shown in Figure 6.1 using the device in Sec-
tion 4.1.1 with PSCAD. The two big components on the left are the capacitors and the two IGBTs
are on the right. The input DC positive and negative terminals are to be connected to the two red
wires on the left. The two green wires on the right side are the high side and low side output signals
from the MOSFET driver. There is a small resistor and capacitor at the bottom of the figure that is
used as a low pass filter. The output waveform will be sent to the purple wire in the bottom left of
the image.
Figure 6.1: Breadboard PE inverter design
32
6.1.2 Breadboard MOSFET Driver
From the design in Section 4.1.4, we built the MOSFET driver circuit as seen in Figure 6.2.
The PWM signal received from the microcontroller will go to the green wire on the left side of the
board. The purple wire on the left side is connected to the shutdown pin on the MOSFET driver.
The shutdown will be controlled by the microcontroller to tell the MOSFET driver to turn on/off
the MOSFET driver output. The high and low side outputs are the grey and blue wires respectively.
Finally, the yellow wire is connected to the output of the PE Inverter, which is the VS of the MOSFET
driver.
Figure 6.2: Breadboard MOSFET driver design
6.1.3 Breadboard Feedback Circuit
Lastly for the PE inverter, we have our feedback circuit that outputs a scaled output waveform to
the microcontroller on the green wire as shown in Figure 6.3. The red and white wire in the bottom
left of the image is the 9V battery supply and ground respectively from the microcontroller board.
Lastly, the orange wire on the right is the connected to the output of the PE Inverter.
33
Figure 6.3: Breadboard feedback circuit design
6.1.4 Microcontroller PCB
We used the PC software Altium to design the schematic and PCB layout for the microcontroller.
The design of the schematic can be seen in Section 4.2. The PCB design was sent to Advanced
Circuits in the USA, and manufactured. Advanced Circuits was used for the PCB manufacturing
because they have an affordable two-sided board discount for students. The top side of the PCB can
be seen in Figure 6.4 and the bottom side of the PCB can be seen in Figure 6.5. Once the PCB was
received from the manufacturer, we soldered the components that were selected onto the board. The
complete board including all the soldered components can be seen in Figure 6.6.
Figure 6.4: Microcontroller PCB top side with no components
34
Figure 6.5: Microcontroller PCB bottom side with no components
Figure 6.6: Microcontroller PCB with all the components
6.2 Testing
This section will explain all the testing performed on the prototyped breadboard design and PCB
design. The goal of these test was to verify that the specifications were satisfied and that the device
performs the functions that were intended in the design.
35
6.2.1 Interfacing Tests
After both the power electronics breadboard and the microcontroller PCB were setup, we con-
nected the two together using a flat ribbon cable. A USB to TTL (3.3V ) cable was used to connect
the microcontroller board to the computer. The cable was connected to UART0 which allowed the
device to be programmed. To program the board we used the supplied flash programmer tool pro-
vided by Jennic. After loading the binary files that were designed for both the coordinator and end
device, we verified that the devices turned on and gave the appropriate debug output. Figure 6.7
shows the two breadboard PE Inverter boards before connecting them together.
Figure 6.7: PE controller boards before connecting them together.
Figure 6.8 shows the microcontroller board and the PE controller board before they were con-
nected. At this point we connected an oscilloscope to the microcontroller board on the PWM output
to verify that when the PWM signal was turned on that the correct output would appear.
After we knew that we had the correct output from the microcontroller board, we connected the
PE controller breadboard design to the microcontroller with the ribbon cable. At this point we were
unable to find the correct ribbon cable with the right amount of pins and the breadboard design did
not have a header connect. This was not a problem for testing the board though. We connected
wires to the ribbon cable instead as seen in Figure 6.9.
Finally, Figure 6.10 shows the full test setup with the oscilloscope connected to the output
of the PE inverter. One thing we noticed when testing the output of the PWM signal from the
microcontroller was that when the PWM signal was turned off, the output of the pin was set high
(3.3V ). We thought that this might cause a problem because it will turn on the high side IGBT which
may cause the output to turn on fully. To prevent the system from having some undesirable results
when the device turns on or is connected to the PE inverter, we connected one of the digital outputs
of the microcontroller to the shutdown pin on the MOSFET driver. We then started the device with
36
Figure 6.8: Microcontroller board with the oscilloscope and UART cable con-nected on the left and the PE controller board with all of its components con-nected together on the right.
Figure 6.9: Interfacing between the PE controller board and microcontrollerboard
the shutdown turned on. When the end device required the use of the MOSFET driver, the shutdown
output could be turned off with software.
37
Figure 6.10: Full test setup with the microcontroller board connected to thePE controller breadboard and the oscilloscope monitoring the output of the PEinverter board.
38
6.2.2 User Interface Tests
To verify that the user interface specification was satisfied for the design, we started by testing
the user interface menus. The user interface was sent over the UART1 port on the microcontroller
board. We connected the USB to TTL cable to UART1 for this test and then observed the output
when the coordinator was turned on. We used Hyperterminal that comes prepackaged on Windows
XP to display the UART output. At first we noticed that the menus did not quite line up correctly as
we had intended on the screen, so we modified the text to output the correct number of spaces and
end of line characters. Next, we noticed that the new menu would appear just under the previous
menu but we wanted the screen to be cleared when the menu was changed. After some searching
around we found that there are special commands that can be sent over the UART connection to clear
the screen for VT100 compatible terminal emulators such as Hyperterminal. A list of these com-
mands can be found at http://ascii-table.com/ansi-escape-sequences-vt-100.php.
The basic menu design that we originally thought up was very simple but then after browsing
the menus a few times we realized that we could provide more information to the user. We decided
to also print out the last received signal strength in dBm and the PE control state.
Lastly, we found a problem that would occur when the end device was powered off. The problem
was that the device would still be listed in the menus. To overcome this issue, we implemented a
polling signal that would occur periodically every 10s to have the coordinator check to see if the
end device was still connected to the system. If the end device does not respond to the poll request,
it would automatically be removed from the list of connected devices and it would then have to
re-connect to the network.
6.2.3 PE Inverter Tests
To ensure that the PWM signal is correctly sent to the PE inverter board, we measured the output
of the microcontroller PWM output. Figure 6.11 shows a PWM signal on the oscilloscope measured
directly from the microcontroller board. Figure 6.12 shows a close up image of the oscilloscope
display showing the PWM signal while measure the frequency of the one period of the full duty
cycle range. It is difficult to see where the duty cycle is at a minimum so we approximated the
measurement which appeared to be 59.5Hz.
After connecting the PE inverter board to the microcontroller board, we observed the output
of the PE inverter when the PWM signal was turned on. At first we designed the algorithm for
the PWM to output a triangular waveform instead of a sinusoidal waveform. We did the triangular
waveform first because it is much easier to write an algorithm for a triangular waveform than a
sinusoidal waveform. The results are shown in Figure 6.13 for the triangular output when measuring
the output voltage peak to peak level. Figure 6.14 shows the same waveform but this time we are
measuring the period of the waveform. From the figures, we observed that the voltage was 9.04V
peak to peak and the frequency was about 54.3Hz.
39
Figure 6.11: Measuring the PWM signal directly from the microcontroller boardon the oscilloscope.
Figure 6.12: Close up image of the PWM signal on the oscilloscope while mea-suring the frequency of one full period.
40
Figure 6.13: Measuring the output voltage of the PE inverter before the scalingcircuit.
Figure 6.14: Measuring the frequency of the PE inverter output before the scal-ing circuit.
41
Now that we observed that we could generate a waveform on the output of the PE inverter, we
checked the output of the feedback and scaling circuit. We did not want to connect this circuit to the
microcontroller ADC input until we verified that it would not damage the microcontroller hardware.
Figure 6.15 shows the output of the scaling circuit. Since the high output of the scaling circuit was
approximately 2.52V (which exceeds the ADC input voltage peek of 2.4V ), we went back to the
design of the scaling circuit to try to reduce the voltage level.
Figure 6.15: Output waveform of the scaling circuit for the ADC input of themicrocontroller
We found that the problem with the original design of the scaling circuit for the feedback was
that we designed the limits to be exactly what we expected the limits to be. We changed the design
to exceed the limits by a small amount allowing room for maximum voltages exceeding the normal
expected values. This ensured that the voltage output of the scaling circuit would not exceed the
maximum voltage of 2.4V even under extreme conditions. Figure 6.16 shows a modified version of
the PE inverter circuit with the changes to the scaling circuit for the feedback.
After connecting the modified PE inverter circuit, we retested the output of the feedback scaling
circuit. Figure 6.17 shows the output after the modification. As seen in the figure, the maximum
voltage is 2.16V which is less than 2.4V showing that the design will be safe to connect to the
microcontroller ADC input.
42
Figure 6.16: Modified PE inverter circuit after the trouble with the scaling cir-cuit.
Figure 6.17: ADC feedback scaling circuit output after the scaling circuit mod-ifications.
43
6.2.4 Sinusoidal Output Tests
The next step to our testing for this project was to generate a 60Hz sinusoidal waveform since
we proved in the previous tests that we could generate a triangular waveform. We found that there
was no math functions available in the software to calculate the value of the trigonometric sine
function. This lead us to to a simpler method of generating a table of duty cycle values for one
period of a sine wave. Then in the software, using the table to generate the sinusoidal waveform.
We used Microsoft Excel to generate the table of values for the duty cycle of one period of the
sinusoidal waveform. The first attempt at generating the waveform resulting in getting the wrong
value for the frequency. Looking more deeply into the interrupt routine that was generating the dif-
ferent duty cycle values, we found that there were many calculations being done before attempting
to change to the new duty cycle value. This was causing a large delay in generating the next step of
the wave. We then moved the function call to start the next output to the beginning of the interrupt
routine to minimize the delay. Then, we did the calculations for the new wave position after new
output was started. Playing around with the values a bit we found that we could minimize the delay
to approximately 50us. Knowing that the delay was fixed, we modified the duty cycle table values
to incorporate this delay and were able to get a 60Hz waveform as can be seen in Figure 6.18.
Figure 6.18: PE inverter output waveform after correcting the sinusoidal dutycycle values.
When we went to measure the voltage peak to peak values of the output waveform again, we
realized that we were outputting a much higher voltage value. After the scaling circuit we were
getting a peak to peak voltage of 10.4V which is much higher than the expected 2.4V . This output
can be seen in Figure 6.19. We then measured the output of the PE inverter before the feedback
scaling circuit which was a peak to peak voltage of 103V . This was impossible to output a voltage
44
at this level if the input was only 12V , so we measured the input and saw that our DC power supply
for the PE inverter had failed and was now outputting a DC voltage of 120V . Figure 6.20 shows the
output of the PE inverter when the DC supply had failed and was provided 120V DC instead of the
expected 12V DC.
Figure 6.19: Voltage output of the scaling circuit after the PE inverter DC powersupply failed.
Figure 6.20: Output of the PE inverter before the scaling circuit after the DCpower supply failed.
45
We would like to note though that the failure of the DC supply for the PE inverter was most likely
due to the fact that we were not applying the minimum load to the supply and that the switching
circuitry inside the supply most likely failed as a result. Since we had originally designed most of
the components in the PE inverter for 120V , we found that none of the components appeared to
be damaged as a result of the failure. We had originally designed for 120V because if time had
permitted, we were planning to attempt to output a 120V , 60Hz waveform that could be used to
power a household device.
46
Chapter 7: Future WorkThe following section will discuss the future work and development that can be done for this
project. The first section will detail what is required to complete the project and the second section
will provide some information on the areas where the design may be improved.
7.1 Resources Required for Project Completion
Due to the lack of time and resources, our group was unable to complete the feedback section
of the PE control, so the output remains as an open loop system. We have provided a list of work
that would be required in order to complete the final portion of the project. The following work is
required:
• Setup and enable the analog to digital converter in the software
• Convert the analog to digital readings to actual voltages based on the scaling circuit
• Implement the software control feedback to limit the output waveform to the desired level
• Test using the software control system
7.2 Design Improvements
In addition to the work required to complete the project, our group identified some possible
areas for design improvements. We feel the following list would assist in improving the overall
system:
• Add a graphical user interface: One downfall to using a terminal user interface is that it is
difficult to display data to the user in a more modern design. If a graphical user interface was
designed, the output waveform from the end device could be transferred from the end device
to the user’s computer and displayed for the user.
• Test the design with different types of PE converters/inverters: There are more types of
PE converters and inverters other than the single phase half bridge inverter used in this design.
Many inverters require more than one PWM output to achieve the desired output waveform
but can deliver a output that is more desirable in a real life scenario.
• USB powered coordinator: For this design, we only included a battery source on the board.
Since the coordinator is connected to the PC by a USB cable, it would be possible to use the
USB to power the device.
47
• Power harvesting for the end devices: The end devices also currently are only powered
by a battery. The purpose of using a wireless device operated by battery is to put these
devices in places where it is often difficult or not possible to run wiring. If the devices are
in areas where there are other types of power, or conditions where power maybe harvested
through solar energy and/or other means, it would help extend the life of the device and reduce
maintenance costs.
• User configurable output: Currently the device is designed to only output one type of wave-
form without modifications to the software. The ability to be able to configure the devices
to output a variety of different types of waveforms including different frequencies and output
voltage levels would make the device more universal.
48
Chapter 8: ConclusionIn conclusion, we consider the project to be a partial success even though we were not able to
complete the implementation of the closed loop power electronic control system. We demonstrated
that we were able to generate a 60Hz sinusoidal waveform that was controlled over a wireless
communication interface. We have developed the software to allow multiple end devices to connect
to the coordinator and tested this scenario with a third PCB. We have designed the devices to operate
on only a 9V battery and provided the user with relevant information such as the signal strength in
dBm and the state of the connected PE converters. Finally, we have also given the ability through
the user interface to label the connected devices allowing the devices to be easily identified.
49
Appendix A: Source CodeSee the attached CD for the software listings.
50
Appendix B: SVN LogsSee the attached CD for the SVN logs.
51
Appendix C: BudgetTable C.1 lists all of the components used during the project including part numbers and cost.
Table C.1: Final Report Budget
DigiKey Part Number Description Unit Price Quantity Extended Price
Microcontroller Board x3 Components616-1045-1-ND MODULE
ZIGBEE PRO
CERM
ANTENNA
$16.83 3 $ 50.49
MCP6002-I/P-ND IC OPAMP
1.8V 1MHZ
DUAL 8-DIP
$0.39 3 $1.17
BH9V-PC-ND HOLDER
BATTERY 9V
PC MOUNT
$1.60 3 $4.80
24LC00-I/P-ND IC EEPROM
128BIT
400KHZ 8DIP
$0.32 3 $0.96
399-1249-1-ND CAP CER
0.1UF 50V 10%
X7R 1206
$0.11 3 $0.33
445-7534-1-ND CAP CER
0.1UF 50V 10%
X7R 0805
$0.11 6 $0.66
399-1158-1-ND CAP CER
10NF 50V 10%
X7R 0805
$0.11 3 $0.33
587-1353-1-ND CAP CER
10UF 25V Y5V
1206
$0.23 3 $0.69
399-3139-1-ND CAP CER
2.7UF 25V 10%
X5R 1206
$0.68 3 $2.04
Continued on Next Page. . .
52
Table C.1 Progress Report Budget - Continued
DigiKey Part Number Description Unit Price Quantity Extended Price
587-1282-1-ND CAP CER
0.47UF 16V
10% X7R 0805
$0.13 3 $0.39
311-1126-1-ND CAP CER
680PF 50V
10% X7R 0805
$0.11 3 $0.33
497-1492-5-ND IC REG LDO
3.3V .95A
TO220
$0.65 3 $1.95
F1221CT-ND FUSE FAST
125V 750MA
SMD
$2.54 3 $7.62
952-2270-ND SIL
VERTICAL PC
TAIL PIN
HEADER
$0.52 6 $3.12
609-3363-ND CONN
HEADER
12POS .100
STR 30AU
$0.42 3 $1.26
475-1407-1-ND LED CHIPLED
570NM
GREEN 1206
SMD
$0.13 15 $1.95
RMCF0805ZT0R00CT-ND RES 0.0 OHM
1/8W 0805
SMD
$0.03 12 $0.36
RMCF1206FT10K0CT-ND RES 10K OHM
1/4W 1% 1206
SMD
$0.07 6 $0.42
RMCF1206FT150KCT-ND RES 150K
OHM 1/4W 1%
1206 SMD
$0.07 3 $0.21
P18.0KFCT-ND RES 18.0K
OHM 1/4W 1%
1206 SMD
$0.11 3 $0.33
Continued on Next Page. . .
53
Table C.1 Progress Report Budget - Continued
DigiKey Part Number Description Unit Price Quantity Extended Price
P56.0KFCT-ND RES 56.0K
OHM 1/4W 1%
1206 SMD
$0.11 3 $0.33
P680FCT-ND RES 680 OHM
1/4W 1% 1206
SMD
$0.11 15 $1.65
568-5999-1-ND DIODE HIGH
SPEED
SWITCHING
SC-90
$0.42 3 $1.26
P8079SCT-ND SWITCH
TACTILE
SPST-NO
0.02A 15V
$0.33 6 $1.98
EG4914-ND SWITCH
TOGGLE SPST
.4VA
$3.79 3 $11.37
Manufacture
PCB
$33.00 3 $99.00
PE Controller Board - MOSFET Driver Design x2 ComponentsIR2302PBF-ND IC DVR HALF
BRIDGE 8-DIP
$3.69 2 $ 7.38
445-8359-ND CAP CER
0.68UF 50V
10% RADIAL
$0.47 2 $0.94
445-5258-ND CAP CER
0.1UF 50V 10%
RADIAL
$0.32 2 $0.64
568-7920-1-ND DIODE
SMALL SIG
100V 200MA
ALF2
$0.11 2 $0.22
A106017CT-ND RES 10.0 OHM
1W 5% AXIAL
$0.13 4 $0.52
Breadboard $7.00 2 $14.00
Continued on Next Page. . .
54
Table C.1 Progress Report Budget - Continued
DigiKey Part Number Description Unit Price Quantity Extended Price
PE Controller Board - Feedback Circuit Design x2 ComponentsMCP6002-I/P-ND IC OPAMP
1.8V 1MHZ
DUAL 8-DIP
$0.39 2 $0.78
296-17221-1-ND IC REG LDO
ADJ .1A TO-92
$0.41 2 $0.82
S100KCACT-ND RES MF 1/4W
100K OHM 1%
AXIAL
$0.15 4 $0.60
S473KCACT-ND RES MF 1/4W
470K OHM 1%
AXIAL
$0.16 2 $0.32
RNF14FTD470RCT-ND RES MF 1/4W
470 OHM 1%
AXIA
$0.16 4 $0.64
445-8552-ND CAP CER
10UF 25V 10%
RADIAL
$0.83 2 $1.66
445-8421-ND CAP CER
0.1UF 25V 10%
RADIAL
$0.32 2 $0.64
445-2857-ND CAP CER 1UF
25V 10%
RADIAL
$0.47 2 $0.94
PE Controller Board - PE Inverter x2 Components493-1110-ND CAP ALUM
470UF 50V
20% RADIAL
$0.71 4 $2.84
445-8471-ND CAP CER
22UF 25V
RADIAL
$0.98 2 $1.96
UB3C-120-ND RES AXIAL
120 OHM 1%
3W
$0.89 2 $1.78
Continued on Next Page. . .
55
Table C.1 Progress Report Budget - Continued
DigiKey Part Number Description Unit Price Quantity Extended Price
1026-STGF19NC60WD-CHP IGBT N-CHAN
7A 600V
TO-220FP
$1.11 4 $4.44
Extra Components for Testing2200HT-102-V-RC-ND INDUCTOR
TOROID
1000UH 15%
VERT
$2.50 1 $2.50
S68KCACT-ND RES MF 1/4W
68K OHM 1%
AXIAL
$0.15 1 $0.15
S330KCACT-ND RES MF 1/4W
330K OHM 1%
AXIAL
$0.15 1 $0.15
768-1015-ND CABLE USB
EMBD UART
3.3V .1”HDR
$21.73 1 $21.73
Additional Supplied Parts for OperationStands for PCB $0.00 12 $0.00
Screws for
Battery Holder
$0.00 9 $0.00
9V Batteries $0.00 3 $0.00
Wires $0.00 30 $0.00
15V DC Power
Supply
$0.00 1 $0.00
Flat Ribbon
Cable
$0.00 2 $0.00
Estimated taxes,
shipping and
handling
allowance
$40.69
Total Expenditures $301.34
56
Appendix D: GANTT Chart
Figure D.1: GANTT Chart
57
References[1] S. T. Group, “How does zigbee compare with other wireless standards?.” http://www.stg.
com/wireless/ZigBee_comp.html. Accessed: 30/10/2012.
[2] D. W. Hart, Power Electronics. The McGraw-Hill Companies, Inc, 2010.
[3] International IOR Rectifier, IR2302(S)& (PbF) HALF-BRIDGE DRIVER, pd60207 rev.a ed.
http://www.irf.com/product-info/datasheets/data/ir2302.pdf.
[4] International IOR Rectifier, Application Note AN-978 HV Floating MOS-Gate Driver ICs,
3/23/2007 ed. http://www.irf.com/technical-info/appnotes/an-978.pdf.
[5] International IOR Rectifier, Using Monolithic High Voltage Gate Drivers, dt04-04 ed.
http://www.irf.com/technical-info/designtp/dt04-4.pdf.
[6] TEXAS INSTRUMENTS, 3-TERMINAL ADJUSTABLE REGULATOR, slcs144d - july 2004
revised october 2011 ed. http://www.ti.com/lit/ds/symlink/lm317l.pdf.
[7] NXP Laboratories UK 2012, Data Sheet: JN5148-001 IEEE802.15.4 Wireless Microcontroller,
jn-ds-jn5148-001 1v8 ed.
58