Pessimistic forecasts are growing in the Brazilian energy scenario demanding the use of renewable sources of energy such as the solar one. As metropolitan regions have become more populous, private and public companies have developed new technologies based on renewable energy sources. In order to supply such demand, new computer techniques have to be developed. This paper presents a framework to assist the developer to model new components and simulate solar energy applications. By applying the framework concepts, such as source code reuse, one can create a complete environment to evaluate solar energy data. The framework supports software development and tool implementation to be used in photovoltaic and thermosiphon processes.

1. Introduction

The Brazilian institute (INPE) estimated, in 2005, that the electric energy demand in Brazil for the next 20 years would increase 4% annually [1]. This fact, and also the concern about environmental consequences due to the consumption of nonrenewable fossil fuel, impels the researchers to develop alternative technologies to use solar energy generating or reducing the need of electric energy.

There are many tools devoted to solar energy application such as blast, doe (doeplus and visual doe), ener-win, energy plus, hot2000, passport, and solar5 [24].

However, the costs for implantation, management and control are still too expensive [5]. For instance, in order to accomplish photovoltaic experiments, to report statistical results and to evaluate the efficiency of the solar energy conversion into electric energy, new evaluative processes must be used.

One can use different tools to control or simulate photovoltaic and thermosiphon systems, such as TRNSYS (http://sel.me.wisc.edu/trnsys/) or RETScreen (http://www.retscreen.net/ang/home.php).

TRNSYS is an energy simulation tool used to describe complex energy systems based on a process of choosing the system components and hooking them together.

Some of the main disadvantages are as follows: it is written in Fortran, and it uses standard components to model a solar application. It is also a commercial tool, and it is not open source software.

The RETScreen is a decision support tool developed to evaluate the energy applications for various types of renewable energy. The main disadvantage is the demand of specific software, such as, the Microsoft Excel, Microsoft Windows 2000 and Microsoft.NET.

The approach presented in this work, which is based on the framework concept, provides the reuse of software project, analysis, and test for solar energy applications. One can manipulate data and formulas related to solar energy domain, especially those ones already tested and validated. It is up to the developer the reuse of the source code, which can be specialized according to the solar energy application.

Frameworks are used in very different contexts such as graphical interfaces (Java Swing, AWT), net services (Java RMI, Jeeves), and commercial works (IBM's San Francisco) [6].

In this paper, a framework—for photovoltaic and thermosiphon systems—denoted SolarEnergy is presented. The framework provides many benefits such as the updating of climatic data, the creation and use of new components, and the incorporation of new functionalities into existing applications. By applying the idea of code and project reuse it assists the researchers in the generation and simulation of solar applications [7].

This paper is divided into six sections. The Section 2 describes the framework. The Section 3 presents a method to estimate radiation. The Sections 4 and 5 report models for photovoltaic and thermosiphon systems. In Section 6 a case study is presented for each supported application. The Section 7 concludes this work.

2. The SolarEnergy Framework

The main objective of any framework is to simplify the development of similar applications [8]. It can be used in order to encapsulate the business rules involved in the description of any new component, some of which based on detailed descriptions of the previous ones. In the SolarEnergy framework, it has been defined abstractions in order to describe and simulate the following:(i)thermosiphon systems—a method of passive heat exchange based on natural convection, and(ii)photovoltaic applications—a radiation process to convert solar energy into electric energy.

Every solar simulation process, thermal or photovoltaic, is based on the solar radiation. Sensors capture the energy, which is processed and distributed to each component.

To attend such demand, the framework has been divided into four basic packages as depicted in Figure 1. The Forms package is responsible for supplying the interfaces. The Controller controls the simulations and the DataBase package provides access to data. The Energy package initiates the framework and provides the programmer with all the functional operations—its primary responsibility is to coordinate the internal information flow.

In the SolarEnergy framework, the requirement applied to the water heating is based on solar data related to a specific region. However, to estimate the solar radiation, in the photovoltaic process, it is necessary to process climatic data.

Some design patterns [9] have been used to accomplish such task. For example, the factory method pattern has been used to supply an interface to the environment in order to build correlated or independent radiation objects with no need of specifying their concrete classes.

It is the factory responsibility to select the desirable implementation. The main advantage is the possibility to dynamically create environmental objects without any knowledge on their implementation classes (Figure 2).

The framework is divided into three hierarchical layers (Figure 3). The first one corresponds to the interfaces and classes which are responsible for drawing components (EMCObject, EMCPoint, and EMCPipeVertices classes). The second layer is responsible for guaranteeing that the simulation will run correctly. The last one adds the components already developed to the simulation.

The second layer is responsible for guaranteeing that the simulation will run correctly. The last one adds the components already developed to the simulation.

Each class has its own functionalities, for example, the EMCPipe class deals with communications between each connection point. All components have their connection points, and each connection point is defined in terms of EMCJoinPoint.

The framework organizes the components as a directed graph where the main node is the solar radiation component and the others are interfaces such as ICollector, IManipulate or ICapture (Figure 4). All dependency is solved before running the simulation.

The SolarEnergy framework calls the solar radiation component to calculate the solar radiation data. The solar collector supplies information to the heating water and photovoltaic processes based on the radiation data. For example, the user does not need to be worried if the solar radiation is supplied monthly or hourly. The framework simply simulates the behavior of each component accordingly.

3. Methods to Estimate Radiation

The equations to be presented describe models to estimate radiation values on the terrestrial surface based on hourly, daily, and monthly climatic variations.

The solar energy conversion process can also be based on a reference year to estimate the radiation once application performance is heavily dependent on climatic aspects.

The reference year represents a set of meteorological variables for a specific region during a year. There are many methodologies to identify the reference year: the TRY (Test Reference Year), TMY (typical meteorological year), DRY (design reference year), and the SRY (short reference year) [10, 11].

Figure 5 shows the method based on historical measured data and the identification of the presumable reference year. The objective of this phase is to calculate the solar radiation which reaches the plan of the solar collector.

The calculation is based on the collector horizontal plan and global radiation values (split into two components: the direct and diffuse radiation).

The global radiation can be described according to where is the daily solar radiation; is the extraterrestrial radiation; is the total daily radiation; is the total theoretical daily radiation; is the station altitude; and are the Empirical Bunnett constants [12].

The diffuse radiation can be modeled as described by where is the diffuse monthly radiation; is the monthly average clearness index; and is the sunset angular hour.

Equation (3) calculates the hourly average direct and diffuse radiation: where is the sunrise angular hour; and are the Empirical Bunnett constants [12].

Finally, the global radiation (on inclined surface) is calculated according to the isotropic diffuse model where is the beam hourly radiation on a horizontal surface; is the beam radiation on sloped surface/beam radiation on a horizontal surface; is the hourly diffuse solar radiation; is the slope angle, the angle between the plane of the surface in question and the horizontal; is the global solar radiation on a horizontal surface; and is the reflectance of near surfaces reaching the collector.

This section presents a method used in the framework to estimate solar radiation. The next section presents concepts related to photovoltaic systems.

4. Photovoltaic Systems

This section presents the concepts and the mathematical models related to the solar energy conversion into electric energy. The devices supported by the SolarEnergy framework are described as follows.

4.1. The Photovoltaic Panel

The panel is a photovoltaic system component responsible to convert the solar energy into electricity. This process is the result of energy being absorbed by the semiconductor components of the solar module.

Information about voltage and current for the maximum power, the open-circuit voltage, the short-circuit current, the temperature coefficient for the short-circuit current, the referential solar irradiance and the temperature coefficient for the short-circuit voltage have to be considered.

The solar irradiance of 1,000 W/m2 and the temperature of 25°C are the pattern conditions for the photovoltaic arrangement. The maximum value for a fixed solar intensity is found in the inflexion point of the modulus standard curve.

The luminous intensity and the cells temperature interfere in the photovoltaic modulus performance. An increase in the isolation level also alters the cell temperature and, consequently, tends to reduce the modulus efficiency.

For example, crystalline solar cells reach their greatest efficiency at low temperatures—the coefficients depend on the type of the material. Also, the elevation on temperature decreases significantly the voltage value generated by the modulus and increases the current value.

The equation describing the photovoltaic generator performance is given by where and are the following coefficients: where is the short circuit current; is the output circuit voltage; is the voltage variation; is the open circuit voltage; is the current variation; is the maximum power current; and is the maximum power voltage.

4.2. The Battery

The battery is a convenient device to store electric energy generated by photovoltaic modulus. The initial charge, the discharge value, and the efficiency are represented as follows: (i): storage energy in the batteries; (ii): minimum discharge level; (iii): maximum charge level; (iv): battery efficiency.

During the first hour, the charging and discharging battery process is bounded to . This restriction is enforced by the charge controller component.

4.3. The Charge Controller

This component disconnects the photovoltaic modulus when the battery reaches its maximum charge level. Also it activates the supplying component when the minimum charge level is reached.

The mathematical model describing its operation is given below. It takes into account two situations: the loading and unloading battery level.

After applying the charge and discharge restriction for the battery, the controller will charge up to the maximum limit if the energy generated by the photovoltaic arrangement exceeds the energy demanded (7).

If the energy demanded is higher than the one generated by the modulus, the batteries will be discharged to supply the deficit according to  (8) where is the energy generated by the photovoltaic module; is the energy wasted in the loading process; is the time to be considered (hour); and is the efficiency of the Inverter.

4.4. The Inverter

Also known as DC-AC converter (direct current—alternating current), it establishes a connection between the photovoltaic generator and the DC source.

Its efficiency is given by the input and output power ratio varying within a band of 50% up to 90% [10].

The efficiency value percentage, commonly specified by the manufacturer, is the maximum value that can be reached by this component. It is represented by (7) and (8).

5. Thermosiphon Systems

The preceding section presented the main photovoltaic components supported by the framework. This section presents the concepts and components related to thermosiphon applications.

All thermosiphon simulations can be modeled according to some basic components: the radiation, the collector and the water container. The solar radiation has been explained in Section 3.

The following subsections describe the collector and water tank. All of then are encapsulated in one module of the framework as follows.

5.1. The Collector

The collector is a component used in the heating water process to convert solar into thermal energy.

An import aspect modeled by the framework is the collector efficiency—the ratio between the useful energy transferred to the water and the solar energy radiation reaching the collector (9) where is the useful energy absorbed by the water; is the radiation reaching the collector; and is the collector external area.

5.2. The Water Tank

The main purpose of the water tank is to keep the water hot. In the framework, it has been modeled as a set of nodes, which represent cold water coming from outside and hot water kept inside by the device. Equation (10) describes such process. We summarized its description—details can be found in [12] where is the node temperature; is the energy absorbed by the collector; is the energy lost to the cold outside water; is the energy absorbed from a hotter node above ; is the energy lost to the colder node below ; is the energy lost to the environment; and is the auxiliary heating source.

6. Case Study

In [13], a first version of the SolarEnergy framework has been presented. In order to validate the proposed framework, a tool called SolBrasil has been developed to simulate thermosiphon applications.

The SolBrasil tool is based on three main components: EgyRadiation, EgyColector and EgyStore. The first one is related to the solar radiation. The second one supplies the water heating data and calculates the efficiency of a collector given its physical data. The last component implements the dynamic of the water-heating process.

The framework has evolved and now both thermosiphon and photovoltaic systems are supported. It is important to emphasize that hot spots are implemented by both the specialization of abstract classes and composition of components, which results, for example, in the following devices: SBFVSolarPanel, BFVController, SBFVBattery and SBFVInverter.

We briefly present both simulations using the proposed approach. Figure 6 depicts an instance of the framework for thermosiphon simulations.

6.1. Simulating Thermosiphon Applications

Initially, all components are included into the simulation such as the solar collector and the water tank.

Then, the connections are defined: from the collector output to the tank input, and from the tank output to the collector input.

The case study presented is based on the data generated by the solar radiation component. The solar radiation data is related to the Belo Horizonte city (Figure 7): an hourly global radiation on an inclined surface angle of 34°, azimuth angle = 80° and neighborhood reflectivity = 0.22.

Given the collector input data, one can simulate its efficiency (Figure 8). The result is obtained after running the simulation according to the collector location.

One can also define the water tank profile: the water consumption in a particular time describing how the water tank behaves, that is, the variation on the water temperature. The data correspond to variations in the water temperature along a year.

6.2. Simulating Photovoltaic Applications

Figure 9 shows an instance of the framework for photovoltaic system. The inclination angle of the photovoltaic generator, which maximizes its own energy production, varies through the year. It means that the same photovoltaic generator can be calculated from one region to another with different estimated values of solar radiation.

The global radiation on the panel surface considered as reference is the azimuth surface angle = 180° and the nearby reflectivity = 0.22 (Belo Horizonte city).

The execution diagram has been designed for a photovoltaic home system, isolated from the power supply system. The devices have been specified according to the manufacturers specifications: (i)ASE-100-ATF/17 from ASE Americas manufacturer; (ii)the 12MC36 battery from Moura manufacturer; (iii)the Sollis controller component from Varixx manufacturer; and the XantrexGT conversor from Xantrex manufacturer.

The framework operates based on the registered energy consumption. It is also possible to inform the demand through the component energy consumption (Figure 10).

6.2.1. The Results

Starting from the reference year it is possible to generate a synthetic sequence of light indexes for the rainy days. The output is related to the solar irradiance and consequently is extremely important to the simulating process.

Figure 11 shows the relation between the light index along the reference year and the extraterrestrial radiation reflected on the surface.

It is represented by the curve and it does not have any influence on the deviation caused by the layers at the atmosphere. So, its behavior is regular and its intensity is always high.

The radiation on the earth surface , is a function of the light index , which represents the influence of clouds and atmospheric gases in the radiation brightness. That is, as cloudier a day, lower will be the radiance.

Figure 12 shows the monthly average hourly radiation based on the reference year. It can be notice an increase in the irradiation showing that the inclination has an influence in the photovoltaic modulus during the months with lower indexes of irradiation and high indexes of clarity.

Figures 13 and 14 represent the graphics for the power supplied by one photovoltaic modulus and for the energy stored by a cluster of three batteries along a year.

After the computation of the irradiation data, the calculus is done to estimate the maximum power point of the photovoltaic generator. The top line in Figure 14 delimitates the maximum storage capacity over which the battery cluster would be overcharged; the bottom line delimitates the minimum charge depth—below it the batteries would be exposed to a deep discharge that would damage them.

It can be noted that the available capacity is placed between two limits and the charge controller interferes in such a way that it does not allow the bank to be overloaded or to receive a deep discharge.

It also shows that the energy, which is stored along the year, suffers a directly proportional variation to the medium hourly power generated by the modulus monthly.

7. Conclusions

In summary, we developed a framework related to the solar energy domain. The framework approach allows a great flexibility in the development of new applications due to the facility in customizing user requirements. It also enables the reuse of the analysis, project and source code. It increases software quality, reduces the effort and time to develop new applications.

The proposed solution has simplified the procedures taken by solar energy researchers to develop control systems. For example, one can easily simulate the solar collector efficiency. Besides, it allowed the reuse of consolidated and tested solutions.

Using these concepts, the development of new applications to control and simulate thermosiphon and photovoltaic systems is simplified. Also, the time and cost to develop new components is reduced. The designers do not start a new project from scratch once they can use existing solutions.

In this work it has been developed the SolBrasil tool, based on an extended version of the framework SolarEnergy, to simulate real systems.

This work can be considered an innovative proposal for the solar energy area as it has developed a methodology capable of realizing, for example, a determinant calculation of photovoltaic systems isolated from electric network by means of analyzing the solar radiation, the energy balance, the statistical results and the identification of failures.

It is important to emphasize that we indeed check our work with real data and real applications generated by GREEN Laboratory (http://bhzgreensrv02.green.pucminas.br/lwp/workplace—the GREEN SOLAR is a group of studies in solar energy located at the Pontifical Catholic University of Minas Gerais (PUC-Minas)). A great number of researches has been developed at GREEN Laboratory for measuring quality, efficiency and durability of solar components.

We compared our results with other works, such as the one modeling a photovoltaic generator regarding the features provided by the manufacturer, which simulates it, using, for that purpose, simulation and curve digitalization programs (Simulink of Matlab)—the work [14] analyzes its behavior with regard to the temperature and solar intensity variation, comparing the obtained curves to those provided by the manufacturer.

Also, Brazil's largest state utility, Energetic Company of Minas Gerais (CEMIG) has aggressively implemented the use of decentralized photovoltaic systems to supplement the conventional power grid to satisfy an increasing demand for electricity to serve rural communities in Brazil [15].

These consumers typically use energy in daytime peak hours of electricity, typically for lighting, television, and communication—as well as for a variety of cultural habits such as hot water that impose high demands on the utility’s power distribution and generation system.

The work presented in [15] includes examining the methods implemented to ensure system reliability for the consumers, as well as the standards established under the Agência Nacional de Energy Elétrica (ANEEL), the national regulator electrical agency that ensures compliance with the federal regulations—the work also provides an opportunity to compare and contrast their results with ours.

A future work intends to investigate the application of the proposed solution in systems related to other renewable energy sources such as wind power. The aim is at the use of the proposed solution in order to calculate and simulate applications that change the wind kinetic energy into rotation mechanical energy.