A Cost-effective Microcontroller-based Iridium Satellite
Communication Architecture for a Remote Renewable Energy Source
by
Ujjwal Deep Dahal
Bachelor of Engineering (P.S.G. College of Technology)
Bharathiar University, 2002
A THESIS SUBMITTED IN PARTIAL FULFILMENT OF
THE REQUIREMENTS FOR THE DEGREE OF
Masters of Science in Engineering
In the Graduate Academic Unit of Electrical and Computer Engineering
Chair: Prof. Bruce G. Colpitts, Electrical and Computer Eng.
Supervisors: Prof. Brent R. Petersen, Electrical and Computer Eng.
Prof. Julian Meng, Electrical and Computer Eng.
Examining Board: Prof. Mary E. Kaye, Electrical and Computer Eng.
Prof. Balasubramanian Venkatesh, Electrical and Computer Eng.,
Ryerson University
External Examiner: Prof. Gerhard W. Dueck, Faculty of Computer Science
This thesis is accepted by the
Dean of Graduate Studies
THE UNIVERSITY OF NEW BRUNSWICK
August 21, 2008
©Ujjwal Deep Dahal, 2008
ii
DEDICATION
This thesis is dedicated to my parents.
iii
ABSTRACT
The Iridium Satellite System (ISS) is able to provide global communication. Distributed
Generation (DG) dispatchibility requires collection and transfer of data from the field as
well as monitoring and potentially remote control of the generators. Hence, this research
develops a low-cost architecture and studies the feasibility of utilizing the ISS, which has
Low Earth Orbit (LEO) satellites, with a 9601 Short Burst Data (SBD) transceiver for
data communications.
A cost-effective microcontroller-based Iridium SBD satellite communication architecture
is developed. Optimization of the telemetry data per SBD session is done to make the
system more cost effective. The system is tested and the end-to-end time delay aspect of
the data transmission is studied and recommendations drawn on the usability of the
developed communication system for Supervisory Control and Data Acquisition
(SCADA) for a Remote Renewable Energy Source (RRES) for its monitoring,
maintenance and dispatchability.
iv
ACKNOWLEDGEMENTS
My graduate study experience in UNB has been wonderful due to many people. Firstly, I
would like to thank and express my profound gratitude to my supervisors, Dr. Brent R.
Petersen and Dr. Julian Meng for giving me the opportunity to work with them. I would
like to thank them for their invaluable guidance, inspiration, and support throughout this
research work.
I would like to thank the Management of Bhutan Power Corporation Limited, Thimphu,
Bhutan, and the Board of Directors for the scholarship to pursue my graduate studies.
I would like to acknowledge and thank the Canadian Foundation for Innovation (CFI),
University of New Brunswick (UNB) and NSERC for the resources and finances for the
research.
I also would like to acknowledge the help, assistance and guidance given by the technical
staff and the encouraging and ever supportive administrative staff of the Electrical and
Computer Engineering Department. I would also like to thank all my friends for their
help and suggestions in all these two years.
I would like to thank my family back home for their love, support and encouragement
during my long absence from home.
v
Table of Contents
DEDICATION .................................................................................................................... ii
ABSTRACT ....................................................................................................................... iii
ACKNOWLEDGEMENTS ............................................................................................... iv
Table of Contents ................................................................................................................ v
List of Tables ................................................................................................................... viii
List of Figures .................................................................................................................... ix
Abbreviations ...................................................................................................................... x
1. Introduction ..................................................................................................................... 1 1.1 Literature Review................................................................................................ 3
1.2 Background ......................................................................................................... 4
1.2.1 Distributed Generation ................................................................................ 5
1.2.2 Iridium Satellite System .............................................................................. 5
1.2.3 PIC and CCS C ........................................................................................... 8
1.2.4 Non-Linear Programming ........................................................................... 9
1.3 Thesis Contribution ............................................................................................. 9
2. Low-Cost and Controlled SBD Communication System Architecture for Remote Renewable Energy Source ................................................................................................ 12
2.1 Requirement of a Low-Cost Communication System ...................................... 12
2.2 Communication Architecture for Remote Renewable Energy Source SCADA
Functions ....................................................................................................................... 13
2.3 Field Application Design .................................................................................. 15
2.3.1 Hardware Design of Field Application ..................................................... 16
2.3.2 Software Design for Field Application ..................................................... 17
2.4 Timing Requirements for Remote Renewable Energy Source SCADA
Functions ....................................................................................................................... 24
vi
2.5 Developed SBD Communication System’s Output .......................................... 25
2.5.1 Field Application Testing ......................................................................... 25
2.5.2 SBD Service’s Delay Time Analysis ........................................................ 28
2.6 Conclusion ........................................................................................................ 30
3. Effective Use of Limited Communication .................................................................... 31 3.1 Requirement of SBD Frame Optimization and Non Linear Programming for
Solution ......................................................................................................................... 31
3.2 Developing the Non Linear Program Problem ................................................. 33
3.2.1 Developing Decision Variables ................................................................ 33
3.2.2 Developing Constraints ............................................................................. 34
3.2.3 Developing Objective Function ................................................................ 43
3.3 Non-Linear Programming Implementation ....................................................... 45
3.3.1 Non-Linear Programming Solution in MATLAB® and PIC ..................... 46
4. Cost and Alternative System Comparison with Iridium SBD Service for RRES SCADA Functions ............................................................................................................ 51
4.1 Introduction ....................................................................................................... 51
4.2 Comparison of Various Communication Systems ............................................ 53
4.2.1 SBD Service of Iridium Satellite System .................................................. 53
4.2.2 Amateur Radio .......................................................................................... 54
4.2.3 Point-to-point Radios ................................................................................ 54
4.3 Cost Comparison ............................................................................................... 55
4.4 Conclusion ........................................................................................................ 56
5. Conclusion .................................................................................................................... 57 5.1 Contributions and Recommendations ............................................................... 57
5.2 Future Work ...................................................................................................... 58
vii
References ......................................................................................................................... 60
Appendix A ....................................................................................................................... 65 A.1 The 9601 SBD Transceiver Pin Configuration [14] ......................................... 65
A.2 The RS-232 Connection between the 9601 Transceiver and PIC8722 ............. 66
A3. The Power Tray Features and Specifications .................................................... 67
Appendix B ....................................................................................................................... 69 B.1 Field Application Design Code in the CCS C .................................................. 69
B.2 System Implemented ......................................................................................... 77
B.3 Additional Test Results and Explanations ........................................................ 77
Appendix C ....................................................................................................................... 79 C.1 MATLAB® Code for Exhaustive Search Algorithm to Solve the Non Linear
Programming................................................................................................................. 79
C2. MATLAB® Code for Non Linear Programming Solution with Built-in
Functions ....................................................................................................................... 83
Curriculum Vitae
viii
List of Tables
Table 2.1: Field Application design summary .................................................................. 21
Table 2.2: Mobile Originated message timings ................................................................ 29
Table 3.1: Optimization results ......................................................................................... 49
Table 4.1: Cost comparison .............................................................................................. 55
Figure B.1: Picture of the system implemented………………………………………….77
Figure B.2: Test result for Mobile Originated message transmission…………………...78
ix
List of Figures
Figure 1.1: Overall system communication link ................................................................. 2
Figure 1.2: SBD call routing [13] ....................................................................................... 7
Figure 1.3: PIC18F8722 prototype board layout ................................................................ 8
Figure 2.1: Architecture block diagram ............................................................................ 13
Figure 2.2: Hardware assembling block diagram ............................................................. 17
Figure 2.3: Field Application state diagram ..................................................................... 19
Figure 2.4: Power Data, Maintenance Data and Environmental Data frame .................... 22
Figure 2.5: EEPROM addresses for data and processes of Field Application .................. 23
Figure 2.6: Mobile Originated e-mail message received at Vendor Application ............. 27
Figure 2.7: Confirmation of Mobile-terminated message queued at ESS ........................ 27
Figure 2.8: Mobile-terminated message received at FA ................................................... 28
Figure 3.1: Turbine’s region of operation (Modeling the physical behavior of system) .. 38
Figure 3.2: Data byte constraint ........................................................................................ 41
Figure 3.3: Power Maintenance Environmental constraint with Inequality (3.5) ............. 42
Figure 3.4: Power Maintenance Environmental constraint with Inequality (3.6) ............. 42
Figure 3.5: Data byte and PME constraints ...................................................................... 43
Figure 3.6: Optimized solution graph ............................................................................... 48
Table A.1: 9601 SBD transceiver pin cconfiguration...………………..………………...65
Table A.2: Parameter values for RS-232 ports…………………………………………..67
Table A.3: Pin connection between 9601 SBD transceiver and the power tray…………68
x
Abbreviations
AM Amplitude Modulation
ATC AT Commands
AR Amateur Radio
CCS Custom Computer Services
CEP Circular Error Probable
DC Direct Current
DCE Data Communication Equipment
DG Distributed Generation
DGCS Distributed Generation Communication System
DISA Defense Information Systems Agency
DoD Department of Defense
DTE Data Terminal Equipment
ECC Energy Control Center
ECS ETC Communication Subsystem
EEPROM Electrically Erasable Programmable Read-Only Memory
ED Environmental Data
ESS Earth Terminal Controller SBD Subsystem
ETC Earth Terminal Controller
FA Field Application
FDMA Frequency Division Multiple Access
GSM Global System for Mobile communications
ICD In-Circuit-Debugger
IMEI International Mobile Equipment Identity
ISM Industrial, Scientific and Medical
ISS Iridium Satellite System
ISU Iridium Subscriber Unit
ITU International Telecommunication Union
LED Light Emitting Diode
LEO Low Earth Orbit
LOS Line-of-Sight
xi
MCU Microcontroller Unit
MD Maintenance Data
MOMSN MO Message Sequence Number
MO Mobile Originated
MT Mobile Terminated
MTMSN MT Message Sequence Number
NLP Non-Linear Programming
OPGW Optical Fiber Ground Wire
PC Personal Computer
PD Power Generation Data
PIC Programmable Interface Controller
PME Power Maintenance and Environmental
QPSK Quadrature Phase-Shift Keying
RI Ring Indicator
RM Radio Modem
RRES Remote Renewable Energy Source
SBD Short Burst Data
SEP SBD ETC Processor
SMPS Switch Mode Power Supply
SMS Short Messaging Service
SPI Serial Peripheral Interface
SPP SBD Post Processor
SCADA Supervisory Control and Data Acquisition
TDMA Time Division Multiple Access
UART Universal Asynchronous Receive Transmit
UTC Coordinated Universal Time
VA Vendor Application
xii
List of Symbols
Npg Number of Power Data (PD) sub-frames
Nmi Number of Maintenance Data (MD) sub-frames
Nei Number of Environmental Data (ED) sub-frames
a Parabolic constant
x Abscissa values
y Ordinates
h One of the coordinates of the vertex of a parabola
K One of the coordinates of the vertex of a parabola
K1 Quadratic constant in Inequality (3.4)
K2 Scaled offset in Inequality (3.4)
K3 Offset in Inequality (3.4)
K4 Offset scalar in Inequality (3.4)
A Objective function coefficient of Npg
B Objective function coefficient of Nmi
C Objective function coefficient of Nei
R Objective function
S Number of combination of the choices of Npg, Nmi and Nei
i Maximum value of sub-frames
1
Chapter 1
1. Introduction
To form a viable alternative to central generation of electricity, it is important that the DG
sources are integrated and dispatchable requiring DG sources to be monitored and
controlled using a communications infrastructure that is both cost-effective and
reliable [1]. The specifications of a DG Communication System (DGCS) often depend
on factors such as cost, telemetry requirements, control functions and feasibility of
various communication technologies.
The remoteness of some DG sites makes it impractical for common communication
technologies based on broadband copper and wireless to satisfy the DGCS requirements
in a cost-effective manner. More specifically, the availability of high-speed networking
depends on the installation of infrastructure when the DG generators are installed. When
not available, alternative communication strategies such as point-to-point wireless Radio
Modems (RMs) [1], cellular modems, or satellite modems (or combination thereof)
should be considered; for low data volumes, the Iridium-based systems may be less
expensive than the alternatives.
In extremely remote situations, or when a redundant system is required, a satellite modem
with low hardware cost and global coverage complements the requirement of remote
access to DG sites. Hence, the Iridium communication system with global access from
pole to pole competes well for the low-cost redundant system for data telemetry for low
data volumes. Since comparatively expensive in terms of data transmission, the thesis
2
first focuses to develop a cost-effective architecture and tests the capability of the Iridium
satellite modem. It then develops a smart software application with an optimization
algorithm for the data bytes and limits the data transmission to a “need to know” basis at
the Energy Control Center (ECC). To manage the smart application requirements, a
Programmable Interface Controller (PIC) microcontroller will be used to control the
satellite modem.
Some parameters to be monitored at the ECC from the DG sites include: voltage, current,
real and reactive power, power quality, harmonics, transients, flicker and connection/fault
status [2] as well as the Maintenance Data (MD) related to the field equipment and the
Environmental Data (ED). Hence, to meet the telemetry and control functions for the DG
sites, a data acquisition system at the DG site with an ISS would provide sufficient link
contingencies at times of a failure or when it is the only viable communication link. For
redundancy, the envisaged communication system link for the DG site to the ECC is in
Figure 1.1.
Figure 1.1: Overall system communication link
3
1.1 Literature Review
In 1987 Motorola engineers proposed the ISS concept; a constellation of simply
constructed LEO satellites that could be built, launched and replaced economically. In
the year 1998, Iridium LLC completed the constellation of 66 satellites with 100% launch
success [4]. In December 2000, a group of private investors led by Dan Colussy
organized and named the company Iridium after acquiring the operating assets of the
bankrupt Iridium LLC. Based in Bethesda, Maryland, U.S.A., Iridium LLC, a privately
held company provides global satellite voice and data communications solutions with
coverage of oceans, airways and even polar regions [5]. Globalstar is another LEO
satellite system which claims to cover all the land mass of the Earth with 44 active
satellites, though the services are not available at the poles as its orbit is inclined at 52
degrees.
With the deregulation of electricity markets, policies are available to facilitate
interconnection of electric grids and small DG systems. However, dispatchability and
reliability still present technical barriers for small DGs to play a significant role in the
open market [3]. The Iridium SBD transceivers were made available, targeting mainly
application development in the areas of field force automation and remote asset
tracking [4]. Hence, a suitable application specific communication system design for
monitoring of the DGs at the ECC with Iridium SBD transceivers could improve and
alleviate the problems of reliability of DG. Also, the system could be extended to make
the DGs dispatchable, depending on the cost benefit of dispatchability vis-à-vis the
investment and the running cost of the system. The solar-powered ocean observatory
4
using acoustics and 9522 Iridium transceivers has successfully transmitted more than 150
MB of data since its deployment in May 2004 [6]; it gives more assurance that the
conceived system would work making DG more reliable and dispatchable.
The general trend of electrical utilities around the world now has been towards
replacement of the ground wires on the high voltage lines with Optical Fiber Ground
Wire (OPGW) for communication and SCADA functions [31]. OPGW serving the
function of the ground wires for lightning protection on high voltage lines and at the
same time having multiple optical fibers for communication makes it an attractive
business opportunity as well as a reliable source of communication for SCADA functions
for the electrical utilities. A disadvantage of OPGW is that the information typically
propagates only at two thirds of the speed of light in optical fibers. Also, Marihart
indicates the communication by OPGW as one of the appropriate technologies for
SCADA functions for many electrical utilities [7]. However, in cases of DG formulated
with RRESs, the proposed low-cost ISS for data acquisition and communication for
monitoring and possible control under certain circumstances is felt to be a more suitable
and viable option. Also, this system could be used as a contingency communication
system in case of failure of the primary communication system, as the billing is per the
volume of data transferred.
1.2 Background
This section provides in brief, the background information and concepts related to this
thesis. First the concept of DG is introduced followed by the ISS. The basic architecture
5
of Iridium is introduced and specifically the SBD architecture is discussed in some detail.
Also, a brief introduction is given about the tools used for the architecture development
namely the PIC microcontroller, the Custom Computer Services (CCS) C compiler, and
the Non-Linear Programming (NLP) to solve the non-linear optimization problem.
1.2.1 Distributed Generation
DG is generally formulated using small modular electricity generators at sites close to the
customer load. Often based on renewable technologies (wind, solar, tides and fuel cells),
it has it own economic, social and environmental benefits as compared to central
generation. DG of power is becoming more common, mainly as a result of increased
demand of electricity as well as the requirement to reduce the impact in the environment
from traditional sources of power generation with fossil fuels and nuclear fuels [9]. With
the growth of DG sites, feeding the loads locally or it being interconnected with the
electric grids, a cost-effective monitoring and control system needs to be developed for it
to be reliable and also for receiving the maximum benefit from the value added services
given by the DG. Also, with increased DG trends, DG needs to be made dispatchable
where dispatchability means that the sources of electricity can be dispatched/provided at
the request of power grid operators, i.e. turned on or off on demand.
1.2.2 Iridium Satellite System
Iridium is a LEO satellite system at about 780 km from the Earth surface in 6 polar orbits
[29] [30]. It provides mobile satellite services for voice and data for hand-held personal
6
telephones and transceivers. Point-to-point communication at any location on the Earth
surface is made possible with the portable phones/modems connecting to the satellites
with inter-orbit and intra-orbit handoffs which in turn communicate to the Earth station
for routing to the destination [10].
SBD is one of the data services provided by Iridium, where an application can send and
receive SBD messages ranging from 1 to 1960 bytes (maximum) using small
transceivers. The 9601 SBD transceiver is one which is designed to support the SBD
service of Iridium. Frequency Division Multiple Access (FDMA) / Time division
Multiple Access (TDMA) is used as the channel access scheme and the system uses a
50 kbps data rate and Quadrature Phase-Shift Keying (QPSK) modulation format on an
8.28 ms time slot and 41.67 kHz-wide channels [11]. The L-band frequency range of
1616 to 1626.5 MHz (10.5 MHz of bandwidth) is used for up-link and down-link with
satellites and the Ka/K-band frequencies for inter-satellite communication. It has 240
channels of 41.67 kHz and approximately 2 kHz guard bands between channels. The
Iridium network has 80 simultaneous users per cell, in 2150 active cells for a total
network capacity of 172,000 simultaneous users [12].
Figure 2.1 shows the SBD system architecture and SBD call routing, where ETC means
the Earth Terminal Controller, ECS means ETC Communication Subsystem, SEP means
SBD ETC Preprocessor and SPP means SBD Post Processor. The various elements of
the SBD architecture consists of the remote Field Application (FA) which here is the
Iridium Subscriber Unit (ISU), the Iridium Satellite Constellation, the Earth Terminal
7
Controller SBD Subsystem (ESS) located at the Iridium gateway, the internet and the
Vendor Application (VA).
In setting up an SBD communication system, it is only possible to configure one type of
delivery method i.e. either ISU-ISU or ISU-e-mail [13], which is represented in Figure
1.3 with light and bold connecting lines, respectively. The communication system
developed in this thesis is the latter delivery type.
Figure 1.2: SBD call routing [13]
The ESS is responsible for storing and forwarding messages from the ISU to the VA and
storing messages from the VA to forward to the ISU. The ISU communicates with the
ESS via the Iridium satellite constellation. The interface between the VA and the ESS
8
uses standard internet mail protocols to send and receive messages. Mobile Terminated
(MT) messages are sent to the ESS using a common e-mail address, identifying the
specific ISU by encoding the unique ISU International Mobile Equipment Identity
(IMEI) in the subject line of the e-mail. The data message is transmitted as a binary
attachment with the e-mail. The Mobile Originated (MO) messages are delivered to a
specific e-mail address that is configured when the IMEI is provisioned.
1.2.3 PIC and CCS C
The PIC18F8722 Development Kit from CCS, Inc. is used for the microcontroller-based
architecture of the 9601 SBD transceiver. The development kit has a prototyping board
which has a PIC18F8722 connected to a potentiometer, a pushbutton, three Light
Emitting Diodes (LEDs), an RS-232 level converter connected to the C6/C7 Universal
Asynchronous Receive Transmit (UART) and the G1/G2 UART, and an In-Circuit-
Debugger (ICD) connector as shown in Figure 1.3. The CCS C Compiler is developed
by CCS, Inc. exclusively for the PIC® MCU (microcontroller unit). Hence, it is a good
optimized compiler for Microchip parts. The 16-bit compiler used for programming the
PIC8722 is named PCH.
Figure 1.3: PIC18F8722 prototype board layout
9
1.2.4 Non-Linear Programming
NLP is the process of solving a system of equalities and inequalities, collectively termed
constraints, over a set of unknown real variables, along with an objective function to be
maximized or minimized, where some of the constraints or the objective functions are
non-linear. In this thesis, the NLP problem is developed through the constraints and the
objective function. The constraints are then solved for the variables using NLP. An
exhaustive search algorithm and the built-in MATLAB® toolbox functions are used to
solve the NLP and the results are compared. The variables are then fed to the objective
function and the one which gives the maximum is taken as the optimized solution.
1.3 Thesis Contribution
The major contributions of this thesis are listed below:
this thesis presents a cost-effective microcontroller-based Iridium satellite
communication architecture for RRES (DG),
a standalone microcontroller-based communication system with the 9601 SBD
Iridium transceiver is developed and tested for MO and MT messages and the
timing and delay analysis of the Iridium SBD service is documented,
the SBD data packet is optimized with NLP for cost effectiveness, limiting the
data to a “need to know” basis at the ECC and also for making the communication
system intelligent; and
finally, this thesis recommends the effectiveness of the Iridium SBD
communication link for the monitoring and control of an RRES.
10
1.4 Thesis Organization
The chapters in this thesis are organized as follows.
Chapter 1 provides the introduction to the problem, the solution methods, the
basic background of the system and the tools.
Chapter 2 gives the architecture of the microcontroller-based Iridium
communication system with the 9601 SBD transceiver. It categorizes the data to
be acquired at the RRES field and designs this application’s specific data packets
and its frequencies of collection depending on the limitations of the PIC18F8722
microcontroller. It draws the overall state diagram for the architecture of the data
acquisition system as well as the communication system. Finally, the
microcontroller-driven 9601 SBD Iridium transceiver is tested for the MO and
MT messages and corresponding results are presented. Delay analysis on the MO
and MT messages are done and recommendations given for SCADA functions of
the RRES.
Chapter 3 presents the need for optimization of the SBD data packets to make the
Iridium SBD system cost-effective and intelligent for RRES monitoring. It then
develops an NLP problem with constraints and an objective function for wind
turbine monitoring, depending on physical conditions in the field and the wind
turbine mechanics. The NLP is solved with MATLAB® which gives the sub-
frame sizes, giving the maximum profit/benefit of communicating specific data to
ECC.
11
Chapter 4 presents a fixed- and variable-cost comparison amongst the SBD
service of Iridium, Amateur Radio (AR), and point-to-point radio for various data
volumes in perspective of an RRES monitoring system.
Chapter 5 summarizes the work completed and recommends possible future
research.
12
Chapter 2
2. Low-Cost and Controlled SBD Communication System Architecture
for Remote Renewable Energy Source
2.1 Requirement of a Low-Cost Communication System
Integrating DG sources to electrical grids is important for making them dispatchable.
This necessities DG sources to be monitored and controlled using a communications
infrastructure that is both cost-effective and reliable [1]. Also, remote monitoring and
control of the DG benefits the utilities regarding future planning, expansion and
preventative maintenance of the installed systems. Data transfer, monitoring and control
of DG can be achieved with various communication systems. Factors such as feasibility,
availability of technology, the cost benefit of automatic monitoring and control, and most
importantly, the budget determine the decision of opting for a particular communication
system. Generally, in DG, high-speed communication facilities may not be available, due
to the remoteness of its location, communications with point-to-point wireless RMs [1],
cellular modems, and satellite systems are the general options. Hence, satellite systems
with low hardware cost and global coverage complement the communication system for
remote access of DG sites and the competitiveness of the Iridium system comes in places
where there is no availability of any other forms of communications. Also, for low data
volumes the Iridium system may be less expensive than the alternatives.
13
2.2 Communication Architecture for Remote Renewable Energy Source SCADA
Functions
The low-cost architecture is developed with the 9601 SBD transceiver of the ISS. A
microcontroller is used for controlling the volume of data transfer on a “need to know”
basis at the ECC. Hence, to manage the smart application requirements, a PIC
microcontroller is used to control the 9601 satellite modem. The overall architecture
block diagram of the data acquisition and communication system which runs unattended
for monitoring the RRES is shown in Figure 2.1, where SPI means Serial Peripheral
Interface.
Figure 2.1: Architecture block diagram
The data required in the ECC from the RRES site is categorized as:
i. Power generation Data (PD),
ii. Maintenance Data (MD), and
iii. Environmental Data (ED).
14
The inverter contains the PD to be transmitted to the ECC and DG sensors are considered
in place for the MD and ED collection. The FA reads the data from the inverter and the
sensors, and subsequently logs the data in the Electrically Erasable Programmable Read-
Only Memory (EEPROM) of the microcontroller. The details of the data structure for the
various data types, the memory allocation in the EEPROM, the frequency of data logs
and transfer to ECC are described in the FA design section.
The inverter has an SPI for communication to the FA. The PD, MD and ED are clocked
from the inverter/sensors to the PIC through the SPI connection at specified times and at
specified locations in the EEPROM. The PIC communicates to the 9601 SBD transceiver
via an RS-232 communication link. The collected data at the end of 24 hours and after
optimization for one SBD data frame of 205 bytes (as will be detailed in subsequent
sections and Chapter 3), will be communicated to the ECC with the Iridium 9601 SBD
transceiver automatically.
Once the MO SBD frame is optimized and written to the 9601 transceiver from the PIC,
the satellite session is initiated which transfers the message to the ESS via the Iridium
satellite constellation. At the ESS, the SBD message is converted into an e-mail message
with an attachment and sent to the addresses configured for that particular IMEI SBD
transceiver. The IMEI of the transceiver used here is 300 034 012 008 300 and the
addresses configured for message delivery are [email protected], [email protected] and
[email protected]. These three e-mail addresses basically constitute the VA.
15
For sending the MT message to the FA, an e-mail needs to be composed from one of the
three e-mail addresses with a maximum message length of 135 bytes, with an attachment
having a *.sbd extension and sent to the address [email protected] with the intended
transceivers IMEI number in the subject line of the e-mail. Once queued in the ESS, a
confirmation e-mail is sent to the VA and then the FA can at any point in time acquire the
message with appropriate operations [14].
2.3 Field Application Design
The remoteness of the DG sites necessitates the use of systems which are automatic and
self operational. Hence, a microcontroller architecture is designed to achieve this
capability as well as this being a practical design, for the DG, which are generally in
remote locations. The contention of the Iridium SBD 9601 transceiver as a
communication system for the data telemetry from RRESs depends on how cost effective
is the design of the architecture, how the data bytes for the SBD session are optimized, so
that the ECC receives what is required at the lowest cost. This can be achieved by an
intelligent FA design. Also, depending on the intelligence of the FA, apart from the data
itself, the pattern and contents of the data sent can assist the ECC in making certain
decisions, such as preventive maintenance and unscheduled maintenance, which may be
of immense long-term value for an organization.
16
2.3.1 Hardware Design of Field Application
The main component of the FA hardware design is the PIC18F8722 on a prototyping
board driven by a 20 MHz oscillator which is connected to the 9601 SBD transceiver.
The PIC18F8722 prototyping board is as shown in Figure 1.3 in Chapter 1. The 9601
transceiver was connected via a DB9 RS-232 serial cable to the PIC for data transfer and
to command the transceiver for satellite initiation. The SPI communication port is
conceived to be used for data logging to the PIC’s EEPROM from the inverter/sensors.
The hardware components for the 9601 SBD transceiver connection to the PIC and
antenna are detailed in Figure 2.2. The transceiver was powered up with a regulated
6 Volt DC power supply from the power tray. The power tray used can regulate a 6 Volt
supply output when given an input between 6 Volts to 30 Volts DC. The power tray also
has an RS-232 serial interface, enable/disable switch and status LED. The PIC8722 was
powered up with a 5 V DC adapter. The SBD transceiver was connected to a fixed-mast
helical antenna with an 8 meter main cable, flexible jumper cables, connectors and
lightning/surge suppressor for protection. The loss in the cables, connectors and
lightning arrestor was checked so that it does not exceed 3 dB, which is as per the
specifications.
The 9601 SBD transceiver pin configuration, the RS-232 connection details between the
transceiver and PIC, the power tray features and specifications are given in Appendix A.
For testing the communication link, the data from the inverter/sensors was assumed to
17
have been received and stored in the EEPROM in specific address locations. This was
done as the SPI connection could not be tested practically.
Figure 2.2: Hardware assembling block diagram
2.3.2 Software Design for Field Application
The hardware for the FA was designed targeting the overall minimum-cost design criteria
for the system as well as meeting the overall functionality required by the system. The
software part of the FA is designed so that there is control of the data that is acquired
from the inverter/sensors and more importantly, the volume of data transfer, by
controlling the 9601 SBD transceiver. Hence, the main function of the FA is to optimize
18
the telemetry data as per the SBD frame size and requirements at the ECC and limit the
data transfer, such that the telemetry function of the DG is met with the least cost.
The various components of the FA can be broadly classified into five modules;
i. acquire data and memory write,
ii. optimize the SBD frame (MO message) using NLP,
iii. limit, control and communicate the MO messages to VA,
iv. obtain the MT message at FA, and
v. check status of the inverter.
2.3.2.1 Interrupt Driven Architecture of FA
The code for the FA is written using the CCS C compiler and is responsible for the
automatic initiation of the satellite session every 24 hours, after optimizing the SBD
frame. The state diagram for the software architecture of the FA is given in Figure 2.3,
where RI means Ring Indicator. It uses four of the timer interrupts and one pin interrupt
available in the PIC8722 to perform the specific tasks at specified times. Hence, the
program is implemented such that the various modules are executed when the interrupts
for that particular module occur.
The 9601 SBD transceiver can be controlled with ATC (AT Commands). Hence,
appropriate commands are written to the transceiver via the RS-232 connection and upon
checking the responses from the transceiver for the particular command, the program
19
flow is passed to the next part of the logic implementation, for obtaining the overall
objective of the application.
Figure 2.3: Field Application state diagram
The PD and ED are to be written every hour from the inverter/sensors to the EEPROM
and the MD is to be written once every 6 hours. Hence, interrupt 0 is invoked every hour
and on the 6th, 12th, 18th and 24th hours, the MD is written along with the PD and ED.
The specific location in the EEPROM and the data size and format is discussed in the
following sections.
20
The pin interrupt occurs when the RI pin goes high indicating that there is an MT
message waiting at the ESS. Hence, the code to retrieve the messages is invoked when
RI goes high and the received MT message is written to the specific location in the
EEPROM for future retrieval.
Interrupt 3 is invoked every minute to check the status of the inverter. This interrupt is
implemented so that if there is any emergency condition in the inverter then that status
could be reported to the ECC. Hence, upon receiving the emergency-condition status of
the inverter as “true”, the control in FA is passed to send an SBD message to the ECC,
with a notification of the inverter status.
Interrupt 2 is invoked at the end of 24 hours when the data is collected and written to the
EEPROM. It then optimizes the SBD data frame by calculating the number of PD, MD
and ED sub-frames competing to fill the SBD frame for transfer to the ECC. The
maximum size of the SBD frame is 205 bytes. Each sub-frame is designed to be 5 bytes
long. Hence, there are 41 bytes to be filled for an SBD session at the end of 24 hours.
The details of the sub-frame size and format are described in later sections.
Interrupt 4 is invoked once per day, at 00:15 hours, for the initiation of the satellite
session after writing the optimized SBD frame to the 9601 transceiver. The program then
returns to acquiring the data for the next day overwriting the EEPROM addresses
locations for the next 24 hours.
21
2.3.2.2 Data Frame Size and EEPROM Design
The three basic types of data collected are the PD, MD and ED. The size, format,
frequency of collection and its location in the EEPROM is described in Table 2.1. Also
described in Table 2.1 are the software modules, such as module 3 SBD optimization. It
also gives the overview of all the processes that run to obtain the overall objective of
sending an optimized SBD frame containing telemetry data of the DG at the end of a 24
hour period.
Table 2.1: Field Application design summary
Data
Field/Process
Data
collection/Process
frequency
Data
Format
EEPROM
location
Interrupt Remarks
PD Every hour Figure 2.4 0-359 Timer
Interrupt 0 Module 1 MD Every 6 hours Figure 2.4 360-399
ED Every hour Figure 2.4 400-639
MT message
receiveAs RI goes high - 845-979
Pin
interrupt Module 2
SBD frame
optimization Every 24 hours - -
Timer
Interrupt 2 Module 3
Inverter status
interrupt Every 1 minute - 980-1023
Timer
Interrupt 1 Module 4
MO message
sendAt 00:15 hours - 640-844
Timer
Interrupt 3 Module 5
22
The inverter/sensors connected to the PIC via an SPI logs the data (PD, MD and ED) into
the EEPROM when module 1 is called after every hour. The format of PD, MD and ED,
which has sub-frames of PD, MD and ED data given by Npg, Nmi and Nei, respectively, to
be collected from the field, is shown in Figure 2.4.
Figure 2.4: Power Data, Maintenance Data and Environmental Data frame
Figure 2.5 shows the memory map in the EEPROM where the respective data in the
format and size, in Figure 2.4, would be written so that it can be picked up by module 3,
SBD frame optimization, which would be then picked by module 5 for MO message
transmission.
23
Figure 2.5: EEPROM addresses for data and processes of Field Application
The PD frame is 15 bytes long and is written to the EEPROM every hour. Hence, 360
bytes in 24 hours are written to the EEPROM as shown in Figure 2.5. The first PD frame
is located from address 0 to 14 and the 24th PD frame is in locations 345 to 359.
24
The MD frame is 10 bytes long and is written to the EEPROM every 6 hours. Hence, 40
bytes of data are written to the EEPROM in 24 hours. The first MD frame is located
from address 360 to 369 and the 40th MD data frame is located from 390 to 399. The ED
data frame is 10 bytes long and is written to the EEPROM every hour. Hence, 240 bytes
of data are written to the EEPROM in 24 hours. The first ED frame is located from
address 400 to 409 and the 24th ED frame is located from address 630 to 639.
After optimization of the data, collected at the end of 24 hours, the SBD frame which is a
maximum of 205 bytes, is written at locations 640 to 844 by module 3. Module 5 then
makes an SBD session to the ECC with the data available from those locations in the
EEPROM. The address locations from 845 to 979 are reserved for storing any MT
message that the FA retrieves, which can be a maximum of 135 bytes. Also, an external
EEPROM can be used if more MT messages are envisaged at the FA and if they need to
be stored for a longer duration or for any other purposes.
If module 4 notes the emergency-condition information of the inverter status as “true”,
then the message to alert and inform the ECC of an inverter emergency is pre-written
from location 980 to 1023, which then gets sent as an emergency SBD session to the
ECC.
2.4 Timing Requirements for Remote Renewable Energy Source SCADA
Functions
For complete SCADA functions of RRESs, the communication system should be able to
meet the control as well as the data acquisition functionalities. For achieving these
25
functions, the important aspects to consider are the latency of the system as well as data-
rate and cost of operation. The cost of operation is minimized by the architectural design
and controlled data transmission on a “need to know” basis at the ECC. The response
time required for the controlling functions of the RRES, such as “anti-islanding” would
be on the order of milliseconds or less. Though Iridium is a LEO system, the SBD
service’s inherent delays would limit such control capabilities of the ECC. Hence, due to
the latency of the system, the developed system is recommended for data telemetry
functions and as a redundant communication backup system for the RRES. The details
about the time taken for the MO message to reach the VA and MT message to reach the
FA are discussed with field test data and theoretical calculations in the next section. It is
also seen that the study done before by Margaret [16] on the delay analysis of the SBD
services corroborates with the field test data timing analysis.
2.5 Developed SBD Communication System’s Output
2.5.1 Field Application Testing
The architectural design provides the details of the system that could be implemented in
the field. But for testing the FA for data telemetry functions, the data from the
inverter/sensors were assumed to be available in the format designed and the same were
written in the EEPROM (module 1) as detailed in Figure 2.5. The FA was then
implemented to send the MO message (module 5) and receive the MT messages (module
2) depending on the interrupts that were designed at required frequencies and instances.
Also, the e-mail addresses at the VA were configured for the MO messages to be
delivered. The communication with the transceiver and the PIC with the RS-232
26
connection was tested and performed as per the requirements. The details of the RS-232
settings and intricacies of setting the PIC and modem to communicate are given in
Appendix A.
The developed FA was tested with the MO message “UNB Here” written in the specific
location in the EEPROM. The message was received in an e-mail attachment at the VA
as in Figure 2.6. The MO Message Sequence Number (MOMSN) and the MT Message
Sequence Number (MTMSN) give the number of MO and MT messages sent and
received by the particular IMEI. The time stamp of the session is in Coordinated
Universal Time (UTC) format where the time for a particular time zone can be expressed
as positive or negative offsets from the UTC. The session status confirms the message
transfer. The confirmation message also gives the message size and the latitude and
longitude position of the ISU where CEP radius means Circular Error Probable, which
defines the radius of a circle that represents a 50 percent probability of a position lying in
that circle. The geo-location information is only an approximate location of the ISU and
if not required in the application, could be disabled.
For testing the MT message, an e-mail with the attachment content “Hello UNB” was
sent to the ESS from the VA. The confirmation message of its storage in the ESS for
polling by the ISU was received as in Figure 2.7. The same message was retrieved at the
FA with implementation of module 2 as shown in Figure 2.8. Various information,
including the count of MT messages queued at the ESS, are obtained as indicated by the
last digit returned by the ATC command SBDI, which is for initiating the SBD session.
27
Figure 2.6: Mobile Originated e-mail message received at Vendor Application
Figure 2.7: Confirmation of Mobile-terminated message queued at ESS
28
Figure 2.8: Mobile-terminated message received at FA
2.5.2 SBD Service’s Delay Time Analysis
The total delay depends on the transmission and propagation delays and the performance
of the routing algorithm implemented in the satellites. The various components of the
delays associated with the SBD services can be classified into five categories, modem
processing time or transmission delay (depending on message size), uplink delay, inter-
satellite handoff and queuing delays, downlink delay and e-mail delays.
The modem processing delay for a 205 byte message using an average throughput of
2.4 kbps is calculated to be 683.3 ms. Using the signal travel speed of 3x108 m/s and
distance to the satellite and back as approximately 1600 km, the uplink and downlink
delay works out to be 5.2 ms. The general queuing algorithms in the satellite nodes
suggest that the maximum delays associated with queuing would be on the order of a few
hundred microseconds [15], which here is taken as 300 µs giving 1.2 ms in total
assuming 4 inter-satellite handoffs. Also, assuming a maximum of 4 inter-satellite
handoffs and taking the distance between the satellites as 400 km, it gives an inter-
29
satellite handoff delay of about 5.2 ms. Hence, combining all these delays (683.3 ms +
5.2 ms + 5.3 ms +1.2 ms) only gives 695.0 ms (0.70 s) of theoretical delay.
The timing stamps when deciphered from the e-mail received from the field test at the
VA are summarized in Table 2.2.
Table 2.2: Mobile Originated message timings
MO message sent (UTC) MO message received (UTC) Difference (s)
18:43:47 18:44:05 18
It is seen that it took 18 s for the MO message to reach the VA from the FA, which
corroborates well with the timing for the MO message study done by Margaret [16].
Since, the total delay without the e-mail delay was calculated as 0.7 s, about 99% of the
delay time is attributed here for the e-mail delays from the Iridium gateway to the VA.
As the Iridium gateway has an inherent process running once only every 30 s [16] to
collect the MT SBD message to queue it for the individual mobile device, the worst case
latency for the MT message to reach the ISU could be 30 s plus the other associated
delays of about 1 s. Hence, critical control applications like anti-islanding of the DG
sites may not be possible as the responses that are required at the field for such operations
are in the order of milliseconds or less.
30
2.6 Conclusion
Controlled MO and MT messages were sent and received at the field with the
implementation of the various modules. The code written in the CCS C compiler for
testing the system is given in Appendix B. Appendix B also contains a picture of the
system implemented, showing the PIC8722, RS-232 connections, 9601 transceiver,
cables, lightning arrestor and the antenna. With the system implemented and the test
results as given in section 2.5.1, the latency of the system was calculated and analyzed.
Certain tests where MO message transmission failed in its first couple of trials when the
SBD service of ISS was not able to communicate to the satellite, even though the
transceiver showed availability of satellite signal, were observed. This case was
considered in the design, where the FA keeps trying till the MO message until
transmission is successful. The test results with the transceiver responses and their
explanations are given at Appendix B.
31
Chapter 3
3. Effective Use of Limited Communication
3.1 Requirement of SBD Frame Optimization and Non Linear Programming for
Solution
DG formulated with RRESs and most predominantly wind power energy has achieved a
predominant place as a driver in the green energy market [18]. Efficient operation of
these wind turbines with huge investment of approximately US$ 1000 per kW warrants
efficient, optimized and intelligent communication system design for proper maintenance
of the system. This would also help for the reliability of power as well to reduce the cost
of maintenance over the years. The main objective of optimizing the SBD frame for the
data telemetry function of a DG is to make the:
i. Short Burst Data service of Iridium System viable and competitive, and
ii. communication system intelligent.
The Iridium communication system for the data telemetry of DG generally comes into
contention when there are practically no other forms of communication at the site or for
backup systems. But for low data volumes it could actually be less expensive than the
alternatives. Hence, the SBD service of Iridium is analyzed as a potential contender for
monitoring the remote DG even when other communication facilities are available. To
achieve this, the system and data requirements at the ECC have to be studied and
32
implemented considering the constraints of the limited resources and cost of Iridium’s
SBD service. Hence, the challenge is to maximize the data transfer and most importantly
the required data is transferred vis-à-vis the cost incurred for the same.
Not all the physical data available can be collected at the field, nor can all the collected
data be transmitted or need to be transmitted to the ECC. Hence, specific application
development criteria are formalized and a specific design is done, to make the SBD
service of Iridium viable as a communication system for the data telemetry functions of
DG.
The SBD service of Iridium has a maximum of 205 bytes for MO messages and a
maximum of 135 bytes for MT messages. Hence, optimization of these 205 bytes of MO
message per session is done so that there is maximum utilization of the capacity per
session as well as the most relevant and required data is communicated to the ECC. The
tool used here for achieving this is NLP. NLP can be applied to various fields of study.
It is most extensively used in business and economic situations, but can also be utilized
for engineering problems. Some industries that use NLP include transportation, energy,
telecommunications, and manufacturing [19].
Hence, 205 bytes of data from the data collected over the 24-hour period contend to fill
the SBD frame. Basically, the goal is to pack the SBD frame with the most optimized
data sub-frames from amongst PD, MD and ED as the cost per session of SBD or per
kilobyte of data via SBD service is relatively high.
33
3.2 Developing the Non Linear Program Problem
The basic steps involved in developing the NLP problem are to decide on the decision
variables, the objective function and the constraints. A mathematical model is formulated
which when solved gives the most optimized solution for packing the limited resource,
the SBD frame. Here, the solution tries to maximize the “data byte transfer” function
(objective function) by solving the number of various data sub-frames (decision
variables) subject to certain constraints to fill the 205 bytes of the SBD frame.
The rational behind the choice of the decision variables, the basis and development of the
objective functions and the constraints are described and formulated in the sections to
follow.
3.2.1 Developing Decision Variables
In modeling the NLP, the decision variables are chosen such that, solving it, completely
gives the solution needed to solve the problem in question. From the perspective of the
data requirement at the ECC for monitoring and control of an RRES, the data at the field
were categorized into three types as, PD, MD and ED. The detail contained in one frame
of PD, MD and ED was shown in Figure 2.4 in Chapter 2. Hence, the decision variables
considered here are the sub-frames, 5 bytes long, of the PD as Npg, MD as Nmi and ED as
Nei. The output expected of the optimization process is the optimal solution regarding the
number of sub-frames amongst the decision variables that would fill the MO SBD frame
at the end of 24 hours for an SBD session. There are 41 sub-frames, as the maximum
MO SBD frame length is 205 bytes.
34
3.2.2 Developing Constraints
In developing an intelligent and also optimized communication system for the RRES with
the SBD service of Iridium, the system should be able to pick the data that is most needed
to be sent to the ECC depending on the behavior of the RRES system. To choose
between the decision variables to fill the SBD frame, it should be constrained by the
physical behavior of the system such that the data sent not only gives the value but also
describes the system. Hence, keeping this as the fundamental requirement of the system,
the constraints developed are the:
i. data byte size constraint, and
ii. Power, Maintenance and Environmental (PME) data constraint.
3.2.2.1 Data Byte Size Constraint
The first constraint on the system is that the number of sub-frames of the decision
variables cannot be more than 41 as a sub-frame is designed to be 5 bytes long with a
maximum SBD size frame being 205 bytes per session. Inequality (3.1) expresses the
data byte size constraint mathematically:
41ei
Nmi
Npg
N (3.1)
Also, the value of Npg , Nmi and Nei should be integers, greater than or equal to zero.
Hence, Inequality (3.2) gives the other constraint mathematically as:
35
0pg
N
0mi
N (3.2)
0ei
N
3.2.2.2 PME Constraint
The growth of wind power energy systems for green power has also caused the
appearance of many reliability issues mainly related to maintenance practices [18]. This
opens up the area for communication systems which can help mitigate the failures of the
turbines as well as for proper maintenance at the field by intelligent data telemetry
systems design. A system capable of adjusting/selecting the data at the field depending
on the ever changing and unpredictable conditions in the field, which validate the
foreseen or indicate the unforeseen maintenance requirements, can improve the
maintenance practices and mitigate the reliability issues. Hence, the PME data constraint
tries to achieve this by optimizing the SBD frame with MD sub-frames depending on PD
and ED data patterns recorded.
One of the main issues with wind power generation is to maintain the generator rpm
constant to maintain the power frequency with the changing load and wind velocity. As
the generator shaft is coupled with the shaft of the wind turbine, whose speed varies with
the speed of the wind, a gear box is generally used to regulate the change of wind turbine
speed so that a constant rpm is maintained in the generator shaft. Hence, the gear needs
36
to maintain the speed of the generator shaft constant to the changing wind speed patterns
subjecting the gear to continuous work. This changing environment in the gear box could
affect the gear, its bearings and most importantly the lubricant, and proper maintenance
needs to be done depending on how the wind turbine is being operated. Hence, data
about the lubricant conditions could be communicated to the ECC depending on how the
gear is being operated.
The suitable operation of the wind turbine mainly depends on the behavior of the gearbox
containing planetary gears and bearings, requiring special attention due to its extreme
operating conditions. Hence, the lubricant and wear particles analysis is considered to be
the most efficient and predictive/proactive tool to obtain an optimum performance of the
wind turbines. The problems related to the maintenance of the turbine through the
lubricant analysis based on the experience achieved by the International Wearcheck
Group suggest that the main issue is the micropitting due to lubricant choices, apart from
others [18]. Wearcheck is a group of independent laboratories, spanning the Earth,
dedicated to oil and wear particle analysis.
Micropitting is a surface fatigue phenomenon mainly observed in gears. Choice of
lubricant and surface roughness are the key factors leading to micropitting. To prevent
micropitting the lubricant thickness should be maximized and temperature is fundamental
for the thickness of the lubricant. Hence, monitoring the lubricant condition becomes
critical. Basically, the resistance to micropitting decreases when temperature in the gears
increases. The equilibrium temperature of the lubricant is established between the heat
37
dissipated in the system by conduction and convection vis-à-vis the heat generated by
friction which depends on the work done by the gears [18], increasing with higher power
generation and the ambient temperature and humidity increase of the surroundings.
Hence, under the PME constraint, three regions of operation (PME1, PME2, PME3) of
the system are visualized and developed to decide on the number of sub-frames to fill the
SBD MO message amongst PD, MD and ED. Figure 3.1 explains the regions of
operation of the system. Depending on the change of power output (kW) or turbine speed
(rpm) over the day (signifying values of PD being higher/lower/rated which indirectly is
responsible for increased/decreased temperature of the lubricant by friction) and ambient
temperature and humidity changes (signifying values of ED which has effect on the
maintenance parameters of the lubricant), the sub-frames Npg, Nmi and Nei are decided to
fill the MO SBD message. The system should be sensitive to reporting relatively more
Nmi sub-frames in the MO message on a more regular basis if the system has operated in
region PME3 (i.e. power output or turbine speed over the day is higher than the optimal
operational values or if the ambient temperature or humidity data collected over the day
is higher than nominal), which should be the case as this may lead to a temperature
increase of the lubricant leading to micropitting of the gears. Also, if the system has
operated in region PME1 over the day (i.e. the power output or turbine speed over the day
is lower than the rated values for a long time) the Nmi sub-frames should again be
reported relatively higher in the MO SBD message as this may not be a suitable
environment for the high performance self lubricating bearings to function at their
maximum efficiency.
38
Also, if the system operated in region PME2 over the day (i.e. the power output or
turbine speed over a day is generally running on a rated level and the ambient
temperature around normal conditions), the MO message could have relatively less Nmi
sub-frames as the data required for the maintenance is presumed to be relatively low for
such a situation and hence can have, as designed, balanced sub-frames of Npg, Nmi and
Nei.
Figure 3.1: Turbine’s region of operation (Modeling the physical behavior of system)
Taking the number of sub-frames for each to fill the SBD frame, depending on the
operation of the system in the three specified regions, would give the optimized and
significant MO SBD data frame to be communicated to the ECC with the low-cost
criteria of operating the Iridium SBD service for data telemetry of the RRES.
39
The PME constraint is mathematically derived as follows:
The profile for deciding the Npg, Nmi and Nei sub-frames from the values of PD and ED
collected over a day is conceptualized as a parabola of the shape shown in Figure 3.1.
The three distinct regions are when the wind speed, power output and ambient
temperature are lower than the rated range (PME1), the region where the wind speed,
power output and ambient temperature are consistent with the rated range (PME2) and
when wind speed, power output and ambient temperature are relatively higher (PME3)
consistently. How the values of PD and ED collected over the day influence the number
of sub-frames (Npg, Nmi and Nei) contending to fill the SBD frame is described
mathematically below.
The general form of a parabola is given by:
Kh)a(xy 2 (3.3)
where, y are the ordinates, x are the abscissa values, a is the second-order constant, and h
and K are the coordinates of the vertex of the parabola.
Equation (3.3) applied to the variables here which gives the PME constraint as:
3
2
4
ei2pg1mi K
K
NKNKN (3.4)
40
where, K1, K2, K3, and K4 are the quadratic constant, scaled offset, offset and offset scalar
respectively, which are chosen so that the profile of the curve represents what Npg, Nmi
and Nei would be reasonable at various conditions of PD and ED values collected over the
day. Also, to make the system responsive and sensitive to the number of sub-frames of
MD, the PME constraints could be automatically changed over a year, considered as the
regular maintenance period. The logic is that, more Nmi are included for the six months
after the regular maintenance period. For the next six months, Nmi data could be reduced,
relative to the first six months as the ECC has the confidence from the data of the Nmi
from first six months as well as the next regular maintenance schedule would be
approaching soon.
Two PME constraint equations developed here are for the first and the second half of the
regular maintenance period. On substituting the values of the constants in Inequality
(3.4), the two constraints become:
104
N80N
20
10N
2
eipg2mi (3.5)
24
N140N
35
10N
2
eipg2mi (3.6)
Inequality (3.5) is designed for the first half after the regular maintenance period where
monitoring of the RRES’s MD occurs more frequently. Hence, K3 is given a value of 10.
41
Inequality (3.6) is for the second half where relatively less MD is presumed to be
required at the ECC. Hence, K3 is given a value of 2.
3.2.2.3 Plotting the Constraints
The data byte size constraint given by Inequalities (3.1) and (3.2) is shown in Figure 3.2.
The PME constraints given by Inequalities (3.5) and (3.6) (for Nei of 1 and 41) is shown
in Figure 3.3 and 3.4 respectively. Both these constraints plotted together (Inequalities
(3.1) and (3.2) and Inequality (3.5)), for Nei =1 and 41, give the solution points
(Npg, Nmi, Nei) under the area carved by the parabola and the triangular plane as in
Figure 3.5.
010
2030
4050
0
10
20
30
40
50
0
10
20
30
40
50
PD Sub−frames(Npg)ED Sub−frames(Nei)
MD
Sub−f
ram
es(N
mi)
Figure 3.2: Data byte constraint
42
0 5 10 15 20 25 30 35 40 4510
15
20
25
30
35
Number of Sub−frames (Npg)
Num
ber o
f Sub−f
ram
es (N
mi)
Figure 3.3: Power Maintenance Environmental constraint with Inequality (3.5)
0 5 10 15 20 25 30 35 40 452
3
4
5
6
7
8
9
10
11
12
Number of Sub−frames (Npg)
Num
ber o
f Sub−f
ram
es (N
mi)
Figure 3.4: Power Maintenance Environmental constraint with Inequality (3.6)
Nei =1
Nei = 41
Nei =1
Nei = 41
43
Figure 3.5: Data byte and PME constraints
3.2.3 Developing Objective Function
The objective of developing the optimization problem with the decision variables and the
constraints which here happen to be a non-linear optimization is to maximize the profit
by communicating the most-needed data to the ECC and at the same time making the
system intelligent in this data-constrained environment using the Iridium SBD service.
The profit at the ECC is conceived by the optimized transferred MO SBD data giving
more value for monitoring purposes, planning purposes or for maintenance scheduling.
010
2030
4050
0
10
20
30
40
50
0
10
20
30
40
50
PD Sub−frames(Npg)ED Sub−frames(Nei)
MD
Sub−
fram
es(N
mi)
Nei =1
Nei = 41
44
Hence, after the constraints are solved to get the feasible region, which is the set of points
satisfying all the constraints, the solution (Npg, Nmi and Nei) is fed to the objective
function to verify which of the solutions give the maximum profit. Thus, the objective
function is developed to maximize the profit which mathematically is given by
equation (3.7).
eimipg NCNBNAR (3.7)
The coefficients A, B and C are chosen to provide appropriate weights for the number of
sub-frames (Npg, Nmi and Nei), and indicate which data has more significance to maximize
the profit at the ECC. Also, to make the system adaptive over the summer and winter
months of the year, the coefficients A, B and C of the objective function can be varied to
give appropriate weights to the sub-frames for maximizing the profit depending on the
conditions on the field. During the summer months when the temperature and humidity
may increase, the constant A could be reduced and B and C relatively increased so that
more weight is on the Nmi and Nei frames. On the contrary, during winter months the
objective function could be changed to reflect more PD as the environmental conditions
are assumed to be more suitable for functioning of the RRES generators and turbines.
The coefficient choices and changes could also be on the discretion of the person working
at the ECC depending on the data requirements at the ECC. The objective function
considered here is with A, B and C as 50, 30 and 10 respectively, which makes Equation
(3.8) as:
45
eimipg N10N30N50R (3.8)
The optimal solution of the problem for maximization of the profit is the point in the
feasible region which has the largest objective function (R) value. Depending on
different values of R calculated from the points in the feasible region, the solution which
gives the largest value of R is chosen as the most optimized sub-frame sizes. Hence,
those values of sub-frame sizes make the optimized MO SBD data frame to be
transmitted to the ECC at the end of every 24-hour period.
3.3 Non-Linear Programming Implementation
The optimization problem is tested and solved in MATLAB® using an exhaustive search
method and the results are compared with the solution given by the built-in functions in
MATLAB® to solve an NLP. Finally, this logic is coded in the PIC using the CCS C for
implementation of the NLP, as conceived in Chapter 2 in the state diagram (Figure 2.3)
as module 3. The PIC could be programmed for automatic switching of the constraint
and objective functions depending on the scheduled maintenance timeline, winter and
summer conditions as described in section above. This could be made possible by either
an MT message from the ECC or could be done manually during the scheduled
maintenance period.
46
3.3.1 Non-Linear Programming Solution in MATLAB®
and PIC
Developing an exhaustive search algorithm requires searching all the combinations of
Npg, Nmi and Nei values within the space of 1 to 41 bytes, which satisfy the constraints.
This is then put into the objective function and the combination which gives the highest
value of Equation (3.7) is selected as the optimized result. Hence, to get an estimate of
the problem size, the derivation below gives the total number of combination points that
the search algorithm has to run through for the result.
Considering 41 cases where one of the decision variables varies from 1 to 41, the general
form for the total number of combinations of Npg, Nmi and Nei is as follows:
2
(41)(42)
2
(40)(41)........
2
(3)(4)
2
(2)(3)
2
(1)(2)S (3.9)
This can be written as:
41
1i
1)(ii2
1S (3.10)
41
1i
41
1i
2 i2
1i
2
1S (3.11)
Expanding and solving we get:
2i23i3i6
1S [20] (3.12)
47
Substituting, i = 41, we get S = 12,341 combination points that the algorithm has to
search. The exhaustive search algorithm solves for all the points satisfying the
constraints. Figure 3.6 shows the variability of values of the sub-frames (Npg, Nmi and
Nei) satisfying the constraints, depicting that the sub-frame combination is sensitive to the
system working either in regions PME1, PME2 or PME3, as solved by the exhaustive
search algorithm. Figure 3.6 is plotted for selected samples of the solution points, but
also containing the solution with the highest value of the objective function given by the
exhaustive search algorithm. Figure 3.6 also shows the solution points of Npg, Nmi and
Nei as 39, 1 and 1 respectively, with the maximum value of the objective function
amongst all the solution points. The graph is plotted for constraints Inequality (3.1),
Inequality (3.2) and Inequality (3.5) and the objective function Equation (3.8). For
testing the variability of the optimized solution output for various values of the objective
function coefficients (A, B and C) are as tabulated in Table 3.1. The code for the
exhaustive search algorithm for solving the developed NLP is attached in Appendix C
and the execution time of the same in MATLAB® is 1.39 s.
48
0 10 20 30 40 50 60 700
5
10
15
20
25
30
35
40
45
0
200
400
600
800
1000
1200
1400
1600
1800
2000
Figure 3.6: Optimized solution graph
Also, MATLAB® has built-in functions to solve the NLP problems. This nonlinear
inequality constrained problem is solved by the “fmincon” function which basically
solves the objective function with all the solution points satisfying the constraint and
gives the point solution which has the highest value of the objective function. The three
basic steps to solving an NLP with this function are as follows [21]:
Step 1: Write an m-file for the objective function,
Step 2: Write an m-file for the constraints, and
Step 3: Invoke constrained optimization routine.
Sampled solution points (numbers)
Su
b-fram
e (nu
mb
ers)
Ob
jective fu
nctio
n v
alues
Nei
Nmi
Npg
Objective function
49
It was seen that the results from the exhaustive search algorithm and from the built-in
function validate each other. The code with the built-in function of MATLAB® to solve
the NLP is attached in Appendix C, where the inequalities have been solved and used in
the code due to the requirement of a certain format of the inequalities by the built-in
functions.
Table 3.1: Optimization results
Objective Function
Coefficients
Results
A B C Npg Nmi Nei R
50 30 10 39 1 1 1990
50 50 50 15 13 13 410
10 50 30 1 39 1 1990
30 10 50 1 1 39 1990
The optimized solution output can be changed either by changing the objective function
or by changing the constraints. The coefficients of the objective function can be
automatically changed with MT messages by experienced personnel at the ECC and also
the constraints could be changed depending on the requirements. It is seen that for the
constraints designed, the solution is optimized at different values of Npg Nmi and Nei by
changing the ratio of the coefficients A, B and C of the objective function.
The exhaustive search algorithm can be implemented in the PIC and the optimum sub-
frame size of Npg, Nmi and Nei calculated at the end of the every 24-hour period. These
values are then used to pick the number of sub-frames of PD, MD and ED (data collected
50
over the 24-hour period whose frequency and size and location in EEPROM are as
described in Chapter 2) to make up the optimized SBD frame for communication.
Also, depending on the message requirement and the operating budget, more SBD
sessions could be initiated in a day and hence optimization of 82 sub-frames or 123 sub-
frames for 2 and 3 SBD sessions respectively or more could also be done. The PIC8722
has a 5 ns clock, 128 kilobytes of program memory and 3936 bytes of data memory.
Allocating one third of the data memory (1312 bytes) would allow a maximum matrix
size of 36 by 36 to be solved. Implementing the exhaustive search algorithm on the
PIC8722 for 1 SBD frame optimization would have 3 operations to calculate the PME
constraint matrix, 15 operations to calculate for comparing the constraints, 1 operation to
calculate the R value and 1 operation each for loop iteration. This would give a total of
1,380,142 operations with Npg, Nmi and Nei of 1 to 41. Also, the total number of
operations for the algorithm with 2 SBD frame (82 sub-frames) would be 11,034,166.
51
Chapter 4
4. Cost and Alternative System Comparison with Iridium SBD Service
for RRES SCADA Functions
4.1 Introduction
Gagliarducci et al. [26] discusses GSM-based monitoring and control of photovoltaic
power generation, where GSM stands for Global System for Mobile communications.
Though this could be cost effective, its availability still is an issue for remote DG.
Hence, the systems taken into consideration for comparison are based on their setup cost
being low when the DG sites are in remote locations and also, other conventional
communication systems such as GSM, wireless standards, internet, and optical fibers, are
not available or some are too expensive as an upfront investment.
The three systems of communication compared are:
i. the Short Burst Data Service of Iridium Satellite System,
ii. Armature Radio, and
iii. Cellular Radio.
The choice for a particular type of communication system for RRES monitoring depends
largely on the specific application and its requirements but at the same time budget and
available technology are the other factors which influence the decision. Depending on
the data volume requirements by the application, the SBD service of Iridium could prove
to be more effective and a financially prudent decision as the hardware cost of the SBD
52
modem and it accessories is low. Also, remoteness and unavailability of any other
communication alternatives or at times of failure of the primary communication system,
qualifies the Iridium satellite communication system as a contender for a data telemetry
system. Hence, this chapter compares the various options considered to be viable for the
data telemetry of RRES taking into consideration the application requirements on data
volumes and the associated installation and monthly cost.
In April 2006, the U.S. Department of Defense (DoD), Defense Information Systems
Agency (DISA) awarded Iridium a contract for commercial mobile satellite services for
voice, data, and paging, utilizing the Iridium satellite constellation. Through this DISA
contract, Iridium was also approved to provide the 9601 transceiver to the U.S. DoD, and
other government users. The 9601 transceiver meets broads requirements among users in
defense, and homeland security, implementing the standard in support of logistics, force
tracking, remote sensing and other data exchange applications. Also, Iridium plans to
deploy its next generation ‘Iridium Next’ satellite constellation within the next seven
years and is investing about US$2 billion to construct and deploy this new network [22].
Hence, with the U.S. DoD utilizing the 9601 SBD service and the increase in the
economy of scale of the business, the SBD service cost as well as the hardware cost could
decrease further with time.
The following sections of the chapter discuss the three compared systems with the
perspective of setting it as a data telemetry function for RRES.
53
4.2 Comparison of Various Communication Systems
4.2.1 SBD Service of Iridium Satellite System
The ISS offers various services such as voice, short messaging service (SMS), SBD, and
paging. For data telemetry of DG, the SBD services of Iridium seem viable due to their
low hardware cost as well as the billing being as per usage. A low-cost architecture was
developed and optimization of data bytes done for communication in a constrained
environment since only 205 bytes of data per session is supported by the 9601 SBD
transceiver and also the service cost depends on the data bytes sent over the network.
SBD is a data communication service of Iridium, where an application can send and
receive short data messages ranging from 1 to a maximum of 1960 bytes using small
transceivers. Hence, the SBD service could be competitive where the data volumes
involved are not too large.
Here for comparison, a low data volume is considered to be one MO SBD session and
one MT SBD check initiated in a 24-hour period. For a low data volume the total MO
message size per month would be 6150 bytes (taking a maximum of 205 bytes/MO
message) and MT message would be 4050 bytes (taking a maximum of 135 bytes/MT
message) which would cost CAD 12.01 and CAD 7.91 respectively with a rate of CAD 2
per kilobyte. A large data volume is considered where 24 MO SBD sessions and 24 MT
SBD checks are initiated in a 24-hour period. Hence, for a large data volume the total
MO message per month would be 147600 bytes and total MT message would be 97200
bytes which would cost CAD 288.3 and CAD 189.9 respectively taking a rate of CAD 2
54
per kilobyte. A comparative tabulation of cost per data volume per month, setup cost as
well as the advantages and disadvantages of the three compared communication systems
for DG telemetry application is given in Table 4.1.
4.2.2 Amateur Radio
AR frequency allocation is done by National Telecommunications Authorities and
globally the International Telecommunication Union (ITU) oversees how much radio
spectrum is set aside for AR transmissions. ITU in its International Radio Regulations,
divides the world into three ITU regions for the purposes of managing the global radio
spectrum. Radio amateurs can use the AR for a variety of transmission modes, including
Morse code, data, and voice. Specific frequency allocations vary from country to country
and between ITU regions [23]. Canada falls in ITU region II.
The AR may operate from just above the Amplitude Modulation (AM) broadcast band to
the microwave region in the gigahertz range, though many AR are found in the frequency
range that goes from 1.6 MHz to just above the citizens band (27 MHz) [24].
4.2.3 Point-to-point Radios
The point-to-point RMs operate in the unlicensed Industrial, Scientific and Medical
(ISM) frequency band of either 900 MHz or 2.4 GHz solutions. Though operating at
900 MHz yields significantly longer range than what is possible at 2.4 GHz, a 900 MHz
radio solution is permissible in fewer countries. Digi RMs [27] claim that their products
55
with an output power of 1 W have a range of 22 km and a 5 km range when the output
power is 50 mW. These were recorded using 2.1 dB gain antennas. A Line-of-Sight
(LOS) path between transceivers is required for reliable communication.
Hence, setting up point-to-point radios for monitoring of an RRES could be cost effective
as once it is setup, no monthly fee needs to be paid and as much data could be transmitted
but would have limitations due to the ISM frequency band operation and related
interference issues and also the limitation of distance and LOS of the ECC from the
RRES site.
4.3 Cost Comparison
Table 4.1: Cost comparison
56
Table 4.1: Cost comparison (continued)
4.4 Conclusion
When available, communication systems such as point-to-point radio, internet, and
wireless standards, could be more cost effective though they have their limitations of
service qualities and distance coverage. Hence, the SBD service of Iridium as seen in
Table 4.1 with comparable setup cost and its availability worldwide when designed for
low data volume could be a good system for RRES SCADA functions or even for back
up systems on failure of primary communication systems.
57
Chapter 5
5. Conclusion
5.1 Contributions and Recommendations
An overview of DG and the ISS was studied and documented and the necessity of
monitoring a DG system formulated with an RRES, for its maintenance and
dispatchibility was developed. The SBD service of Iridium was chosen as the
communication system for its service availability at all locations of the Earth as well as
for its low hardware and setup cost.
A cost-effective interrupt-driven microcontroller architecture was developed for the
practical purpose of remote installation and automatic functioning of the communication
system. The system with the 9601 SBD Iridium transceiver was developed and tested for
MO and MT messages and the timing and delay analysis of the Iridium SBD service was
analyzed. It was seen that the MO message has a delay of about 18 s attributed mostly to
the e-mail delays. The MT message had an inherent SBD service delay of 30 s and
hence, the minimum time to retrieve an MT message at the FA would be 30 s plus the
associated delays of uplink and downlink at the FA.
With this delay of MT messages, it is seen that critical control functions such as anti-
islanding of the inverter cannot be achieved by this system but could be used as a backup
system. Also, the functions of monitoring the RRES can be well met by the SBD
services of Iridium.
58
This thesis also researched into the idea of optimizing the 205 bytes of the SBD data
packet for cost effectiveness and limiting the data to a “need to know” basis at the ECC
and also for making the communication system intelligent. An algorithm was developed
taking into consideration the requirements of data at the ECC and the mechanics of the
RRES and wind turbine in particular. This was solved using NLP and an optimized set of
bytes for the PD, MD and ED, from the data acquired over the day, to fill the 205 bytes of
SBD message, was calculated.
Finally, the thesis looked into other communication systems for RRES monitoring and
compared the cost and the advantages and disadvantages of each. It is seen that for low
data volumes, the SBD service with an intelligent microcontroller-based architecture and
optimization of the SBD packets would prove to be a good system for RRES monitoring
or as a backup system and especially so as its service is available where conventional
communication services are not.
5.2 Future Work
This thesis developed the architecture and implemented the interrupt driven
microcontroller system for testing the SBD service of Iridium for the MO and MT
messages and also developed the algorithm for optimizing the SBD data bytes.
For taking the research into practical implementation, work towards interconnecting the
system to the inverter and sensors and collecting the data in the EEPROM from the field,
as discussed in Chapter 2, could be done. The optimization algorithm discussed,
59
developed and tested in MATLAB® could be implemented in the PIC microcontroller so
that the complete architecture conceived in Chapter 2 could be realized. After
optimization, for the algorithm to choose and make the SBD frame from amongst the PD,
ED and MD frames from the EEPROM, it could look into the data pattern and decide on
which to choose, depending on the differential data amongst PD, ED and MD collected
over the day. Also, at the VA, a smart application with the programming language C# or
with any other high-level programming languages can be developed for retrieving the
MO messages from the e-mail attachments and logged into the database automatically
and periodically.
The MO and MT message delays were mostly due to the processes at the gateway and the
e-mail delays. Hence, for lower MO message delays and the possibility of using the
system for critical control applications, this research could be taken further by testing the
system with SBD service between two ISUs as opposed to ISU and e-mail.
60
References
[1] J. Meng and S. Barnes, “Distributed generation communications utilizing a real-
time FPGA-based channel simulator in the ISM frequency band”, International
Journal of Emerging Electric Power Systems, vol. 8, no. 1, p. 3, 2007.
[2] L. Chang, “Wind energy conversion systems” IEEE Canadian Review, Spring,
no. 40, pp. 12-16, 2002.
[3] Y. Xue, L. Chang, and J. Meng, “Dispatchable distributed generation network - A
new concept to advance DG technologies,” IEEE Power Engineering Society
General Meeting, pp. 1-5, June 28, 2007.
[4] R. Hobby, “An introduction to the iridium(R) system,” in Communication
Opportunities Offered by Advanced Satellite Systems - Day 1 (Ref. no. 1998/484),
IEE Colloquium, (London, UK), pp. 1/1-110, Oct. 13, 1998.
[5] Company Profile. (2007). Retrieved October, 2007, from www.iridium.com
http://www.iridium.com/about/history.htm
[6] J. D. Ware, M. Grund, S. P. Liberatore, P. A. Koski, and, S. M. Faluotico, “A
solar powered ocean observatory using acoustic and Iridium links,” in Oceans,
2005, Proceedings of Marine Technology Society(MTS)/IEEE, (Washington DC,
USA), vol. 2, pp. 1565-1571, Sept. 17-23, 2005.
[7] D. J. Marihart, “Communications technology guidelines for EMS/SCADA
systems,” Power Delivery, IEEE Transactions, vol. 16, pp. 181-188, Apr. 2001.
61
[8] IEEE guide for monitoring, information exchange, and control of distributed
resources interconnected with electric power systems. IEEE Standard. 1547, pp.
1-158, Mar. 2007.
[9] J. Yin, L. Chang, and C. Diduch, “Recent developments in islanding detection for
distributed power generation,” in Power Engineering, 2004, LESCOPE-04, Large
Engineering Systems Conference, (Halifax, Nova Scotia, Canada), pp. 124-128,
July 28-30, 2004.
[10] H. Keller, and H. Salzwedel, “Link strategy for the mobile satellite system
Iridium,” in Vehicular Technology Conference, 1996. ‘Mobile Technology for the
Human Race’, IEEE 46th, (Atlanta, Georgia, USA), vol. 2, pp. 1220-1224, Apr.
26-May 1, 1996.
[11] Implementation Manual for IRIDIUM Satellite Communications Service (Draft
v1.0 ed.), Feb. 15, 2006.
[12] C. E. Fossa, R. A. Raines, G. H. Gunsch, and M. A. Temple, “An overview of the
IRIDIUM (R) low Earth orbit (LEO) satellite system,” in Proceedings of the
IEEE 1998 National Aerospace and Electronics Conference NAECON 1998,
(Dayton, Ohio, USA), pp. 152-159, July 13-17, 1998.
[13] Iridium SBD Service Developers Guide (Release 1.2 ed.), Feb. 2006.
[14] IRIDIUM 9601 SBD Transceiver Product Developers Guide (Revision 1.24 ed.),
Dec. 2005.
[15] A. M. Jabbar, “Multi-link Iridium satellite data communication system,” Master’s
thesis, University of Kansas, Lawrence, USA, 2001.
62
[16] M. Margaret., in R. Rathbarn (ed.), “Measuring Latency in Iridium Satellite
Constellation Data Services,” Naval Academy Annapolis, Report Number:
A291464, Maryland, USA, June 2005.
[17] R. Mukaro, “A microcontroller-based data acquisition system for solar radiation
and environmental monitoring,” Instrumentation and Measurement, IEEE
Transactions, vol. 48, no. 6, pp. 1232-1238, 1999.
[18] J. Terradillos, M. Bilbao, J.I. Ciria, A. Malagan, and J. Ameya “Oil Analysis as
an improvement tool for the behavior of windmill gears. Main problems detected
through the lubricant condition,” European Lubricating Gears Institute, Prague,
2006.
[19] W. L. Winston, Operations Research, Applications and Algorithms, Third edition,
International Thomson Publishing, Belmont, California 94002, 1994.
[20] Izrail' Solomonovich Gradshtein and Iosif Moiseevich Ryzhik, Table of Integrals,
Series, and Products, Alan Jeffrey ed., San Diego, CA, USA: Academic Press,
Inc., 5th ed., p. 2, 1994.
[21] MATLAB® Help files
[22] Retrieved November, 2007,
http://www.defense-update.com/newscast/0207/news/160207_iridium.htm
[23] Retrieved April, 2008,
http://en.wikipedia.org/wiki/Amateur_radio_frequency_allocations
[24] Retrieved April, 2008,
http://electronics.howstuffworks.com/ham-radio2.htm
63
[25] M. Benghanem, and A. Maafi, “Data acquisition system for photovoltaic systems
performance monitoring,” Instrumentation and Measurement, IEEE Transactions,
vol. 47, no. 6, pp. 30-33, Feb. 1998.
[26] M. Gagliarducci, D. A. Lampasi, and L. Podestà, “GSM-based monitoring and
control of photovoltaic power generation,” Measurement, vol. 40, no. 3, pp. 314-
321, Apr. 2007.
[27] http://www.digi.com/technology/rfmodems/poweroutput.jsp
[28] F. Y. Khan, “Development and Analysis of a Data Transmission System for Oil
Exploration Sites,” in 10th International Multitopic Conference, 2006. INMIC '06.
IEEE, (Islamabad, Pakistan), pp. 62-67, Dec. 23-24, 2006.
[29] R. J. Leopold and A. Miller, “The IRIDIUM communications system,” IEEE
Proceedings, vol. 12, no. 2, pp. 6-9, 1993.
[30] K. Maine, C. Devieux, and P. Swan, “Overview of IRIDIUM satellite network,”
in Conference Record Microelectronics Communications Technology Producing
Quality Products Mobile and Portable Power Emerging Technologies
WESCON/95, (San Francisco, CA, USA), pp. 483-490, Nov. 7-9, 1995.
[31] S. P. Munoz Aguiar, and M. J. Soteldo Perez, “Experience in OPGW Cables
Selection for Overhead Transmission Live Lines,” in TDC, IEEE Transmission
and Distribution Conference and Exposition, (Latin America), pp. 1-6, Aug.
2006.
[32] J. Campbell, The RS-232 Solution, SYBEX, Inc 2021 Challenger Drive #100,
Alamenda, CA 94501.
64
[33] M. D. Seyer, RS-232 Made Easy: Connecting Computers, Printers, Terminals,
and Modems, Prentice-Hall, Inc., Englewood Cliffs, NJ, 1984.
65
Appendix A
Appendix
A.1 The 9601 SBD Transceiver Pin Configuration [14]
Table A.1 gives the pin details of the 9601 SBD transceiver containing the pin numbers
and its corresponding signal names, signal direction with respect to the 9601 transceiver,
the function of the signal and the signal levels.
Table A.1: 9601 SBD transceiver pin configuration
Pin
Number
Signal Name Signal
Direction
(WRT 9601)
Signal Function Signal Level
1 EXT_PWR Input Supply +5 V +/- 0.5 V
2 EXT_PWR Input Supply +5 V +/- 0.5 V
3 EXT_PWR Input Supply +5 V +/- 0.5 V
4 EXT_GND Supply return 0 V
5 EXT_GND Supply return 0 V
6 EXT_GND Supply return 0 V
7 ON/OFF Input On/Off control
input
On: 2 V to
supply
Off: 0 V - .5 V
I=120 µA max
8 Reserved
9 Reserved
10 SIG_GND Signal ground 0
11 DF_S_TX Input Data port, serial
data into 9601
RS-232
12 DF_S_RX Output Data port, serial
data from 9601
RS-232
13 SIG_GND Signal ground 0 V
66
14 DF_DCD Output Data port, Data
Carrier Detect
RS-232
15 DF_DSR Output Data port, Data
Set Ready
RS-232
16 DF_CTS Output Data port, Clear to
Send
RS-232
17 DF_RI Output Data port, RI RS-232
18 DF_RTS Input Data port,
Request to Send
RS-232
19 DF_DTR Input Data port, Data
Terminal Ready
RS-232
20 SIG_GND Signal ground 0 V
21 Reserved
22 Reserved
23 SIG_GND Signal ground 0 V
24 NETWORK_AVAILABLE Output Set to logic 1
when the network
is visible
2.9 V CMOS
25 Spare
26 +2V9 Output Supply output +2.9 V +/- 0.15
V
50 mA max
A.2 The RS-232 Connection between the 9601 Transceiver and PIC8722
The PIC8722 board has two RS-232 3-wire connection ports. For communication
between the PIC8722 (a Data Communication Equipment (DCE)) and the 9601 SBD
transceiver, also being a DCE, a 3-wire custom made crossover cable was made and used.
The parameters set for the two RS-232 ports [32][33] of the PIC8722 and the PC port for
monitoring is given in Table A.2.
67
Table A.2: Parameter values for RS-232 ports
Parameters PC COM port PIC8722 Port1 PIC8722 Port2
Bits/sec 19200 19200 19200
Data bits 8 8 8
Parity None None None
Stop bit 1 1 1
Flow control Hardware
Also, as the 9601 is by default in a 9-wire mode, it was converted to a 3-wire
configuration with specific ATCs (AT&D0 and AT&K0) via the hyper-terminal program
of Windows xp. The RS-232 connection between the PIC8722 and the PC, which is
basically for monitoring, was done with a straight through DB9 cable.
A3. The Power Tray Features and Specifications
The Iridium 9601 SBD DB9 power tray is used as a power platform for the 9601
transceiver. It has a barrel connector for power connection, a DB9 RS-232 serial
interface, an enable/disable switch and two status LEDs. The on-board Switch Mode
Power Supply (SMPS) on the power tray has an input voltage range from 6 Volts to
30 Volts. The red LED indicates that the power is available from the power tray. The
green LED has the following meanings:
68
OFF: The SBD terminal is powered off. This can be controlled by the
enable/disable switch in the power tray.
FLASHING: The SBD terminal is on but the satellite network is not available.
ON: The SBD terminal is on and the satellite network is available.
The DB9 serial interface has all the flow control and handshaking wires connected
directly to the SBD 9601 transceiver. Hence, the 9601 transceiver connects directly to a
PC with a straight-through (standard) DB9 serial cable. This connection was used
initially for interfacing the transceiver with a PC and testing the 9601 transceiver.
The connection of the 12 of the 26 pins of the 9601 SBD transceiver (as described in
Appendix A.1) connected to the DB9 connection of the power tray is given below:
Table A.3: Pin connection between 9601 SBD transceiver and the power tray
9601 transceiver pins DB9 connection Description
14 1 Data Carrier Detect
12 2 Data from 9601
11 3 Data into 9601
19 4 Data Terminal Ready
10, 13, 20, 23 5 Signal Ground
15 6 Data Set Ready
18 7 Request to Send
16 8 Clear to Send
17 9 RI
69
Appendix B
Appendix
B.1 Field Application Design Code in the CCS C
***********************************************************************
// This program implements the MO message transmission from the FA and MT message
reception at the FA at set intervals.
// Author: Ujjwal Deep Dahal
// Created on: April 30, 2008
***********************************************************************
#include <18f8722.h>
#device ICD=TRUE
#fuses HS,NOLVP,NOPROTECT,NOWDT
#use delay (clock=20000000)
// RS-232 ports initializations. Two RS-232 ports of PIC8722 are used for the purpose of
// connecting the PIC8722 to the 9601 transceiver and for monitoring the communication
// between them with a PC during testing.
#use rs232 (baud=19200, bits=8, parity=N, stop=1, xmit=PIN_C6, rcv=PIN_C7,
ERRORS, stream=PORT1)
70
#use rs232 (baud=19200, bits=8, parity=N, stop=1, xmit=PIN_G1, rcv=PIN_G2,
ERRORS, stream=PORT2)
// ‘Writing the string AT, AT+SBDWT and AT+SBDI’ function declaration
void WriteString1(char*);
// ‘Reading the response of AT and SBDWT’ - function declaration
char ReadString1(char*);
// ‘Reading the response of SBDI’- function declaration
char ReadString2(char*);
//'Reading the MT message' - function declaration
char ReadString3(char*);
// ‘Writing the strings AT, AT+SBDWT and AT+SBDI’- function definition
void WriteString1(char* val) {
while (*val != 0x00) {
fputc(*val, PORT2);
val++;
}
}
71
// ‘Reading the response of AT and AT+SBDWT’ - function definition
char ReadString1(char* val) {
char* temp;
int a=0;
temp = val;
do {
*val = fgetc(PORT2);
if(*val= =0x0A)
a++;
val++;
}while (a!=2);
do {
fputc(*temp, PORT1);
if(*temp==0x0A)
a++;
temp++;
}while (a!=4);
return *val;
}
72
// ‘Reading the response of AT+SBDI’ function definition
char ReadString2(char* val) {
char* temp;
int a=0;
temp = val;
do {
*val = fgetc(PORT2);
if(*val==0x0A)
a++;
val++;
}while (a!=4);
do {
fputc(*temp, PORT1);
if(*temp==0x0A)
a++;
temp++;
}while (a!=8);
return *val;
}
73
// Variable declaration
// K counts the number of times the overflow_counter overflows to keep track of the
// elapsed time. The counter overflows ever 3.27 ms. Hence, depending on the timing
// requirements of the modules to be executed at a certain time, the corresponding values
// of K can be calculated and when it overflows K times the required interrupt can be
// invoked.
int32 overflow_counter = 0;
int32 K=1305;
int data_session_time=0;
// Interrupt routine which gets invoked on every overflow
#int_timer1
void timer1_isr(){
if (overflow_counter<K){
overflow_counter++;
data_session_time=0;
}
else{
data_session_time=1;
overflow_counter=0;
}
}
74
// The main program starts here
void main() {
char initString1[] = {'A', 'T', 0x0D, 0x00};
char initString2[] ={'A', 'T', '+','S', 'B', 'D', 'W','T', '=',0x00};
char initstring3[] = {'A', 'T', '+', 'S', 'B', 'D', 'I', 0x0D, 0x00};
char initstring4[] = {'A', 'T', '+', 'S', 'B', 'D', 'D', '0' 0x0D, 0x00};
char initstring5[] = {'A', 'T', '+', 'S', 'B', 'D', 'R', 'B' 0x0D, 0x00};
char response1[205];
char response2[205];
char response3[205];
char MT[100];
char sbd[205]={0x68,0x65,0x6c,0x6c,0x6f,0x0D,0x00};
setup_timer_1(T1_INTERNAL|T1_DIV_BY_1);
set_timer1(0);
enable_interrupts (int_timer1);
enable_interrupts (global);
while(TRUE){
if (data_session_time){
75
//'Writing the string (AT) and AT+SBDWT' function call
HH: WriteString1(initString1);
//'Reading the response of AT' function call
ReadString1(response1);
if(response1[5]!=0x4F)
goto HH;
putc(response1[5], PORT1);
// ‘Writing the string AT and (AT+SBDWT)’ - function call
II: WriteString1(initstring2);
WriteString1(sbd);
// ‘Reading the response of AT+SBDWT’ - function call
ReadString1(response2);
putc(response2[15], PORT1);
// ‘Writing the string AT+SBDI’ - function call
JJ: WriteString1(initstring3);
// ‘Reading the response of AT+SBDI’ - function call
ReadString2(response3);
if(response3[17]= =0x32)
76
goto HH;
putc(response3[17], PORT1);
// ‘MT Message Reading’ - function calls
WriteString1(initstring4);
ReadString2(response1);
WriteString1(initstring3);
ReadString2(response2);
WriteString1(initstring5);
// Calling the MT massage read function,("ReadString3")
ReadString1(MT);
} // End of TRUE of data_session_time
else {
fputc (0x41,PORT1); // Basically do nothing, here writing ‘A’ for display during
// testing
} // End of FALSE of data_session_time
} //End of while loop
} // End of main program
77
B.2 System Implemented
Figure B.1 gives the picture of the system implemented, showing the 9601 transceiver
[30] connected to the PIC microcontroller with DB9 RS-232 cable in the 3-wire mode. It
also shows the cables, lightning arrestor and the antenna. The PC is used here for the
purpose of monitoring the testing of the system.
Figure B.1: Picture of the system implemented
B.3 Additional Test Results and Explanations
Figure B.2 is a compilation of the responses of the 9601 transceiver when it was trying to
initiate a satellite session with an ATC (AT+SBDI) for an MO message transmission
from the field. It was seen that even though the green LED was in the ON state, meaning
78
that the network was available, the MO message transmission failed, three times
consecutively, which is given by the digit “2” of the response “+SBDI: 2, 9, 2, 0, 0, 0” in
the first three quadrants of the figure below. This is read via one of the two RS-232 ports
of the PIC8722, connected to the PC, with a serial port monitor. The program in the
PIC8722 continuously tries to initiate the satellite session until it is successful. Hence, is
seen that at the fourth trial the first digit of the response is a value “1”, as seen in the
fourth quadrant, indicating that the MO SBD message was successfully sent from the ISU
to the ESS.
Figure B.2: Test result for Mobile Originated message transmission
79
Appendix C
Appendix
C.1 MATLAB®
Code for Exhaustive Search Algorithm to Solve the Non Linear
Programming
***********************************************************************
% This program implements the exhaustive search algorithm to solve the NLP and
% also plots the sample solution of Npg, Nmi and Nei and its corresponding R.
% objective functions
% Author: Ujjwal Deep Dahal
% Created on: May 30, 2008
***********************************************************************
% Exhaustive Search Algorithm
clear all; clc; close all;
% Objective Function coefficients
r = [50 30 10];
table0 = [0 0 0 0];
%Coefficients of Data byte constraint
c1 = [1 1 1];
c11 = 41;
80
%Coefficients of PME constraint
c2 = -[1/40 -1 1/16 -1/2 -1 1/80 410];
c21 = 0;
% The exhaustive search algorithm
for Npg = 1 : 41 ,
for Nmi = 1 : 41 ,
for Nei = 1 : 41,
N1 = [ Npg Nmi Nei ].' ;
N2 = [ Npg^2 Npg Nei^2 Nei Nmi Npg*Nei 1].' ;
if ((c1*N1<=c11) && (c2*N2<=c21))
R = r*N1 ;
table0 = [ table0 ; [ Npg Nmi Nei R ] ] ;
end
end
end
end
% Extracting the samples of Npg, Nmi and Nei from the solution points, for plotting
t1=table0(1:10,1:3);
t2=table0(2000:2010,1:3);
t3=table0(5000:5010,1:3);
t4=table0(7000:7010,1:3);
81
t5=table0(9000:9010,1:3);
t6=table0(10651:10661,1:3);
all=[t1;t2;t3;t4;t5;t6];
%Extracting the corresponding samples of R, from the solution points, for plotting
o1=table0(1:10,4);
o2=table0(2000:2010,4);
o3=table0(5000:5010,4);
o4=table0(7000:7010,4);
o5=table0(9000:9010,4);
o6=table0(10651:10661,4);
oall=[o1;o2;o3;o4;o5;o6];
%Plotting Npg, Nmi and Nei and its corresponding R values
figure(1);
p=1:65;
bar (all,'stack')
xlabel ('Sampled Solution Points (Numbers)')
ylabel ('Sub-Frame (Numbers)')
h1 = gca;
h2 = axes('Position',get(h1,'Position'));
plot (p,oall,'k','LineWidth',3)
set (h2,'YAxisLocation','right','Color','none','XTickLabel',[])
82
set (h2,'XLim',get(h1,'XLim'),'Layer','top')
pause
% The function to plot the constraints
hold off ;
% Plotting the Data byte size constraint
x1 = [ 0 41 0 0 0 0 41 0 0 ] ;
y1 = [ 0 0 41 0 0 0 0 0 41 ] ;
z1 = [ 0 0 0 41 0 41 0 0 0 ] ;
figure(2);
plot3(x1,y1,z1,'ok-.') ;
hold on
view([145,45]) ;
grid ;
% Plotting the PME constraint
for Nei = 1:41:41;
for Npg = 1:41;
Nmi(Npg,1) = 10/(20^2)*(Npg -(80 - Nei)/4)^2 +10;
end
Npg = 1:41;
83
Nei = 1:41;
plot3 (Npg,Nei,Nmi,'k')
xlabel ('PD Sub-frames(Npg)')
ylabel ('ED Sub-frames(Nei)')
zlabel ('MD Sub-frames(Nmi)')
end
C2. MATLAB®
Code for Non Linear Programming Solution with Built-in
Functions
***********************************************************************
% This program is for solving the NLP with the built-in functions in MATLAB®
% Author: Ujjwal Deep Dahal
% Created on: May 15, 2008
***********************************************************************
% Step 1: Writing an M-file for the objective function
function f = objfun(x)
% The negative sign for the objective function is given to get the maximization of the
% objective function as function ‘fmincon’ gives the minimum value in return
f = -1*(50*x(1)+30*x(2)+10*x(3));
84
% Step 2: Writing an M-file for the constraints
function [c, ceq] = confun(x)
c = [x(1)+x(2)+x(3)-41; -x(1)+1; -x(2)+1; -x(3)+1; (-x(1)^2]/40+ \\
x(1)-(x(3)/16)^2+((x(3)*x(2))/2)-((x(1)*x(3))/80)-410];
ceq = [];
%Step 3: Invoking the constrained optimization routine
clear all;
close all;
clc;
% Randomly guessing the decision values
x0 = [1; 1; 1];
lb = [0;0;0];
options = optimset('LargeScale', 'off');
[x,fval] = fmincon(@objfun, x0, [],[],[],[],lb,[],'confun',options)
Curriculum Vitae
Candidate’s full name: Ujjwal Deep Dahal
Universities attended: P.S.G. College of Technology, Bachelor of Engineering, 2002.
Work experience: Worked in Bhutan Power Corporation Ltd. from 2002-2006.
Publications:
U. D. Dahal, B. R. Petersen, and J. Meng, “Iridium Communication System for Data
Telemetry of Renewable Distributed Generation System,” in 24th Biennial Symposium on
Communications, (Kingston, Ontario, Canada), pp. 262-265, June 24-26, 2008.