IHOGA 2.5 User Manual
IHOGA 2.5 User Manual
IHOGA 2.5 User Manual
Version 2.5
User’s manual
February 2020
Main researcher:
(rdufo@unizar.es)
https://ihoga.unizar.es/en/
University of Zaragoza
Zaragoza, Spain
iHOGA v. 2.5 User’s manual 1
CONTENTS.
There is a start-up guide with which to quickly learn the basic operation of the program.
• Added importing hourly wind speed, irradiation and temperature from PVGIS or form
Renewable Ninja.
• Changed loss factor of the power of the PV modules by the efficiency factor (now it is
considered the efficiency=1/loss_factor)
The PRO + version can be used without any limitation, in any field.
EDU version can only be used in training or educational fields. The use of EDU version is not
allowed in engineering works, works of installations, etc., and, in general, in any case in
which there are derived economic transactions. Nor is it allowed to be used in research
projects such as the development of doctoral theses, etc.
• Sensitivity analysis
• Probability analysis
• Hydrogen
• MPPT Photovoltaic
• Obtain optimal PV modules slope / optimize panel slope together with all other
variables to be optimized
• Possibility to choose priority for supplying the energy not covered by renewables
through the AC network.
You may not modify, reverse engineer, decompile, or disassemble the object code portions of this
software. You may not sell, rent, lease, or otherwise charge for the distribution, installation, copying,
or storage of the Software. This Software is owned by Rodolfo Dufo-López, and is protected by
copyright law and international copyright treaty.
1. This software is provided 'as is' and without any warranties expressed or implied, including, but not
limited to, implied warranties of fitness for a particular purpose, and non-infringement.
2. You expressly acknowledge and agree that use of the Software is at your sole risk.
3. Calculations involving metheorological variables (irradiation, temperature, wind, etc.) and financial
variables (interest rate, inflation rate, etc.) are estimates that may differ significantly from the actual
values, the system models may differ significantly from actual performance and results of the
simulations and optimizations could differ significantly from actual operation and actual costs of
equipment and systems.
4. Data of commercial components of the databases have been obtained on the manufacturers websites
and costs have been obtained from online shops at a certain date. Current costs can be different from
costs shown on database. Some data have been estimated and may differ from actual data.
5. You give up the ability to require the author any responsibility for any defects, errors or omissions
or malfunctions or data from the software or from the databases.
7. You agree to use this software only in the field of education or training. You agree not to use this
software in any other area, including business, research or commercial areas (for these areas must
purchase the license PRO+).
Optimization is achieved by minimizing total system costs throughout the whole of the useful
lifespan of the system, when those costs are referred to or updated for the initial investment
(Net Present Cost, NPC). Optimization is therefore financial (mono-objective).
However, the programme allows for multi-objective optimization, where additional variables
may also be minimized: equivalent CO2 emissions or unmet load (energy not served), as
selected by the user. Since all of these variables (cost, emissions, or unmet load) are mutually
counterproductive in many cases, more than one solution is offered by the programme, when
multi-objective optimization is performed. Some of these solutions show better performances
when applied to emissions or unmet load, whereas other solutions are best suited for costs.
We can also include in the multiobjective optimization the Human Development Index (HDI)
and job creation (these two objectives are maximization).
There is also the possibility of optimizing temporary installations (which are used only for a
period of time, with the need to transport, assemble and dismantle them), minimizing the
associated cost (transport + operation and maintenance + degradation) or the weight to be
transported.
• Photovoltaic modules
• Wind Turbines
• Hydraulic turbine
• Fuel cell
• H2 tank
• Electrolyzer
Although the combination of all of them is possible, in many cases it will be interesting that
the hybrid system only includes some of them.
The photovoltaic generator can be connected to the DC bus (by default, DC coupling) or to the
AC bus (with its own inverter, AC coupling). Wind turbines can also be defined in AC or DC.
The hydrogen components (fuel cell and electrolyzer) can also be connected to the DC bus (by
default) or to the AC bus (with their respective inverter and rectifier). For example, the
following is an scheme where all the components are on the AC bus:
The programme allows for selling AC electric energy to the grid (surplus unused energy),
purchasing AC electric energy to the grid (unmet load by the standalone system) or selling
surplus hydrogen, produced in the electrolyzer and stored in the tank. Simulations are also
possible for feasibility studies of zero-consumption renewable energy facilities connected to
the grid.
The sale to the AC grid can be of any excess energy or not exceeding the energy purchased
annually or monthly (Net Mettering of energy, annual or monthly, with or without hourly
periods). You can also define the Net Billing, i.e. to take into account, instead of the energy
balance, the economic balance. Net Mettering only in PRO + version
The program can optimize the combination of elements and also the control stratetgy (which
determines when batteries or diesel genset must supply the load, to what level the batteries
should be charged, ...).
It can also be considered the case of systems with batteries connected to the AC grid,
optimizing the periods of charging (purchase of network energy) and discharge (supply the
consumption load by means of the battery, which can even inject energy into the AC grid to
sell it).
If hybrid systems are optimally designed and controlled, in many cases the cost of production
of each kWh is reduced compared to generating facilities that only make use of a single
energy source.
In addition, stand-alone photovoltaic or wind power plants (including both batteries storage),
although well designed, may be below the safety margin that would guarantee the coverage of
the electricity throughout the year, due to unexpected peak loads or due to long periods of low
irradiation or low wind speed. Therefore, there are cases where it can be positive to have some
system of auxiliary generation (usually diesel or gasoline generator) that allows to supply the
load during the periods previously mentioned. This will ensure an acceptable battery charge
and an extended service life.
Energy storage is usually carried out using batteries, usually lead-acid batteries. The most
suitable for these systems are tubular batteries optimized for solar systems: OPZS (flooded
electrolyte) and OPZV (gel, maintenance free). Lead-acid classical OGi batteries (flat-plate
with a flooded electrolyte, electrodes are thicker than for automotive batteries) are also usually
used, their lifespan is lower but they are also cheaper.
Lithium batteries (the most common LiFePO4) can be an economical alternative (they support
many more cycles than lead-acid) depending on their cost of acquisition.
Often, to ensure the uninterrupted supply of energy to the loads of the system, the system
include back-up AC generators (usually Diesel or gasoline). It is the system most widely used
as an auxiliary system for periods of low irradiation or to cover certain high power
consumption. However, AC generators have the environmental disadvantage of generating
toxic and greenhouse gases.
Thermoelectric generator (TEG) can be a good option in places with very low irradiation in
winter, where heating is needed (Champier, 2017) (Dufo-lópez, Champier, Gibout, Lujano-
rojas, & Domínguez-navarro, 2019). Also in off-grid systems where a stove is used, for
heating or cooking (see figure), TEG can use the residual heat of the stove to produce
electricity (with a low efficiency, around 5%). The TEG is usually composed by several
thermoelectric modules (TEM) in serial or parallel. The hot side of the TEM is connected to
the combustion exhaust hot gasses of the stove and the cold side is connected to the ambient
temperature or to a cooling circuit.
A DC voltage appears in the TEM that is proportional to the difference of temperatures: If the
TEM is connected to the electrical load (or to the battery bank to store the electricity
produced) by means of a MPPT system (so that the load connected to the TEG is always the
same as the internal resistance, that is, matched load), the ouptput power of the TEG will be
the maximum. In places with very low irradiation in winter, where heating is needed, or in off-
grid systems where there is a stove for cooking or heating, TEG can be part of the optimal
solution to supply the electricity.
The storage of electrical energy in hydrogen by means of fuel cells combined with
electrolyzers may, in the future, supplement or replace the storage in batteries. The
electrolyzer generates H2 with the surplus energy produced by renewable sources, which is
stored in the H2 tank. Subsequently, when the energy demand is higher than that produced by
renewable sources, the fuel cell uses the stored H2, which, combined with O2 from the air, by
reverse electrolysis produces electricity and water. However, the low energy efficiency of
electricity-hydrogen-electricity conversion (around 30% or less), as well as the high prices of
these equipments, mean that at the moment they are not competitive with battery storage.
(with much lower prices and much higher efficiencies, of the order of 80% or higher).
There is also the option that the fuel cell uses H2 (not from the electrolyser), methane, etc.,
that has been purchased externally.
Although the advantages of hybrid systems versus single energy systems are clear, the optimal
calculation of a hybrid system is very complex, due to the variability of the availability of
renewable resources (solar irradiation, wind, hydraulic resource), as well as energy load. In
addition, some components of the system have non-linear characteristics, and the number of
variables influencing the optimization is very high. The hybrid system to optimize has a large
number of possible solutions (combinations of photovoltaic modules, wind turbines, hydraulic
turbine, batteries, AC generator, fuel cell, electrolyser, inverter or some of them, and also
control strategy variables). All this makes optimization a complicated task with classical
mathematical techniques (for example with mixed-integer programming).
There are different softwares of simulation and optimization of hybrid systems (Bernal-
Agustín & Dufo-López, 2009c)(Dufo-López, 2007)(Dufo-López & Bernal-Agustín, 2011),
but none uses advanced optimization algorithms except iHOGA. Other programs (eg
HOMER) perform the optimization by testing all possible combinations. One problem with
this methodology is that if the number of possible combinations is very high, the calculation
time increases enormously and becomes inadmissible. In addition, the control strategies are
too simple, and no in-depth optimization is possible as in iHOGA. Other advantages of
iHOGA are in the models used, more precise than in HOMER, in the components as well as in
the economic calculations, besides functionalities like the pre-sizing, the optimization of the
slope of the photovoltaic modules, the probability analysis, the advanced battery ageing
models, multi-objective optimizations, etc.
iHOGA uses Genetic Algoritms (GA, see Annex 1 for more info, and references (Bernal-
Agustín & Dufo-López, 2009a)(Dufo-López, 2007)(Dufo-López & Bernal-Agustín,
2011)(Dufo-López & Bernal-Agustín, 2005)(Dufo-López, Bernal-Agustín, & Contreras,
2007)]) to perform the optimization, for the combination of the components (main GA) and
also for the control strategy (secondary GA). Genetic algorithms allow to obtain satisfactory
solutions when applied to problems with a great level of complexity, and with very low
calculation times. If the number of possible combinations is very high, using a population of
0.003% of the possible combinations, with 15 generations, i.e. evaluating approximately
0.04% of the possible combinations, there is a very high probability of obtaining the optimal
or a solution Very close to the optimal one (Bernal-Agustín & Dufo-López, 2009a). That is,
the optimization time can be reduced to less than 0.1% with great probability of obtaining the
optimal solution or a very close solution.
iHOGA also has the possibility to evaluate all possible combinations of components and
control variables of the strategy, i.e. optimization according to the enumerative method,
without genetic algorithms. This possibility is feasible if only the combination of components
is optimized, since the number of possible combinations is usually not very high. However, on
other occasions (if you want to optimize components and control strategy simultaneously) this
possibility is not feasible, since the number of combinations of components and strategies can
be enormous, and calculation times can be made unfeasible, needing many days). Genetic
algorithms allow finding very close to optimal solutions with very low calculation times
(Bernal-Agustín & Dufo-López, 2009a)(Dufo-López, 2007)(Dufo-López & Bernal-Agustín,
2011).
In summary, iHOGA is a computer tool for the optimum dimensioning of hybrid installations
contemplating the possibility of including solar, wind and hydraulic renewable energies,
together with support systems based on storage (batteries), back-up generators (AC
generators), and fuel cell (combined or not with electrolyzer and hydrogen tank). To do this, it
uses genetic algorithms, which obtains the optimal combiantion of components and control
strategies (see Annex 2 for more information on control strategies).
In Annex 1 there is more info about the Genetic Algorithms used in the optimization.
iHOGA makes use of two genetic algorithms, the main algorithm and the secondary
algorithm. The main algorithm provides an optimum configuration for the PV modules, the
wind turbines, the hydraulic turbine, the batteries, the AC generator, the fuel cell, the
electrolyzer, and the inverter, in order to minimize total system costs. It calculates the total
cost during the system lifespan, calculating the cash flow for each year and updating it with
respect to the initial time, i.e. it calculates the Net Present Cost (NPC)1 of the system, in
mono-objective optimization. For multi-objective optimization (Bernal-Agustín, Dufo-López,
& Rivas-Ascaso, 2012)(Dufo-López & Bernal-Agustín, 2008)(Bernal-Agustín & Dufo-López,
2009b)(Dufo-López et al., 2011) (Dufo-López, Cristóbal-Monreal, & Yusta, 2016a)(Coello,
Veldhuizen, & Lamont, 2002)(Zitzler & Thiele, 1999), iHOGA looks for solutions with low
NPC and low CO2 and/or low unmet load by the stand-alone system. Also there are two other
possible objectives to maximize: the Human Development Index (HDI) and Job Creation.
iHOGA also obtains, for each component configuration provided by the main algorithm, the
control strategy (combination of control variables, see Annex 2 for more information on
control strategies) more suitable to minimize costs (through the secondary algorithm) .
Thus, for each possible solution obtained from both algorithms, the sum of the cash flow
during the years transferred to the initial moment of the installation (NPC) can be calculated,
which includes:
The initial costs of the system (acquisition of the different components of the system).
The fuel cost of the fuel cell in the event that it consumes external fuel, i.e. not
generated by an electrolyzer.
1
In most cases where optimization is applied through iHOGA, cash flows are usually expenses only (purchasing,
replacement, maintenance, and fuel costs, etc), with no income. The different costs throughout the whole of the
study period are referred to the initial time of the investment using the discount rate (approx. interest rate minus
inflation rate), thereby producing the NPC. The lower the NPC value, the better the investment .
It is possible to use the option in iHOGA to sell surplus hydrogen or to sell electric energy to the AC grid (it is
also possible to purchase energy from the grid to compensate for unmet load by the hybrid system). In those
cases, sales are accounted for within iHOGA as negative values, since they must be subtracted from component
acquisition costs, replacement, and maintenance expenses. We may thus achieve an income from energy sales
which is higher than system costs, resulting in a negative value for “NPC”. This means that our facility will
achieve a net benefit (positive values mean expenses, i.e. costs). A larger negative value for our “NPC” will
indicate a more profitable system.
The costs of purchasing unmet load (electrical energy not served by the system) to the
AC grid (if there is AC grid).
The replacement costs of the elements whose lifespan is less than the study period
(usually 25 or 30 years, and usually coincides with the duration of the photovoltaic
modules).
The revenues (which are subtracted from the costs) due to the sale of surplus electric
power to the AC grid as well as the sale of surplus H2 generated (if any).
Revenues (which are subtracted from costs) by sale of the different components (if
residual lifespan remains) at the end of the study period of the installation. The
revenues from these sales are assumed proportional to the life left. There is the
possibility of considering these incomes or not.
The equations for the NPC calculation are detailed in (Dufo-López, Cristóbal-Monreal, et al.,
2016a).
Total CO2 cycle life emissions are also obtained, including those generated by the AC
generator fuel (usually diesel or gasoline), as well as those generated in the manufacture,
transportation and recycling of the components of the system, and those generated in the
electricity purchased from the grid, if applicable (Dufo-López et al., 2011). The result is
obtained in kg of CO2 per year (total emissions during the study period from fuel and from
manufacturing, transportation and recycling of components are divided by the number of years
of system life).
There is the possibility of optimizing the cost or the weight of the system in temporary
installations (Cristóbal-Monreal & Dufo-López, 2016) (to be transported, assembled and at the
end of their period of use, must be dismantled and transported back to the origin). In such
cases, if the cost is optimized, the transport, operation and wear costs of the system are
minimized during use (the NPC is not calculated since the costs are not updated since the
duration is less than one year). In the case of minimizing the weight, the total weight to be
transported is minimized, including going and return.
You can also perform probabilistic optimization (using Monte Carlo Simulation) (Dufo-
López, Pérez-Cebollada, Bernal-Agustín, & Martínez-Ruiz, 2016)(Dufo-López, Cristóbal-
Monreal, & Yusta, 2016b), where meteorological data and demand follow certain functions of
probability, obtaining results that are also probability distributions.
For each combination of components and control variables, the system is simulated for a full
year, since it is assumed that all years of the system's lifetime will be the same (except in the
case where the advanced batteries life model proposed by Schiffer et al., 2007 (Schiffer et al.,
2007), where the simulation of the system must be carried out until the end of the battery life).
That is, in general (except "Schiffer" battery model) the results obtained in the simulation for
one year are assumed to be the same for the rest of the life of the system. During that year, at
intervals of between 1 minute and 1 hour (depending on the designer's choice), all variables
are obtained to define the behavior of the system, considering the characteristics of the
elements that compose the system, the control variables, energy demand data and
meteorological data. We consider the semi-stationary system, so that in each interval (between
1 minute and 1 hour) the different variables of the system remain constant.
If the battery model is that of Schiffer et al., 2007 (Schiffer et al., 2007), which takes into
account the aging of the batteries (due to degradation and corrosion), not every year are the
same, but the simulation is done continuously until the batteries end their lifespan (when the
remaining capacity drops to 80% or nominal). From that moment, the cycle is repeated.
In the most complex case, with all the components of the system included, each time interval
of the year iHOGA must estimate the following variables: the power generated by the
renewable sources, which depends on solar irradiation, wind and hydraulic flow in that
interval, The electrical energy consumed by the loads (both AC and DC) and the amount of
external H2 consumption, which depends on the loads expected for that interval, the State of
Charge (SOC) of the batteries, as well as the amount of H2 available in the hydrogen tank and
the amount of water available in the water tank.
In the case of not having measured values for the solar irradiation, it can be calculated from
the monthly data using the model of Graham (1990) (Graham & Hollands, 1990), which
entails statistical variability, or using the models of Liu and Jordan, 1960 (Liu & Jordan,
1960), Hay and Davis, 1978 (Hay & Davies, 1978) and Rietveld (Rietveld, 1978), by using
different correlations: Liu and Jordan (1960) (Liu & Jordan, 1960), Collares-Pereira (1979)
(Collares Pereira & Rabl, 1979) and Erbs et al (1982) (Erbs, Klein, & Duffie, 1982).
From the above data, the irradiation in steps of 1 minute is obtained following a first-order
autoregressive function model based in the one used by Meteonorm software (Meteonorm.
Global meteorological database. Handbook part II: Theory. Version 7.1, 2015).
Regarding the wind speed, if no measured values are available, iHOGA calculates it from the
monthly data using the Dufo-Lopez and Bernal-Agustín model (Dufo-López & Bernal-
Agustín, 2012). Then the wind speed values are obtained in steps of 1 minute following the
first-order autoregressive function model used by Meteonorm software (Meteonorm. Global
meteorological database. Handbook part II: Theory. Version 7.1, 2015).
If load data are not available at 1 minute intervals, the software obtains them from the hourly
data using a first-order autoregressive function model similar to that used for irradiation.
In order to consider the effect of ambient temperature on photovoltaic generation and wind
generation (Dufo-López, Cristóbal-Monreal, et al., 2016b) the hourly temperature must be
known, which, if no data are available, can be calculated from monthly average temperature
data (together with the irradiation data) applying the model of Erbs et al. 1983 (Erbs, Klein, &
Beckman, 1983).
In the case of lead-acid batteries, the state of charge of the batteries, as well as the maximum
current allowed by them can be calculated according to several models, to be chosen by the
user: Model Ah (used by Schuhmacher in 1993) (Schuhmacher, 1993), KiBaM model
(Manwell and McGowan, 1993) (Manwell & McGowan, 1993), Copetti model (Copetti et al.,
1993 y 1994) (Copetti, Lorenzo, & Chenlo, 1993)(Copetti & Chenlo, 1994), Schiffer model
(Schiffer et al., 2007) (Schiffer et al., 2007). The calculation of the estimated lifespan of the
batteries is very important, since it influences the number of replacements of the batteries
during the study period and therefore in the total cost NPC of the system. In the first versions
of the program it was estimated according to the simplified method of Equivalent Cycles to
failure (used by other optimization programs like HOMER). It is possible to choose between
this method and another more complex and precise, the method of the Count of Cycles or
Rainflow according to the algorithm of Downing (Downing and Socie 1982)(Downing &
Socie, 1982), used by other software programs more accurate (as HYBRID2) (Green &
Manwell, 1995). In version 2.2 it was added the method proposed by Schiffer et al (Schiffer et
al., 2007), a much more precise model, which includes the ageing by corrosion (a comparison
of the different models was studied in (Dufo-López, Lujano-Rojas, & Bernal-Agustín, 2014),
where it was verified that the model of Schiffer gives similar results to the real ones, whereas
in some cases the other models predict the duration of the batteries of the order of 2 or 3 times
superior to the real duration).
In the case of lithium batteries, in addition to the Equivalent Cycle life model and the Cycle
Count or Rainflow method, you can choose other three life models specific to lithium
batteries: two models for LiFePo4 / graphite batteries (Wang et al., 2011 (Wang et al., 2011);
Grot et al., 2015 (Groot, Swierczynski, Stan, & Kær, 2015)) and another model for
LiCoO2/graphite batteries (Saxena et al., 2016 (Saxena, Hendricks, & Pecht, 2016)).
Once a combination of components and control strategy has been simulated for all the time
intervals of a year, iHOGA knows the different parameters that will determine the NPC of the
system over its useful life: fuel consumption, energy cycled by the batteries, operating hours
of the different components, CO2 emissions, etc. With these data, iHOGA can know the
annual cost of the fuels and the cost of operation and maintenance, in addition to the initial
cost of acquisition of the elements. It can also be known how long it will take for each
component to need to be replaced. Finally, by updating or translating all these costs to the
initial moment of the investment, the NPC of the system is obtained.
2.1 Installation
To run the program you need the Microsoft Windows XP operating system or higher. It also
works under Linux with Windows emulator: tested on Ubuntu 14.04 with the Windows
emulator "Wine" program loader.
A minimum screen setting of 1152x864 pixels is recommended. Lower values will cause
some screens of the program not to be displayed in full and the scrollbars will have to be used.
It is also recommended that the text size of Windows be medium (if it is large it may not be
well visualized the texts of the program, some texts can be mounted on others). These
requirements are met by default by most of the computers that were manufactured some years
ago.
To install the application double click on the auto-installable file called iHOGA with
the version number.
A screen similar to the following will be displayed, informing of the version and compilation
date:
After pressing "Next" there are several screens to be accepted, and another screen where we
are asked for the directory where to install.
Important: The tables in the databases used by iHOGA are stored in the "Tables" directory
within the installation directory. It is recommended to copy the "Tablas" directory
separately and rename it, for example "Original Tables", it will be useful if in the future we
need the original tables.
If you want to install the irradiation and wind speed local database (in the case NASA online
database fails), you must download and execute the “RESOURCES-ENG.exe” self extracting
compressed file and install the database into the iHOGA installation folder.
If the software shows any error message, please, see the pdf file “Solution of frequent
errors” of the download aera of iHOGA web: https://ihoga.unizar.es/en/descarga/
3. INTRODUCING DATA
A welcome screen is shown when the programme is open.
On the Project Menu, there is a choice to create a new project, open an existing one, or quit
the application:
PRO+ version:
The first time we run iHOGA PRO+ version, it asks for a “user name” and a “keys”. These
fields must be filled with the data that the author will send by e-mail to the user, after the user
purchases the license.
After entering the user name and the two keys, clicking on "VALIDATE".
Then you click on "Request activation key." Under the button "Request activation key", a
message appears indicating to copy the lower window text and email it. Send the email to:
rdufo@unizar.es and rodufo@gmail.com
Warning!: Before you click the "Close Program" button, make sure you have copied the
contents of the window and it was sent by e-mail to rdufo@unizar.es and
rodufo@gmail.com with the subject: iHOGA 2.5 activation requested by ...
iHOGA will not ask for any key data the next time you open or create a new project.
The first time you create a new project (menu Project->New), iHOGA asks if you want to
change the default currency, i.e., if you want to use as default a currency different from Euro
(€).
iHOGA will only ask for the currency change you will use by default this first time we
create a project. If it is not changed at this time, the default currency will be the Euro.
3º Copy the original tables (after installing the software we have copied and saved them in
another directory called "Original Tables", see end of section 2.1) in the "Tablas" directory
inside the installation directory, deleting the previous ones.
4º Re-open the program, create a new project and change the currency
If we want to keep € as the default currency, we must click the "Cancel" button. If we want to
use another currency by default, we will click "OK".
If we click "OK" the following screen appears, where we can choose the new default
currency. You can choose between Euro (€), US Dollar (€) or any other to be defined.
If we choose another currency, a text box appears at the right where we must write its
abbreviated name. Below we must indicate the equivalence between the Euro and the new
currency.
If we click the "Cancel" button, the Euro will be kept as the default currency and the default
databases and data will not be altered. However, the next time you create a new project or
open a project, you will be asked to define the currency.
If we click "OK", the new currency will be the one that will use iHOGA by default, and the
economic values used by default and the cost data of the databases will be multiplied by the
factor we have set as equivalence between currencies. The next time we create a new project
or open an existing project, the program will no longer ask for the change of currency.
However, in each project, you can define another currency.
If we click on Project-> New, the program will ask for the name of the project and the folder
where we want the project to be created.
Once pressed "Save", the program will create a file with the name that we have given to the
project plus “.hoga”, in addition to a folder with the same name, in the same directory where
we created the project. In that folder the necessary tables and files for the execution of the
project will be placed.
Important: If the path from the root to the project directory is too long (more than 55
characters), the Paradox tables used by the program do not work, and when we open the
project it will give an error message. In that case, place the project in a directory with fewer
characters.
If the operating system is Windows Vista or 7 it will not let you save projects directly to C:\
The next screen is the main one of the program, although in the center the following window
appears, where it asks if we want the default values.
The default values are for the irradiation of Zaragoza, a predetermined energy consumption
load, and as system elements photovoltaic modules, batteries and diesel AC generator. If we
say yes, those values will be used. However, we can change them and add or remove
components. If we say no, we have to go into the different windows of the different
components to accept the ones that come by default, or change them.
If we choose Open an existing Project (Project->Open), a screen will appear where we should
look for the location of the project file that we want to open (with extension .hoga). In the
directory where the project file is, there must also be a folder with the same name, where are
the tables used by the program (when a new project is saved, iHOGA creates both the .hoga
file and the folder with the same name) . In the following figure it can be seen that we opened
the project "pv-diesel", marking the file pv-diesel.hoga, and it is observed that in the same
directory there is a folder also called pv-diesel.
The main screen shows menus and buttons. All of them provide access to additional screens
where the different elements of the system may be selected.
Text fields and check boxes are also available for further input of system details.
On the main screen there are 5 tabs where data must be entered (in the 5th tab we can see the
results of the optimization as a graph):
- GENERAL DATA
- OPTIMIZATION
- CONTROL STRATEGIES
- FINANCIAL DATA
- RESULTS CHART
- Maximum execution time and the way to select the optimization parameters (iHOGA or
user).
Also indicated:
- The time steps of the simulation and the date and time of the beginning of the simulation.
COMPONENTS:
The default hybrid system is PV-Diesel, with batteries. To add or remove components, select
them on "COMPONENTS.
When you add or remove a component, the schematic of the lower part is automatically
updated, and the buttons on the left that will introduce us to the screens of the different
components are enabled or disabled.
Minimum and maximum number allowed for batteries, PV modules, wind turbines and AC
generators parallel must be provided.
In section 3.11 PRE-SIZING it is shown that iHOGA can help to decide the maximum values.
Note: The parallel connection of more than two batteries is often problematic, so the
maximum number allowed in parallel battery should be 1 or exceptionally 2 (unless you have
multiple controllers for different battery banks).
CONSTRAINTS:
E. not supplied by the stand-alone system (default): The energy demanded by the load
that is not supplied by the standalone system (energy not served by all the components
of the standalone system, including the renewable sources, the batteries, the AC
generator and the fuel cell), but not including the AC grid.
In this case, it will be possible to purchase energy from the AC grid in some cases, to
compensate for unmet load by the hybrid system (this option is shown within the
“LOAD / AC GRID” screen, section 3.2). In these cases, we may select a percentage
of energy to be purchased from the grid. This value must be introduced in the field
defined as “Maximum Unmet Load allowed“.
E. not supplied by the system nor by the AC grid: The energy demanded by the load
that is not supplied by the standalone system (energy not served by the standalone
system, including the renewable sources, the batteries, the AC generator and the fuel
cell) nor by the AC gird, if it is available. That is, energy that cannot be covered by
any means.
In the case of wanting to cover all the demand, it is not desirable to indicate 0%, but it is
recommended to leave a minimum value, for example 0.1%. Leaving this parameter at 0%
is not convenient, since sometimes the decimal rounds imply that the software counts small
values of unmet load, so if 0% is indicated, it is possible to discard solutions that are correct.
iHOGA assigns an infinite NPC value to every element combination that does not meet
the requirements for Maximum Allowed Unmet Load. This indicates that the system is not
acceptable, and will not fulfill our requirements.
More constraints:
Clicking the "More constraints" button a screen appears showing all the possible restrictions
to fix:
- Minimum number of days of autonomy (sum of days of autonomy that give the batteries, if
any, plus autonomy gives storage of hydrogen, if any, plus autonomy gives the AC generator,
if any). If AC generator (eg Diesel) exists, it is considered by default that autonomy is infinite
(unless you uncheck the "if there is AC generator or purchasing unmet load from AC grid is
allowed, number of days of autonomy = infinitum"). The same is seen if fuel cell is used and
H2 is externally purchased. It is also considered infinite autonomy if purchased to AC the
unmet load (this is specified in the “LOAD / AC GRID” screen, see section 3.2). If a
combination of components and control strategy does not meet the minimum autonomy, this
combination is discarded. To calculate the days of autonomy, the energy consumed during one
day is considered to be the average daily consumption (energy consumed during the year
divided by 365).
- Nominal capacity of the battery bank (Ah) <CR times the shortcut current of the PV array +
current from Wind Turbines group at 14 m/s (A), so that the batteries can be charged properly
by the photovoltaic generator and the wind turbines. For each combination of components and
control strategy, if this inequality fails, that combination is discarded. This restriction is only
taken into account if there is present in the system a PV generator and a batteries bank.
- Minimum renewable Fraction (%). Minimum percentage of load to be covered by renewable.
If a combination does not fulfill this fraction, it is discarded.
- Levelized Cost of Energy (€ /kWh). Maximum allowed for the kWh price. If a combination
does not comply with this maximum value, it is discarded.
The parameters of the optimization can be selected by iHOGA (default) or by the USER. If
the parameters are selected by iHOGA, the user must decide the maximum time to execute the
optimization (default 15 min).
If in a particular project (for example a project where we have added wind and hydrogen
components and the maximum number of componets in parallel is high) there are many
possible combinations of components and we change the value of the maximum execution
time for example to 1 minute, a screen similar to the following appears, where it informs us of
Notes:
If the battery model is the Schiffer et al. model, much more accurate than the others (see ref.
(Schiffer et al., 2007)), the calculation time is several times higher, since the simulations cost
much more time. This is already taken into account by iHOGA to estimate the calculation
time.
If "Try Both" is checked in the control strategies tab, the calculation time is somewhat higher.
This is already taken into account iHOGA.
This screen also appears when we move with the mouse over the area of the parameters of the
optimization or the area where we set the minimum and maximum numbers of components or
over the area of the control variables, and when changing some data it is updated.
However, if the maximum execution time we allow is too small, iHOGA will inform us of the
minimum time needed to finding the optimal solution or to obtain a solution close to the
optimal with high probability.
The user can decide himself the parameters of the optimization by selecting "USER" instead
of "iHOGA”.
If the time allowed by us is lower than the time needed for the enumerative method, iHOGA
will use the genetic algorihtms to optimize the system in the time allowed. However, if the
time allowed is so low that it is not enough to ensure a minimum probability of obtaining the
optimial solution by mans of the genetic algorithms, iHOGA will take the minimum time that
it considers correct to run the genetic algorithsm (as, by default, the checkbox
If the number of combinations is very high but we want to perform the optimization in a short
time, we must reduce the number of possible combinations. The best way is to eliminate
control variables to optimize, since they have less effect than the components.
It is recommended that the user allow the parameters of the optimization to be selected by
iHOGA. However, more details about genetic algorithms and selection of optimization
parameters are explained in Annex 1.
The time steps of the simulation must be fixed (between 1 and 60 minutes) and also the time
and date of the start of the simulation.
It is common to use the 60 minute time step, since the simulations are much faster and
therefore the optimization is also faster. If you want to give more detail to the simulations you
can reduce the time step, up to 1 minute, but that involves much longer calculation time.
At the indicated time and date, the simulation of each combination of components and control
strategy will begin, with the simulation performed for one year for each combination (more
years if the Schiffer model is selected for the batteries). The batteries (if any) begin the
simulation with a percentage of the state of charge that is set on the BATTERY screen (see
section 3.10). The hydrogen tank (if any) begins the simulation with a load that is fixed on the
screen of the components of the HYDROGEN (see section 3.15) and the water tank (if there is
previously pumped water consumption) starts with a fixed capacity fixed in the LOAD / AC
GRID screen (see section 3.2). Normally this date in which the simulation starts affects little
to the overall expected behavior of the system.
An option is available to compare the results obtained in the optimisation of the system and
those provided by a pure Photovoltaic system (PV-only) calculated according to the Worst-
Case Method. For this option, a number of days of autonomy must be introduced for the
battery to supply the load. Please note that PV modules and batteries must be selected for this
option to be available.
In this tab the TEMPORARY INTERVAL must be chosen first: Fixed installations (the entire
useful life of the system is considered, which will be set in the tab "Financial data" tab) or
temporary installations that are transported from one place to another (where only considers a
certain operating time).
This is the option marked by default. The entire useful life of the system is considered (the
study period marked in the tab "Financial data" tab, default 25 years). You must choose
between optimization MONO-OBJECTIVE (economic) or MULTI-OBJECTIVE (several
objectives).
Mono-objective optimization:
By default the mono-objective optimization is selected, so the program will seek the most
economical solution (lower total cost over the lifetime, NPC). If the method of optimization is
by genetic algorithms (and not by the enumerative method), in each generation, the program
orders the solutions by cost, so that the least cost are more likely to reproduce, and move to
the next generation. In fact, the best always passes intact to the next generation, without
mutating (elitism). In the results chart, when the execution of the mono-objective optimization
is going on, we will see the graph of the cost of the best solution of each generation, in
addition to the table with the characteristics of the best solution of each generation.
Multi-objective optimization:
If "Another" is selected, a panel appears to the right, where you can define double or triple
multiobjective optimization.
The chart includes the individuals for every generation, the emissions, unmet load or other
objective versus NPC for each individual (this is known as a “Pareto” diagram). The table
provides a list of individuals, sorted from best to worst. Every time a new generation is
obtained, a new chart and table are shown.
A check box is available to “Display only Non-Domin.”.
The Multi-Objective algorithm is based on SPEA (Strength Pareto Evolutionary Algorithm),
and on SPEA 2.
The user must introduce the maximum percentage difference of NPC that may be achieved by
any non-dominated solution, as referred to the non-dominated solution with the lowest NPC.
The maximum number allowed for non-dominated solutions must also be introduced. This
prevents the number of non-dominated solutions from being too close to the population
number, which would result in a saturation of non-dominated solutions. In this case, they
would be too similar, without a reasonable degree of variability.
As a practical example, let us assume that a non-dominated solution has the lowest NPC value
of all, at € 100,000. If the percentage specified by the user is 60%, all non-dominated
solutions with NPCs above € 160,000 will be eliminated (provided the total number of non-
dominated solutions is larger than the maximum number allowed for non-dominated
solutions). After all non-dominated solutions above the specified percentage are eliminated,
the number of the remaining non-dominated solutions is checked. If this number is still larger
than the maximum number allowed, truncation is applied. For each pair of adjacent non-
dominated solutions on the Pareto diagram, a check is carried out of the modulus of the
distance between them. The solution is eliminated for the closest pair, where the solution is
nearer from its adjacent solution on the other side.
The user must also decide on the number of generations between successive storage of the
Pareto diagram, i.e. NPC and other objectives values for the individuals in that generation.
The first and the last generations are stored by default. Once the simulation is over, the
different Pareto values stored may be exported as an ASCII file, by clicking on “Export
Paretos”.
In the case of selecting this type of optimization, it would be for transportable systems that are
installed temporarily in a certain place, and that we want to minimize the weight to be
transported (round trip) or we want to minimize the total cost of operation + maintenance +
transport (round trip) + degradation, according to the methodology set out in the reference
(Cristóbal-Monreal & Dufo-López, 2016).
This type of optimization can only be done for photovoltaic-diesel-battery systems (or
photovoltaic-diesel, or photovoltaic-batteries, or diesel-batteries).
It must be set: when the temporary installation begins, the number of days that it works, the
distance to which the installation is to be transported, the diesel density (kg/m3), if there is a
minimum amount of liters of diesel fuel wants to set, the transport cost in the monetary unit
per ton and km, as well as the extra ageing (degradation) of the PV modules, batteries, AC
generator and inverter in percentage (extra deterioration due to transport, assembly and
disassembly of the components).
This tab defines the overall control strategy and the variables to be optimized. The strategy
can also be optimized in the case of batteries in grid-connected systems (charging of batteries
during the hours when the electricity price of the AC grid is low and discharge during the
hours when the price is high).
For both strategies, we have the possibility to optimize the control variables, while some do
not make sense depending on the global strategy chosen.
The variables to be optimized must be selected here, with a maximum number of 12 (see
Annex 2). The exact number of variables will depend upon the system elements selected. For
the case shown in the figure below, no fuel cell has been selected (no electrolyzer), so the
following variables are disabled: Plimit_charge, P1_FC, P2, Pmin_FC, Pcritical_gen, SOCstp_FC
and H2TANKstp , as they are no longer required..
If you choose the strategy "Load following", Pcrtical_gen and Pcritcal_FC variables
are set to 0 W. That is, the generator (or fuel cell) never work at rated power to try to
charge the batteries. When it must operate, the power required to operate is the one to
strictly meet the demand. This strategy implies that SOCstp_gen and SOCstp_FC are
equal to SOCmin.
However, these variables can be optimized, as well as other variables. In case of
optimizing these variables, for example, if the software in a particular case chooses
Pcritical_gen= 1000 W and SOCstp_gen = 75%, this means:
- For each hour, if the generator has to supply a power greater than 0 but less than
1000 W, it runs at its rated power, charging batteries with surplus power to 75% of
SOC (try to reach this value of SOC alone during that time, the following will not).
That is, for that time, the strategy really will be "cycle charging" without continue up
to SOCstp.
- For each hour, if the generator has to supply a power exceeding 1000 W, it will run at
the power needed to supply the demand, without trying to charge the batteries. That is,
for that time, the strategy will be "load following".
If you choose the strategy "cycle charging", Pcritica_gen and Pcritica_FC variables are
set at a very high value, 1010 W (thus ensuring that no load will exceed this value).
That is, the generator (or fuel cell) will run, when batteries can not meet the load, at
rated power, not only to meet the demand, but also trying to charge the batteries to
SOCsetpoint_gen (or SOCsetpoint_FC in the case of fuel cell). If the option “continue
up to SOCstp” is selected, it will continue the next hours until SOCstp is reached.
SOCstp_gen and SOCstp_FC by default are 100%.
However, these variables can be optimized, as well as other variables. In case of
optimizing these variables, for example if the software in a particular case chooses
Pcritical_gen= 1000 W and SOCstp_gen = 75%, this means:
- For each hour, if the generator has to supply a power greater than 0 but less than
1000 W, it will run at its rated power, trying to charge batteries with surplus power to
75% of SOC (try to reach this value of SOC only during that hour if the "continue up
to SOCstp" is not selected, while if this option is on, the generator will run the
following hours to reach 75% of SOC). That is, for that time, the strategy will be”cycle
charging” with or without “continue up to SOCstp”.
- For each hour, if the generator has to supply a power exceeding 1000 W, it will run at
a power strictly necessary to supply the demand, without trying to charge the batteries.
That is, for that hour, the strategy will really be “load following"
If you select "Try both", the software will consider the two strategies. However, in this
case, Pcritical_gen and Pcritical_FC may not be optimized.
Of the variables allowed to be optimized, we can choose all or only some (in this case the
variables we do not choosen will not be optimized). If we do not mark as optimizable the
variables Plimit_charge, P1_gen, P1_FC or P2, the correcting factor will remain fixed at 1,
that is, we will always remain with the calculation value (or with the value specified in the
screen that appears when you press "Fix variables"). If we do not mark as optimizable the
variables Pmin_gen, Pmin_FC, SOCmin, Pcritical_gen, Pcritical_FC, SOCstp_gen,
SOCstp_FC or H2TANKstp the correcting factor will be fixed to 0, thati is, Pmin_gen,
Pmin_FC, SOCmin will be the recommended by the manufacturer while Pcritical_gen,
Pcritical_FC and H2TANKstp will be 0; SOCstp_gen and SOCstp_FC will be equal to
SOCmin.
Important: If there are many possible combinations of components and control strategies,
iHOGA will need a high time to perform the optimization. Combinations of components are
usually more important than control strategies in the Net Present Cost.
The value of the "Variables accuracy" is the number of possible values that each variable can
have. If it is a small number, the precision will be low, while if it is high, it will have great
precision, but also many possible combinations of variable values, so optimization can be
lengthened.
By clicking on the “Fix Variables” button a new screen appears. This will allow the user to set
the values of the variables not checked in the previous screen (i.e. variables not to be
optimized). A choice is provided here between a value calculated by the programme, or one
assigned by the user.
In case the system has batteries and also an AC grid connection (purchase of electricity to the
AC grid defined in the "CONSUMPTION / AC grid" screen, "PURCHASE / SELL E" tab,
see section 3.2), the management of the charging / discharging of batteries can be selected:
charging of batteries during the hours in which the electricity price of the AC grid is low and
discharge during the hours when the price is high, being able to carry out the discharge only to
feed the own load or also to inject to the AC grid, if it is allowed by the legislation of the
country. If the difference in prices for charging and discharging is sufficient, it can be worth
charging / discharging the batteries and that can imply an economic profitability, saving on the
electric bill and this saving can be higher than the cost of cycling the batteries (the cycling, i.e.
the charges / discharges of the batteries degrade them, which implies a future replacement
cost). On the other hand, if the difference is small, the cost of cycling the batteries may be
higher than the savings in the electric bill, so it would not be worth using the batteries.
o Charge / discharge batteries when the price is lower / higher than certain fixed
values.
o Optimize management.
Batteries are charged by the AC grid / discharged if electricity price is lower / higher
than specific values.
This option is obtained by activating the box "Batteries are charged by the AC grid //
discharged if:". The maximum and minimum prices for the charging / discharging of the
batteries must be set (default values are 10% higher / lower than the minimum / maximum
purchase price of the electricity in the "LOAD / AC GRID" screen, "PURCHASE / SELL
E ", see section 3.2).
Note that if the difference from the minimum and the maximum price is low, the default
values (10% higher / lower than the minimum / maximum purchase price) can have no
meaning, so you must check that values).
This option is appropriate if we have an electricity price tariff such that the price curve is
the same for all days, but with valleys and peaks within the day (for example in Spain the
supervalley tariff, see figure below). The methodology is set out in article (Dufo-López &
Bernal-Agustín, 2015b).
You can also optimize the management, looking for the best limit prices for
charging/discharging, in the case of having an hourly price (different for each hour), by
selecting the box "Optimize strategy of grid-connected batteries".
This optimization can be useful for grid-connected systems where the hourly price of energy
is different every hour (real time pricing, RTP), as in Spain. The system will have the batteries
and the bi-directional converter (inverter-charger) shown in the following figure, but could
also have any other components that iHOGA allows (photovoltaic modules, wind turbines ...).
You can choose between optimization with 3 variables: X1, X2 and X3, following the
methodology outlined in the article (Dufo-López, 2015), or the optimization by 2 variables
(the minimum price for the discharge and the maximum for the charge).
In the case of optimization with 3 variables, the following three variables are optimized, in
order to minimize the total cost of the system to supply the electric load during its useful life:
X1: It is the minimum difference between the maximum and minimum price of each
day such that it can be profitable to charge and discharge the batteries. If a given day
the difference between the minimum price and the maximum price is less than X1, it is
not worth charging / discharging the batteries, so they are not used that day. If this
difference is greater than X1, the batteries can be charged / discharged. See figure
below, which shows the price of electricity for two consecutive days. The first day the
difference between the maximum and the lowest price is less than X1, so the batteries
do not work. The second day said difference is greater than X1, so the batteries are
ready to operate.
X2: is the percentage of the difference between the maximum and minimum price of
the day that is added to the minimum price so that in the hours whose price falls within
that range the batteries are charged (see figure below, hours in the CHARGE area).
X3: is the percentage of the difference between the maximum and minimum price of
the day that is subtracted from the maximum price so that in the hours whose price
falls within that range the batteries are discharged (see previous figure, hours in the
DISCHARGE zone).
In the case of choosing 2 variables for the optimization, only two prices will be optimized:
- The minimum price necessary for the discharge. If the price of electricity at a given
hour is high enough (above the minimum), the batteries must be discharged, supplying
the electricity load, since the cost of cycling the batteries is lower than the economic
savings due to avoiding energy purchases to the AC grid at that time. If the price is
higher than the minimum, the batteries are not discharged (the cost of cycling is not
worth it).
- The maximum price required for the charge. If the price in a certain hour is low
enough (less than the maximum), the batteries will be charged, since it will be
worthwhile to cycle them. If the price is higher than said maximum, they will not be
charged, since it will not be worth it due to the cost of cycling.
The hours that the CHARGE is NOT marked, the batteries will not be charged from the AC
grid, even if the price of the electricity in the network is low.
If the priority to supply the load not covered by the renewables is the AC Grid
(consumption screen, Purchase/Sell E tab, see section 3.2): the batteries will not supply
the demand not covered by the renewables, although the price of the AC grid
electricity is high, this demand will be covered by the AC grid.
If the priority to supply the demand not covered by the renewables is Storage / AC
Gen.: the demand not covered by the renewables is primarily provided by the batteries
or the AC generator or the fuel cell, depending on the control strategy, so that the
batteries can supply the demand.
If we check the box "Charge from AC grid in the hours marked...", the batteries will be
charged with the AC grid at the scheduled times, regardless of the price of electricity.
If we check the box "Discharge batteries in the hours marked...", the batteries will be
discharged (providing load and, if permitted, selling energy to the AC grid) at the scheduled
times, regardless of the price of electricity.
If a certain hour is both marked for charging and discharging and the two previous boxes are
marked, forcing at that time both charging and discharging, the priority is the discharge, that
is, batteries will be discharged during that hour.
ECONOMIC DATA:
Data for economical and financial calculations must be provided as follows (see figure
below): lifetime of the system or period of study (usually the same as the lifecycle for the PV
modules, 25 or 30 years), installation costs and variable initial cost (fix cost + percentage of
initial cost), nominal interest rate (nominal discount rate or nominal capital cost, indexed to
inflation I), and expected general inflation rate (g). The programme uses these last two
indicators to calculate the discount rate (real discount rate or real capital cost, net of inflation),
with a value close to subtracting one from the other [Discount Rate = (I-g)/(1+g/100)]. This
value will then be used to update the different costs affected by the general inflation rate
(operation and maintenance costs, as well as the cost of replacing the elements which do not
have a specific inflation rate) throughout the whole of the study period, as referred to the
initial time of investment, thereby obtaining the NPC
Currency change:
The default currency was defined the first time you created a project. However, you can
change the currency used in each project, selecting in the dropdown menu:
In any case, the change of currency must always establish the equivalence with the previous
currency.
If you check "Multiply costs by conversion factor", all costs used by the program, including
databases, will be multiplied by this factor, changing the currency. In results, costs also will be
changed, if the project has already been calculated (except if the sensitivity analysis has been
done, which, in that case, it is mandatory to make the changeover before the calculations). If
not checked, numeric values will remain, changing only the currency. The databases also
change. If you later want to change back to the default currency, the conversion factor
calculated by the program appears, we can not change it because it is necessary to obtain the
initial values in the default currency.
When you close the program, it undoes the change in the database, so that original database
values are stored for subsequent projects in euros.
Important: If you have changed the currency in a project, when you have finished the
project you must close the program before opening another project or before creating
another project.
If the coin has been changed in a project and the program is closed in an instant (restarting
or shutting down the computer without leaving the program), the databases will be
damaged, so the originals must be re-entered, doing the following:
2º Copy the original tables (after installing the software we will have copied them and saved
in another directory called "Original Tables", see end of section 2.1) in the "Tablas"
directory inside the installation directory, deleting the previous ones.
3º Re-open the program, create a project and change the currency to which we want by
default
Loan:
In the right panel we can indicate the loan to finance the investment. By default, 80% of the
total initial investment cost is financed by loan (value that the user can change). Indicate the
loan interest and number of years to return. The loan must be on constant quota, French
system (every year to pay the same amount).
In this tab, once the system is calculated, we see the graph representing graphically the total
cost (NPC) of the different solutions, as well as CO2 emissions. In the case of multi-objective,
it represent two objectives (one in X-axis and the another one in Y-axis).
System DC and AC voltage may be introduced on the main screen (bottom left). The DC
voltage is common to be a multiple of 12 V, choosing 12 V for systems with very little power
consumption and increasing the DC voltage as the system consumption increases.
If we change any of these voltages, after having accepted the windows of the different
components, a message will appear saying that we must verify that the components are OK for
this voltage.
The program will calculate the number of batteries in series as the division of the voltage DC
between the nominal voltage of the battery.
With respect to photovoltaic modules, the serial number shall be the division of the DC
voltage between the nominal voltage of the panel, unless otherwise defined in the PV panel
window (section 3.7). In the event that the photovoltaic generator is connected to the AC bus
through its own inverter (defined in section 3.7), the voltage of the PV generator and the
number of modules in series are defined in said section 3.7.
The box (Only in PRO+ version) indicates whether we want to consider the
dependence of the DC voltage vs. the state of charge (SOC) of the battery bank, in the case of
lead-acid batteries. If this box is unchecked, the DC voltage will be assumed to be constant
and equal to the nominal voltage all the time. If the box is checked, the DC voltage will vary
depending on the SOC of the batteries (more realistic situation).
Several menus are available on the main screen (top left): Project,
Data, Calculate, Database, Report, and Help.
After all the required screens are accepted for all components
selected, the Calculate button and menu are enabled. Once the system
is calculated, the Report button and menu are enabled (report for the
best solution)
Please ensure that a backup copy for any project to be modified is available before changes
are applied. Note that the tables containing the values for system components and results
are modified as soon as changes are applied in them, even when if later the modified project
is not saved. To save a project with a different name, use the “Save As” button.
Details will be provided below for the screens on consumption, resources, and components.
The deafult load corresponds to a house of low consumption in AC, in average monthly
values.
All data of the demand must be referred to OFFICIAL times. In many European countries,
official summer time is 2 hours ahead of solar time, whilst official winter time is 1 hour
ahead.
MONTHLY AVERAGE
LOAD PROFILE
The default option is “Monthly Average”. This is adequate in case the expected load is known
in monthly average hourly values. Data on load must be introduced on the load tables (in watts
and kg H2 per hour). Three load tables are available, for AC, DC, and H2 (click on the tabs to
display them). Load profiles are shown for the month under the cursor (bottom right). AC
loads are displayed in blue, with DC loads in green, and H2 loads in red (the latter are shown
as power, multiplying by the HHV value of 39400 Wh/kg for H2). Also, water consumption
from water tank previously pumped can be defined.
In this table you must enter the AC load (W) values for each hour of the day, for each month.
In the tables (AC, DC and H2 table), data can be written quickly if all the months have the
same value for an hour. For example, if the AC load for every month at the first hour of the
day (0-1h) is the same, for example 500 W, you must enter this value of load in the cell
JANUARY 0-1h, and then you click your mouse in the cell JANUARY 1-2h, then all the cells
of the column 0-1h will take the same value (500 W). Scale factor must be entered, one for
weekdays and another one for weekend.
In this table you must enter the DC load (W) values for each hour of the day, for each month.
Scale factor must be entered, one for weekdays and another one for weekend.
In this table you must enter the H2 load (kg/h), i.e., external H2 consumption. It is not the H2
consumption of the fuel cell. Here you must enter the H2 consumption which will be used
externally (for example, H2 to be used in a hydrogen car). Scale factor must be entered, one
for weekdays and another one for weekend.
For loads corresponding to profiles predetermined by the system (or created by the user), the
adequate option for data source is “Load Profile”. When this option is selected, the default
profile is charged (the AC Farm). Additional preloaded profiles are available by clicking on
the dropdown menu, which is displayed under the tables.
Scale factors:
In the cases of "Monthly average" and "Load Profile" data, a scaling factor must be set for
weekdays and another for weekend days. There will be a couple of factors for each type of
load (AC, DC, H2 and pumping water).
The factor will multiply to the values that we have placed in the table of the 24 h for all the
months of the year.
For example, if the expected consumption is equal for all the days of the week, both factors
will be 1. If the installation is used only the weekend, the first factor will be 0 and the second
factor 1. If the consumption of the weekend is twice that of the week, the first factor may be 1
and the second factor 2.
Another function of the scaling factor is to easily enter large consumption data, eg to enter the
data in kW, we place in all scaling factors AC and DC factor 1000.
Variability:
In the case of "Monthly Average" and "Load Profile" data we can set a percentage of
variability or randomness of load (AC, DC and H2), both daily and for each hour, and for each
minute, for each type of load. The program will randomly calculate the consumption for each
hour taking this into account.
To obtain the data of each minute a correlation factor must also be added that will be used to
obtain the consumption in time intervals of 1 minute. The software obtains them from the
hourly data using a first-order autoregressive function model.
The randomness of the water consumption for time steps of 1 minute is defined in the tab
"WATER (m3/day) FROM WATER TANK (PREVIOUSLY PUMPED)".
The user must also introduce a value for the expected AC load power factor:
In which we must define: the daily water flow of each month (m3/day), its hourly water
consumption profile from the tank (in % of the daily flow for each hour, the sum of the 24
values is 100%), the capacity of the tank (m3), the volume at the beginning of the simulation,
the pumping data: total height (elevation head + suction lift) (m), friction losses (%), pump
rated electric power (W) (in parenthesis the recommended value for pumping the maximum
daily flow for 6 hours of pumping appears; note that if you expect to pump for longer hours
the power may be lower, higher if fewer hours are expected), pump minimum power (% of
rated), total pump efficiency (%) and pump voltage (DC or AC).
Next to the box of the daily flow of each month appears in brackets the daily energy in
kWh/day necessary to pump the daily flow.
It should be noted that in the consumption of water from tank (previously pumped) what really
matters in iHOGA is the energy needed to pump that water from the river or well to the tank
or reservoir. As the water consumption is normally out of time with respect to the pumping,
since the regulator tank is in the middle, the energy consumption can not be modeled directly
as AC or DC loads on their respective load tabs. If it were direct pumping (without going
through tank), it would be necessary to model the energy consumption as DC or AC loads
(depending on the type of pump, DC or AC) and not on the water consumption tab.
If we only want to calculate a system of pumping water to tank (without AC, DC or H2 loads),
we select the data in the water consumption tab and define zero consumption for the rest of the
load (DC, AC and H2), the easiest way is to select the load from profile (“Load profile”) and
choose the "Zero" load profile.
Button “Generate”:
By clicking on the "Generate" button iHOGA generates the load for all the minutes of the
year in AC, DC, H2 and water. Below the graph we will see the values of the maximum and
average powers both for AC and DC, as well as the value of DC Factor (average value of the
relation between the DC load of each hour and the total load of that hour).
Once the hourly and minute values of the year are generated, the tables can be saved as a new
profile by clicking on the "Add Load Profile" button. We will be asked for the profile name.
The program will save it in the directory of the program itself, in the file perfiles.txt, along
with the rest of the profiles.
You can import hourly consumption data for a whole year or minute data for a whole year.
If we have our load perfectly defined and we know (or estimate) the hourly values of the
whole year (365 · 24 = 8760 hours), in AC, in DC, in H2 and in water load (we must have
them in a text file sorted conveniently as shown below), choose the option "Import File" and
keep the "Hours" selection. Then click on the "Import" button, opening a dialog where it asks
for the location of the file.
The file must have the following format: the hourly consumption values, in W, must be sorted
in rows. There will be 8760x4 = 35040 rows. There are 4 groups of 8760 rows, corresponding
to the consumption of AC, DC, H2 and water. The first 8760 rows will be the values of the
AC consumption corresponding to each hour (sorted by date and time, i.e. the first row will be
the AC load of January 1st, 0h, in W, the second row is the AC load of January 1st, 1h ... the
last row, that is, the 8760th row corresponds to 23 h on December 31), then the 8760 rows
corresponding to the hourly consumption DC (W), then the 8760 rows of hourly consumption
of H2 (kg/h) and finally the 8760 rows of water consumption from tank (m3/h). The
separation decimal point should always be dot, not comma.
If the data is available in minutes, we will select "Minutes (60 per row)" or "Minutes (1 per
row)", depending on which file we have.
If we click on "Minutes (60 per row)" we must have a file in which we have 8760 x 4 = 35040
rows, each row corresponds to 1 hour, but in each row there are 60 data corresponding to the
60 minutes of each hour.
If we click on "Minutes (1 per row)" we need a file where we have 8760 x 60 x 4 = 2102400
rows, every minute in 1 row.
Add load
Once the hourly and minute load has been generated (using the “Generate” button) or the
consumption has been imported, you can add either AC, DC, H2 or water consumption, using
the button "Add load", where the consumption to be added must be specified (see figure
following).
In the example, when you click on "Add load of" iHOGA will add 100 W AC for 10
consecutive minutes from 5 a.m. of January 3rd, and will be repeated every day until the last
of the year. If you did not click on "Repeat", it would only be added for January 3rd..
This tab defines the options to purchase electric power to the AC grid, availability of the AC
grid, priority to supply the energy not covered by the renewable sources (by the batteries / AC
generator / fuel cell or by the AC grid), sale of surplus electrical energy to the AC grid, and
sale of excess hydrogen in the H2 tank (difference between hydrogen at the end and at the
beginning of the year).
Electric power is purchased from the AC grid when there is power that the renewable sources
or the whole standalone system (depending on the priority defined) has not been able to
suppply. Also, in the case of systems with batteries connected to the AC grid, during the hours
when the price of electricity is low, power is purchased from the grid to supply the
consumption and charge the batteries.
Electric power is sold to the AC network when there is energy that can not be used by the
standalone system, or even to store it. Also, in the case of systems with batteries connected to
the AC grid, during times when electricity is expensive, batteries are discharged to supply the
load and, if permitted, energy is injected into the grid.
Hourly, all the days the same (default): in this case during the hours checked the AC
grid will be available; during the hours that are unchecked AC grid will be unavailable.
Import from file: the file must have 8760 rows (1 for each hour of the year). In each
row, value 1 means available; value 0 means unavailable.
The checkbox “If priority is AC grid and the max. power of the renewable source…” is
checked, that means:
If the priority to supply the load that was not covered by the renewable sources is the AC grid
(see below), then, in the case that the maximum renewable power (PV+wind) is lower than a
specific percentage of the maximum load, when the grid is available it will charge the
batteries. It is a good option when you want to consider systems with low reneable power (or
even without renewable power), in this way the AC grid will be available to charge the
batteries (the renewable sources will likely not have enough power to do it).
By clicking the button “Draw” the availability of the AC grid during the year is shown.
In EDU version the AC grid availavility is at every time (and it cannot be modified).
Under the previous button, we can select the priority to supply the energy not covered by the
renewable sources:
“Storage/Generator”: this means that, during each time step, if the renewable sources
cannot meet the whole load, the rest of the load will be covered by the batteries / AC
generator / fuel cell. If the storage, generator and fuel cell are not capable to cover the
whole unmet load (if there is still unmet load), it will be covered by the AC grid (if it
is available and the purchase is allowed).
“AC Grid”: this means that, during each time step, if the renewable sources cannot
meet the whole load, the rest of the load will be covered by the AC grid (if it is
available and the purchase is allowed). If the AC grid cannot cover the whole unmet
load, and there is still unmet load, it will be covered by batteries / AC generator / fuel
cell.
By checking this option, when doing the simulations, if the AC grid is avaialbe, all the energy
that the renweable sources or the whole hybrid system including storage, geneartor and fuel
cell (depending on the priority explained before) can not supply (unmet load) is purchased
from the AC network. However, it must be taken into account that in the case of H2 loads, if
the electrolyser has a lower power than that required to supply the H2 load that could not be
covered from the H2 tank, the difference can not be obtained anywhere. In that case the
energy not served will be higher than the one purchased to the AC network. It may also
happen that the energy not served for some time is greater than the maximum power Pmax
(kW) that is fixed here, in that case it will not be possible to cover all the unmet load from the
AC grid.
When you check the option, if in the main window the unmet load is defined as the energy not
covered by the stand-alone system, a window will appear indicating the maximum unmet load
allowed (marked in "Constraints"), which will be the maximum energy that can be purchased
from the AC grid.
You can choose a fixed price for the cost of the energy purchased from the grid, not including
the charges, which are indicated separately (for all hours of the year the same price by ticking
the box "Fixed Buy Price (€/kWh)"):
Or set a price for each hour or by hourly periods (Only in PRO+ version), if the indicated box
Also it must be set the expected annual inflation for the price of electricity, the CO2 emissions
due to the energy purchased from the AC grid (depending on the energy mix of the country),
as well as the maximum power Pmax (kW) that can be bought from the AC grid, and the anual
fixed cost for the availability of the AC grid “Fixed cost P (€/yr)”.
If the "Fixed Buy Price" box is deselected, the button is enabled. By clicking on
this button a window appears from which you can enter the price for each hour of the day
(every day the same) or import from file the prices of the 8760 hours of the year (in the case
of importing of file, in the hourly values of the file the decimal separation must always be dot,
not comma).
If the option "Hourly periods" is selected, the number of periods (default 3: Valley, normal
and Peak, here called P1, P2 and P3) and the purchase price for each of them must be set. Also
the type of period for each hour during summer and winter must be defined, as well as the
summer calendar.
Access charge:
The AC grid access charge will be added to the cost of energy purchased. It is also indicated
in this electricity purchase table, being it possible to set a fixed price or an hourly price, just as
for the cost of electricity.
Back-up charge:
In the case of PV self-consumption with a grid connection, in some countries, such as Spain, it
is necessary to pay for the energy produced by the generators of the installation that is
consumed in the installation, called a "back-up charge". This charge will be added to the cost
of the purchased energy. It is also indicated in this electricity purchase table, being able to fix
a fixed price or a hourly price, as for the cost of electricity.
- Sell excess energy to AC grid (excess energy produced by the system components):
If the check box "Sell Excess Energy to the AC grid”, the electrical energy that can not be
used by the standalone system will be attempted to evacuate to the AC network.
The excess energy in DC is converted to the AC bus by means of the inverter, which
introduces losses. Therefore if there is excess energy in the DC bus the energy that is sold to
the grid will be less than the excess energy. It must be taken into account that if the excess
power in the DC bus is higher than the maximum power of the inverter, the difference can not
be converted to the AC bus and can not be sold. In that case the energy sold may be much
lower than the excess energy.
You can choose a fixed price for all hours of the year (check the box "Fixed Sell Price
(€/kWh)", marked default), or a price that is proportional to the purchase price (check the box
"Pr. sell = pr. buy x ", indicating the proportionality factor), or, if neither option is marked, it
will be considered the hourly price that appears in the window when clicking the button
"Hourly Price".
The expected annual inflation for this price will also have to be fixed.
If you want to limit the power that can be injected to the AC grid, you must set the
corresponding value in the text box to the right of "Max. Power (kW)".
If the regulations of the country require the payment of a transfer charge (generation charge)
for the energy injection to the AC network, a fixed value can be indicated for all the hours of
the year or you can set hourly values:
Taxes:
Under the boxes of purchase and sale of electricity appear two boxes where you can indicate:
Total taxes on the costs of acquiring electricity to the grid (%). This percentage will be
applied on all costs: energy, access chareg, back-up charge and fixed cost. It will also
be applied on the generaation charge (costs for the sale of energy to the grid).
The total taxes on revenues from the sale of electricity to the grid (%): is applied to
sales revenue, ie, to the sale price of energy (the electric company will be invoiced for
the price of electricity sold + this tax).
As default, No Net Mettering is selected. However, you can choose up to 4 cases of Net
Mettering (Dufo-López & Bernal-Agustín, 2015a).
If it is not allowed to sell more energy annually than to buy, you must select Net metering:
Energy, Annual (1 year rolling credit). If it is not allowed to sell more energy to the grid on a
monthly basis than to buy, you should select Net metering: Energy, Monthly (no rolling
credit). If the annual revenues due to the sale of electricity to the grid can not be higher than
the costs due to the purchase of power to the grid, you must select Net mettering: Cost,
Annual (Net billing, 1 year rolling credit). If the monthly income due to the sale of electricity
to the grid can not exceed the costs due to the purchase of power to the grid, you must select
Net mettering: Cost, Monthly (Net billing, no rolling credit).
If several hourly periods have been defined, there are 4 more possibilities of Net Metering,
just like the previous ones, but with the addition "- PERIODS", in these cases the net balance
is allowed only within the same hourly periods, being more restrictive. These additional cases,
taking into account the periods, cannot be defined if there are batteries and the aging model is
that of Schiffer.
The "Cost of net metering service", is the price of the energy involved in the net metering
(€/kWh) and must be placed in the following box:
For any type of net metering, it is possible to define "buy-back", that is, the energy that has
been injected into the grid and that has not intervened in the net balance (the excess energy
accumulated at the end of the balance) and that is compensated by the electricity company
with a certain price, in that case the price (€/kWh) must be placed in the following box:
That is, selling H2 stored in the H2 tank, resulting from the difference between the the end and
the start of the year. Purchase price and inflation rates must be introduced.
These data are taken into account to compare with the hypothetical case in all the energy was
purchased from the AC network (i.e., the installation has only load, no generation). The
hypothetical initial total cost of the AC mains installation, as well as the annual maintenance
cost, must be indicated. It should be borne in mind that these costs have nothing to do with the
studied system itself, only serve to compare with a case in which a generation system was not
acquired, but the only thing that was done was to connect to the AC grid and consume all the
load from the AC grid. With this data, iHOGA calculates the total cost (NPC) and the
levelized cost of energy for that hypothetical case, and shows it in the REPORT to compare
with our cases.
button , with which, once the loads of the year are generated
(or imported), a screen with the annual load chart appears in Watts, dark blue AC, green DC,
H2 red and light blue WATER . It can be displayed in steps of between 1 and 60 minutes.
With respect to the consumption of H2 (kg/h) although the data entered are in kg of H2, to be
able to represent it together with the electrical consumptions, it is converted to power (W) by
multiplying by the Higher Heating Value of H2 (HHV) About 39,000 Wh/kg. In water
consumption (m3/h), the power that during that interval has previously been needed to pump
(from the well or river to the reservoir) the flow of that interval is represented.
You can change the number of days to display (down right). Clicking the right button on the
graph shows a menu where you can select "Copy" (to the clipboard) or "Save Picture".
You can also export the time values generated (or imported) by pressing the "Export" button
(up right).
A small window appears where you have to indicate the format of the data to be exported, in
hourly data: 8760 h rows x 4 data types (AC, DC, H2, Water) = 35040 rows, or data in
minutes, 60 per row (8760 x 4 rows, in each row 60 data) or 1 minute per row (8760x60x4 =
2102400 rows). It then asks for the name and location of the destination file.
It is possible to save the data of the consumption tables, both of the AC consumption table as
well as the DC and H2 tables. To do this, select a cell with the left mouse button and then
right click and "Save Table".
The consumption chart can also be saved. By right clicking on it, we will select "Copy" (to the
clipboard). The same can be done with all the graphs of the program.
Once we have defined the consumptions, click on the "OK" button and we return to the main
screen.
Data on solar irradiation may be introduced by clicking on the “SOLAR” button (Resources),
or selecting “Solar” within the “Data” menu. Irradiation data is used for calculation of the
energy produced by PV modules.
PRO+ version allows the PV generator divided in two zones at different slope and
azimuth.
PV generator divided in two zones at different slope and azimuth only in PRO+ version
By default there is only one zone for the PV generator (zone #1 is 100%). If you want to
divide the PV generator in two zones, you must change the value of “PV gen #1”. For
example, if you want 60% of the PV generator in zone # and 40% in zone 2, you must define
PV gen. #º: 60%. You must define the slope and azimuth for zones #1 and #2, for example, in
the following figure it is defined that #1 (60% of the PV gen.) is 60º slope and -90º azimuth,
and zone #2 (40%) is 60º slope and -90º azimuth.
The latitude and longitude can be obtained from a web map (necessary internet connection) by
clicking on "Locate on map".
In order to locate a place on the map, it is necessary to have a Google Maps JavaScript API
key. If you do not have a key you can get it for free at:
https://developers.google.com/maps/documentation/javascript/get-api-key?hl=EN
It is important not to include any restrictions on the API key, because if you introduce any
restrictions it may not work in iHOGA.
The first time you click on "Locate on map" the following panel appears:
Once a key is available, enter it in the text field and click on "Save key" (you will not be asked
for the next times).
If you later want to change the key, open the "Map.html" file located in the "Map"
folder (which is in the program's installation directory) with the Notepad and delete
the last two lines:
The next time you try to locate on a map, you will be prompted to enter the credential.
Then a window opens in the web browser where we must click on the location that interests us
and then click on the "Confirm" button (see figure below).
After clicking "Confirm" on the web, we return to iHOGA and click on "Download NASA
data", a small window appears where we can indicate the data that we want to download:
- Average monthly irradiation (kWh/m2) -> The data will be updated on the irradiation
screen.
- Average monthly temperature (ºC) -> Data will be updated on the screens of photovoltaic
modules and wind turbines, to take into account the effect of temperature on photovoltaic
and wind power generation.
- Average wind speed (at 10 m, considering the roughness indicated on the wind screen, or
at 50 m) -> The data will be updated on the wind screen.
- Weibul shape parameter of the wind speed (obtained by iHOGA from the wind probability
at 50 m) -> The data will be updated on the wind screen. Not available since end of 2018
from NASA. Available from local database.
- Altitude above sea level -> The data will be updated on the screen of the wind turbines, to
consider the effect of the altitude.
- Days of autonomy (maximum number of days without sun in a certain period, default in
14 consecutive days) -> The data will be updated in the restrictions screen (minimum
number of days of autonomy) and in the main screen, in PRE-SIZING, the number of days
of autonomy to predefine storage.
Although we do not use the web to obtain the latitude and longitude, if we know the numerical
data of those values and we enter them in their fields of text, we can obtain of the NASA also
the meteorological data clicking in "Download NASA data" (necessary internet connection).
If NASA database fails (server error), you can use the local database of iHOGA (you must
have previously installed the database by downloading and executing the self extracting rar
file “RESOURCES-ENG.exe”. To use the local database, click on the button “Get data from
local DB”.
We can download hourly data of irradiation (over the tilted Surface), temperature (to be used
in the PV modules window, in the wind turbines window and in the batteries window) and
wind speed at the height shown in the wind speed window.
Note that Renewable Ninja web only allows 5 downloads per day for anonymous users, and
the donwloads are only for year 2014 (https://www.renewables.ninja/documentation). Also
note that when you download from Renewable Ninja irradiation or temperature it is counted
as one download, and for wind it is counted as another one.
These restrictions are not for PVGIS hourly data download (no limit in the number of
downloads, you can download any year from 2007 to 2015), however there are several areas
that are not covered by PVGIS (Argentina, Chile, north of Canada, Alaska, east of Rusia, east
of Asia and Oceania), check in https://re.jrc.ec.europa.eu/pvg_tools/en/tools.html
We can also enter the irradiation data writting it, without downloading them from NASA. In
that case there are more possibilities of data formats:
The source of the irradiation data can be in the form of daily average monthly data ("Monthly
Average"), or in data of a whole year, in hourly intervals or in minutes ("Import From File").
In the first case (by default), we can choose the format of the monthly average daily data in
the dropdown menu:
The default format is "Radiation Horizontal Surface (kWh/m2)", being able also to be chosen"
“Clearness Index” or “Pean Sun Hours”.
We will also choose if we want to calculate the hourly irradiance on the inclined surface by
the method of de Graham (1990) (Graham & Hollands, 1990), which includes statistical
variability, or through the model of Liu and Jordan, 1960 (Liu & Jordan, 1960) and Hay y
Davis, 1978 (Hay & Davies, 1978) and Rietveld (Rietveld, 1978), by using different
correlations: Liu and Jordan (1960) (Liu & Jordan, 1960), Collares-Pereira (1979) (Collares
Pereira & Rabl, 1979) and Erbs et al (1982) (Erbs et al., 1982).
Once the hourly irradiation data have been obtained, the global irradiance G(t) (kW/m2) over
the tilted surface of the PV generator in 1-minute steps is obtained by using a first-order
autoregressive function based on the work (Aguiar & Collares-Pereira, 1992).
First global and diffuse minute irradiance data between hours (Ghours(t) and Dhours(t)) are
obtained by means of linear interpolation between hourly values. Then a first order
autoregressive (AR) function ( ) is obtained, which is used to calculate the G(t), that cannot
Where is the correlation factor, is the standard deviation and N(a, b) is a random
number following normal distribution with mean a and standard deviation b.
In the case of data from file, we can choose among three format files:
- Hours (horiz. surf. in kWh/m2): The file must have irradiation values on a horizontal
surface, in kWh/m2 and must be ordered in rows, one row for each hour, starting January
1st at 0h. There will be 8760 rows (sorted by date and time, i.e. the first row will be the
irradiation on horizontal surface in kWh/m2 from January 1 from 0 to 1h, the second row
the value of January 1 from 1 to 2 h ... all in solar time). Clicking on "Import" appears a
dialog where we will specify where the file is. Decimal spacing must be dot, not comma.
- Minutes - 60 per row (tilt surf. in kWh/m2): There will be 8760 rows (one for each hour),
each row will have 60 columns, one per minute. The irradiation data for each minute will
be for the tilted surface, in kWh/m2.
- Minutes- 1 per row (tilt surf. in kWh/m2): There will be 8760 x 60 rows (one for each
minute of each hour). The irradiation data for each minute will be for the tilted surface, in
kWh/m2.
“SHADOWS” button:
By clicking on the SHADOWS button, a box appears where we can define the elevation of the
obstacles (º) vs. the azimuth (º), as well as the reduction factor of the direct radiation (% the
obstacles covers the sun, default 100%). In the example two obstacles have been added, one of
50° elevation between azimuth -15° and 0 (southeast) and another one of 30° elevation
between azimuth 15 and 30° (southwest). As a reference the solar path curves are shown in
the solstices (all solar paths will be between the two ones shown).
Solar tracking:
The user must select the method applied for sun-tracking. The default value is “No Tracking”.
In the upper right part, the ground reflectance must be set (value between 0 and 1, typical
value 0.2).
If there is no solar tracking system, or only horizontal axis tracking, the azimuth of the
photovoltaic modules must be specified (orientation towards the south: in the northern
hemisphere the optimum is 0º, that is, facing south; Southern hemisphere the optimum is 180º,
that is, facing north, the azimuth is positive towards the west, negative towards the east).
If there is no solar tracking system, or only vertical axis tracking, the panel slope must be set
up.
The optimal slope of zone 1 of the PV generator is shown after clicking the button “Optimal
slope#1”. After some seconds (even one minute, please, be patient), the screen shown below
is shown.
On some occasions, the progress bar stops and it seems that the program does not respond, be
patient and wait until the screen shown below appears. If the following screen does not
appear, but the main screen of the program appears, click on the iHOGA icon in the Windows
taskbar (lower part of the computer screen) and the screen shown below will appear.
Irradiation for slope 0, 15, 30, 45, 60, 75 and 90º and for the optimal slope is shown for every
month and for the whole year.
iHOGA calculates the optimum angle for each month, reporting the optimum slope to
maximize production in the month of lower irradiance (in the example, in Spain, December).
It also calculates the optimum inclination considering not only the irradiation, but also the
load consumption of each month, giving the ratio load/irradiation for each tilt angle between 0
and 90°. The optimum tilt angle will be the value so that the annual minimum ratio
load/irradiation is maximized. (This only makes sense if the slope of the modules will be fixed
or tracking system is only using vertical axis. If the tracking system is by using horizontal or
both axes, the tilt of the modules is changing during the day.)
If the azimuth we have indicated in the screen is not optimal (0º for northern hemisphere and
180º for the southern hemisphere), a text appears in the top of the screen showing the warning.
If load is about the same throughout the year, it will choose the optimum angle for the month
of lower irradiance on a horizontal surface. However, if the system is only used in a period of
year, for example in summer, we will have to choose the optimum inclination for this period
(for example, in the case of the figure, if load consumption was only in summer, choose the
angle of about 25 or 30º slope).
Optimize PV modules slope of zone #1 during the optimization of the system: Only in
PRO+ version
If the checkbox "Optimize PV modules slope during the optimization of the system" is
checked, the slope of the modules will be a variable to be optimized, like the number of
modules, panel type, etc.
This option is interesting for the hybrid systems which include PV array and also available
wind turbines or hydro turbine, which electrical production is not stable throughout the year
(as usual). In many of these cases the optimum slope will not be the same as if it were a
The possible slopes to consider in the optimization are between 0 and 90 ° in 10 ° intervals.
User must select (right of the screen) the official hour change (winter – summer):
Several consecutive cloudy days can be forced in a given month, so that in those days there
will only be diffuse irradiation.
iHOGA will calculate the hourly irradiation (in case of having the average monthly data) and
then the irradiation for each minute. To calculate the irradiation values for each minute,
iHOGA uses a first-order autoregressive function model based on the one used by the
Meteonorm software (Meteonorm. Global meteorological database. Handbook part II:
Theory. Version 7.1, 2015), needing to define the correlation factor and the standard deviation:
“Calculate” button:
Once all data are introduced, click on “Calculate”. The application will generate minute and
hourly irradiation values on the plane of the PV modules. Calculated data will be displayed
under the chart, referring to daily average hourly irradiation and yearly total values, all of
these related to a horizontal surface and to the tilted plane of the PV array.
By clicking on the “Graph in steps of” … minutes button we can see the graph of irradiation
on the inclined surface in the temporary steps we defined (between 1 and 60 minutes) that the
program has calculated, in green. If we choose the display in time steps of 1 hour, the
irradiation on horizontal surface (red) is also displayed.
If we have used the data source "From file" and the hours of advance of the official time
regarding the solar are not entered correctly, erroneous results can appear, that are visualized
in the graph if in the first or last hours of some days the irradiation on inclined surface is
exaggeratedly large (several thousand Wh/m2). In that case, modify the hours of advance of
the official time with respect to the solar until coherent results appear.
“Export” buttons:
We can export the irradiation data that iHOGA calculated, using the buttons "Export tilted" or
"Export horiz" The first one exports the hourly values of irradiation on the tilted surface of the
modules, in the form of hourly values or minute values (60 per row or 1 per row). The second
exports the hourly values of irradiation on horizontal surface.
If we want to use time data in the Sensitivity Analysis (section 4.8), we must export the
irradiation values on the tilted surface of the modules, in hourly format.
Scale factor:
A scale factor for the hourly irradiation can be defined (default 1). The hourly and minutes
irradiation over tilted surface will be multiplied by the scale factor when we click the “OK”
button, the result will be used by iHOGA to calculate the generation of the PV modules.
Finally, clicking on the "OK" button we return to the main screen of the program.
The Wind resource screen may be accessed by clicking on “WIND” (Resources area), or
selecting “Wind” in the Data menu.
It may be difficult to know or estimate wind data for the site where the system will be
installed. Two options are available for Data Source: “Monthly Average”, or “Import Data
File”. The best choice will always be a file with hourly or minute values, however this is
sometimes difficult to obtain, in this case an estimation will be necessary for average monthly
values.
As in the case of irradiation, you can import the average monthly data from the NASA website
(and also the Weibul form parameter) using the button "Download NASA data" (if NASA
database fails, click button “Get data from local DB” to use local database), previously you
must have set the latitude and longitude or have been obtained on the web map.
Before downloading the data from NASA, you must indicate the anemometer height (default
10 m):
And you must also indicate the type of terrain (roughness), selecting the class in the dropdown
menu:
You can also download hourly data from Renewable Ninja, click button “Download hourly
NINJA data”. Before downloading the data from NINJA, you must indicate the anemometer
height.
Anemomenter height:
In the case of downloading data from NASA web, the height of the measurement will be
placed automatically when downloading (10 or 50 m). In the case of indicating the average
monthly data manually or in case of import a file, the height at which the wind data has been
measured must be indicated, since if the wind turbine hub is at a different height the program
must convert the measured data at the hub height.
Scale factor:
It is also necessary to define the scale factor (lower left), default 1. It is the factor by which the
hourly and minutes wind is multiplied, not to be confused with the scale factor of the Weibull
distribution.
If we have hourly data (m/s) or even minutes data, we will introduce them from the file,
choosing the file type (8760 rows of hourly values or 8760 rows of 60 values each of the wind
of each minute or 8760x60 rows of values of the wind of each minute) by means of the
"Import" button. In the iHOGA program directory, there is a folder called "Viento". In it there
are wind files, including the time of Zaragoza. Decimal spacing must be dot, not comma.
In case the file of hourly values, there are five types of files that can be selected:
Files * .vnt: These files are text files generated by the program itself and store the
height of the measurement in the first row and in the rest a sequence of wind speed
hour values.
Files obtained through Windfreedom software, * .txt files Only in PRO+ version:
These files are obtained using the free Windfreedom software, with which you can get
wind data from many weather stations in the world (downloadable from the website of
Joaquin Mur http://www.windygrid.org/software/#page=page1). In order to obtain
these files, the Wolfram Mathematica software must be installed, otherwise the data
can not be downloaded. The wind data for 1 full year must be downloaded using
Windfreedom, starting at 0:00 am on January 1st and ending at 24:00 on December 31.
This .txt file can be opened directly by iHOGA.
*.txt or *.wnd files: these files refer to text files containing the 8760 wind speed hourly
data (one per line) in m/s, starting with January 1, 0 to 1 hour.
*.dat files (SCRAM files): These files are available on the US EPA website.
When importing the file data, the probability of imported wind speed is plotted, and below is
the value of the shape factor of the Weibull distribution that best fits the imported data.
If we do not have the hourly or minutes wind data, we can synthetically generate this from
monthly average data.
- Monthly Average Nigtht speed, Amplitude, F Factor and Hour Max. Speed.
In both cases, a number of consecutive days with low wind in a specified month (or randomly)
can be forced (default 0 days).
When “Monthly Average Speed” option is selected, Weibull shape factor and correlation
factor are required.
When pressing “Calculate” button, the software calculates the hourly and minutes wind speed
(it takes some seconds).
The hourly values (8760 values in m/s) are calculated from the monthly average data, the
shape factor (Weibull distribution) and the correlation factor according to the method
presented in (Dufo-López & Bernal-Agustín, 2012).
The minute data are then obtained using a first order autoregressive function model using the
same correlation factor and the standard deviation within each hour indicated in its box. In the
right-hand part of the screen, the probability of that wind speed range (red color distribution),
as well as the probability distribution curve (green curve for the Weibull shape factor that
most resembles the distribution generated, value shown below the graph)
Using this option (Gregory, Peterson, Lee, & Wilson, 1994)(Rivas-Ascaso, 2004), the
following information is required for the table: Night Speed monthly values (m/s), Amplitude
(m/s), F Factor, and the Hour of Maximum Speed, together with the value of the Shape Factor
and of the Correlation Factor. Clicking on "Calculate" gives the wind time series as explained
in (Dufo-López & Bernal-Agustín, 2012) (it will take a few seconds).
If “Visualize monthly wind speed (night speed, amplitude…” checkbox (bottom, right) is
checked, the chart to the right shows the wind profile (m/s) vs. the time of the day for the
month selected in the table.
A description is provided below for the parameters mentioned above (Rivas-Ascaso, 2004).
Form Factor
Variations in wind speeds for a given site are usually described using Weibull's probability
function. This function is in turn determined by its mean (using also the scale factor), and by
its Form Factor. Once the average speed is known for a site, the probability distribution may
be deduced for different wind speeds, using the value of this Form Factor. The figure below
displays the probability density function (f) for a site with an average windspeed of 5 m/s, and
a Form Factor (b) of 2. The dashed line corresponds to the distributions for the same average
speed, but with Form Factors of 1.5 and 2.5. Hence, lower b values correspond to wider
distributions, as shown below.
Autocorrelation Factor
This factor is an indicator of the randomness of wind speeds. High values of this parameter
show that wind speeds for a given time of the day are largely dependent upon wind speeds for
the preceeding time interval. Lower values indicate a more random variation of wind speeds,
with a lesser autocorrelation between time of the day and speed readings. This parameter is
directly influenced by local land topography. Autocorrelation factors are usually lower for
complex local topographic conditions, and higher for more uniform ground.
These two parameters are generic, i.e. applicable to a full year, whereas the parameters
described below change every month.
Night Speed (m/s):
This indicates the average wind speed at night for a given month. Wind speeds are higher
during daytime for most locations in our planet, since temperature differences between
landmasses and oceans are higher during that period. Besides, more turbulences and changes
in the direction of the wind are present during daytime. The chart below shows average wind
speeds, measured at 1-hour intervals in January for an inland region in China.
The curve may be modelled according to the time at which maximum speed is recorded, so
that wind speeds may be higher at night or in the morning.
Amplitude (m/s):
This is the difference between the night speed and the maximum hourly speed.
Hour of Maximum Speed
The time of the day when the maximum speed is recorded.
F Factor
This is inversely proportional to the number of sun hours, and directly proportional to the
average speed. This parameter provides an indication of the dependency of wind speeds upon
the time of the day at which speeds are measured.
Higher F values correspond to narrower variations, centered around the time at which
maximum speed occurs, thus with a larger degree of dependency on the time of the day.
“Export” button:
By clicking on “Graph in steps of”… minutes we can see the wind speed during the whole
year in the steps defined.
Click “Info time of calm wind” to see the information about calmness (low wind speed
periods) for each month.
More info can be seen clicking the button “+Info” for each month.
Click on “OK” to return to the main screen.
The Hydraulic resource screen may be accessed by clicking on “Hydro” (Resources area), or
selecting “Hydro” in the Data menu.
Data Sources for the flow, expressed in m/s, may be Monthly Averages, or an Imported
Hourly Data File.
In the first case, Monthly Averages, the user must introduce values for each month on the left
side of the screen. These values will be displayed in a chart, with additional indicators for
maximum and average flow, and maximum power available from the waterfall, calculated as
follows: Pmax (kW) = 9.81 · H’’ (m) · Qmax (l/s) · mains · turb-gen /1000.
Data must also be introduced on daily and hourly flow variability (as a percentage).
The chart and the information displayed will be updated whenever changes are introduced for
any of the data described above.
Click on “Draw” to display a chart for hourly flow throughout the year. Click on “Export” to
save hourly flow values as calculated by iHOGA.
Click on “OK” to return to the main screen.
If the system includes thermoelectric generator (TEG), the temperatures of the hot source
(from the combustion exhaust gas) and of the cold source (where the cold side of the TEG is
connected) are needed.
We suppose that the energy supply for the TEG (that is, the hot source temperature) is free of
charge, as it is the residual exhaust gas of the combustion that was used for heating or cooking
(example in next figure, where TEG is included in a multi-function heating+cooking stove)
The TEG is composed by several thermoelectric modules (TEM) that can be connected
electrically in serial or parallel.
For each time step (1 hour or less) of the year, it must be known the data of the temperature of
the two sources: hot source Tcold_s(t) and cold source Tcold_s(t).
Data source of the temperature can be from Monthly Average values (hourly values for each
day, all the days of the months the same) or it can be imported (in different formats), all in ºC.
If we use the monthly average values, the table must be filled (there is a tab for HOT and
another one for COLD temperature). After changing the value of january for a specific hour, if
you click in an adyacent row (righ or left), all the column is changed.
You can set all values of the hot temperature to a specific value:
You can also change all the fields equal to a specific value by another value:
Time constant for the rise of the temperature and for the fall (in minutes) must be set, so that
when the temperature in steps of 1 minute is generated they are considered.
Variability for hours and minutes must be set. Also the correlation for the calculation of the
values in steps of one minute.
Then we can click the button “Generate” to obtain the hot and cold source temeprature values
of the whole year.
By clicking in the button “Graphs in step of”… we obtain the plot of the temperatures (in the
example in steps of 1 minute), in Kelvin (K).
iHOGA includes a comprehensive database of components that can be incorporated into the
screens of the components. The components contained in the databases can be used in the
optimization or not, the databases are just storages of commercial components. Later, when
defining the different components used in the optimization, the user may incorporate some of
the components of the database, if the user wants it.
In the databases the user can edit, add or remove components.
Access to databases:
At the top of the main screen you can access the menu "Data Base”.
Then, clicking on “Components Data Base” iHOGA shows the database of the components.
The comercial components are in tables, each type in a tab.
Component “Zero”:
In each table there is a component called "Zero", to be able to take into account the non
existence of this component.
You can edit, add and remove components of the database, using the browser buttons table at
the top:
To access the table at a certain box of a panel, click on it with your mouse. Once inside the
table, we can pass from one to the other boxes using the arrow keys on the computer
keyboard. We can also move through the ranks with the table browser.
This browser can also add (+) or delete (-) rows.
Also, when we edit any box (changing its value), we can click on it twice, so the number
moves to the left side of the box, and appears with a blue background, or by clicking on .
When a cell is being edited, the components are enabled in the browser. The first
serves to validate, while the second is used to cancel editing and restore the previous value. If
we do not press anything, when we finish editing it is automatically validated.
Arrange by families:
Components "PV modules", "Wind Turbines" and "Batteries" should be arranged by families,
because, in this way, then you can import entire families when you define the components
used in the optimization. For iHOGA to understand that a component belongs to a family, first
should be the name of the family, then ":" and then, after a space, the name of the component.
For example, the modules “SiM12-Atersa: A10J” and “SiM12-Atersa: A20J” are two modules
of the same family “SiM12-Atersa ".
For each table, costs of all components of the table can be multiplied, by a factor defined, if
pressing button “Multiply costs of .... by factor”
Components used in the component screens, once defined as shown below, can be added to
the database tables, pressing the button “Add components from the project”.
The software allows the user to modify, eliminate, or add PV modules to be considered in the
optimization.
By default there is a single panel type, which can be modified, deleted or added to other.
PV modules data:
Each panel that will be considered in the optimization is parameterized in a line of the table.
The parameters are:
Name
The nominal voltage, Vn (V). Typically, the modules used in stand-alone systems are
composed of 36 photovoltaic cells in series, giving an open circuit voltage of about 21
or 22 V and a maximum power voltage of the order of 17 V. These modules have a
nominal voltage of 12 V.
Although many manufacturers supply the value of the nominal DC voltage, it can be
calculated as the nearest 12 V multiple below the maximum power voltage, leaving a
certain margin. For example, if the maximum power voltage is 34 V, the nominal
voltage will be 24 V, the nearest multiple of 12 below. However, if the maximum
power voltage is 36.5 V, the nominal voltage will not be 36 V, but 24 V, as there must
be some voltage difference for the modules to charge the batteries without problems.
The nominal voltage can also be obtained as a function of the open circuit voltage:
The acquisition cost (€), where the proportional cost of the mounting structure where
they are mounted must be included.
The unit cost of operation and maintenance (O&M) (cost per panel of the photovoltaic
generator, apart from the fixed cost for the whole set of modules of the generator, in
€/year)
NOCT (normal operating temperature of the cell, in °C). It is only necessary if wer
want to consider the effect of temperature.
Emissions of CO2 in manufacturing, transport and recycling (kg CO2 equivalent per
kWp of power, depending on panel technology, the country's electrical mix where it
was manufactured, transport distance, etc., is usually between 700 and 1500 kgCO2 /
kWp). This value is only necessary if we want to calculate the life cycle emissions of
the system.
Weight (kg).
The nominal voltage must be chosen from a drop-down menu that appears when clicking on
the box. Any value can also be written directly.
Navigation toolbar:
The user may click on any table cell to edit the contents, move through the table using the
arrow keys on the keyboard, and the table navigation toolbar (see figure below), or use this
bar to Add or to Remove cells.
To edit cells, use the button shown below or doubleclick on the cell.
When the user edits a cell, the components shown in the image below are enabled:
Clicking on the first symbol validates all changes to the cell, whereas clicking on the second
one cancels all changes. When nothing is selected, any changes to the cell will be
automatically validated.
The added components from the databases can not be modified. To modify them, it must
be done in the database. However, if you add a component of the database and you rename it
(changing its name in the table), then you may change the rest of its features.
The total cost for operation and maintenance of the PV generator will be the fixed costs plus
the individual cost of PV modules multiplied by the number of modules in the PV generator.
During the simulation, the program calculates the power generated by the photovoltaic
modules at each time interval as a function of irradiance and short-circuit current (if there is
no maximum MPPT tracking) or peak power (if MPPT exists). However, a efficiency (Eff)
must be applied which takes into account degradation of the modules, losses in wires, dirt in
modules, that is, the de-rating factor.
The user must define whether the inverter or the battery charge controller will include MPPT
or not.
If the box corresponding to MPPT is not selected, the voltage set by the batteries (DC bus
voltage) is considered, so that the voltage on the photovoltaic generator will be the nominal of
the system (VbusDC), that is, that of a panel multiplied by the number of modules in series.
Therefore the number of serial modules required is:
Nmodules_serial= VbusDC/Vn_panel
In this case the current that a photovoltaic panel generates is calculated as follows (see figure
below, left graph, obtained from (Dufo-López et al., 2014)):
Where G(t) is the irradiance over the tilted Surface of the PV modules, in kW/m2.
In this case the power depends little on the ambient temperature (except for extreme
temperature values, see figure above, right graph, obtained from (Dufo-López et al., 2014):).
In this case the invertir or the charge controller of the batteries has MPPT, so at each instant
the PV modules generate the maximum possible power, depending on the irradiance. The
power is calculated as follows, if the effect of the ambient temperature is not taken into
account:
P=Pn*G*Nmodules_serial*Nmodules_parallel*Eff
A small screen appears to be able to consider the effect of the temperature, since in this case
the PV generation is modified according to the ambient temperature.
Calculation of number of modules in series taking into account the maximum power
voltage instead of the nominal voltage of the PV modules:
In small PV systems with storage (batteries), the number of modules required is calculated
according VbusDC/Vn_panel, where VbusDC is the rated voltage DC (fixed by batteries) and
Vn_panel is the PV panel rated voltage (typically 12 or 24 V).
In systems with high power which include DC/DC conversion and MPPT (grid-connected
systems...) normally the number of PV modules in series is calculated as
If average monthly data are entered and the "Erbs model" box is checked, the temperature of
each hour is calculated according to the model proposed by Erbs et al. 1983 (Erbs et al.,
1983). (Figure below) using irradiation data (you must have previously calculated the hourly
irradiation on its screen).
Considering the effect of temperature, the internal cell temperature Tc is calculated by:
Tc=Tamb+G*(NOCT-20)/0.8;
After calculating the internal temperature of the cell, the power generated by the PV generator
is calculated by:
P=Pn*G*(1+Ct/100*(Tc-25))*Nmodules_serial*Nmodules_parallel*Eff
Where Ct is the Power Temperature coefficient (%/ºC).
You can define that the PV generator is connected to the AC bus (by means of its own grid
inverter) by checking the chekbox:
The number of serial modules in this case must be defined here, it does not have to be the
same as if the PV generator was connected to the DC bus.
The data of the own inverter of the photovoltaic generator are shown with the button "PV
invertir data":
The cost of the inverter must be included in the photovoltaic generator. If instead of defining a
photovoltaic generator we define individual modules, the proportional cost of the inverter
must be included in the cost of the panel.
The ratio between the power of the inverter and that of the photovoltaic generator must be
indicated, in addition to the efficiency versus the percentage of the nominal power.
Prices for PV modules may be expected to increase at a rate different from that of generic
inflation figures (the same can be applied for wind turbines, batteries, and H2 components).
Therefore, an estimation must be made of specific price increases for PV modules, including
an upper limit for those. iHOGA will then use this data to calculate the number of years
required to reach the price limit. Once this value has been reached, PV modules will be
assumed to see their prices increased in line with general inflation.
Data are available in a table for each type of wind turbine. The table may be accessed as
explained in previous section 3.7.
General data ar: Name, Voltage Type (DC or AC, in a pop-up menu), Acquisition Cost,
including the tower (€), Replacement Cost (at the time of replacement, at the end of its useful
life, but expressed in the currency referred to the time of the initial investment), Operation and
Maintenance Cost for each generator (currency/yr), Useful Lifespan (yrs), Height of the Hub
(m) and CO2 emissions in manufacturing, recycling etc. (kg).
Additional data must be introduced for Output Power as a function of wind speed, from 1 up
to 26 m/s, i.e. the output power curve, as shown in the graph. This curve is given by the
manufacturers for sea level conditions (altitude 0 m) and temperature 15°C, which
corresponds to a density of 1,225 kg / m3. This curve is represented in the graph at the bottom,
in red color. For DC wind turbines, with a DC voltage different from the voltage for the
system's DC bus, losses must be accounted for at the DC/DC converter, which connects the
wind turbine to the DC bus.
DC turbines will be connected to the DC bus, and AC wind turbines will be connected to the
AC bus. In the diagram of the main screen the wind turbine appears always represented in the
DC bus, although this is only a representation, i.e. if the chosen wind turbine is AC it will of
course on the AC bus.
We can define for each turbine which bus is connected to (default option), or we can force all
turbines considered in the system to be at DC bus or at AC bus:
Roughness:
Surface roughness class must be selected.
Use the pop-up menu on the left to select the type of ground rugosity (Class 0 by default).
iHOGA will then automatically display the corresponding length (m), and a description of the
class.
The density is calculated according to the International Standard Atmosphere (ISA, earth
atmospheric model created by the International Civil Aviation Organization), assuming that in
an altitude up to 11,000 feet above sea level the temperature decreases linearly with altitude
according to the equation:
T To L·H
where T is the temperature (K) at the altitude avobe sea leve H (m), T0 is the standard
temperature at height of sea level (288.15 K) and L is the variation rate of temperature vs.
height, L=0.0065 K/m.
gM
L·H RL
P Po 1
To
P·M
1000·R·T
where:
T Temperature (K)
P Pressure (Pa)
Density (kg/m3)
H Height above sea level (m)
Po Standard pressure at sea level, 101325 (Pa)
To Standard temperature at sea level, 288.15 (K)
g 9.80665 (m/s2)
L the variation rate of temperature vs. height 0.0065 (K/m)
R Ideal gas constant, 8.31432 (J/mol·K)
M Molecular weight of dry air, 28.9644 (g/mol)
Considering the ideal gas law:
P T
· 0
0 P0 T
Is obtained by substituting the relationship between the density of the height H and the density
at sea level:
gM
L·H RL T0
1 ·
0 To T0 L·H
The output power of the wind turbine at the height above sea level H would be the output
power at sea level (given by the power curve) multiplied by the ratio /0.
If we want to consider the effect of ambient temperature on air density, the ckeckbox
In the case of average monthly data, the model of Erbs et al. 1983 (Erbs et al., 1983) can be
used to obtain hourly values (we must have previously calculated the irradiation on its screen).
gM
L·H RL T0
1 ·
0 To Tamb
As explained in the screen of the PV modules, in the bottom of the screen we must enter the
expected inflation rate of the wind turbines and the limit, to take them into account if the
useful life of the system or study period exceeds the wind turbines lifespan.
More data:
Additional data must be set: the efficiency of the multiplier gearbox, and of electric generator,
as well as on the specific cost for these (€/kW).
If the turbine is DC voltage, and its voltage is different from that of the DC bus of the system,
the performance of the electric generator must include losses in the DC/DC converter that will
connect the turbine to the DC bus.
In red it is reported, under the table of the turbines, that they must be suitable for a determined
available head (obtained in the screen of the hydro resource). If, for some turbine, the
available head is not between its minimum and maximum height, it will not be adequate.
Above the graph, the nominal power and its maximum power, calculated in kW by
9.81*Available_head(m)*Flow_max (l/s)*efficiency/1000, are reported for the selected
turbine. Efficiency includes losses in turbine, multiplier gearbox and in the electric generator.
As explained for modules and wind turbines, if we are interested in the calculation of life
cycle emissions, e must introduce equivalent CO2 emissions due to turbine manufacture, in g
of CO2 equivalent per each kWh of energy generated. However, this value is usually very
low, close to 0.
3.10 TEG
The TEG is composed by several modules (TEM) that are connected to the hot source and to
the cold source by means of heat exchangers:
The thermal cirucuit for each TEM is shown in next figure, where the thermal resistance
(measured in K/W) of the TEM is Rth_TEM(t), while the thermal resistance of the hot and cold
exchangers are, respectively Rth_hot(t) and Rth_cold(t). They depend on the time step as they
depend on temperature (they are not fixed values).
We will always suppose that the TEM modules are connected to MPPT DC/DC converters so
that the resistance conntected to them is always the same as their internal resistance (matched
load), therefore the maximum power is extracted from the TEM (matched output power).
During the simulation of a specific combination of components, for each time step (t) the hot
source and cold source temperatures are known (data) (Thot_s(t), Tcold_s(t)), the problem is to find
the hot and cold temperatures of the TEM (Thot(t), Tcold(t)). After calculating them, it can be
calculated the open circuit voltage of the TEM and its output power.
During the simulation of each combination of components, for each time step the software
will use the TEG standard simplified model (including the temperature dependance of the
Seebeck coefficient and the thermal and electrical conductivity) to calculate the temperatures
of the hot and cold side of the TEM: Thot(t), Tcold(t).
Then, after knowing the temperatures of the hot and cold side of the TEM:
We can use the matched load output power curves of the TEM modules datasheet (by
default) to obtain the output power (if the uper left “Use this power curve->”
Or we can use the matrix equations of the simplified model (Favarel, Bédécarrats,
Kousksou, & Champier, 2016) to calculate the open circuit voltage and the ouptut
power calculation. The matched load output power (W) of the TEM is
P(t)=Voc(t)2/(4Re(t)), where Voc(t) is the open circuit voltage (V) and Re(t) (Ω) is the
internal electrical resistance of the TEM. (If the uper left “Use this power curve->”
checkbox is unselected)-
In order to interpolate and extrapolate output values from the curves, we can consider that
output power is proportional to [(t)·(Thot(t) - Tcold(t))]2/Re(t) (default, checkbox
checked) or we can neglect the dependance on (t) and Re(t) (checkbox unchecked).
The output current of the TEM can be calculated using the output power (default, checkbox
unchecked) or considering the current calculated from the matrix equations of the
simplified model (checkbox checked).
If the checkbox is checked, the previous relation will also be considered in the
matrix equations of the standard simplified model.
The increase of thermal conductivity of the hot and cold exchangers (%/K from 30ºC) must be
set. Also, if we don’t use the matched load output curves of the TEM, we can specify a value
for the thermal resistance of ceramics and contacts of the TEM (%). A intertial time constant
can be set (min, default 0) and additional losses due to Thomson effect can be set (default 0).
A factor for the correction of the open circuit voltage can be set (default 1):
Several TEG can be considered. For each one, the total nominal (peak) power of the TEG
must be set (Power (W)), the total cost (€) (including installation, thermal exchangers and
MPPT), the number of modules (Nmodules). And also the parameters of each TEM (for 1
module): number of thermocouples (N couples), internal electrical resistnace (Re (ohm)) and
thermal resistance (Rht(KW-1)) for the values of Thot(C) and Tcold(C); also the thermal
resistance of the hot and cold exchangers (KW-1) at 30ºC for each TEM module (for example,
if 2 TEM are connected to one exchanger, the thermal resistance of the exchanger set in the
table must be 2 times the total resistance of the exchanger). Finally the expected lifetime
(years) of the TEG must be set.
By clicking on the “MPPT eff.” Button the efficiency of the MPPT DC/DC conversor must
be set:
Thot(t), Tcold(t) are calculated by using the matrix equations of the standard simplified model,
which imply iterative calculations until a maximum difference between two iterations in Thot(t),
Tcold(t) and current is lower than a specified maximum difference (%) or until the maximum
number of iterations is reached:
There is a tab “Seebeck coefficient, thermal and electrical conductivities” where the
dependende on that values vs. temperature must be set. By default the values of Bi2Te3-based
ingots used in the thermocuples of a specific manufacturer are shown.
All the values are for the average temperature of the thermocouple (Tav=(Thot+Tcold)/2), in
K.
For Seebeck coefficient, the total value of the thermocouple must be set (=P - N) in V/K.
For thermal and electrical conductivity, the average value of the thermocouple (value of P +
value of N divided 2) must be set.
3.11 Batteries
Both lead-cid batteries and lithium batteries can be considered in the table, and even both
types can be in the table.
Some manufacturers of lead-acid batteries usually indicate the curve cycles to failure vs. depth
of discharge. If it is not known, and we know the cycles that the battery can perform at a
certain discharge depth, for example we know Ciclesk = 2000 for DODk = 80% (k = 8), the
rest of the data of Ciclesi (i = 1 ... 9) can be obtained according to:
In this example:
iHOGA calculates the cycled energy throughout battery lifetime for each DOD:
Ecycled_i (kWh) = Cn (Ah) · Vn (V)· DODi (%) / 100 · Cyclesi / 1000
This value is displayed in green.
The number of equivalent cycles is calculated as:
Neq_cycles = Ecycled_average (kWh) ·1000 / (Cn (Ah) · Vn (V))
Where:
Ecycled_average = Σ Ecycled_i (kWh)/9;
This value is displayed under the chart.
An estimation must be carried out of fixed Operation and Maintenance Costs (€/yr) for the
battery set to be used by the hybrid system (the exact type and number of batteries is not
known before the project is optimized). These costs must include the operator and the fixed
material, regardless of the final number of batteries included.
We must indicate also the average temperature of the batteries during each month of the year
as this will be taken into account in Copetti and in Schiffer models and also in any model to
calculate the floating lifetime taking into account Arrhenius law.
The floating life that the battery manufacturer indicates for a given temperature (generally
20°C) is converted to the floating life corresponding to the average temperature of the
batteries according to the Arrhenius law. However, if the average temperature of the batteries
is lower than the manufacturer indicates the floating life can lead to very high float lifetime
that could lead to oversized values. To avoid this, by default the box "Except Schiffer model,
consider T mean >= T float life" is checked by default. For aging models other than the
Schiffer, this marked box implies that if the average temperature of the batteries is below the
indicated temperature at which the manufacturer supplies the float life, the average
temperature shall be considered to be equal to that indicated for the floating life and therefore
the actual floating life will not exceed that indicated by the manufacturer.
As explained in the previous sections, if you want to know the overall life cycle emissions,
you must introduce (above the graph) equivalent CO2 emissions due to the manufacture of the
batteries, in g of CO2 equivalent per kWh of capacity.
As explained in the PV modules screen, the lower part of the screen shows the expected
inflation of the price of the batteries and their limit, to be taken into account in case they have
to be replaced.
Above the cycles to failure graph, you must enter the percentage of the SOC at the beginning
of the simulation.
Finally, after defining all the batteries that we want the program to take into account, with
"OK" button we can return to the main screen.
In the same way that we have commented on photovoltaic modules and wind turbines, if the
hybrid system must supply very high loads, it may be better, instead of entering the discrete
battery data, to enter in each row the data of "banks of batteries", that is to say, data of sets of
batteries in series and parallel. Thus, each row of the table would indicate a bank of batteries.
For example, in a row a group of 120 V 500 Ah, in another row a group of 120 V 1000 Ah, etc
(in this example the system DC voltage would be 120 V). In this case in the main screen of the
program we would place: Batteries in parallel: Minimum 1, Maximum 1.
If "Li model Ah" is marked, it means that if Lithium batteries are being considered in a
combination of components, the Ah model will be used even if another model is marked here
(which would be used for lead-acid batteries)
If we choose the models Schiffer or Copetti, the button “Control Data” appears” to set up the
characteristics of the controller for the charge/discharge of the batteries.
By pressing the "Control Data" button (Only in PRO+ version), the screen of the data that
will be used by the charge controllers of the batteries (which in some cases are included in the
inverter-charger) will be displayed (all the charge controllers must be of the same family since
the characteristics are the same for all).
The characteristics of the control of the charge and discharge of the batteries must be
indicated: if the controller is PWM type or ON/OFF type. Both devices, charge controller and
rectifier (AC/DC converter) are assumed to perform the same control.
Once the type of PWM or ON/OFF control is chosen, the parameters of the controller must be
defined. These parameters must be suitable for the batteries that we define in the
batteries screen.
In the case of PWM control, the data for the charge in several stages, typically 3 stages: bulk,
boost (absortion) and float, and also the data of the equalization or compensation charge must
be set.
In the case of the Copetti model we must also define the coefficient of variation of the voltage
with the temperature (mV/ºC).
Control of the charge of the batteries by the diesel generator: Only in PRO+ version
If the controller can start the diesel generator automatically (usually in the case of bi-
directional converters or inverter-chargers), some types allow the generator to charge the
batteries up to 95% of the SOC (by default, can be modified) every certain number of days or
each given number of equivalent full cycles. In that case, check the box at the bottom
(changes in this box and these values are updated on the main screen of the batteries):
New columns are displayed when “Calculate” is selected (see figure below, right hand side):
C100, C20, and C10 (all of them in Ah). These values correspond to battery capacities for
100-, 20-, and 10-hour discharge regimes. The longer it takes a battery to discharge, the more
energy is provided, so C100 will be larger than C20, which will in turn be larger than C10.
This data is supplied by the battery manufacturer. iHOGA calculates discharge intensities (in
A) for the 3 discharge regimes provided (e.g., for a 100-hour regime, this will be C100/100).
Discharge intensity is then displayed versus battery capacity. Additional values are shown
under the chart for the parameters required by the KiBaM Model, as calculated from C100,
C20, and C10. The required parameters are represented by c, k, and Cmax.
There is a last column in the table, which is also new (C. charge), in A / Ah, which represents
the Maximum Battery Charge Rate or Maximum Battery Charge Current Coefficient, which is
an additional limitation of Maximum charge current using the KiBaM model.
If in the KiBaM model we choose "Data" instead of "Calculate", the new graph disappears and
instead of the colums C100, C20 and C10, we will have k (1/h), c and Cmax (Ah), besides the
fourth column, which is maintained. In this case, the battery manufacturer should have
provided these values.
If we have chosen the Schiffer model, the "Schiffer Bat. Data" button appears under the
“Control Data” button. By clicking on it shows the next window.
The first option is to choose the type of battery, OPZS (tubular optimized for photovoltaic
applications, long service life) or OGi (flat plate, open, use in uninterruptible power supply
systems, emergency lighting, telecommunications, can also be used for starting machines, and
in photovoltaic systems)
The software loads the data of the batteries used in the article (Schiffer et al., 2007) (Schiffer
et al., 2007), however, it should be noted that these data are for certain families of OPZS and
OGi batteries, which may not match the family of batteries we are using. We should update
these data with those of the family of batteries that we are using (we should know the data of
our batteries or test them to obtain data).
In the right part we must select the curve of the corrosion rate against the potential of the
positive electrode, Ruetschi 2004 (Ruetschi, 2004) or Lander 1956 (Lander, 1956). It should
be noted that the actual curve for each battery family is different, so we should define the
curve for the battery family being considered, obtained from the manufacturer or by testing
and modifying the values of the curve of Lander or Ruestschi.
At the bottom, the parameter of the corrosion rate for floating life must be set (in the units
marked in the corrosion rate curve versus the potential of the positive electrode):
For lead-acid batteries, you can choose the lifetime estimate of the batteries according to the
Equivalent Full Cycles or according to the Rainflow model, or according to the Schiffer aging
model (this only if the Schiffer model has been selected in the model of batteries).
In the case of Rainflow, if you check the box "Modified", a box appears where "Factor
rainflow (0-1)" should be indicated.
The modified method intends to take into account the average SOC of the batteries during
each cycle. The original cycling curve of the following figure is that supplied by the
manufacturer (discharge cycles CF versus dephto of discharge) and is assumed to be for
batteries starting each cycle being fully charged. However, if a battery starts a certain cycle
with a SOC <100%, the wear will be higher. This method is intended to take account of
increased wear (fewer life cycles) if each cycle does not start with fully charged batteries.
With the factor rainflow (F), a lower limit curve is obtained, which would be for the cycles
that begin and end at the lowest possible state of charge for those cycles. The lower limit
curve is calculated according to:
For each cycle, this method takes into account the average SOC of the batteries during the
cycle, and obtains the number of life cycles from the curve for that SOC, which will be
between the original and the lower limit.
If the Grot et al. Model is selected, the box "Rate lower than 1C-> 1C" indicates that charges /
discharges at rates lower than 1C will be considered as 1C. Where 1C means the charging or
discharging rate such that the battery is fully charged or discharged for 1 hour, i.e. the current
in A equals the capacity in Ah.
In the case of selecting the Wang et al. Model, selecting the "Rate lower than limit" box
means that the limits of the model (to use the specific equations) are upper limits, if no such
box is selected the limits are intermediate.
By clicking on “Parameters”, a small window appears where you can see (in different tabs)
the parameters of the different models (Wang, Grot or Saxena).
The default tab shows the calendar ageing model (it can be included or not, by default
included):
The model shown in (Swierczynski, Stroe, Stan, Teodorescu, & Kær, 2015)
You can choose to use one or another. You must also set the limit current so that when the
current of the battery is lower than C·times (default 0.2), calendar ageing will be considered,
and when the current is higher than that value cycle ageing will be considered.
The screen of the auxiliary equipment for charging/dischargingt the batteries may be accessed
by clicking on “CHARGE BAT.” in the components area, or selecting “Charge Bat.” in the
Data menu. Auxiliary equipment includes the PV Battery Charge Controller and the Rectifier
(also called “Battery charger”, it is an AC/DC converter, usually used by the diesel or gasoline
generators to charge the batteries).
The photovoltaic charge controllers to be considered must be indicated in the table (it is
assumed that the wind turbines are fitted with their regulator). In the case of bi-directional
controllers (inverter-chargers) that include charge controller, it will be indicated in the
“Inverters” screen (see section 3.12) and, if an inverter-charger of this type is used in a certain
combination of components, the charge controllers of this table will not be considered, as the
charge controller is included in the invertir.
Once simulated each combination of components and strategy, for each case iHOGA chooses
the minimum controller such that its maximum nominal current is higher than the maximum
that is expected obtained in the simulation.
If there is no controller in the table that comply it, it will be considered a generic one with the
cost obtained wiht the data on the right side of the table:
You can add database controllers, individually (button "Add from database"). You can also,
using the button "Include only VDC suitable and selected MPP from family", force the
controllers of the table to be only those of a particular family, which comply with the nominal
DC voltage of the system and whether or not they include MPPT (depending on what has been
marked below the table).
The characteristics of the control of the charge and discharge of the batteries are displayed by
clicking on "Control Data" (Only in PRO+ version): if the control used by the charge
controller and by the rectifier is PWM or ON/OFF (the two components, charge controller and
rectifier are assumed to perform the same control).
Once the type of PWM or ON/OFF control is chosen, the parameters of the controller must be
set (those of the manufacturer of the controllers or rectifiers to be used, which must be suitable
for the batteries to be used).
In the case of PWM regulation, the data for the charge in several stages (typically 3 stages:
bulk, boost or absorption, float) and also the data of the equalization or compensation load
must be set.
In the case of the Copetti model we must also define the coefficient of variation of the voltage
with the temperature (mV/ºC)
the screen. The efficiency is usually high, of the order of 90%, and little dependent on the
power of the converter.
If the rectifier is included in the cost of the AC generator, here we must set the costs to 0. If
the rectifier is included in the bi-directional inverter, its cost will automatically be set to 0.
The inverter is a are a very important component, with a considerable influence on the
operation and total cost of the system. Inverter performance is heavily dependent upon power
at any time (apparent power).
Some commercial components include inverter (DC/AC converter) and battery charger
(AC/DC converter), called inverter-charger or bidirectional converter
The following data must be included for each inverter or inverter-charger to be considered in
the optimization:
Name
Lifetime (years)
Minimum and maximum operating DC voltage. The nominal DC voltage of the system
set in the main screen must be between these two values.
In addition, for each type, the efficiency (%) vs. the output power (in % of rated power, from
0 to 100%) must be defined. This is reflected in the graph. The last column shows the weight
(kg).
You can add inverters individually from the database using the "Add from database" button.
You can also force that only the inverters suitable for the rated voltage DC of the system and a
particular family, by clicking on the button "Include only VDC suitable from family:", where
they will be selected only those of the family that comply with the nominal voltage of the
system, and that also comply with the table on the right: without rectifier (charger) or rectifier
without PV batt. controller or rectifier with batt. controller (MPPT or not, depending on what
is indicated in the Checkbox "MPPT" below the table).
Permissible overloads can be defined in the case of simulations with time steps of less than 60
minutes.
In this case, you must click on “Select Inverter” before clickin on “OK”. Under the efficiency
graph it is shown the AC power required by the loads, as well as the power of the inverters
selected. A warning message will be displayed when no inverters meet the power
requirements.
In addition, under the graph also we are informed of the average hourly power consumption
AC, what percentage has respect to the nominal power of the selected inverter, and therefore
what average efficiency will give the inverter. This value is used by the program in the
calculation of some parameters of the control strategy. However, for the calculation of the
energy balances of the system during each time step of the simulation, the program uses the
actual efficiency of the inverter, depending on the output power according to the efficiency
curve.
If, on the other hand, we have not activated the " Select the Minimum Inverter required to
Supply the Maximum AC Load " box, the program in the optimization of the hybrid system
will test combinations with the different inverters, i.e. in principle it will consider them all
equally. Low power inverters will likely in some cases give solutions that are not useful, as
they will probably imply unmet load due to the limitation of the inverter.
The maximum output power of the inverter must be settled, depending on the time step of the
simulation:
By default, if the nominal power of the renewable sources in DC is higher than the maximum
allowed input power "Pmax_ren (W)", the power generated by the DC renewable sources is
limited to said value.
If "Discard that combination" is marked, the combinations in which the nominal power of the
renewable sources in DC is higher than the maximum allowed input power "Pmax_ren (W)"
will be discarded (infinite cost will be assigned).
AC Generators data:
The following data must be introduced for each generator: Name, Rated Apparent Power
(kVA), Acquisition Cost (€), Operation and Maintenance Cost (€/h), Expected Lifespan (h),
Minimum Recommended Power (by manufacturer, as a percentage of nominal power), Fuel
Type (choices provided include: Diesel, Petrol, Ethanol, Methanol, Natural Gas, Propane,
Biogas, or H2), Fuel Units (litre, kg, m3 Normal), Fuel Price (€/unit), Annual Inflation Rate for
Fuel Prices (%), CO2 emissions (kgCO2/fuel unit), and Consumption Parameters: A (fuel
unit/kWh), and B (fuel unit/kWh). Default values for A and B are referred to a Diesel
generator, as shown by Skarstein and Ullen (1989) (Skarstein & Ulhen, 1989).
where Pn is the nominal power in kVA, although active power is used for consumption; P is
the output power.
The annual inflation rate for fuel prices (Inffuel) is an important parameter, and must be clearly
identified with respect to the general expected inflation rate (Inf), shown in the main screen.
Most fuels are affected by much higher inflation rates than those affecting components and
labour costs. Fuel inflation rates must therefore be dealt with separately.
Data for the calculation of life cycle emissions must be set: equivalent CO2 emissions in the
manufacturing of the generator, recycling, etc. (kg CO2 per kVA of rated power).
We can force the generator to run all the time to create the AC grid, in this case you should
select the checkbox:
If you check the box , during each time step an extra generator will be
Permissible overloads for temporary steps of less than 60 minutes can be indicated:
We can also count a penalty on the consumption during each start, default equivalent to 5
minutes running at full load:
In addition, it is possible to specify a penalty in the costs of operation and maintenance and in
the useful life (extra ageing) for operating outside the optimal range:
These factors are based on the work of (Dufo-López et al., 2017), where the following graph
is shown indicating the extra maintenance and aging factor
3.15 PRE-SIZING.
After setting the load, resources and types of modules, wind turbines, batteries and AC
generator (if any), we can perform the pre-sizing.
By clicking on the "PRE-SIZING" button button it displays a window with information of the
maximum power recommended for the different components:
- iHOGA knows the energy demand load of the system and the irradiation, so it calculates
approximately the peak power of the photovoltaic generator to cover that demand only with
photovoltaic (estimating an average value of inverter efficiency of 80%, losses in batteries of
20%, assuming all the energy goes through the batteries, and adding the safety factor of the
photovoltaic modules). This peak power (in the example 2.9 kWp) should be the maximum
power of the photovoltaic group that iHOGA can be allowed for optimization. For example, if
we use 100 W, 12 V modules, and the DC voltage of the system is 48 V (so there will always
be 48/12 = 4 modules in series), in the main screen, where we select the maximum allowed
number of Modules in parallel, we should not put a number much higher than 2900 / (100 · 4)
= 7.25, for example, we could set 8 as the maximum number of parallel modules allowed.
-iHOGA knows the energy demand and the wind speed throughout the year, so it can roughly
calculate the power of the group of wind turbines to cover the total demand. In the example,
this value is 3.7 kW, so in the wind turbine screen we could include a wind turbine of around
1 kW and some other of around 2 kW, 3 kW and 4 kW but not much more power as it
probably would be unnecessary.
- The maximum recommended power for the AC generator is the one needed for it to supply
the entire demand load, taking into account an efficiency of 90% for the rectifier.
- The maximum recommended power for the inverter is the necessary power to cover the AC
load.
- The maximum recommended power for the electrolyzer is the maximum between the
maximum recommended power of the photovoltaic generator, that of the wind turbine group
and that needed to cover the maximum demand for hydrogen (if applicable).
- The maximum recommended power for the fuel cell is the one needed to cover the
maximum power, taking into account an inverter efficiency of 80%.
In these calculations the following starting data have been used: 90% rectifier efficiency,
inverter efficiency 80%, electrolyzer efficiency 70% of HHV of H2, fuel cell efficiency 40%
of LHV of H2, minimum SOC allowed for batteries 40%. In calculations of the maximum
recommended power for the photovoltaic generator and for the group of wind turbines an
oversize factor of 1.2 has been considered, taking into account the losses in storage (note that
this factor is too low if the storage is performed in hydrogen).
In addition, the capacity of the battery bank and the size of the hydrogen tank are shown to
have a number of days of autonomy set under the PRE-SIZING button, 4 days by default. It
takes into account the day of maximum consumption of the year converted to DC taking into
account an efficiency of the inverter of 80% and with a factor of oversizing of 1.2.
iHOGA calculates the maximum number of batteries in parallel of the type of HIGHEST
capacity of those fixed in the battery screen, so that the batteries can supply the load during
the days of autonomy fixed (the nearest upper integer is shown). It must be taken into account
that the battery of greater capacity can cover the days of autonomy if the number in parallel is
the maximum. However, it is possible that the other batteries can not cover all the days of
autonomy.
If the box "Max. bat parallel -> Cn min." is checked, the maximum number in parallel is
calculated according to the type of battery of LOWEST capacity. Thus all the batteries would
be able to cover the autonomy, if the number in parallel was the maximum.
It also calculates the maximum number of PV modules, wind turbines and AC generators. The
number of PV modules in parallel is obtained as the upper integer of the division of the
maximum photovoltaic power recommended by the DC voltage of the system and by the
power of the panel type of HIGHEST power. If the box "Max. PV pan. Parallel -> P min." is
checked, the maximum number of PV modules in parallel is calculated according to the panel
type of LOWEST power.
Similar calculation is performed for the maximum number of wind turbines in parallel and for
the maximum number of AC generators.
By clicking on the "OK" button, iHOGA informs you of the maximum numbers of allowed
components being updated on the main screen.
By pressing the button "H2 (F.C. - Elyzer.)" or in the Data menu “H2 (Fuel Cell –
Electrolyzer)”, we access the data screen of the Fuel Cells, the Electrolyzers and the H2 Tank.
This screen has three tabs, i.e. there are three screens in one.
Fuel cell that consumes the H2 produced in the electrolyzer (and accumulated in the
H2 tank).
Fuel cell that consumes external H2. In that case there is no need for an electrolyser
nor the H2 tank. In this case electrolyzer and tank will be required only if there are
loads of H2.
At the bottom of the screen we can choose whether or not we want fuel cell and whether or
not we want an electrolyzer and H2 tank.
Note that when we have selected that we want fuel cell and in addition the origin of the fuel is
H2 produced in the electrolyser, there must be an electrolyser and H2 tank where the H2 is
stored, so the electrolyzer and tank are mandatory (they cannot be deselected).
If there is any element that we do not want, deselecting its checkbox will disappear the
corresponding tab.
As explained in the PV panel screen, the expected inflation of the price of hydrogen
components and their limit appears in the lower part of the screen, in order to take them into
account in case they have to be replaced during the system lifetime.
By default fuel cell and electrolyzers are connected to the DC bus. At the top bottom of the
screen there is a box where we can indicate that the fuel cell and the electrolyzer are
connected to the AC bus of the system. In this case a button is enabled which indicates the
efficiencies of the electrolyzer rectifier and the fuel cell inverter.
By clicking on the tab "Fuel Cells" above the battery window appears, which we can add,
delete or change data.
In the table of the fuel cells we must introduce the following data for each fuel cell to be
considered: Name, Nominal Power PN_FC (kW), Acquisition Cost (€), Operating and
Maintenance Cost (€/h), Consumption parameters: AFC (kg / kWh) and BFC (kg / kWh). Pmax_ef
(%) is the power of maximum efficiency, it is applied the correction factor Fef (for
consumption penalty to adjust to the actual curves of consumption and efficiency of the fuel
cells). The fuel consumption curve for output power P (kW) is obtained as follows:
P P (%)
Cons FC BFC ·PN_FC AFC ·P·1 Fef max_ef
P 100
N_FC
The graph shows the consumption and efficiency curves (in % of the LHV of the H2) versus
the output power of the fuel cell that we have selected in the table. The H2 Lower Heating
Value (LHV) is 33,000 Wh / kg, while the High Calorific Power (HHV) is 39400 Wh / kg.
The graph of consumption and efficiency of the fuel cell that is selected in the table is
represented. Below the graph it shows the nominal power of the fuel cell (kW) and the
minimum amount of H2 required to start generating electricity. In the case of the figure, the
fuel cell needs at least a hydrogen mass flow rate of 0.004 kg/h to enable it to generate useful
power. If the battery uses H2 from the tank previously generated by the electrolyzer, in the
simulation, if for a given hour there is no more than 0.004 kg in the tank, the battery will not
be able to generate any electricity during that hour (and therefore will not work during that
hour).
As explained in the previous sections, if we are interested in the calculation of the life cycle
emissions, we must enter (below the table) the equivalent CO2 emissions due to the
manufacture of the fuel cell and of the electrolyser, in g of equivalent CO2 per kW of nominal
power. It depends on the technology.
If the origin of the fuel is “External”, no electrolyzer will be required. In this case, use of a
tank will depend upon the fuel supplier (this is not the H2 tank), and the check box is enabled
to include/exclude an electrolyzer and an H2 tank. In this case, the fuel used by the fuel cell
(H2 or other fuel as methane with reformer) is purchased externally, and additional data must
be estimated, as shown below (bottom right):
Fuel Price (€/kg), (note that fuel is estimated in kg, even for a gas, as weight does not vary
with pressure and temperature), expected annual Fuel Price Inflation rate for the fuel to be
used by the fuel cell (%), and CO2 emissions from the fuel used by the fuel cell (kgCO2 /
kgFuel).
3.16.2 Electrolyzer
Data that must be introduced: Name, Nominal Power (kW), Acquisition Cost (€), Operation
and Maintenance Cost, Expected Lifespan, Consumption Parameters A (kW/kg/h) and B
(kW/kg/h), and Minimum Operating Power (as a percentage of nominal power).
Please select the most appropriate units (bottom centre) for Expected Lifespan and Operation
and Maintenance Costs (yrs and €/yr, or hours and €/yr).
Graph represents the consumption and efficiency of the electrolyzer that is selected in the
table. Below the graph it shows the nominal H2 mass flow (kg/h) and the minimum electrical
power needed to start generating hydrogen. In the case of the figure, the electrolyzer needs at
least an electric power of 0.2 kW to begin generating hydrogen. In the simulation, if during a
given time no more than 0.2 kW of power is available to operate the electrolyzer, it can not
generate hydrogen during that time (and therefore it will not work during that time).
3.16.3 H2 tank.
Pressing the "HDI and Jobs" button accesses the screen where you can enter the data for the
calculation of the Human Development Index (HDI) and Job Creation of the different
technologies.
On the left side (HDI), you must enter the number of persons of the community from which
the installation is to be supplied, in addition to the parameters for calculating the HDI.
The HDI can be calculated considering the use of excess energy, considering a usable excess
factor (by default 20%) and a maximum usable (default 35% of total load), following the
methodology set out in the article (Dufo-López, Cristóbal-Monreal, et al., 2016a).
In the right part, the job creation data of each technology (number of jobs per GWh of
generated energy) is entered.
The default data were obtained from the doctoral thesis of Juan Carlos Rojas Zerpa (Rojas-
Zerpa, 2012). Employment created by photovoltaic and wind power by default is considered
in jobs per MW of peak power, as was considered in (Dufo-López, Cristóbal-Monreal, et al.,
2016a).
After entering all the data of resources and components, the button of the main screen
"Sensitivity Analysis" is enabled. When you click on it, the following screen appears (if you
have not entered all the consumption data and resources, a message will appear saying that
you have to enter the data first):
The screen has 6 tabs where you can enter the data so that iHOGA performs the sensitivity
analysis..
You can add up to a total of 5 cases of wind for sensitivity analysis (base case and four
others). The last introduced case can be deleted by clicking "Remove last one".
By clicking on the button on the bottom right "Graph" the different series are plotted.
Each case will be considered in a different optimization, i.e. iHOGA performs the
optimization of the system for each case Wind.x. If we have 3 cases of wind (the basis
Wind.1, Wind.2 and Wind.3) iHOGA considers three different cases to optimize (3 sensitivity
analysis).
If there are more variables considered for the sensitivity analysis (other tabs), then the number
of optimizations that will run iHOGA includes all possible combinations. For example, if we
have 3 cases of wind for the sensitivity analysis and 2 cases of irradiation (introduced in the
2nd tab) the number of optimizations that will run iHOGA are 3x2 = 6 optimizations. Adding
more variables in the analysis of sensitivity, the number of optimizations will be multiplied by
the number of cases of each variable.
Sensitivity of irradiation over the surface of the PV modules (Rad.x).
In the 2nd tab we accede to cases of sensitivity analysis of irradiation.
As in the case of wind, using the “Add” button you can add up to 5 cases and you can delete
the last entered using the button “Remove last one”. Each case is called Rad.x, Rad.1 being
the base case, case 2 is Rad.2, etc.
Each case can be defined by a scale factor multiplying the base case or importing in 8760
kWh/m2 hourly values from file. Irradiation imported must be on the tilted surface of the PV
modules, not on a horizontal surface.
If a sensitivity analysis of irradiation is done, the optimization of the PV modules during the
optimization of the system is not possible.
By clicking on the button on the bottom right "Graph" the different series are plotted.
on their screen, and hydrogen components (fuel cell, electrolyzer and hydrogen tank) 30% of
the fixed on their screens.
Sensitivity analysis can take a long time if the steps of the simulation are of less than 60
minutes, so steps of 1 hour are recommended.
Once the data of resources and components have been fixed, the data of the study of the
probability analysis can be accessed by means of the button “Probability Analysis” of the
main screen. The next screen appears:
By default the probability analysis is not ready. To indicate we want probability analysis, click
on "PERFORM PROBABILITY ANALYSIS" and the following screen appears, in which the
checkboxes "Analyze variability of the average value of load", "Analyze the variability of the
average value of irradiation", "Analyze the variability of the average value of wind speed "
and "Analyze the variability of the average value of fuel price inflation " have been checked.
With this analysis, for each combination of components and control strategy to be studied, N
combinations of different time series of load and resources (and fuel inflation) will be
performed using Monte Carlo Simulation, according to the methodology presented in the
works (Dufo-López, Pérez-Cebollada, et al., 2016)(Dufo-López, Cristóbal-Monreal, et al.,
2016b). Each time series of load and resources will be obtained from the original series, but its
mean value will be obtained according to a Gaussian probability distribution, with mean the
original mean value and standard deviation (also called standard deviation) the value fixed in
this screen.
N, the number of series to calculate for each combination of components and control strategy
(default 500) must be set. If a very low value is set, the distribution that is obtained may not
look much like a Gaussian distribution.
The probability analysis can be performed taking into account the Gaussian distribution of the
mean annual values of:
- Average load
- Wind speed (only if it has been selected that there may be wind turbines in the system)
- Water flow (only if water turbine has been selected in the system) or fuel price inflation (if
there is an AC generator).
The average values are those that have been fixed in the screens of load and resources. Typical
deviations should be set for each case on this screen. For each case the probability distribution
curve is shown in red, taking into account the number of N series that has been set (default
500) and in green the ideal Gaussian probability distribution curve. If a small value is set for
the number of series (for example, N = 50), it is observed that the actual distribution may be
very different from the ideal one (figure below), which is not recommended:
Each one of the N time series of a full year (and also in 1-minute time steps) (load, irradiation,
wind speed and water flow, if any) will be generated according to the mean value randomly
obtained following the Gaussian distribution, multiplying that value by the hourly values of
each original series obtained in their respective screens and dividing by the original average
value. That is, each time series will be proportional to the original. We can also consider
hourly variability in the series, default 0%.
If you click on the "Consider correlation between the variables" box, and click on “Correlation
Data” button, a small screen with the data of the covariance matrix that relates the load and
the meteorological data appears. Then the Cholesky matrix is obtained which will then be
used to obtain random data following the indicated correlations (Dufo-López, Cristóbal-
Monreal, et al., 2016b).
During the optimization of the system, each combination of components and control strategies
is simulated N times. Each of these simulations includes a random series of load (following its
mean and its standard deviation), a random series of irradiation (in case there are modules, and
following its mean and its standard deviation), a random series of wind speed (if there are
wind turbines, and following their mean and standard deviation) and a random series of water
flow (if there is a turbine, and following its mean and standard deviation) or a random value of
inflation of fuel price. These random data follow normal distributions according to the
indicated data.
Each of these N simulations will give results of total cost (NPC), CO2 emissions, unmet load,
photovoltaic generation, wind turbines generation, etc. For each result the mean of all these
simulations is obtained, and this will be the value that the program will take into account to
compare with other combinations of components and strategies, and that will be shown in the
results table and in the reports.
If a Monte Carlo simulation stopping rule is selected (by default), for each case of
combination of components and strategy N or less simulations can be evaluated, depending on
whether or not the stopping conditions are reached.
The default stopping rule (confidence level for maximum error of the mean) was used in the
article (Dufo-López, Cristóbal-Monreal, et al., 2016b), while the stopping rule considering the
relative standard error was used in (Dufo-López, Pérez-Cebollada, et al., 2016).
Once the optimization is completed, for each result of combination of components and control
strategy, the simulation (see section 4.6.1) can be visualized for the desired case for each
series of load, irradiation, wind speed and wáter flow (or fuel inflation) among the cases
AVERAGE, AVERAGE+STANDARD_DEVIATION, AVERAGE+3·STANDARD_
DEVIATION, AVERAGE-STANDARD_DEVIATION or AVERAGE-3·STANDARD_
DEVIATION.
iHOGA calculates all these characteristic cases (combinations of each case of AVERAGE,
AVERAGE+STANDARD_DEVIATION, etc. for each variable considered in the probability
analysis). You can choose which combination of cases (which characteristic case) to be
visualized in the simulation screen.
By default the simulation of the average case will be displayed, but other cases can be set to
visualize its simulation. For example, we can set the AVERAGE +
STANDARD_DEVIATION for load, and for the irradiation, wind and wáter flow data, the
AVERAGE-STANDARD_DEVIATION. This combination would be quite pessimistic, since
it would be considered that the consumption is somewhat higher than the average, while the
resources are somewhat smaller, and, when visualizing the simulation, it will be possible to
see if the demand is covered every day of the year, etc., . You could set a more extreme
combination to visualize in the simulation, for example, to set the
AVERAGE+3·STANDARD_DEVIATION for load, and for the irradiation, wind and wáter
flow data, the AVERAGE-3·STANDARD_DEVIATION, this case would be the worst one,
since it is almost impossible to have values greater than the average + 3 * standard deviation
nor lower than the average - 3 * standard deviation.
Once the optimization is completed, for each result of combination of components and
strategy, in the report (see section 4.6.1), probability distribution graphs of different results
will be displayed and, in the last two graphs, you can choose which results to display:
After finishing the optimization, if we click on any box in the table of results (main screen),
the results are updated (the N random combinations of load, irradiation ... and the average
values of the results are updated, which can be different since the N combinations may have
If it had already been calculated, it asks if we want to calculate, since the previous results will
be lost.
It should be noted that if there are results (we have previously optimized the system),
clicking on "CALCULATE" and acceptting the confirmation requested by iHOGA, the
results table will be deleted, and a new one will be obtained with the new results. Even if we
click on the "Cancel" button, the original table will be deleted. Therefore, if we want to
preserve the original results values, before re-calculating, save the project with another
name, with File-> Save As, and from then on we will use this new project, leaving the old
one saved.
A panel appears at the bottom of the main screen, with a progress bar indicating the progress
of the optimization. Below it we are informed of how many cases have been evaluated so far,
the time elapsed and the remaining time.
The system schema disappears and a table appears where the results of the optimization will
be collected. If the genetic algorithm method is used (because not enough time has been
allowed to evaluate all the possible combinations), in the case of mono-objective optimization,
the best solution of each generation is collected in each row (the best obtained is shown in the
last row), whereas in the case of multi-objective the solutions (only non-dominated or all) of
each generation are collected in the table. In addition you can see the graph (when the first
generation is complete) where you see the evolution over the generations, in the case of mono-
objective optimization, or the Pareto diagram of the latest generation evaluated in the case of
multi-objective optimization.
If all combinations are evaluated (enumerative method), the table and graph appear at the end
of the calculation, with the combinations ordered from best to worst.
During the simulation you can press the "Cancel" button, to the right of the progress bar, to
stop the execution of the program. If you then press the “CALCULATE” button the
calculation can not be resumed, but a new calculation must be started.
In the case of the mono-objective optimization there is a unique objective: minimize NPC.
The following screen shows an example of mono-objective optimization. In this example the
components of the system are photovoltaic modules, batteries, auxiliary (PV batt. charger,
rectifier), inverter, AC generator and fuel cell (with electrolyzer). In addition, the maximum
execution time has been set at 1 minute, but the number of possible combinations would take
in evaluating 8'38", so that the genetic algorithm method is used to find the optimum without
evaluating all combinations, and the best solution found for each generation is being
visualized during the optimization (in the figure it have already passed 4 generations of a total
of 15 to be executed).
At the bottom of the screen a progress bar appears, and under it the evaluated cases, elapsed
time and remaining time. You can cancel the execution at any time by pressing "Cancel"..
Each row of the table collects the best solution found during each generation. The graph
shows the total cost (NPC) of the system (in red) and the total annual equivalent emissions of
CO2 (including diesel emissions, if any, and manufacturing emissions of the components,
spread over their lifetime) (in green) for the best solution of each generation. In blue it is
shown the unmet load (in kWh/year and in %), the days of autonomy (of daily average annual
load), the value of the division between the nominal capacity of the battery bank and the sum
of the short circuit current of the photovoltaic generator and the DC current produced by the
group of wind turbines at 14 m/s, Cn (Ah)/(Ipv+Iw) (A), the renewable fraction covering the
demand load (%) and levelized cost of energy (€/kWh). These values, besides many others,
are also observed in the table.
In the case of any row (or all) in the column of Total Cost (NPC) (€) the INF value is shown,
it means that this combination of components and control strategy does not comply with the
constraints we have indicated (maximum unmet load, minimum autonomy, nominal battery
bank capacity > N times Isc PV generator, minimum renewable fraction or maximum cost of
energy) and iHOGA penalizes that solution, giving it infinite cost (1E10). If any row has this
value, it means that in its generation no solution evaluated comply with all the constraints.
This usually occurs when loads are high and the elements of the system are "small". It is
represented graphically with total cost (NPC) (€) = 0.
At the end of the simulation the panel disappears with the progress bar and instead the
description of the best solution found (the best of the last generation) appears.
By selecting or deselecting the "Show diagram" checkbox, we will see the schematic of the
components or the results table .
In the case we have selected in the main screen, in the tab "GENERAL DATA" the field
"Comparing with Worst Month Method (PV-only)", it also shows the characteristics of the
photovoltaic-battery calculated according to the method of the worst month.
If probability analysis was selected, each combination of components and strategy is analyzed
N times, where N is the number of sets set on the probability analysis screen (unless the stop
rule of the Monte Carlo simulation is reached). In this case, the results displayed in the table
and those saved in the Excel table (see below) will be the average values of the N series.
At the end of the simulation it is enabled in the lower right corner the "Save Excel table". If
you click it, an Excel file with the values of the result table will be generated.
After you save the Excel file, if you open the file with Microsoft Excel, it reports a message
asking about opening the file, then you click on “Yes” as answer and the file is correctly
opened by Microsoft Excel:
If, once the table is opened in Microsoft Excel, we select "Save As" (in Microsoft Excel) and
choose the most modern Excel format (xlsx), the next time we open the file, you will not
asked for anything.
If we want to calculate again, we must keep in mind that the results will be lost. It is for this
reason that, by pressing the "CALCULATE" button, if previously calculated, iHOGA asks if
we are sure, since the previous results will be lost.
If we want to recalculate, we accept. If we want to save the previous results, press Cancel,
save the project, save it as with another name and in the new project we can calculate without
losing the results of the original project.
In this case, if we have selected "Display only non-domin." (main screen, “OPTIMIZATION”
tab), in the table and in the graph we will see only the Pareto of the non-dominated solutions
(those that satisfy that there is no other solution that is better in all the objectives).
If we do not select it, we will see all the evaluated solutions of the main algorithm, sorted by
the number of solutions that domine them.
You can select multi-objective Total Cost (NPC) versus CO2 or Total Cost (NPC) versus
Unmet Load or triple multi-objective (cost – emissions – unmet load) or other type including
the objectives of maximizing the HDI or job creation.
It is necessary to indicate the maximum number allowed for the non-dominated solutions
(Max. non-dom.), as well as the maximum allowed percentage of NPC over the minimum
NPC of them (% over min. NPC). The number of "Save Pareto every" indicates the interval in
the generations we want to save, in addition to the first and last paretos. Once the optimization
are completed, the "Export Paretos" button is enabled and we can export the saved paretos to
an ASCII file.
By pressing the "CALCULATE" button, each time a generation of the main algorithm is
completed, the solutions (all or only the non-dominated ones) are shown, numbered (in
yellow, to be identified in the graph) and represented by number of solutions by which they
are dominated ("Dom. By"). The graph shows the pareto of each generation.
It should be noted that each time a new generation is obtained, the program must sort the
individuals to see the number of solutions by which they are dominated. This process, if the
population is large, can take a time, in the order of minutes, so during that time the program
screen is stopped.
The following figure shows the last generation of a multi-objective NPC-emissions example.
At the bottom it is not specified the data of the best solution, since there is no better solution,
it can not be said that one non-dominated is better than another not dominated.
There are two genetic algorithms (main to optimize the combination of components, and
secondary to optimize the control strategy). In the case of indicating the option "METHOD
ENUMERATIVE" in the window that is obtained by clicking on the "Parameters" button of
the tab "GENERAL DATA" of the main screen (or if it is determined by the software when
the allowed maximum execution time is higher than the one that would cost to evaluate all the
combinations), the genetic algorithm will not be used, but all the possible combinations are
evaluated (enumerative method), and the best N solutions will be displayed in the results table
and in the graph, N being the number marked in the box "Display best".
In this case, the maximum allowed time for the execution of the optimization is the default
that appears in the software (15 min), however, in 2 seconds all combinations of components
and control strategies are evaluated (there are "few" possible combinations, only 54), so the
enumerative method is used.
If we check the "EVALUATE ALL COMB." Option of the main genetic algorithm (in the
secondary we also mark it), or if the maximum execution time we allow is sufficient and
iHOGA selects the enumerative method (evaluate all the combinations), the system performs
all possible combinations of components, and for each one of them it looks for the strategy, by
means of the secondary algorithm if it has not been marked the option of "EVALUATE ALL
COMB." for the control strategy or evaluating all the possible strategies if that option has been
marked. In any case, at the end of evaluating all the combinations, the best N combinations of
components, ordered from lowest to highest cost, each with their best strategy, are represented
in the table and in the graph. If N is very high, it can take a long time to represent all the
solutions. However, since the first solutions represented are the lowest cost and therefore the
best solutions, it can be canceled by the corresponding button, and the representation is
stopped.
Solutions that do not comply with the constraints (maximum allowed unmet load or other
constraints) are assigned the infinite NPC value (1E10). However, to represent graphically it is
done with NPC = 0.
In the case of having used the genetic algorithms, the table shows all the characteristics and
parameters of the best solution of each generation, sorted from the 1st to the last generation
(the best result is the last generation, which is in the last row of the table).
In case of using the enumerative method (all possible combinations have been evaluated), the
table shows all the characteristics and parameters of the N best solutions, ordered from best to
worst (the best one is the first one in the table ).
We can move through the table from right to left with the bar at the bottom.
The first column corresponds to the generation number (Gen.) in the case of using genetic
algorithms for the optimization of the components or the number of order (No.) if all the
combinations have been evaluated or if the optimization is multi-objective. The following
columns are the total cost (NPC), in red, annual equivalent CO2 emissions, in green, and
annual unmet load (kWh/year and % of load), days of autonomy, the value of the division
between the nominal capacity of the battery bank and the short-circuit current of the
photovoltaic generator + the DC current of the wind turbine group, Cn (Ah) / (Ipv + Iw) (A),
the renewable fraction and the updated cost of energy (the 5 magnitudes must comply with the
constraints set), in blue.
Next on the right are the "SIMULATE", "REPORT" and "COSTS" cells that, when clicked,
the simulation, report or cost screens are accessed. Next are the results of Human
Development Index (HDI) and Jobs created during the life of the system. Then there are the
characteristics of the components of each solution (number of modules in series x parallel x
power of each panel; slope of the PV modules; number of batteries in series x parallel x
capacity of each battery, number of AC generators AC in parallel x power of each AC
generator,
etc).
The columns in red are cost. In the case of optimization of the components and also
optimization of the control strategy, in addition to the second column indicating the total cost
of the system "Total Cost (NPC) (€) ", there is the column "C. Sec. (€) ", which gives an idea
of the variable costs that depend on the control strategy (costs of replacement of batteries, AC
generator, etc., costs of operation and maintenance, fuel ...), that is, costs that are not fixed but
depend on the control strategy.
To its right there is is a series of columns in bold that indicate the values of the control
variables.
To its right there are the columns of annual energy (kWh/year), in blue: Total energy
consumed (Etotal), energy generated by renewable sources (Eren) (it is not the same as the
renewable energy that covers the demand, since the energy generated by renewables can be
higher, as there are losses due to efficiencies and energy there can be excess energy), Energy
generated by photovoltaic modules (Epv), Energy generated by wind turbines (Ew), Energy
generated by the hydraulic turbine (Et), Energy in excess (which has not been able to take
advantage) (E excess), Energy sold to the AC grid (in the case of net metering, this column "E
sell (kWh / year)" shows the energy involved in the net metering scheme, i.e. not the total
energy that has been injected into the AC grid but the energy that has been injected and later
obtained from the grid through the net metering), Energy purchased from the AC network
(Ebuy), Battery charging (E ch. Bat., energy that enters into the battery bank) and discharging
energy (E disch. Bat., energy that goes out of the battery bank), Electric energy consumed by
the electrolyser (E elyzer.), Energy Electric generated by the AC generator (E gen) and
Electric power generated by the fuel cell (E FC). All energy values are annual.
It should be noted that sometimes not all excess power can be sold to the AC grid, since some
of that excess power may be on the DC bus and the inverter is not enough to evacuate it all to
the AC bus.
Then there are columns in black that indicate the AC generator's annual operating hours
(including the extra equivalent minutes due to the starts and the extra ageing due to running
out of its optimal range), the estimated lifetime for the batteries (in years), the annual hours of
charging and discharging of the batteries, and the operating hours of the fuel cell and the
electrolyzer.
Next are red columns with annual costs (€/year): cost of the fuel of the AC generator (C. Fuel
Gen.), cost of the fuel of the fuel cell (C. Fuel FC) (if any), cost of the power purchased from
the AC grid, including the cost due to availability of the power (E Buy), incomes of the power
sold to the AC grid (E. Sell, negative value as it is income and not cost) and incomes of H2
sold (Sell H2).
Next are the columns also in red that indicate the total costs associated to each of the elements
of the system, transferred to the initial moment of the investment (NPC): C PV (NPC) (€) is
the total cost (NPC) of the PV generator, C Bat. (NPC) (€) is the total cost (NPC) of the
Battery bank, etc. The cost per purchase of energy to the AC grid is indicated by “E buy
(NPC) (€)” and it includes the cost per access charge of all the energy consumed from the AC
grid; in the case of net metering it also includes the cost of the net metering service
(attributable to the energy involved in the net balance, that is to say, the one consumed with
charge of the accumulated rights) and by the back-up charge of the self-consumed energy, if
appropriate. The revenues from the sale of surplus AC power to the grid (including the
transfer charge, if any) and the sale of excess H2 are negative values because they are
revenues and not costs. In the case of net metering actually the cost for the consumer-
generator will be the subtraction of both columns (E buy - E sell). If these revenues from the
sale of electric power and H2 are high, they may exceed costs, so that the total cost (NPC)
may be negative, implying that there is more income than expenses over the useful life, and
the more negative the NPV is, the more cost effective the installation will be.
We can visualize the simulation of each solution found by iHOGA, by clicking, in the row
corresponding to the solution that interests, in the box “SIMULATE...”.
It shows a screen where the results of the system time simulation appear in 8 tabs.
In the default tab (Hourly Simulation) the system is simulated throughout all hours of the year.
You can change the way the results are displayed by clicking the tabs at the top.
If the battery model is not the Schiffer model, the simulation is seen during 1 year in the time
steps that have been used in the optimization. If the model is Schiffer, the simulation is seen
during the life of the batteries.
By default, the 1-day display appears. We can move throughout the year with the scroll bar
below the graph. You can also see more than one day at a time, putting the desired number in
the box on the right (Days display). Below the graph are the names of the represented
variables, with their color. They can be activated or deactivated with their box. Some variables
are disabled, that is because there are variables that the system has not used (for example, if
there are no wind turbines, the energy produced by them, which would be represented by the
"Wind turbines" curve is disabled).
The power consumed or supplied of all elements of the system refer to the left axis of the
graph (power, W). The state of charge (SOC) of the batteries refers to the right axis (energy in
the battery bank, Wh).
In the case of consumption of H2, the energy of the H2 tank in each moment (Wh) is
displayed (referred to the left axis), converted to energy by multiplying by the available H2 kg
at each moment by 39400 Wh/kg, this value being the H2 HHV. In this case the value of the
variable H2TANKstp, also converted to Wh, is also shown.
In the case of water consumption, it is shown the necessary power of pre-pumping (from the
well or river to the reservoir or tank) of the consumed water at any moment.
The value of each variable is represented for each time step. If the time step is 1 h and for
example on January 1st at 0 h the AC generator supplies 0 W and at 1 h supplies 2000 W (ie
2000 W for 1 h), this is represented by a ramp, which leaves from 0 W to 0 h and reaches
2000 W at 1 h. It must be clear that in the example what actually happens is that from 0 to 1h
the generator supplies 0 W and from 1 to 2h the generator supplies 2000 W.
With respect to "E H2 tank (HHV H2)", for each hour the energy value of the H2 tank (Wh) is
displayed at the beginning of the hour. It can be observed that if in one hour the electrolyser
has worked generating H2, the energy of the tank increases in the next hour. If in an hour
there is H2 consumption of the tank, used by the fuel cell or by external consumption of H2,
in the next hour the H2 tank energy will fall. In one hour there may be H2 consumption and at
the same time H2 generation in the electrolyzer, so the tank energy in the next hour will vary
depending on which one is greater.
The value represented in the water reservoir or tank is that of the energy that has been needed
to pre-pump the water that is stored at the beginning of that hour in the reservoir or tank. If
there is water consumption, at the end of the hour (the beginning of the next hour) it is
observed that the energy of the water tank decreases. If there is pumping for one hour, at the
end of this (beginning of the next hour) it increases.
The value represented in "E sold to AC grid" is the energy injected into the AC network
(energy that can not be used in the system). If you have chosen a Net Metering option, only
the energy injected into the network is represented until the accumulated sum (annual or
monthly) is the maximum that can be used so that the net balance (energy or economic,
depending on the case) is zero.
Regarding the SOC of the batteries, if in one hour there is net charge of the batteries, in the
next hour the SOC grows, whereas if there is net discharge, in the next hour the SOC
decreases. Note that if there is no load or discharge the SOC decreases slightly due to the self-
discharge coefficient of the batteries.
In the case that some value of the represented variables has its maximum very high, the rest of
the values may be too small (this can happen mainly with P1, E H2 tank and H2 TANK
setpoint). In that case, deselect the box corresponding to that variable to better observe the
other variables.
The two buttons on the right side show the battery SOC and the time since the last full charge
of the batteries.
By clicking on the "SOC (0-1)" button it displays the following screen (after changing the
display days to 30), which displays the state of charge of the batteries for 30 days. At the
bottom the number of cycles for each depth of discharge interval (DOD) over the entire year is
shown.
By clicking the "T. full charge" button the following screen appears, in which 100 days are
displayed. The number of days since the last complete charge (SOC> 0.95 by default but can
be changed on the battery screen) of the batteries (green curve) and the number of complete
cycles (blue curve) are displayed.
Below the simulation chart, it informs about the components and the control strategy. It also
informs of the months and specific days in which the demand load could not be covered in
full.
This tab shows the hourly values for the different energies of the system, each in a different
graphic.
(This example of simulation corresponds to a system different from the simulation shown
before)
This tab shows, for each month (1 to 12) and for the total of the year, the average values of
power (kW) supplied by the different technologies (stacked bars) and average values of load
power, unmet load and energy purchased and sold to the AC grid (in fine columns, without
stacking).
This tab displays for each month (1-12), monthly energy values (kWh).
This tab displays total annual energy (kWh) for each component
After the simulation (one time step in each row), the Excel file displays the monthly and
annual total values of different energies, and the total values of purchase and sale energy to
the AC grid (energy, costs and incomes). Total values also appear for the different time
periods defined in the PURCHASE/SELL tab in the LOAD / AC GRID screen.
Then the cash flows of costs and incomes are shown. Below is displayed the number of cycles
for each case depth of discharge (DOD) conducted by the batteries, using the method
"Rainflow" or cycle counting.
If there are days when the whole load is not covered by the standalone system (there is energy
not served by the standalone system, which will be purchased from the AC grid if there is AC
grid and the purchasing is allowed), the days when not all the energy is covered by the
standalone system are shown later.
If we performed the optimization with the option of probability analysis, in the simulation
screen is will be displayed the case that we have chosen on the screen of probability analysis
(see next figure and end of section of probability analysis).
By clicking on "SIMULATE", the N series are calculated and also other 5number_of_probability
_variables
additional series (characteristic cases, combinations of average, average + Std. Dev.,
average + 3Std. Dev., average - Std. Dev, average - 3Std. Dev. of different variables taken
into account in the probability anaylsis), where number of probability variables is the number
of variables included in the probability analysis (this is a number between 1 and 4, the
variables can be load, solar irradiation, wind speed and water flow or fuel price inflation). For
example, if the number of series for the probability analysis is set in N=500 and the variables
to analyze are load and irradiation (2 variables, 52 = 25 additional series), the total number of
series analyzed when clicking SIMULATE button are 500 (or less if the stopping criterion of
the Monte Carlo simulation was reached before the 500 combinations were performed) +25
characteristic cases.
You can cancel by clicking “Cancel” button. If it is not cancelled, the results of the row are
updated with the average of the 500 series. In the simulation screen the case corresponding to
the options chosen in the probability analysis screen is shown. For example, if we have chosen
for the Load the Average + Std. Dev. data and for the Irradiation the Average – Std. Dev. data
(next figure), the simulation screen is shown below.
If you click the button "Save Prob. Data", the results of the N+5number probability variables series are
saved in Excel format.
If you open the file with Microsoft Excel, it reports a message, you must answer “Yes” and it
opens correctly. In Microsoft Excel, you should save the Excel file as xlsx format (in Excel,
use “Save As” and choose file format xlsx”), then the next time you open the xlsx file Excel
will not ask you any question.
The Excel shows the results for each of the N series (or less if the stopping rule is reached
before) (cases prob. numbers 0 to N-1, in the example cases 0 to 499) and for each of the cases
5number of probability variables (combinations of average, average + Std. Dev., average + 3Std. Dev.,
average - Std. Dev, average - 3Std. Dev. of different variables taken into account in the
probability anaylsis, cases numbers N to N+5number of probability variables -1, in the example cases
500 to 524). It also shows the minimum, maximum, average and standard deviation of each
result
variable.
In the case of using the battery model "Schiffer", the simulation is performed until the end of
the lifespam of the batteries. For example, in the case of the figure below, the batteries
lifespam is 9.31 years.
The following figure shows the simulation of the first 10 years (3649 days display). You can
see how in the year 10, on April 23, the maximum capacity of the battery (brown curve) has
dropped to 80% of its nominal value (9360Wh * 80/100 = 7494 Wh), indicating that battery
has exhausted its useful life and must be replaced. This day the batteries are replaced.
By clicking on the buttons on the right of the screen simulation, different variables appears in
a new simulation screen:
- SOC(0-1): SOC of the battery bank, in per unit (in Figure 10 years displyed, 3649 days):
- T. full charge: Time and equivalent cycles since the last full charge
- V Battery: Battery voltage and cutting limits (in Figure 1 days display):
It is shown the maximum capacity in brown, with the end of lifespan when it reaches 80%, the
loss of capacity for degradation (green curve) and the loss of capacity due to corrosion (blue
curve). It is noted that, in this case, the capacity loss due to corrosion is far greater than by
degradation. This is only taken into account by the Schiffer model and not by another model
of batteries, making it much more accurate than the other models.
- I battery: current (A) in each individual battery is displayed (in the figure, 10 days
displayed):
It is shown the current for each individual battery (green curve) and the discharge current for
the first hour after full charge (blue curve), very important parameter for calculating the
current factor and quantify the effect of sulfation and its degradation effect.
- Factors: factors used in the Schiffer model (in figure display 100 days):
FSOC, FI, Facid, Fplus, Fminus
- Cycles: full cycles performed by the batteries (in the figure, displayed 10 years):
It is shown the cycles without weight factors (curve green) and the weight cycles (blue curve).
- Bad ch.: Number of bad recharges (not achieved 99% of SOC) (in the figure, displayed 10
years):
- Resist.: Resistances (charge, discharge and and corrosion layer) (in the figure, 10 years of
viewing):
The simulation results shown in the other tabs of the simulation screen (separate hourly
values, etc.) refer to last year of the simulation.
Some values of the control variables in the result table can be changed. Although this modifies
the results obtained, it can be useful to see how a parameter affects the simulation of the
system and the different energy and economic results. For example, we can change in a row of
the table the minimum SOC value of the batteries, and clicking on another cell in the same
row will see how the results vary.
Modification on the power table of the elements or number of elements in series or in parallel
has no effect. We can modify the characteristics of the elements on their screens, and then if
clicking on any cell if the results table iHOGA will take into account the changes in that row.
4.4.5. Report.
Click on the “REPORT...” column in the results table to display a report for each solution.
Details are provided in the report on System Components (with a power chart), Control
Strategy, Energy Balance, and NPC values (with charts).
The menu at the top provides the following options: Zoom, Printer Setup, Print Report, Save
Report to a File, Open an Existing Report.
Reports may be saved in pdf format using Adobe Acrobat and the Print option. If you have
installed in your computer Adobe Acrobat or a PDF virtual printer (for example, free software
PDF, and when clicking on the print button it generates the report as a pdf file, which can
be saved.
top left , we move through the different pages of the report. On the first page
there are the most important results with their probability distribution graphs. On page 2 it is
reported the mean and standard deviation of the other results, and the report of the most
important results of the characteristic cases combinations (5number of probability variables
,
combinations of average, average + Std. Dev., average + 3Std. Dev., average - Std. Dev,
average - 3Std. Dev. of different variables taken into account in the probability anaylsis: load,
solar irradiation, wind speed and water flow or fuel price inflation, if applicable).
This report can be printed (a printer or PDF) in the same way as explained for the general
report.
When we close the probability report, a screen appears asking if we want to save the results of
the analysis of probability as Microsoft Excel file (same Excel file as the one which is saved
when clicking the button "Save Prob. Data" in the simulation window shown in section
4.4.2).
Clicking on the “COSTS...” cell of the result table corresponding to the row of the solution
you want to study, a report shows the cash flows of the different components of the system
throughout the years of the life of the system. Costs are considered positive values (+) and
incomes are considered as negative values (-). You can see how some components have a
negative cash flow at the end of the lifetime of the system (income is obtained by the sale of
the component at the end of the lifetime of the system, with value proportional to the
remaining life of the component).
Please, note that the cost of the electricty bought to the electrical grid includes the cost of the
availability of the power.
This report can be printed (in a printer or in PDF format) in the same way as explained in the
previous section.
When you close the report a screen appears asking if you want to save the results of the cash
flows in the form of Microsoft Excel.
If you click “Yes”, you save the file and, when you open it, the cash flow of costs (+) and
incomes (-) of the years of the system lifetime are shown for each component, and also for
purchasing or selling energy from the AC grid, etc. For each cost or income, for each year it
is shown the cash of the year and the actualized cash (NPC). Also, total values for each
component and for each year are shown.
In Microsoft Excel, you should save the Excel file as xlsx format (in Excel, use “Save As” and
choose file format “.xlsx”), then the next time you open the .xlsx file Excel will not ask you
any question.
The “zooming” option is available for the graphical data on algorithm evolution, Pareto
representation, simulation, load, and resources (irradiation, wind and hydro). Draw a window
with your mouse over the area to be enlarged (click from top left to bottom right).
To undo the zoom window, click and drag from bottom right to top left.
Once we have calculated a project, we can save it as a default project, so that from then on
when a new project is created, it will be created based on this project.
If the sensitivity analysis is performed, i.e. if cases have been entered on the sensitivity
analysis screen, iHOGA calculates each sensitivity analysis project, i.e. each combination of
sensitivity analysis cases. For example, if we have fixed 3 cases of wind, 2 of irradiation, 3 of
load, 2 of interest and inflation, 2 of fuel price inflation of generator AC and 3 of prices of
components, the number of sensitivity analyzes (the number of optimizations) that iHOGA
will perform is 3x2x3x2x2x3 = 216 projects. The figure below shows a screen during the
course of the calculation in which the number of optimizations (sensitivity analysis number) is
2. At that time it goes through the sensitivity analysis number 2 (corresponding to Wind.1,
Rad.1, Load.2 (I-g)1, Inf.F.1, Pr.1), in that analysis in that momento it is in generation 5th of
the genetic algorithm. Between the figure and the table it shows the number of the sensitivity
analysis being carried out at that moment and the combination of the sensitivity cases.
Upon completion all the sensitivity analysis, it is shown in the table of results the results of the
analysis No. 1 (the basis of all cases), next figure.
We can see the results of any other analysis by selecting the number of analysis down or
selecting each individual case analysis variables. For example, in the following screen it is
selected Sensitivity Analysis # 3 (corresponding to Wind.1, Rad.2, Load.1, (I-g) 1, Inf.F.1,
Pr.1, and results are shown in the table (next figure).
Once the sensitivity analysis is done (once all optimizations have been performed, one for
each combination of sensitivity analysis cases), by clicking on the "Sensitivity Analysis
Summary" button on the main screen (bottom), it is shown, for each sensitivity analysis, the
optimal system found.
For example, the following figure shows the summary of the sensitivity analysis of a project
in which the number of sensitivity analysis cases is 9. A graph that represents the NPC (red,
based on the left vertical axis) and CO2 emission (green, based on the right vertical axis) for
each number of sensitivity analysis is shown. Below the chart there is a box where you can
choose other representation. Below there is the summary text of the best solution found for
each sensitivity analysis. Scrolling with the vertical scroll you can see all 9 results in text.
By clicking on the "Report" button on the screen of sensitivity analysis summary, it displays
a report that can be printed or saved as pdf (if we have a virtual pdf printer installed on the
computer). In this case, the report occupies 1 page.
Clicking on the button "Save Excel" on the screen of the summary of the sensitivity analysis,
a detailed table with the results of the sensitivity analysis (best combination found for each
sensitivity analysis) can be saved in format .xls or format .txt. If we keep it as. .xls, when
opening the file with Microsoft Excel it shows a message, then you must answer “Yes” and it
opens correctly. In Microsoft Excel, you should save the Excel file as .xlsx format (in Excel,
use “Save As” and choose file format “.xlsx”), then the next time you open the .xlsx file Excel
will not ask you any question.
2. Does iHOGA only serve to simulate and optimize stand-alone (off-grid) systems?
No, you can also simulate and optimize systems connected to the AC grid, with or without
energy storage. If AC grid is available, and the option to buy the unmet load from the AC grid
is selected, the unmet load (energy that cannot be supplied by the stand-alone system) is
purchased from the AC grid. If the option to sell the excess energy (energy produced by the
renewable sources and not consumed by the load nor stored) to the AC grid is marked, all the
energy that can not be used by the load or by the storage is sold to the grid. Both options are
independent, can be marked only one or both. It is also possible to take into account net
metering, annual or monthly, so that it will only be allowed to sell to the AC grid at most the
energy purchased from the grid, annually or monthly. There are up to 8 possible options for
the net metering, depending on the legislation in place at the installation site.
There is also the possibility to simulate and optimize systems with battery storage and
connected to the AC grid, so that the batteries can be charged with electricity from the AC
grid (when the price is cheap) and discharged by supplying the load when the price of the
electricity from the AC grid is expensive (we can even model the batteries to inject them into
the AC grid at those times).
4. After I select a certain component, how can I enable the option to include/exclude the
component in/from the system?
You can import from the database the “Zero” component. It inserts an additional row into the
component table, assigning zero value to power, cost, and operating and maintenance costs.
This allows the hybrid system to use (or not) the component, since this has 0 power and 0
cost.
5. When saving or opening a project, the following error message is displayed: “File
name is too long for a Paradox version 5.0 table”.
The Paradox tables used by iHOGA accept a maximum number of 70 for the characters to be
used on the access path defined by the user. Note that 15 characters are already used by
several tables (table folder + table name), so the maximum number of characters for any
project directory and folder should be limited to 55. As an example, for a project saved with
the name “Test” in “My Documents” under Windows XP, the access path would be
C:\Documents and Settings\Rodolfo\My Documents\Test, with 55 characters. Any longer
names for the project would result in problems. It is recommended that all projects be saved to
a folder in the root directory, rather than to the “My Documents” folder.
6. Where can I obtain data on system components, such as characteristics, prices, etc?
Apart from iHOGA databases and manufacturers' web sites and renewable energy shops, you
may download Retscreen http://www.retscreen.net where information is available on the
characteristics, estimated costs, ... for different renewable-energy components.
7. What values should be assigned in the genetic algorithms for the following
parameters: number of generations, population, mutation rate, crossing rate?
iHOGA can select them, this is recommended. If you want to select them yourself, you must
know that this basically depends upon the time available and on the accuracy required for
calculation of results. Better solutions will be obtained for larger population sizes and number
of generations, at the expense of longer calculation times. In general terms, the best choice is a
large population rather than a large number of generations. For populations of a small size, it
will be difficult to find an optimum system, regardless of the number of generations used.
For the main algorithm, these values must depend on the component variability: number of
components considered for each component type and maximum number of components in
parallel allowed (PV modules, batteries, wind turbines and AC generators). For larger
component variability, large populations are necessary.
For the secondary algorithm, this depends on the control variables to be optimized and on the
degree of accuracy required for the optimization process. For a large number of variables, a
larger population will be required. For higher accuracy, a larger population will also be
required, since many values will be available for each variable (as an example, for a value of
50 in accuracy, variables will take 50 discrete values in 2 % steps).
Number of generations should be around 15. Population must be greater than 0.003% of all
the combinations (Bernal-Agustín & Dufo-López, 2009a).
Mutation rates are usually within 0,5-1 %. Crossing rate is usually 70-90% (Bernal-Agustín &
Dufo-López, 2009a).
8. NCP is displayed with a value of infinite (INF), and a screen is shown at the end saying
“No solution fulfills system requirements”
In this case, the system cannot find any solution which meet all constraints.
If the unmet load constraint is not achieved, there are several likely reasons for this:
The diesel generator cannot work at certain hours (for example during the night, if you
have specified that option) and therefore cannot supply the load during those hours.
The system includes H2 load, but no electrolyzer is accounted for. Include this
component in the system.
Either the size or the maximum number of components (PV modules, batteries, wind
turbines or AC generator) allowed is too small. In this case, the system cannot deliver
enough energy to meet the energy demand. Increase the power or the maximum
number of system components allowed.
The search space may be too small for some of the algorithms (small population and/or
few generations), so no system can be found that meets the criterion for Maximum
Allowed Unmet Energy Allowed. Increase pouplation size and number of generations.
9. I have a system that includes an electrolyzer, and in the simulation screen I see that in
some hours there is excess energy but this energy is not used in the electrolyzer, why?
The electrolyzer has a minimum operating power, defined in its characteristics, but its income
electrical power must be higher than the minimum energy required to start generating
hydrogen (B·Pn) (see section 3.15.2). If the excess energy is not sufficient to start generating
the hydrogen, electrolyzer is not used, i.e. it does not operate.
If the hydrogen tank is full (in the simulation it has reached the limit set on its size, see section
3.15.3), the electrolyzer will not work (hydrogen will not be generated as it cannot be stored).
10. I have a system that includes fuel cell and in the simulation screen I see that in a
certain time the fuel cell should be used but it is not used, why?
The fuel cell needs a minimum hydrogen mass flow to start generating electrical power
output. If the amount of hydrogen available in the tank is not enough to cause the minimum
mass flow during that time, the fuel cell is not used, i.e. it does not work. See section 3.15.1.
12. How to optimize systems selling electricity to the AC grid, without load
consumption?
In the window of load consumption “LOAD/ AC GRID”, choose for data source "Load
profile", and select the profile "Zero". On the same window, tab “PURCHASE/SELL E”
check the "Sell excess energy to AC grid". On the main screen of the software, “GENERAL
DATA” tab, “More Constraints” button, set 0 days for Minimum Number of Days of
Autonomy and 1E10 for Maximum Levelized Cost of Energy. After optimizing, the solution
with lowest Total Cost (NPC) will be the best. If the total cost (NPC) is negative (-) it implies
that the system is profitable.
2
In most cases where optimization is applied through iHOGA, cash flows are usually expenses only
(purchasing, replacement, maintenance, and fuel costs, etc), with no income. The different costs throughout the
whole of the study period are referred to the initial time of the investment using the discount rate (approx. interest
rate minus inflation rate), thereby producing the NPC. The lower the NPC value, the better the investment .
It is possible to use the option in iHOGA to sell surplus hydrogen and electric energy to the AC grid (it
is also possible to purchase energy from the grid to compensate for unmet load by the hybrid system). In those
cases, sales are accounted for within iHOGA as negative values, since they must be subtracted from component,
replacement, and maintenance expenses. We may thus achieve an income from energy sales which is higher than
system costs, resulting in a negative value for “NPC”. This means that our facility will achieve a net benefit
(positive values meant expenses, i.e. costs). A larger negative value for our “NPC” will indicate a more profitable
system.
will seek solutions with low NPCs as well as low CO2 emissions or unmet load or it can
consider other objectives).
The genotype for the main algorithm includes 11 genes, all of them integers:
- Number of PV modules in parallel
- Type of PV modules
- Number of Wind Turbines in parallel
- Type of Wind Turbines
- Type of Hydraulic Turbine or TEG (not possible using in the same project hydro
turbinte and TEG).
- Type of Fuel Cell
- Type of Electrolyzer
- Number of Batteries in parallel
- Type of Batteries
- Type of Inverter
- Type of AC Generator
Code types for all different elements are integers (e.g. solar panel 0, solar panel 1, solar panel
2, ...).
It is not possible to optimize the number of PV modules and batteries connected in serial.
These variables are fixed, and depend on the DC bus voltage, and on the nominal voltage of
the panel and the battery.
The user decides whether the inverter may be optimized or it has a fixed value (with its rated
power higher than the maximum AC load power). All remaining elements (battery charge
regulator, rectifier, hydrogen tank) are optimized by iHOGA with respect to each other and to
the control variables in use.
The secondary algorithm obtains the most appropriate control strategy (combination of
control variables) for minimum costs, and for any given component setup provided by the
main algorithm.
The secondary algorithm genotype includes 12 genes, all of them being system control
variables and integers.
Plim_charge, P1gen, P1FC, P2, Pmin_gen, Pmin_FC, SOCmin, Pcritical_gen, Pcritical_FC, SOCstp_gen, SOCstp_FC,
H2TANKstp
The total cost may thus be calculated referred to the initial installation time (NPC) for each
possible solution obtained from both algorithms.
The solutions obtained will be more representative for larger populations and larger numbers
of generations, where the genetic algorithm will provide an optimum solution more easily.
However, when both values are high, a longer time will be necessary for the simulation (this
time is proportional to the population and the number of generations included, for both the
principal and the secondary algorithm). A balance must be reached between the required
accuracy and the time available for execution.
For large differences in maximum and minimum values for batteries, PV modules, and wind
turbines in parallel, many combinations will be available for the “sizes” of solar and wind
turbines, as well as batteries. For very low maximum values, problems may arise when
catering for energy demand (unless additional sources are available, such as a diesel generator,
a fuel cell, etc).
The number of cases to evaluate in order to optimize component combinations using genetic
algorithms will be given by:
Combinations_main_alg =
[Population_main+(Generations_main- 1)*Population_main*(Crossover_Rate_main/100+Mutation_Rate_main*long/100)]*
*Combinations_secondary_alg
For all possible component combinations, select “EVALUATE ALL COMB.”. This will
apply forced optimization (evaluating all the combinations), with no genetic algorithms. For a
large number of combinations, execution times may increase enormously.
The number of possible combinations (when all components are selected) will then be:
Combinations_main_alg=
= No._Pv_Panel_Types*(1+No._max_Pv_Modules_parallel- No._min_Modules_parallel)*
*No._Wind_T_types*(1+No.max_Wind_T_parallel – No.min_ Wind_T_parallel)*
*No._battery_tpes*(1+No.max_batteries _parallel – No.min_batteries_parallel)* No._AC_gen_types*No.
Hyd_T_types*No._electroliz_types*No._Fuel_Cell_types*Combinations_secondary_alg
A criterion may be specified to halt the genetic algorithm. Once a certain number of
generations has been produced (e.g., 20), the algorithm will stop if no improvements are made
on the objectives.
In the example shown above, the algorithm continues provided system costs for generation 25
are less than 99% of those for generation 20 (mono-objective optimization), as this implies
that results may be further refined. If the value is over 99% the algorithm will stop (an
optimum state has been reached, or near it)
Check boxes related to the genetic algorithm are disabled when “EVALUATE ALL COMB.”
is selected. In this case, a check box is enabled to select the number of best possible solutions
to be shown. If a very large number of solutions is possible, the application may use a large
proportion of memory, or it may even block. Solutions to be shown are the best ones
available, including the optimum fit, so the number of solutions selected should not be too
large, unless many combinations are required.
In the message box shown below information will be provided here on the number of cases to
be evaluated. This number depends on the user selection: GENETIC ALGORITHM or
“EVAL. ALL” for both algorithms. (this message box is also displayed towards the central
part of the main screen whenever the cursor is moved over the optimization parameters or
maximum and minimum components or the control variables areas).
There are 4 possible combinations (option 1 through option 4, with the option selected
highlighted in red). Figures are displayed for the number of cases to evaluate, and the time
estimated for the simulation, provided the speed test has been carried out beforehand (press
CALCULATE and CANCEL after a few seconds):
For optimization of the control strategy using genetic algorithms, the number of combinations
will be given by:
Combinations_secondary_alg =Population_sec+(Generations_sec-1)*Population_sec*(CrosoOver_rate_sec/100+Mutation_rate_sec*long/100)
As explained above for the main algorithm, for all possible component combinations,
“EVALUATE ALL COMB.” must be selected. This will apply forced optimization, with no
genetic algorithms.
In this case, the number of possible combinations is given by:
Combinations_secondary_alg =( Variable_accuracy+1)No_variables_to_optimize
For large numbers of variables to optimize, an extremely high value may result. This will
render the optimization process unfeasible.
Cost of
cycling
energy
(€)
electrolyzer-
fuel cell
batteries
Cost of cycling energy
Plim_Charge P (kW)
For Pcharge ≤ Plim_charge the batteries will be charged to their maximum, and any surplus
energy will be used to generate H2 in the electrolyzer.
For Pcharge > Plim_charge as much hydrogen as possible will be generated in the
electrolyzer, and any surplus energy will be used to charge the batteries.
In case the renewable sources alone do not have the capacity to generate all of the energy
required for consumption, the rest of the required energy (which we will call Pdischarge) will be
supplied by the batteries, the AC generator, or the fuel cell. This process will be called
DISCHARGE.
iHOGA will determine the cost of energy supply for each element (the batteries, the AC
generator, or the fuel cell). This cost depends on replacements, useful lifespans, fuel prices (as
for the AC generator), etc. The figure below shows an example of costs associated to energy
supply for different elements, as a function of power.
Cost Bat.
(€)
AC Gen.
FC
P1FC
Costs of supplying energy (DISCHARGE process)
P1= P1gen P2 Pdischarge
In the example provided by the figure above, the optimum discharge strategy will be as
follows:
For Pdischarge < P1 it will be best to supply energy with the batteries. Should these not have
enough capacity for all of Pdischarge, the rest, Plack = Pdischarge – Pbatt will be supplied by the AC
generator provided Plack < P2. Otherwise, energy will be supplied by the fuel cell.
For P2 > Pdischarge > P1, energy should be supplied from the generator. Should this not have
enough capacity for all of Pdischarge, the rest, Plack = Pdischarge – Pgen will be supplied by the
batteries provided Plack < P1cell . Otherwise, energy will be supplied by the fuel cell.
For Pdischarge > P2 it will be best to supply energy from the fuel cell. Should the cell not have
enough capacity for all of Pdischarge, the rest, Plack = Pdischarge – Pcell will be provided by the AC
batteries, provided Plack < P1gen. Otherwise, energy will be provided by the AC generator.
From a general standpoint, the Discharge Strategy will be provided as follows:
- For Pdischarge < P1, energy will be supplied by the batteries
- For P1 ≤ Pdischarge ≤ P2, energy will be supplied by the element with lowest P1(AC
generator or fuel cell)
- For Pdischarge > P2, energy will be supplied by the element with highest P1(AC
generator or fuel cell)
- In case the system element selected can not supply all of the required Pdischarge, an
additional element must be chosen to provide the rest (Plack) at the lowest possible cost
- When the 2nd element cannot supply the rest of the power, a 3rd element must be
selected
Calculation may not be carried out accurately for PLim_charge, P1gen, P1FC, P2, as no data is
available beforehand (such as battery lifespan, etc). Therefore, “optimum” values for the
variables do not necessarily match those values provided by the calculation. The final
optimum values for all the variables in order to minimize the system's NPC will be found
through the secondary genetic algorithm, which optimizes correction factors for those
variables.
Details are provided below about the remaining system variables used for the system's control
strategy.
Pmin_gen and Pmin_FC represent the minimum operating power for the AC generator and the fuel
cell, as provided by manufacturers. However, AC generators usually show a high specific
consumption for low powers. Higher power values may contribute to lower the system's NPC.
Fuel cells have a more constant consumption, though this may increase for low powers.
SOCmin represents the minimum state of charge allowed for the batteries. Though this is
provided by the manufacturer, higher values may be better.
Pcritical_gen, Pcritical_FC, SOCstp_gen, SOCstp_FC , and H2TANKstp are control variables for the AC
generator and the fuel cell.
Since AC generators have a higher specific consumption for low powers, under the critical
value (Pcritical_gen), it may be interesting to make them deliver higher power values. The rest
may then be used to charge batteries until a certain state of charge (SOC) is reached, called
SOC generator setpoint, and represented by SOCstp_gen . H2 could also be produced in the
electrolyzer until a certain level of charge is reached within the H2 tank, called H2TANKstp (in
kg of H2). The order in which the excess energy is used (charging batteries to reach SOCstp_gen
or generating H2 to reach H2TANKstp) will depend on the amount of excess energy itself. If
this is less than PLim_charge, batteries will be charged first, and any remaining energy would be
used to generate H2. If the excess energy is more than Plim_charge, the process order will be
inverted.
The same holds for the fuel cell, so the paragraph above applies here, replacing Pcritical_gen with
Pcritical_FC and SOCstp_gen with SOCstp_FC. However, H2TANKstp would not be applicable if the
fuel cell uses up H2 from the H2 tank (previously produced by the electrolyzer).
When the power required by the loads from the AC generator is less than Pcritical_gen, the
operating power for the AC generator will equal the minimum power to supply the power still
not delivered to the loads, plus the power required to bring the batteries up to SOCstp_gen , and
the power needed by the electrolyzer to produce H2 until H2TANKstp is reached, with no
energy lost. In some cases the minimum power from the AC generator will be over Pcritical_gen,
so energy will be lost.
The same is true for the fuel cell.
REFERENCES
Barley, C., & Winn, C. (1996). Optimal dispatch strategy in remote hybrid power systems.
Solar Energy, 58((4-6)), 165–179.
Bernal-Agustín, J. L., & Dufo-López, R. (2009a). Efficient design of hybrid renewable energy
systems using evolutionary algorithms. Energy Conversion and Management, 50(3),
479–489. https://doi.org/10.1016/j.enconman.2008.11.007
Coello, C. A., Veldhuizen, D. A. V., & Lamont, G. B. (2002). Evolutionary Algorithms for
Solving Multi-Objective Problems (Kluwer Aca). New York.
Collares Pereira, M., & Rabl, A. (1979). The average distribution of solar radiation
correlations between diffuse and hemispherical and between daily and hourly insolation
values. Solar Energy, 22, 155–164.
Copetti, J., & Chenlo, F. (1994). Lead/acid batteries for photovoltaic applications. Test results
and modeling. Journal of Power Sources, 47(1–2), 109–18.
Copetti, J., Lorenzo, E., & Chenlo, F. (1993). A general battery model for PV system
Downing, S., & Socie, D. (1982). Simple Rainflow Counting Algorithms. International
Journal of Fatigue, 4(1).
Dufo-López, R. (2015). Optimisation of size and control of grid-connected storage under real
time electricity pricing conditions. Applied Energy, 140, 395–408.
https://doi.org/10.1016/j.apenergy.2014.12.012
Dufo-López, R., & Bernal-Agustín, J. L. (2005). Design and control strategies of PV-diesel
systems using genetic algorithms. Solar Energy, 79(1), 33–46.
https://doi.org/10.1016/j.solener.2004.10.004
Dufo-López, R., & Bernal-Agustín, J. L. (2011). Generación de energía eléctrica con fuentes
renovables. Optimización de sistemas híbridos renovables con almacenamiento
energético mediante algoritmos genéticos. Editorial Académica Española. LAP
LAMBERT Academic Publishing GMBH & Co. KG, Saarbrücken, Ale.
Dufo-López, R., & Bernal-Agustín, J. L. (2012). New methodology for the generation of
hourly wind speed data applied to the optimization of stand-alone systems. Energy
Procedia, 14(2011), 1973–1978. https://doi.org/10.1016/j.egypro.2011.12.887
Dufo-lópez, R., Champier, D., Gibout, S., Lujano-rojas, J. M., & Domínguez-navarro, J. A.
(2019). Optimisation of off-grid hybrid renewable systems with thermoelectric generator.
Energy Conversion and Management, 196(June), 1051–1067.
https://doi.org/10.1016/j.enconman.2019.06.057
https://doi.org/10.1016/j.enconman.2016.01.057
Erbs, D., Klein, S., & Beckman, W. (1983). Estimation of Degree-Days and ambient
temperature bin data from monthly-average temperature. ASHRAE JOURNAL, 25(6), 60–
65.
Erbs, D., Klein, S., & Duffie, J. (1982). Estimation of the Diffuse Radiation Fraction for
Hourly, Daily and Monthly average Global Radiation. Solar Energy, 28(4), 293–302.
Favarel, C., Bédécarrats, J.-P., Kousksou, T., & Champier, D. (2016). Experimental analysis
with numerical comparison for different thermoelectric generators configurations. Energy
Conversion and Management, 107, 114–122.
https://doi.org/10.1016/j.enconman.2015.06.040
Graham, V. A., & Hollands, K. G. T. (1990). A method to generate synthetic hourly solar
radiation globally. Solar Energy, 44(6), 333–341. https://doi.org/10.1016/0038-
092X(90)90137-2
Green, H. ., & Manwell, J. (1995). HYBRID2- A versatile model of the performance of hybrid
power systems. In WindPower’95. Washington, DC.
Gregory, J., Peterson, R., Lee, J., & Wilson, G. (1994). Modeling wind and relative humidity
effects on air quality. In International Specialty Conference on Aerosols and
Atmospheric Optics: Radiative Balance and Visual Air Quality.
Groot, J., Swierczynski, M., Stan, A. I., & Kær, S. K. (2015). On the complex ageing
characteristics of high-power LiFePO4/graphite battery cells cycled with high charge and
discharge currents. Journal of Power Sources, 286, 475–487.
https://doi.org/10.1016/j.jpowsour.2015.04.001
Hay, J. E., & Davies, J. A. (1978). Calculations of the solar radiation incident on an inclined
surface. In J. E. Hay and T. K. Won (Ed.), First Canadian Solar Radiation Data
Workshop. Toronto, Canada.
Lander, J. (1956). Further studies on the anodic corrosion of lead in H2SO4 solutions. J.
Electrochem. Soc, 103, 1–8.
Liu, B., & Jordan, R. (1960). The interrelationships and characteristic distributions of direct,
Manwell, J., & McGowan, J. (1993). A Lead Acid Battery Storage Model for Hybrid Energy
Systems. Solar Energy, 50(5), 399–405.
Meteonorm. Global meteorological database. Handbook part II: Theory. Version 7.1. (2015).
Petit, M., Prada, E., & Sauvant-Moynot, V. (2016). Development of an empirical aging model
for Li-ion batteries and application to assess the impact of Vehicle-to-Grid strategies on
battery lifetime. Applied Energy, 172, 398–407.
https://doi.org/10.1016/j.apenergy.2016.03.119
Rietveld, M. (1978). A new method for estimating the regression coefficients in the formula
relating solar radiation to sunshine. Agricultural Meteorology, 19, 243–252.
Rojas-Zerpa, J. C. (2012). Planificación del suministro eléctrico en áreas rurales de los países
en vías de desarrollo: un marco de referencia para la toma de decisiones. Tesis
Doctoral. University of Zaragoza.
Ruetschi, P. (2004). Aging mechanisms and service life of lead–acid batteries. Journal of
Power Sources, 127(1–2), 33–44. https://doi.org/10.1016/j.jpowsour.2003.09.052
Saxena, S., Hendricks, C., & Pecht, M. (2016). Cycle life testing and modeling of graphite /
LiCoO 2 cells under different state of charge ranges. Journal of Power Sources, 327,
394–400. https://doi.org/10.1016/j.jpowsour.2016.07.057
Schiffer, J., Sauer, D. U., Bindner, H., Cronin, T., Lundsager, P., & Kaiser, R. (2007). Model
prediction for ranking lead-acid batteries according to expected lifetime in renewable
energy systems and autonomous power-supply systems. Journal of Power Sources,
168(1), 66–78. https://doi.org/10.1016/j.jpowsour.2006.11.092
Skarstein, O., & Ulhen, K. (1989). Design Considerations with Respect to Long-Term Diesel
Saving in Wind/Diesel Plants. Wind Engineering, 13(2).
Swierczynski, M., Stroe, D. I., Stan, A. I., Teodorescu, R., & Kær, S. K. (2015). Lifetime
Estimation of the Nanophosphate LiFePO4/C Battery Chemistry Used in Fully Electric
Vehicles. IEEE Transactions on Industry Applications, 51(4), 3453–3461.
https://doi.org/10.1109/TIA.2015.2405500
Wang, J., Liu, P., Hicks-Garner, J., Sherman, E., Soukiazian, S., Verbrugge, M., … Finamore,
P. (2011). Cycle-life model for graphite-LiFePO4 cells. Journal of Power Sources,
196(8), 3942–3948. https://doi.org/10.1016/j.jpowsour.2010.11.134
Zitzler, E., & Thiele, L. (1999). Multiobjective evolutionary algorithms: a comparative case
study and the strength Pareto approach. IEEE Transactions on Evolutionary
Computation, 3(4), 257–271.