You are on page 1of 88

MICRO CONTROLLER BASED SOLAR CHARGER

An Industrial Oriented Mini Project Report


Submitted in partial fulfillment of the Requirements for the Award of the Degree of

Bachelor of Technology In Electronics & Communication Engineering By


CH.RAVITEJA (084N1A0436) G.VENKATESWARA RAO (084N1A0461) D.VISHNU VARDHAN (084N1A0465) B.SUJITHA (084N1A0453)

Under the Guidance of RAMESH REDDY.M (Assistant Prof)

Department of Electronics & Communication Engineering, VISVODAYA ENGINEERING COLLEGE, KAVALI (Affiliated to JNTU, Anantapur)

2008 2012

VISVODAYA ENGINEERING COLLEGE, KAVALI Department of Electronics & Communication Engineering,

CERTIFICATE
This is to certify that the mini project report entitled MICROCONTROLLER BASED SOLAR CHARGER, being submitted by CH.RAVITEJA (084N1A0436), G.VENKATESWARA RAO (084N1A0461), D.VISHNU VARDHAN

REDDY(084N1A0465), B.SUJITHA (084N1A0453) , in partial fulfillment of the requirements for the award of the degree of Bachelor of Technology in Electronics And Communication Engineering, is a record of bonafide work carried out by them under my guidance and supervision. The results embodied in this report have not been submitted to any other university for the award of degree.

Internal Guide
Mr. M. Ramesh Reddy, Assistant Professor, Dept. of ECE, VEC .

Head of the Department


Mr. V. Narayana Reddy, Associate Professor, Dept. of ECE, VEC.

External Viva Voce conducted on_______________

External Examiner

ACKNOWLEDGEMENTS

We consider it as our privilege to express our gratitude and respect to all those who guided, inspired and helped us in completion of this mini project. We are thankful to all whose encouragement and timely help made us to achieve the desired goal. We would like to thank our internal Mr.M.Ramesh Reddy, Assistant Professor for his technical guidance, constant encouragement and support in carrying out our project at the college. We express our heart-felt thanks to Mr.V.Narayana Reddy, Associate

Professor and Head of the Dept. of Electronics & Communication Engineering, VEC, Kavali, for his kind encouragement in completion of the project work and being a great teacher inspired us to complete our course of action successfully. We profoundly thank our Principal Dr.M.Sreenivasa Kumar, for his constant encouragement and support throughout the completion of this project.

We also express our gratitude to the Chairman , D.Vidhyadara Kumar Reddy Garu for his encouragement and moral support to complete our course.

Finally we would like to thank all the teachers who taught us various subjects in B.Tech course for the past four years and for giving us sufficient knowledge and inspiration to evolve ourselves efficient graduates.

We thank one and all who have helped us directly or indirectly in completing this mini project work successfully and proficiently.

CH.RAVITEJA G.VENKATESWARA RAO D.VISHNU VARDHAN B.SUJITHA

(084N1A0436) (084N1A0461) (084N1A0465) (084N1A0453)

CONTENTS
TOPICS
ABSTRACT FIGURES TABLES SYMBOLS & ABBREVATIONS CHAPTER-1

PG NO
1 2 3 4

1.

INTRODUCTION 1.1 Motivation 1.2 Project Outline 1.3 Objectives & Limitations 1.3.1 Objectives 1.32 Limitations CHAPTER-2

5-7 5 6 7

2.

SOLAR PANELS 2.1 Photo Voltaic Cells 2.1.1 Types Of PV Cells 2.1.1.1 Single Crystal 2.1.1.2 Poly Crystalline 2.1.1.3 Ribbon Silicon 2.1.1.4 Amorphous Silicon 2.2 Construction Of Silicon Solar Panel 2.3 Solar Array 2.4 Working Of Solar Cells 2.5 PV Cells At a Glance 2.5.1 Advantages 2.5.2 Applications

8-28 8 12 12 13 14 15 16 21 24 28

CHAPTER-3

3. PIC MICROCONTROLLERS
3.1 Core Features 3.2 Peripheral Features 3.3 Registers 3.3.1 Special Function Registers 3.3.2 Status Registers 3.4 Usart 3.4.1 Usart Synchronous Mode 3.4.2 Usart Asynchronous Txr 3.4.3 Usart Asynchronous Rxr 3.5 A/D Converter Module 3.6 Interrupts 3.7 Instruction Set Summary 3.8 Interface With PC 3.9 Power Supply Unit 3.9.1 Step Down Transformer 3.9.2 Rectifier Unit 3.9.3 Filtering Unit 3.9.4 Voltage Regulators 3.9.5 Specifications CHAPTER-4

32-52 32 33 39 39 39 39 41 41 43 44 46 47 48 50 50 51 51 52 52

4. LCD DISPLAY
4.1 Pin Description 4.2 DD Ram 4.3 CG Rom

53-64 53 55 56

ii

CHAPTER-5

5. RELAY
CHAPTER-6

65-67

6. TESTING CIRCUIT
6.1 Software Dumping Procedure 6.2 Program Used In PIC16F877 CHAPTER-7

68-80

81

7.CONCLUSION
CHAPTER-8

81

8.REFERENCES

82

iii

ABSTRACT
Our project is a device that will allow a solar panel to efficiently recharge a DC battery. This is accomplished by operating the solar panel at an optimal power level regardless of the battery voltage. The controller will vary the voltage across the panel to find and maintain the maximum power point. The circuitry also monitors the battery voltage level and charges the battery using pulse width modulation techniques. The device consists of a boost DC-DC converter, a microcontroller, a current sensing microchip, a Liquid Crystal Display for data output, and a serial computer interface for programming and data collection at the initial stage to dump a small c-program into microcontroller kit PIC16F877.

In detail the sun is the ultimate source of limitless solar energy in the form of light and heat. Light of the sun is directly converted into electrical energy without any inter mediate step. When the rays of the sun strike certain light-sensitive material like solar cell connected to an appropriate circuit, it exhibits a phenomenon called photovoltaic effect. The photovoltaic effect is the generation of an electrical current in a circuit containing a photosensitive device when the device is illuminated by visible or invisible light. In other words, light is directly converted into electricity. The photovoltaic effect can be achieved by using a variety of materials like silicon, selenium, cadmium sulphide, germanium, gallium arsenide or amorphous glass.

FIGURES
FIG
1.GREEN ENERGY GLOBALIZATION 2.STRUCTURE OF SOLAR PANEL 3.SINGLE CRYSTAL PV CELL 4.POLY CRYSTALLINE PV CELL 5.RIBBON CRYSTAL PV CELL 6.AMARPHOUS SILICON PV CELL 7.V-I CHARACTERISTICS OF DESIRED SOLAR CELL 8. V-I CHARACTERISTICS OF SOLAR CELL 9.SHARED AND UNSHARED V-I REGION 10.V-I CHARACTERISTIC WITH RESPECT TO TEMP 11.MAX VOLTAGE AND DELIVERED VOLTAGE 12.PARALLEL SOLAR CELLS ARRAY 14.PERSONAL PHOTOVOLTAIC ARRAY 15.ONE & TWO AXIS TRACING SOLAR PANEL 16.SOLAR PANEL WORKING 17.PIC BLOCK DIAGRAM 18.CIRCUIT DIAGRAM OF PIC16F877 19.PIN DIAGRAM OF PIC16F877 20.PIN OUT DESCRIPTION OF PIC16F877 21.TRANSMIT STATUS AND CONTROL REGISTER 22.ADCON0 REGISTER (AD 8) 23.ADCON1 REGISTER (AD9) 24.PIN DIAGRAM MAX232 25.MICROCONTROLLER POWER SUPPLY UNIT
2

PG.NO
5 11 12 14 14 15 17 17 18 19 20 22 22 23 27 33 34 35 36 40 44 45 48 50

26.LCD HD44780 27.DDRAM ADDRESS 1 LINE LCD 28.DDRAM ADDRESS 2 LINE LCD 29. DDRAM ADDRESS 4 LINE LCD 30.LCD CHARACTER MASK 5*8 DOTS 31. LCD CHARACTER MASK 5*10 DOTS 32.COMMAND & INSTRUCTION SET FOR LCD TYPE 33.FLOW CHART FOR LCD INITIALIZATION 34.RELAY SCHEMATIC DIAGRAM 35.WORKING OF RELAY CIRCUIT 36.SOLAR CHARGER TESTING SCHEMATIC CIRCUIT 37. KEIL DUMPING SOFTWARE PROGRAM WINDOW

53 55 55 56 57 58 59 62 66 66 69 70

TABLES

TABLE
1.GLOBALLY RECOGNIZED SOLAR CELL O/P V-I 2.PIN DESCRIPTION OF LCD DISPLAY 3.PIN DESCRIPTION OF LCD WITH CONTROLLER 1 4. PIN DESCRIPTION OF LCD WITH CONTROLLER 2 5. COMMAND AND INSTRUCTION OF HD44780

PG.NO
21 54 54 54 59 60 61

6.FREQUENTLY USED COMMANDS & INSTRUCTIONS OF LCD 7.POWER SUPPLY CONDITION FOR INTERNAL RESET

SYMBOLS & ABBREVIATIONS


USART - Universal Synchronous Asynchronous Receiver And Transmitter RAM - Random Access Memory ROM - Read Only Memory RS232 Recommended Standard VCC - Supply Voltage VSS - Ground Potential PSEN Program Store Enable ALE Address Latch Enable UART Universal Asynchronous Receiver Transmitter USRT Universal Synchronous Receiver Transmitter PSP- Parallel Slave Port EEPROM- Electrically Erasable programmable Read Only Memory EPROM -Erasable Programmable Read Only Memory EECON- Electrically Erasable Control Register TMR-Timer PWMM-Pulse Width Modulation Mode MSSP-Master Synchronous Serial Port POR-Power On Reset PWRT-Power Up Timer OST-Oscillator Start Up Timer SSP-Synchronous Serial Port PC-Program Counter ALU-Arithmetic And Logic Unit CU-Control Unit

1. INTRODUCTION
1.1 MOTIVATION
In present globalized world mighty technical innovations lead to growth of human living standards in such a way that electricity utilization has become his/her mandatory requirement in order to invent new things or to utilize present technology. Non conventional power generation is one of the fastest growing sectors. But due to less natural resources availability and heavy population criteria's power generation is unable to meet the necessary requirements of people to complete extent, not only that it's also causing the pollution problems along with resource extinction due to utilization of natural non-renewable resources. So in order to meet the power

generation scarcity problem along with resource extinction drawbacks we motivated ourselves to create our project named "MICROCONTROLLER BASED SOLAR CHARGER" which uses natural renewable solar energy for generating the electricity in efficient manner thus creating pollution free world termed as "GREEN ENERGY" power generation concept.

fig 1.1(a): green energy globalization

Also in present living world Globally, all countries are busy developing and implementing non-conventional power to bridge the electricity demand and power supply gap.

1.2 PROJECT OUTLINE


Solar photovoltaic panels are becoming a more common way to provide electric power to remote electronic devices. Ease of use and installation, power reliability (the sun is not expected to stop shining soon), cost competitiveness with replacement of non-rechargeable batteries, and long lifetime capabilities are all contributing to a higher demand for solar powered devices. In addition, portable electronic devices, such as cellular phones, laptop computers, and music playing devices are becoming more prevalent. Charged batteries are the backbone of these products, and when individuals are not near traditional electricity, an alternative means of charging must be present. A solar photovoltaic panel meets this need.

This report outlines the design and performance of a solar electric charge controller and portable power supply, an extremely portable device which recharges electronic devices. Along with a solar panel, this device employs microprocessor-based control which continuously monitors the power output of the solar panel to deliver the maximum electric power to the batteries. This is called Maximum Power Point Tracking, and it enables the most efficient battery recharge. Our product also contains internal rechargeable batteries (at 6-7 Volts). The solar panel actually charges these internal batteries, and these batteries are used to recharge any external electronic devices which are attached.

Many solar Maximum Power Point Tracking (MPPT) devices have been designed and implemented, but ours may be the first to use microprocessor control to continuously track the maximum power point. Other devices simply calculate the MPP, operate the circuit at that point, and periodically recalculate the MPP. Our product does periodically recalculate as well, but continuously updates to ensure maximum power transfer more consistently. In addition, rechargeable batteries should be charged differently based on battery state. We implemented a common technique known as three-stage charging which differentiates charging techniques based on if the battery is mostly depleted, nearly charged, and fully charged. The goal of our project was to design and build a cost-effective MPPT circuit and use three-stage charging to efficiently recharge batteries.

1.3 OBJECTIVES AND LIMITATIONS


1.3.1 Objectives To provide alternative Solar energy solutions for domestic industrial and commercial establishments in order to mitigate the energy problems in backward villages of the state.

To develop and deploy village specific electricity generation system and package based on Solar Technology/ Solar Wind Hybrid Technology.

To provide further standardization and benchmarking of international solar resource data sets to insure worldwide Intercomparability and acceptance

To provide improved data reliability, availability and accessibility in formats that address specific user needs

To develop methods that improve the quality and the spatial and temporal coverage, with customized solar resource products, including reliable solar radiation forecasts.

1.3.2 Limitations Large initial setup is required to supply high rating solar energy supplies.

Solar panels are costlier and its bulkiness increases to have large power supplies of DC.

Solar panels are very delicate and a slight mishandling may lead to destruction of solar cells which are embedded in solar panels.

2. SOLAR PANELS
2.1 PHOTO VOLTAIC CELLS (PV CELLS) There are two basic types of solid silicon, amorphous (having no long range order) and crystalline (where the atoms are arranged in an ordered three dimensional array). There are various other terms for the crystalline structure of silicon; poly-crystalline, micro-crystalline, nano-crystalline etc, and these refer to the size of the crystal "grains" which make up the solid. Solar cells can be, and are made from each of these types of silicon, the most common being poly-crystalline.

Silicon is a semiconductor. This means that in solid silicon, there are certain bands of energies which the electrons are allowed to have, and other energies between these bands which are forbidden. These forbidden energies are called the "band gap". The allowed and forbidden bands of energy are explained by the theory of quantum mechanics.

At room temperature, pure silicon is a poor electrical conductor. In quantum mechanics, this is explained by the fact that the Fermi level lies in the forbidden bandgap. To make silicon a better conductor, it is "doped" with very small amounts of atoms from either group 13 (III) or group 15 (V) of the periodic table. These "dopant" atoms take the place of the silicon atoms in the crystal lattice, and bond with their neighboring Si atoms in almost the same way as other Si atoms do. However, because group 13 atoms have only 3 valence electrons, and group 15 atoms have 5 valence electrons, there is either one too few, or one too many electrons to satisfy the four covalent bonds around each atom. Since these extra electrons, or lack of electrons (known as "holes") are not involved in the covalent bonds of the crystal lattice, they are free to move around within the solid. Silicon which is doped with group 13 atoms (aluminum, gallium) is known as p-type silicon because the majority charge carriers (holes) carry a positive charge, whilst silicon doped with group 15 atoms (phosphorus, arsenic) is known as n-type silicon because the majority charge carriers (electrons) are negative. It should be noted that both n-type and p-type silicon are electrically neutral, i.e. they have the same numbers of positive and negative charges, it is just that in n-

type silicon, some of the negative charges are free to move around, while the converse is true for p-type silicon.

A solar cell is a large-area semiconductor p-n junction. To understand the workings of a p-n junction it is convenient to imagine what happens when a piece of n-type silicon is brought into contact with a piece of p-type silicon. In practice, however, the p-n junctions of solar cells are not made in this way, but rather, usually, by diffusing an ntype dopant into one side of a p-type wafer.

If we imagine what happens when a piece of p-type silicon is placed in intimate contact with a piece of n-type silicon, then what occurs is a diffusion of electrons from the region of high electron concentration - the n-type side of the junction, into the region of low electron concentration - p-type side of the junction. When the electrons diffuse across the p-n junction, they recombine with holes on the p-type side. This diffusion of carriers does not happen indefinitely however, because of the electric field which is created by the imbalance of charge immediately either side of the junction which this diffusion creates. Electrons from donor atoms on the n-type side of the junction are crossing into the p-type side, leaving behind the (extra) positively charged nuclei of the group 15 donor atoms, leaving an excess of positive charge on the n-type side of the junction. At the same time, these electrons are filling in holes on the p-type side of the junction, becoming involved in covalent bonds around the group 13 acceptor atoms, making an excess of negative charge on the ptype side of the junction. This imbalance of charge across the p-n junction sets up an electric field which opposes further diffusion of charge carriers across the junction.

This region where electrons have diffused across the junction is called the depletion region because it no longer contains any mobile charge carriers. It is also known as the "space charge region". The electric field which is set up across the p-n junction creates a diode, allowing current to flow in only one direction across the junction. Electrons may pass from the n-type side into the p-type side, and holes may pass from the p-type side to the n-type side. But since the sign of the charge on electrons and holes is opposite, conventional current may only flow in one direction.

Because solar cells are semiconductor devices, they share many of the same processing and manufacturing techniques as other semiconductor devices such as computer and memory chips. However, the stringent requirements for cleanliness and quality control of semiconductor fabrication are a little more relaxed for solar cells. Most large-scale commercial solar cell factories today make screen printed polycrystalline silicon solar cells. Single crystalline wafers which are used in the semiconductor industry can be made in to excellent high efficiency solar cells, but they are generally considered to be too expensive for large-scale mass production. Poly-crystalline silicon wafers are made by wire-sawing block-cast silicon ingots into very thin (250 to 350 micrometer) slices or wafers.

The wafers are usually lightly p-type doped. To make a solar cell from the wafer, an n-type diffusion is performed on the front side of the wafer, forming a p-n junction a few hundred nanometres below the surface. Antireflection coatings, which increase the amount of light coupled into the solar cell, are typically applied next. Over the past decade, silicon nitride has gradually replaced titanium dioxide as the antireflection coating of choice because of its excellent surface passivation qualities (i.e., it prevents carrier recombination at the surface of the solar cell). It is typically applied in a layer several hundred nanometers thick using plasma-enhanced chemical vapor deposition (PECVD). The wafer is then metallised, whereby a full area metal contact is made on the back surface, and a grid-like metal contact made up of fine "fingers" and larger "busbars" is screen-printed onto the front surface using a silver paste. The rear contact is also formed by screen-printing a metal paste, typically aluminum. Usually this contact covers the entire rear side of the cell, though in some cell designs it is printed in a grid pattern. The metal electrodes will then require some kind of heat treatment or "sintering" to make Ohmic contact with the silicon. After the metal contacts are made, the solar cells are interconnected in series (and/or parallel) by flat wires or metal ribbons, and assembled into modules or "solar panels".

Solar panels have a sheet of tempered glass on the front, and a polymer encapsulation on the back. Some solar cells have textured front surfaces that, like antireflection coatings, serve to increase the amount of light coupled into the cell. Such surfaces can usually only be formed on single-crystal silicon, though in recent years methods of forming them on multicrystalline silicon have been developed.
10

These are also known as solar cells and their assembly is termed as solar panel, let us see the individual discrete component of solar cell which is shown in below Fig 2.1.(a)

PV cells were invented in 1953 by Charles Fariett. A PV cell is used for converting photon into electron and with sun light incident, electrical energy is generated. The solar-based battery may be used to directly feed electricity to electronic equipment or for domestic heating. Solar batteries can also be used for satellites, communication equipment and domestic appliances.

A selenium-or silicon-based solar cell exhibits open-circuit voltage of only 0.5V and short-circuit cell current of the order of 1milliampere for 6.4cm area of the cell at 6458 meter candles. Therefore a large number of such silicon or selenium solar cells need to be connected in series and parallel to provide any significant power. A telemetry system required to operate 24 hours a day requires a solar panel providing 5 watts at 12 volts used for recharging corresponding storage batteries during daylight hours.

11

2.1.1 Types Of Photo Voltaic Cells


At the present time, most commercial photovoltaic cells are manufactured from silicon, the same material from which sand is made. In this case, however, the silicon is extremely pure. Other, more exotic materials such as gallium arsenide are just beginning to make their way into the field. The four general types of silicon photovoltaic cells are:

Single-crystal silicon. Polycrystalline silicon (also known as multicrystal silicon). Ribbon silicon. Amorphous silicon (abbreviated as "aSi," also known as thin film silicon).

2.1.1.1 Single Crystal Silicon

Most photovoltaic cells are single-crystal types. To make them, silicon is purified, melted, and crystallized into ingots. The ingots are sliced into thin wafers to make individual cells. The cells have a uniform color, usually blue or black.

12

Typically, most of the cell has a slight positive electrical charge. A thin layer at the top has a slight negative charge. The cell is attached to a base called a "backplane." This is usually a layer of metal used to physically reinforce the cell and to provide an electrical contact at the bottom. Since the top of the cell must be open to sunlight, a thin grid of metal is applied to the top instead of a continuous layer. The grid must be thin enough to admit adequate amounts of sunlight, but wide enough to carry adequate amounts of electrical energy Light, including sunlight, is sometimes described as particles called "photons." As sunlight strikes a photovoltaic cell, photons move into the cell. When a photon strikes an electron, it dislodges it, leaving an empty "hole". The loose electron moves toward the top layer of the cell. As photons continue to enter the cell, electrons continue to be dislodged and move upwards If an electrical path exists outside the cell between the top grid and the backplane of the cell, a flow of electrons begins. Loose electrons move out the top of the cell and into the external electrical circuit. Electrons from further back in the circuit move up to fill the empty electron holes. Most cells produce a voltage of about one-half volt, regardless of the surface area of the cell. However, the larger the cell, the more current it will produce. Current and voltage are affected by the resistance of the circuit the cell is in. The amount of available light affects current production. The temperature of the cell affects its voltage. Knowing the electrical performance characteristics of a photovoltaic power supply is important, and is covered in the next section. 2.1.1.2 Polycrystalline silicon Polycrystalline cells are manufactured and operate in a similar manner. The difference is that a lower cost silicon is used. This usually results in slightly lower efficiency, but polycrystalline cell manufacturers assert that the cost benefits outweigh the efficiency losses.

13

The surface of polycrystalline cells has a random pattern of crystal borders instead of the solid color of single crystal cells.

2.1.1.3 Ribbon Silicon

Ribbon-type photovoltaic cells are made by growing a ribbon from the molten silicon instead of an ingot. These cells operate the same as single and polycrystal cells.

The anti-reflective coating used on most ribbon silicon cells gives them a prismatic rainbow appearance.

14

2.1.1.4 Amorphous Or Thin Film Silicon

The previous three types of silicon used for photovoltaic cells have a distinct crystal structure. Amorphous silicon has no such structure. Amorphous silicon is sometimes abbreviated "aSi" and is also called thin film silicon.

Amorphous silicon units are made by depositing very thin layers of vaporized silicon in a vacuum onto a support of glass, plastic, or metal. Amorphous silicon cells are produced in a variety of colors Since they can be made in sizes up to several square yards, they are made up in long rectangular "strip cells." These are connected in series to make up "modules." Modules of all kinds are described.

15

2.2 CONSTRUCTION OF SILICON SOLAR CELL


For almost all applications, the one-half volt produced by a single cell is inadequate. Therefore, cells are connected together in series to increase the voltage. Several of these series strings of cells may be connected together in parallel to increase the current as well.

These interconnected cells and their electrical connections are then sandwiched between a top layer of glass or clear plastic and a lower level of plastic or plastic and metal. An outer frame is attached to increase mechanical strength, and to provide a way to mount the unit. This package is called a "module" or "panel". Typically, a module is the basic building block of photovoltaic systems.

To insure compatibility with storage batteries or loads, it is necessary to know the electrical characteristics of photovoltaic modules. As a reminder, "I" is the abbreviation for current, expressed in amps. "V" is used for voltage in volts, and "R" is used for resistance in ohms. A photovoltaic module will produce its maximum current when there is essentially no resistance in the circuit. This would be a short circuit between its positive and negative terminals. This maximum current is called the short circuit current, abbreviated I(sc). When the module is shorted, the voltage in the circuit is zero. Conversely, the maximum voltage is produced when there is a break in the circuit. This is called the open circuit voltage, abbreviated V(oc). Under this condition the resistance is infinitely high and there is no current, since the circuit is incomplete. These two extremes in load resistance, and the whole range of conditions in between them, are depicted on a graph called a I-V (current-voltage) curve. Current, expressed in amps, is on the vertical Y-axis. Voltage, in volts, is on the horizontal X-axis. The short circuit current occurs on a point on the curve where the voltage is zero. The open circuit voltage occurs where the current is zero.
16

The power available from a photovoltaic module at any point along the curve is expressed in watts. Watts are calculated by multiplying the voltage times the current (watts = volts x amps, or W = VA). At the short circuit current point, the power output is zero, since the voltage is zero. At the open circuit voltage point, the power output is also zero, but this time it is because the current is zero.

There is a point on the "knee" of the curve where the maximum power output is located. This point on our example curve is where the voltage is 17 volts, and the current is 2.5 amps. Therefore the maximum power in watts is 17 volts times 2.5 amps, equaling 42.5 watts. The power, expressed in watts, at the maximum power point is described as peak, maximum, or ideal, among other terms. Maximum power is generally abbreviated as "I (mp)." Various manufacturers call it maximum output power, output, peak power, rated power, or other terms. The current-voltage (I-V) curve is based on the module being under standard conditions of sunlight and module temperature. It assumes there is no shading on the module.

17

Standard sunlight conditions on a clear day are assumed to be 1000 watts of solar energy per square meter (1000 W/m2or lkW/m2). This is sometimes called "one sun," or a "peak sun." Less than one sun will reduce the current output of the module by a proportional amount. For example, if only one-half sun (500 W/m2) is available, the amount of output current is roughly cut in half.

For maximum output, the face of the photovoltaic modules should be pointed as straight toward the sun as possible Because photovoltaic cells are electrical semiconductors, partial shading of the module will cause the shaded cells to heat up. They are now acting as inefficient conductors instead of electrical generators. Partial shading may ruin shaded cells. Partial module shading has a serious effect on module power output. For a typical module, completely shading only one cell can reduce the module output by as much as 80%. One or more damaged cells in a module can have the same effect as shading. This is why modules should be completely unshaded during operation. A shadow across a module can almost stop electricity production. Thin film modules are not as affected by this problem, but they should still be unshaded.

18

Module temperature affects the output voltage inversely. Higher module temperatures will reduce the voltage by 0.04 to 0.1 volts for every one Celsius degree rise in temperature (0.04V/0C to 0.1V/0C). In Fahrenheit degrees, the voltage loss is from 0.022 to 0.056 volts per degree of temperature rise. This is why modules should not be installed flush against a surface. Air should be allowed to circulate behind the back of each module so it's temperature does not rise and reducing its output. An air space of 4-6 inches is usually required to provide proper ventilation. The last significant factor which determines the power output of a module is the resistance of the system to which it is connected. If the module is charging a battery, it must supply a higher voltage than that of the battery. If the battery is deeply discharged, the battery voltage is fairly low. The photovoltaic module can charge the battery with a low voltage, shown as point #1 in Figure 2-20. As the battery reaches a full charge, the module is forced to deliver a higher voltage, shown as point #2. The battery voltage drives module voltage.

19

Eventually, the required voltage is higher than the voltage at the module's maximum power point. At this operating point, the current production is lower than the current at the maximum power point. The module's power output is also lower. To a lesser degree, when the operating voltage is lower than that of the maximum power point, the output power is lower than the maximum. Since the ability of the module to produce electricity is not being completely used whenever it is operating at a point fairly far from the maximum power point, photovoltaic modules should be carefully matched to the system load and storage. Using a module with a maximum voltage which is too high should be avoided nearly as much as using one with a maximum voltage which is too low. The output voltage of a module depends on the number of cells connected in series. Typical modules use either 30, 32, 33, 36, or 44 cells wired in series. The modules with 30-32 cells are considered self regulating modules. 36 cell modules are the most common in the photovoltaic industry. Their slightly higher voltage rating, 16.7 volts, allows the modules to overcome the reduction in output voltage when the modules are operating at high temperatures.

20

Globally, following configurations of PV cells are available: Array voltage (V) O/P (A) TABLE 2.2(a): GLOBALLY RECOGNIZED SOLAR CELL O/P V, I Modules with 33 - 36 cells also have enough surplus voltage to effectively charge high antimony content deep cycle batteries. However, since these modules can overcharge batteries, they usually require a charge controller. Finally, 44 cell modules are available with a rated output voltage of 20.3 volts. These modules are typically used only when a substantially higher voltage is required. Another application for 44 cell modules is a system with an extremely long wire run between the modules and the batteries or load. If the wire is not large enough, it will cause a significant voltage drop. Higher module voltage can overcome this problem. It should be noted that this approach is similar to putting a larger engine in a car with locked brakes to make it move faster. It is almost always more cost effective to use an adequate wire size, rather than to overcome voltage drop problems with more costly 44 cell modules. current

12 41.67

24 20.83

36 13.89

48 10.42

2.3 SOLAR ARRAYS


In many applications the power available from one module is inadequate for the load. Individual modules can be connected in series, parallel, or both to increase either output voltage or current. This also increases the output power. When modules are connected in parallel, the current increases. For example, three modules which produce 15 volts and 3 amps each, connected in parallel, will produce 15 volts and 9 amps.

21

If the system includes a battery storage system, a reverse flow of current from the batteries through the photovoltaic array can occur at night. This flow will drain power from the batteries.

A portable array may be as small as a one square foot module easily carried by one person to recharge batteries for communications or flashlights. They can be mounted on vehicles to maintain the engine battery during long periods of inactivity. Larger ones can be installed on trailers or truck beds to provide a portable power supply for field operations.

22

Arrays that track, or follow the sun across the sky, can follow the sun in one axis or in two. Tracking arrays perform best in areas with very clear climates. This is because following the sun yields significantly greater amounts of energy when the sun's energy is predominantly direct. Direct radiation comes straight from the sun, rather than the entire sky. Normally, one axis trackers follow the sun from the east to the west throughout the day. The angle between the modules and the ground does not change. The modules face in the "compass" direction of the sun, but may not point exactly up at the sun at all times.

Two axis trackers change both their east-west direction and the angle from the ground during the day. The modules face straight at the sun all through the day. Two axis trackers are considerably more complicated than one axis types.

23

2.4 WORKING OF SOLAR CELLS


The answer to the question of how do you produce electricity from solar energy is fairly easy to understand once you have a slight knowledge of the subject. Before you are able to produce electricity through solar energy, there needs to be some form of solar cell or panel. The solar panels are made of a semi-conductive material, the most common material is silicon. The semi-conductive material contains electrons which are quite happy just sitting there. When photons (contained within the suns rays) hit the solar cells, the electrons absorb this solar energy, transforming them into conduction electrons. If the energy of these photons is great enough, then the electrons are able to become free, and carry an electric charge through a circuit to the destination. Any electrons that do not receive enough energy simply warm up, which heats your cell or panel, resulting in lowering the efficiency of the cell. The lowering in efficiency is down to two main factors and they are; that the cell is not working to its full potential (e.g. some electrons may be lost), the second factor is when the electrons release heat, the panel also becomes warm, interfering with other aspects of the solar cells. The more solar cells contained in a solar panel, or solar array, means the more output you will receive. Quality cells are also a major factor in efficiency. If you purchase more expensive natural energy technologies, you are more likely to have a more efficient cell. Another factor which affects solar panel efficiency is location. Obviously nearer the equator, you will receive a slightly better output with a given cell, but solar cells

24

should always be facing the direction of the sun, and have no objects blocking the sun's rays. So there we have a basic understand of how you produce solar electricity from using energy within the sun's rays. Whether on a solar-powered calculator or an international space station, solar panels generate electricity using the same principles of electronics as chemical batteries or standard electrical outlets. With solar panels, it's all about the free flow of electrons through a circuit. To understand how solar panels generate electrical power, it might help to take a quick trip back to high school chemistry class. The basic element of solar panels is the same element that helped create the computer revolution -- pure silicon. When silicon is stripped of all impurities, it makes a ideal neutral platform for the transmission of electrons. Silicon also has some atomic-level properties which make it even more attractive for the creation of solar panels. Silicon atoms have room for eight electrons in their outer bands, but only carry four in their natural state. This means there is room for four more electrons. If one silicon atom contacts another silicon atom, each receives the other atom's four electrons. This creates a strong bond, but there is no positive or negative charge because the eight electrons satisfy the atoms' needs. Silicon atoms can combine for years to result in a large piece of pure silicon. This material is used to form the plates of solar panels. Here's where science enters the picture. Two plates of pure silicon would not generate electricity in solar panels, because they have no positive or negative charge. Solar panels are created by combining silicon with other elements that do have positive or negative charges. Phosphorus, for example, has five electrons to offer to other atoms. If silicon and phosphorus are combined chemically, the result is a stable eight electrons with an additional free electron along for the ride. It can\'t leave, because it is bonded to the other phosphorus atoms, but it isn't needed by the silicon. Therefore, this new silicon/phosphorus plate is considered to be negatively charged.

25

In order for electricity to flow, a positive charge must also be created. This is achieved in solar panels by combining silicon with an element such as boron, which only has three electrons to offer. A silicon/boron plate still has one spot left for another electron. This means the plate has a positive charge. The two plates are sandwiched together in solar panels, with conductive wires running between them. With the two plates in place, it's now time to bring in the 'solar' aspect of solar panels. Natural sunlight sends out many different particles of energy, but the one we're most interested in is called a photon. A photon essentially acts like a moving hammer. When the negative plates of solar cells are pointed at a proper angle to the sun, photons bombard the silicon/phosphorus atoms. Eventually, the 9th electron, which wants to be free anyway, is knocked off the outer ring. This electron doesn't remain free for long, since the positive silicon/boron plate draws it into the open spot on its own outer band. As the sun's photons break off more electrons, electricity is generated. The electricity generated by one solar cell is not very impressive, but when all of the conductive wires draw the free electrons away from the plates, there is enough electricity to power low amperage motors or other electronics. Whatever electrons are not used or lost to the air are returned to the negative plate and the entire process begins again. One of the main problems with using solar panels is the small amount of electricity they generate compared to their size. A calculator might only require a single solar cell, but a solar-powered car would require several thousand. If the angle of the solar panels is changed even slightly, the efficiency can drop 50 percent. Some power from solar panels can be stored in chemical batteries, but there usually isn't much excess power in the first place. The same sunlight that provides photons also provides more destructive ultraviolet and infrared waves, which eventually cause the panels to degrade physically. The panels must also be exposed to destructive weather elements, which can also seriously affect efficiency. solar cells works on the concept of PN junction where when light incidents on the solar cell then the heat energy or the photonic energy which was present in the

26

photons which were located in the solar rays was converted into electrical energy by means of PN junction of semiconductor principle where the majority carriers of P and N material Crosses the junction as a result movement of these charge carriers causes current flow which can be extracted from the either side of the solar cell in the form

of DC output with + and - terminals. Thus the DC Output obtained can be given to any digital circuits or it can be converted into AC by using the INVERTER and can be utilized for house hold purposes. Many sources also refer to solar panels as photovoltaic cells, which references the importance of light (photos) in the generation of electrical voltage. The challenge for future scientists will be to create more efficient solar panels are small enough for practical applications and powerful enough to create excess energy for times when sunlight is not available.

27

2.5 PV CELLS AT GLANCE 2.5.1 Advantages


Salient and low maintenance Solid states with no moving parts High-quality powers Life times of 20 to30 years Flexible and reliable Modular and expandable

2.5.2 Applications
Coast guard navigation Off-grid and grid- connected homes Rail road signaling Satellites and space station Out door lightnings Telecommunication and water pumping, etc.

28

3. PIC MICRO CONTROLLER


Embedded System Plays a major role in day to day advancement and achievements. This simple article provides what is an embedded system and its applications.

An embedded system is a large or small computer system that is built into a product, a piece of equipment or another computer system, and that performs some task useful to the product, equipment or system. It is a computer system that is programmed to perform a particular task. This task may be very simple or very complex; that is not a relevant distinction. "But" you say, " all computers are programmed to perform tasks!" True, however an embedded system is programmed to perform its task from the time it is powered up until it is shut down. Its programming cannot be changed except in ways that its original programmer intended.

This leads to the notion of an embedded system as a component. Just like a logic gate or other electronic component, an embedded systems has a single task to perform. Again, the task may be extremely complex or extremely simple, but in either case the task is performed by a computer system programmed appropriately. An embedded system is a component of a larger system of some sort. Indeed, embedded systems may be nested within other embedded systems to arbitrary depth. Generally, the "higher level" embedded system is the more complex one, but this is not necessarily the case.

An example of nested embedded systems might be a walking, or legged, robot. Each motor on each joint of each leg might be controlled by its own embedded system that implements some form of motor control strategy such as pulse width modulation or stepper motor control as appropriate, and acquires sensory input (probably joint angles and forces). In a multi-legged robot, these low-level embedded systems could be controlled by a higher-level embedded system that issues commands for each leg to implement the desired robot motion. Thus, these two levels of embedded system implement a motion control platform, to which commands are sent by a yet higherlevel system that performs robot path planning and computes the overall motion for

29

the robot. This system may not be at the top of the embedded system hierarchy; it is entirely possible that a still-higher level system controls the path planner. In this example, we see a hierarchy of four levels of nested embedded systems. Embedded systems come in a tremendous variety of "sizes and flavors". An embedded system may be as small as a single 8-pin integrated circuit that performs the functions of a few logic gates, or may be as large as a system with 256 megabytes of memory, a small disc (20 gigabytes or so), a Pentium processor and a host of intelligent peripherals. The range of physical and "computing" sizes is huge, but all embedded systems have these features: they perform a very well-defined task for the product, equipment or system in which they are found they do not permit user interaction with their operation except where such interaction may be the task of the embedded system, and they are considered to be a component of the (usually much larger) product, equipment or system.

Examples of Pic Microcontroller Based embedded systems include: keyboard and other controllers for computers, CD players and consumer electronics, timing and control electronics in microwave ovens, coffee makers, controllers for vacuum cleaners and washing machines for sensing dirt loads, control of the dashboard, ignition, fuel injection, suspension stiffness and environmental temperature and noise in automobiles, parking meter controllers, elevator, environmental and security systems in buildings, internal operation of medical instrumentation such as infusion pumps, pulse oximeters, disc controllers for computer systems, control of data communications routers for wide-band

communications, and many more.


30

Other than the normal Microcontrollers PIC Family supports more features, so we have chosen PIC 16F877 as the main controller. The Main features and Peripherals features are discussed below.

The PIC Microcontroller board consists of circuits necessary to operate a Microcontroller with PC interface. The board contains provisions for interfacing 8 analog inputs and 23 Digital level signals. The Description of the circuit is given below.

Analog inputs: Pin no 2 to 10 can be used to connect any analog signals of range 0-5v.

Digital signals: As mentioned in the circuit the pin outs from the port is taken to a 26 pin FRC connector through which we can connect our Digital level signals 0 or 5 volts.

Clock: The PIC16F877 can be operated in Four Different oscillator modes. The user can program two configuration bits FOSC1 and FOSC0 to select one of these four modes. *LP - Low Power crystal *XT - crystal / resonator *HS - High speed crystal/resonator *RC - Resistor capacitor The clock we have used is 10 MHZ which full under HS category.

MCLR/VPP: This is master clear input pin to the IC. A logic low signal will generate a reset signal to the microcontroller. So we have tied this pin to VCC for the proper operation of the microcontroller.

31

TXD and RXD: TO communicate with the outside world the microcontroller has an inbuilt USART. The O/P and I/P line from the USART is taken and given to a MAX232 IC for having communication with the PC. Since we have used comport for interfacing the microcontroller.

VCC and Ground: Pin no 32, 11 are tied to VCC and pin no 31, 12 are grounded to provide power supply to the chip.

3.1 CORE FEATURES High performance RISC CPU


Only 35 single word instructions to learn All single cycle instructions except for program Branches which are two cycle Operating speed: DC - 20 MHz clock input DC - 200 ns instruction cycle Up to 8K x 14 words of FLASH Program Memory, Up to 368 x 8 bytes of Data Memory (RAM) Interrupt capability (up to 14 sources) Direct, indirect and relative addressing modes Power-on Reset (POR) Power-up Timer (PWRT) and Oscillator Start-up Timer (OST) Processor read/write access to program memory Wide operating voltage range: 2.0V to 5.5V Low-power consumption: - < 0.6 mA typical @ 3V, 4 MHz < 1 A typical standby current
32

3.2 PERIPHERAL FEATURES Timer0: 8-bit timer/counter with 8-bit prescaler


Timer1: 16-bit timer/counter with prescaler, can be incremented during SLEEP Timer2: 8-bit timer/counter with 8-bit period register, prescaler and postscaler 10-bit multi-channel Analog-to-Digital converter Synchronous Serial Port (SSP) wi

Universal Synchronous Asynchronous Receiver Transmitter (USART/SCI) with 9-bit address detection Parallel Slave Port (PSP) 8-bits wide, with external RD, WR and CS controls (40/44-pin only)

Figure 3.2(a) - Block Diagram of PIC Micro Controller


33

Figure 3.2(b) - Circuit Diagram of PIC16F877

34

Fig 3.2(c): PIC16f877 Pin Diagram

There are three memory blocks in each of the PIC16F87X MCUs. The Program Memory and Data Memory have separate buses so that concurrent access can occur and is detailed in this section.

The PIC16F87X devices have a 13-bit program counter capable of addressing an 8K x 14 program memory space. The PIC16F877/876 devices have 8K x 14 words of FLASH program memory. Accessing a location above the physically implemented address will cause a wraparound. The RESET vector is at 0000h and the interrupt vector is at 0004h.

35

Fig 3.2(d): PIC16f877 Pin Out Description

36

Fig 3.2(e): PIC16f877 Pin Out Description

37

The PIC16F87X devices have a 13-bit program counter capable of addressing an 8K x 14 program memory space. The PIC16F877/876 devices have 8K x 14 words of FLASH program memory. Accessing a location above the physically implemented address will cause a wraparound. The RESET vector is at 0000h and the interrupt vector is at 0004h.

The data memory is partitioned into multiple banks which contain the General Purpose Registers and the Special Function Registers. Bits RP1 (STATUS<6>)and RP0 (STATUS<5>) are the bank select bits. Each bank extends up to 7Fh (128 bytes). The lower locations of each bank are reserved for the Special Function Registers. Above the Special Function Registers are General Purpose Registers, implemented as static RAM. All implemented banks contain Special Function Registers. Some frequently used Special Function Registers from one bank may be mirrored in another bank for code reduction and quicker access. For byte-oriented instructions, f represents a file register designator and d represents a destination designator. The file register designator specifies which file register is to be used by the instruction. The destination designator specifies where the result of the operation is to be placed. If d is zero, the result is placed in the W register. If d is one, the result is placed in the file register specified in the instruction. For bit-oriented instructions, b represents a bit field designator which selects the number of the bit affected by the operation, while f represents the address of the file in which the bit is located. For literal and control operations, k represents an eight or eleven bit constant or literal value. All instructions are executed within one single instruction cycle, unless a conditional test is true or the program counter is changed as a result of an instruction. In this case, the execution takes two instruction cycles with the second cycle executed as a NOP. One instruction cycle consists of four oscillator periods. Thus, for an oscillator frequency of 4 MHz, the normal instruction execution time is 1 s. If a conditional test is true, or the program counter is changed as a result of an instruction, the instruction execution time is 2 s.

38

3.3 REGISTERS
3.3.1 Special Function Registers The Special Function Registers are registers used by the CPU and peripheral modules for controlling the desired operation of the device. These registers are implemented as static RAM. The Special Function Registers can be classified into two sets: core (CPU) and peripheral. Those registers associated with the core functions are described in detail in this section. Those related to the operation of the peripheral features are described in detail in the peripheral features section.

3.3.2 Status Registers The STATUS register contains the arithmetic status of the ALU, the RESET status and the bank select bits for data memory.The STATUS register can be the destination for any instruction, as with any other register. If the STATUS register is the destination for an instruction that affects the Z, DC or C bits, then the write to these three bits is disabled. These bits are set or cleared according to the device logic. Furthermore, the TO and PD bits are not writable, therefore, the result of an instruction with the STATUS register as destination may be different than intended. For example, CLRF STATUS will clear the upper threebits and set the Z bit. This leaves the STATUS register as 000u u1uu (where u = unchanged).It is recommended, therefore, that only BCF, BSF,SWAPF and MOVWF instructions are used to alter the STATUS register, because these instructions do not affect the Z, C or DC bits from the STATUS register.

3.4 ADDRESSABLE UNIVERSAL SYNCHRONOUS ASYNCHRONOUS RECEIVER TRANSMITTER (USART)

The Universal Synchronous Asynchronous Receiver Transmitter (USART) module is one of the two serial I/O modules. (USART is also known as a Serial Communications Interface or SCI.) The USART can be configured as a full duplex asynchronous system that can communicate with peripheral devices such as CRT terminals and personal computers, or it can be configured as a half duplex synchronous system that can communicate with peripheral devices such as A/D or
39

D/A integrated circuits, serial EEPROMs etc. The USART can be configured in the following modes:

Asynchronous (full duplex) Synchronous - Master (half duplex) Synchronous - Slave (half duplex)

Bit SPEN (RCSTA<7>) and bits TRISC<7:6> have to be set in order to configure pins RC6/TX/CK and RC7/RX/DT as the Universal Synchronous Asynchronous Receiver Transmitter. The USART module also has a multi-processor communication capability using 9-bit address detection.

Figure 3.4(a) - Transmit status and Control register (address 98h)

bit 7 CSRC: Clock Source Select bit Asynchronous mode: Dont care Synchronous mode: 1 = Master mode (clock generated internally from BRG) 0 = Slave mode (clock from external source) bit 6 TX9: 9-bit Transmit Enable bit 1 = Selects 9-bit transmission 0 = Selects 8-bit transmission bit 5 TXEN: Transmit Enable bit 1 = Transmit enabled 0 = Transmit disabled bit 4 SYNC: USART Mode Select bit 1 = Synchronous mode 0 = Asynchronous mode bit 2 BRGH: High Baud Rate Select bit Asynchronous mode: 1 = High speed
40

0 = Low speed Synchronous mode: Unused in this mode bit 1 TRMT: Transmit Shift Register Status bit 1 = TSR empty 0 = TSR full bit 0 TX9D: 9th bit of Transmit Data, can be parity bit

3.4.1 Usart Asynchronous Mode In this mode, the USART uses standard non-return-to zero (NRZ) format (one START bit, eight or nine data bits, and one STOP bit). The most common data format is 8-bits. An on-chip, dedicated, 8-bit baud rate generator can be used to derive standard baud rate frequencies from the oscillator. The USART transmits and receives the LSb first. The transmitter and receiver are functionally independent, but use the same data format and baud rate. The baud rate generator produces a clock, either x16 or x64 of the bit shift rate, depending on bit BRGH (TXSTA<2>). Parity is not supported by the hardware, but can be implemented in software (and stored as the ninth data bit).

Asynchronous mode is stopped during SLEEP. Asynchronous mode is selected by clearing bit SYNC (TXSTA<4>). The USART Asynchronous module consists of the following important elements: Baud Rate Generator Sampling Circuit Asynchronous Transmitter Asynchronous Receiver

3.4.2 Usart Asynchronous Transmitter The heart of the transmitter is the transmit (serial) shift register (TSR). The shift register obtains its data from the read/write transmit buffer, TXREG. The TXREG register is loaded with data in software. The TSR register is not loaded until the STOP bit has been transmitted from the previous load. As soon as the STOP bit is transmitted, the TSR is loaded with new data from the TXREG register (if available). Once the TXREG register transfers the data to the TSR register (occurs in one TCY),
41

the TXREG register is empty and flag bit TXIF (PIR1<4>) is set. This interrupt can be enabled/disabled by setting/clearing enable bit TXIE (PIE1<4>). Flag bit TXIF will be set, regardless of the state of enable bit TXIE and cannot be cleared in software. It will reset only when new data is loaded into the TXREG register. While flag bit TXIF indicates the status of the TXREG register, another bit TRMT (TXSTA<1>) shows the status of the TSR register.

Status bit TRMT is a read only bit, which is set when the TSR register is empty. No interrupt logic is tied to this bit, so the user has to poll this bit in order to determine if the TSR register is empty. Transmission is enabled by setting enable bit TXEN (TXSTA<5>). The actual transmission will not occur until the TXREG register has been loaded with data and the baud rate generator (BRG) has produced a shift clock. The transmission can also be started by first loading the TXREG register and then setting enable bit TXEN. Normally, when transmission is first started, the TSR register is empty. At that point, transfer to the TXREG register will result in an immediate transfer to TSR, resulting in an empty TXREG. A back-to-back transfer is thus possible Clearing enable bit TXEN during a transmission will cause the transmission to be aborted and will reset the transmitter.

As a result, the RC6/TX/CK pin will revert to hi-impedance.In order to select 9-bit transmission, transmit bit TX9 (TXSTA<6>) should be set and the ninth bit should be written to TX9D (TXSTA<0>). The ninth bit must be written before writing the 8-bit data to the TXREG register. This is because a data write to the TXREG register can result in an immediate transfer of the data to the TSR register (if the TSR is empty). In such a case, an incorrect ninth data bit may be loaded in the TSR register.

When setting up an Asynchronous Transmission, follow these steps:

1. Initialize the SPBRG register for the appropriate baud rate. If a high speed baud rate is desired, set bit BRGH. 2. Enable the asynchronous serial port by clearing bit SYNC and setting bit SPEN. 3. If interrupts are desired, then set enable bit TXIE. 4. If 9-bit transmission is desired, then set transmit bit TX9.
42

5. Enable the transmission by setting bit TXEN, which will also set bit TXIF. 6. If 9-bit transmission is selected, the ninth bit should be loaded in bit TX9D. 7. Load data to the TXREG register (starts transmission). 8. If using interrupts, ensure that GIE and PEIE (bits 7 and 6) of the INTCON register are set.

3.4.3 Usart Asynchronous Receiver The data is received on the RC7/RX/DT pin and drives the data recovery block. The data recovery block is actually a high speed shifter, operating at x16 times the baud rate; whereas, the main receive serial shifter operates at the bit rate or at FOSC. Once Asynchronous mode is selected, reception is enabled by setting bit CREN (RCSTA<4>). The heart of the receiver is the receive (serial) shift register (RSR). After sampling the STOP bit, the received data in the RSR is transferred to the RCREG register (if it is empty). If the transfer is complete, flag bit RCIF (PIR1<5>) is set. The actual interrupt can be enabled/disabled by setting/clearing enable bit RCIE (PIE1<5>). Flag bit RCIF is a read only bit, which is cleared by the hardware. It is cleared when the RCREG register has been read and is empty.

If the RCREG register is still full, the overrun error bit OERR (RCSTA<1>) will be set. The word in the RSR will be lost. The RCREG register can be read twice to retrieve the two bytes in the FIFO. Overrun bit OERR has to be cleared in software. This is done by resetting the receiver logic (CREN is cleared and then set). If bit OERR is set, transfers from the RSR register to the RCREG register are inhibited, and no further data will be received. It is therefore, essential to clear error bit OERR if it is set. Framing error bit FERR (RCSTA<2>) is set if a STOP bit is detected as clear. Bit FERR and the 9th receive bit are buffered the same way as the receive data. Reading the RCREG will load bits RX9D and FERR with new values, therefore, it is essential for the user to read the RCSTA register before reading the RCREG register in order not to lose the old FERR and RX9D information.

43

3.5 ANALOG-TO-DIGITAL CONVERTER (A/D) MODULE The Analog-to-Digital (A/D) Converter module has five inputs for the 28-pin devices and eight for the other devices. The A/D conversion of the analog input signal results in a corresponding 10-bit digital number. The A/D converter has a unique feature of being able to operate while the device is in SLEEP mode. To operate in SLEEP, the A/D clock must be derived from the A/Ds internal RC oscillator. The A/D module has four registers. These registers are: A/D Result High Register (ADRESH) A/D Result Low Register (ADRESL) A/D Control Register0 (ADCON0) A/D Control Register1 (ADCON1)

The ADCON0 register, shown in Figure 11, controls the operation of the A/D module. The ADCON1 register, shown in Figure 12, configures the functions of the port pins. The port pins can be configured as analog inputs (RA3 can also be the voltage reference), or as digital I/O. Additional information on using the A/D module can be found in the PIC micro Mid-Range MCU Family Reference Manual (DS33023).

Figure 11- ADCON0 Register (address: 1fh)

bit 7-6 ADCS1:ADCS0: A/D Conversion Clock Select bits 00 = FOSC/2 01 = FOSC/8 10 = FOSC/32 11 = FRC (clock derived from the internal A/D module RC oscillator) bit 5-3 CHS2:CHS0: Analog Channel Select bits 000 = channel 0, (RA0/AN0) 001 = channel 1, (RA1/AN1)

44

010 = channel 2, (RA2/AN2) 011 = channel 3, (RA3/AN3) 100 = channel 4, (RA5/AN4) 101 = channel 5, (RE0/AN5)(1) 110 = channel 6, (RE1/AN6)(1) 111 = channel 7, (RE2/AN7)(1) bit 2 GO/DONE: A/D Conversion Status bit

If ADON = 1: 1 = A/D conversion in progress (setting this bit starts the A/D conversion) 0 = A/D conversion not in progress (this bit is automatically cleared by hardware when the A/D conversion is complete) bit 1 Unimplemented: Read as '0' bit 0 ADON: A/D On bit 1 = A/D converter module is operating 0 = A/D converter module is shut-off and consumes no operating current

Figure 12- ADCON1 Register (address 9fh)

bit 7 ADFM: A/D Result Format Select bit 1 = Right justified. 6 Most Significant bits of ADRESH are read as 0. 0 = Left justified. 6 Least Significant bits of ADRESL are read as 0. bit 6-4 Unimplemented: Read as '0' bit 3-0 PCFG3:PCFG0: A/D Port Configuration Control bits:

These steps should be followed for doing an A/D Conversion: 1. Configure the A/D module: Configure analog pins/voltage reference and digital I/O (ADCON1) Select A/D input channel (ADCON0) Select A/D conversion clock (ADCON0) Turn on A/D module (ADCON0)
45

2. Configure A/D interrupt (if desired): Clear ADIF bit Set ADIE bit Set PEIE bit Set GIE bit 3. Wait the required acquisition time. 4. Start conversion: Set GO/DONE bit (ADCON0) 5. Wait for A/D conversion to complete, by either: Polling for the GO/DONE bit to be cleared (with interrupts enabled); OR Waiting for the A/D interrupt 6. Read A/D result register pair (ADRESH:ADRESL), clear bit ADIF if required. 7. For the next conversion, go to step 1 or step 2, as required. The A/D conversion time per bit is defined as TAD. A minimum wait of 2TAD is required before the next acquisition starts.

3.6 INTERRUPTS The PIC16F87X family has up to 14 sources of interrupt. The interrupt control register (INTCON) records individual interrupt requests in flag bits. It also has individual and global interrupt enable bits. A global interrupt enable bit, GIE (INTCON<7>) enables (if set) all unmasked interrupts, or disables (if cleared) all interrupts. When bit GIE is enabled, and an interrupts flag bit and mask bit are set, the interrupt will vector immediately. Individual interrupts can be disabled through their corresponding enable bits in various registers. Individual interrupt bits are set, regardless of the status of the GIE bit. The GIE bit is cleared on RESET. The return from interrupt instruction, RETFIE, exits the interrupt routine, as well as sets the GIE bit, which re-enables interrupts. The RB0/INT pin interrupt, the RB port change interrupt, and the TMR0 overflow interrupt flags are contained in the INTCON register. The peripheral interrupt flags are contained in the special function registers, PIR1 and PIR2. The corresponding interrupt enable bits are contained in special function registers, PIE1 and PIE2, and the peripheral interrupt enable bit is contained in special function register INTCON.
46

When an interrupt is responded to, the GIE bit is cleared to disable any further interrupt, the return address is pushed onto the stack and the PC is loaded with 0004h.

Once in the Interrupt Service Routine, the source(s) of the interrupt can be determined by polling the interrupt flag bits. The interrupt flag bit(s) must be cleared in software before re-enabling interrupts to avoid recursive interrupts. For external interrupt events, such as the INT pin or PORTB change interrupt, the interrupt latency will be three or four instruction cycles. The exact latency depends when the interrupt event occurs. The latency is the same for one or two-cycle instructions. Individual interrupt flag bits are set, regardless of the status of their corresponding mask bit, PEIE bit, or GIE bit.

Note: Individual interrupt flag bits are set, regardless of the status of their corresponding mask bit, or the GIE bit.

3.7 INSTRUCTION SET SUMMARY


Each PIC16F87X instruction is a 14-bit word, divided into an OPCODE which specifies the instruction type and one or more operands which further specify the operation of the instruction. The PIC16F87X instruction set summary in byteoriented, bit-oriented, and literal and control operations. For byte-oriented instructions, f represents a file register designator andd represents a destination designator. The file register designator specifies which file register is to be used by the instruction. The destination designator specifies where the result of the operation is to be placed. If d is zero, the result is placed in the W register. I'd is one, the result is placed in the file register specified in the instruction. For bit-oriented instructions, b represents a bit field designator which selects the number of the bit affected by the operation, while f represents the address of the file in which the bit is located.

47

For literal and control operations, k represents an eight or eleven bit constant or literal value. All instructions are executed within one single instruction cycle, unless a conditional test is true or the program counter is changed as a result of an instruction. In this case, the execution takes two instruction cycles with the second cycle executed as a NOP. One instruction cycle consists of four oscillator periods. Thus, for an oscillator frequency of 4 MHz, the normal instruction execution time is 1 s. If a conditional test is true, or the program counter is changed as a result of an instruction, the instruction execution time is 2s.

3.8 INTERFACE WITH PC Even if all the parameters are processed through a PIC Microcontroller the display unit used will be a Seven segment Display or an LCD Display. Using this device we cannot make Parameter more effective. In order to make the Parameter more

effectively illustrated on Screen we can go for PC instead of LCD Displays. So to Interface a PC with our Microcontroller unit we need a RS232 interface. Here we have used MAX232 as a serial interface chip.

Figure 13- Pin Diagram of MAX232

48

The MAX232 power supply section has 2 charge pumps the first uses external capacitors C1 to double the +5V input to +10V with input impedance of approximately 200. The second charge pump uses external capacitor to invert +10V to 10V with an overall output impedance of 45.

The best circuit uses 22F capacitors for C1 and C4 but the value is not critical. Normally these capacitors are low cost aluminum electrolyte capacitors or tantalum if size is critical. Increasing the value of C1 and C2 to 47F will lower the output impedance of +5V to+10V doubled by about 5 and +10V to -10V inverter by about 10. Increasing the value of C3 and C4 lowers the ripple on the power supplies thereby lowering the 16KHz ripple on the RS232 output. The value of C1 and C4 can be lowered to 1F in systems where size is critical at the expense of an additional 20 impedance +10V output and 40 additional impedance at 10V input.

Each of the two transmitters is a CMOS inverter powered by + 10V internally generated supply. The input is TTL and CMOS compatible with a logic threshold of about 26% of Vcc. The input if an unused transmitter section can be left unconnected: an internal 400K pull up resistor connected between the transistor input and Vcc will pull the input high forming the unused transistor output low.

The open circuit output voltage swing is guaranteed to meet the RS232 specification + 5v output swing under the worst of both transmitter driving the 3K Minimum load impedance, the Vcc input at 4.5V and maximum allowable ambient temperature typical voltage with 5K and Vcc= +.9 v

The slow rate at output is limited to less than 30V/s and the powered done output impedance will be a minimum of 300 with +2V applied to the output with Vcc =0V.The outputs are short circuit protected and can be short circuited to ground indefinitely. The two receivers fully conform to RS232 specifications. Theyre input impedance is between 3K either with or without 5V power applied and their switching threshold is within the +3V of RS232 specification. To ensure compatibility with either RS232
49

IIP or TTl\CMOS input. The MAX232 receivers have VIL of 0.8V and VIH of 2.4V the receivers have 0.5V of hysterisis to improve noise rejection.

The TTL\CMOS compatible output of receiver will be low whenever the RS232 input is greater than 2.4V. The receiver output will be high when input is floating or driven between +0.8V and 30V.

3.9 POWER SUPPLY UNIT


As we all know any invention of latest technology cannot be activated without the source of power. So it this fast moving world we deliberately need a proper power source which will be apt for a particular requirement. All the electronic components starting from diode to Intel ICs only work with a DC supply ranging from -+5v to -+12v.

Figure 3.9(a) : Power Supply Unit For The Microcontroller

We are utilizing for the same, the cheapest and commonly available energy source of 230v-50Hz and stepping down, rectifying, filtering and regulating the voltage. This will be dealt briefly in the forth-coming sections.

3.9.1 Step Down Transformer


When AC is applied to the primary winding of the power transformer it can either be stepped down or up depending on the value of DC needed. In our circuit the transformer of 230v/15-0-15v is used to perform the step down operation where a 230V AC appears as 15V AC across the secondary winding. One alteration of input causes the top of the transformer to be positive and the bottom negative. The next alteration will temporarily cause the reverse. The current rating of the transformer
50

used in our project is 2A. Apart from stepping down AC voltages, it gives isolation between the power source and power supply circuitries.

3.9.2 Rectifier Unit


In the power supply unit, rectification is normally achieved using a solid state diode. Diode has the property that will let the electron flow easily in one direction at proper biasing condition. As AC is applied to the diode, electrons only flow when the anode and cathode is negative. Reversing the polarity of voltage will not permit electron flow.

A commonly used circuit for supplying large amounts of DC power is the bridge rectifier. A bridge rectifier of four diodes (4*IN4007) are used to achieve full wave rectification. Two diodes will conduct during the negative cycle and the other two will conduct during the positive half cycle. The DC voltage appearing across the output terminals of the bridge rectifier will be somewhat lass than 90% of the applied rms value. Normally one alteration of the input voltage will reverse the polarities. Opposite ends of the transformer will therefore always be 180 deg out of phase with each other.

For a positive cycle, two diodes are connected to the positive voltage at the top winding and only one diode conducts. At the same time one of the other two diodes conducts for the negative voltage that is applied from the bottom winding due to the forward bias for that diode. In this circuit due to positive half cycleD1 & D2 will conduct to give 10.8v pulsating DC. The DC output has a ripple frequency of 100Hz. Since each altercation produces a resulting output pulse, frequency = 2*50 Hz. The output obtained is not a pure DC and therefore filtration has to be done.

3.9.3 FILTERING UNIT


Filter circuits which are usually capacitors acting as a surge arrester always follow the rectifier unit. This capacitor is also called as a decoupling capacitor or a bypassing capacitor, is used not only to short the ripple with frequency of 120Hz to ground but also to leave the frequency of the DC to appear at the output. A load resistor R1 is

51

connected so that a reference to the ground is maintained. C1R1 is for bypassing ripples. C2R2 is used as a low pass filter, i.e. it passes only low frequency signals and bypasses high frequency signals. The load resistor should be 1% to 2.5% of the load.

1000f/25v

: for the reduction of ripples from the pulsating.

10f/25v

: for maintaining the stability of the voltage at the load side.

O, 1 : for bypassing the high frequency disturbances.

3.9.4 Voltage Regulators


The voltage regulators play an important role in any power supply unit. The primary purpose of a regulator is to aid the rectifier and filter circuit in providing a constant DC voltage to the device. Power supplies without regulators have an inherent problem of changing DC voltage values due to variations in the load or due to fluctuations in the AC liner voltage. With a regulator connected to the DC output, the voltage can be maintained within a close tolerant region of the desired output. IC7812 and 7912 is used in this project for providing +12v and 12v DC supply.

3.9.5 Specifications
Resistors R1 and R2 maintain line load regulation. At the secondary side of the transformer, Applied voltage = 15v Conducting drop across the diodes = 2*0.6= 1.2v. Without capacitor: Vavg = (15-1.2)v = 13.8c pulsating DC Frequency = 100Hz With capacitor: V=Vavg *1.414(form factor) = 19.51v. Frequency = 0Hz With 7812 voltage regulator: V0= +12v
52

4. LCD DISPLAY
The most commonly used Character based LCDs are based on Hitachi's HD44780 controller or other which are compatible with HD44580. In this tutorial, we will discuss about character based LCDs, their interfacing with various microcontrollers, various interfaces (8-bit/4-bit), programming, special stuff and tricks you can do with these simple looking LCDs which can give a new look to your application.

4.1 PIN DESCRIPTION


The most commonly used LCDs found in the market today are 1 Line, 2 Line or 4 Line LCDs which have only 1 controller and support at most of 80 characters, whereas LCDs supporting more than 80 characters make use of 2 HD44780 controllers. Most LCDs with 1 controller has 14 Pins and LCDs with 2 controller has 16 Pins (two pins are extra in both for back-light LED connections). Pin description is shown in the table below.

FIG 4.1(a): Character LCD type HD44780 Pin diagram

53

Pin No. Pin no. 1 Pin no. 2 Pin no. 3

Description Power supply(GND) Power supply (+5V) Contrast adjust 0 = Instruction input Pin no. 4 RS 1 = Data input 0 = Write to LCD module Pin no. 5 R/W 1 = Read from LCD module Pin no. 6 EN Enable signal Pin no. 7 D0 Data bus line 0 (LSB) Pin no. 8 D1 Data bus line 1 Pin no. 9 D2 Data bus line 2 Pin no. 10 D3 Data bus line 3 Pin no. 11 D4 Data bus line 4 Pin no. 12 D5 Data bus line 5 Pin no. 13 D6 Data bus line 6 Pin no. 14 D7 Data bus line 7 (MSB) TABLE 4.1(a): Pin description Of LCD Display Pin no. 8 D1 Data bus line 1 Pin no. 9 D2 Data bus line 2 Pin no. 10 D3 Data bus line 3 Pin no. 11 D4 Data bus line 4 Pin no. 12 D5 Data bus line 5 Pin no. 13 D6 Data bus line 6 Pin no. 14 D7 Data bus line 7 (MSB) TABLE 4.1(b): Pin description Of LCD Display with controller 1 Pin No. Pin no. 1 Pin no. 2 Pin no. 3 Pin no. 4 Pin no. 5 Pin no. 6 Pin no. 7 Pin no. 8 Pin no. 9 Name D7 D6 D5 D4 D3 D2 D1 D0 EN1 Description Data bus line 7 (MSB) Data bus line 6 Data bus line 5 Data bus line 4 Data bus line 3 Data bus line 2 Data bus line 1 Data bus line 0 (LSB) Enable signal for row 0 and 1 (1stcontroller) 0 = Write to LCD module 1 = Read from LCD module 0 = Instruction input
54

Name VSS VCC VEE

Pin no. 10 R/W Pin no. 11 RS

1 = Data input Pin no. 12 VEE Contrast adjust Pin no. 13 VSS Power supply (GND) Pin no. 14 VCC Power supply (+5V) Pin no. 15 EN2 Enable signal for row 2 and 3 (2ndcontroller) Pin no. 16 NC Not Connected TABLE 4.1(b): Pin description Of LCD Display with controller 2 Usually these days you will find single controller LCD modules are used more in the market. So in the tutorial we will discuss more about the single controller LCD, the operation and everything else is same for the double controller too. Lets take a look at the basic information which is there in every LCD.

4.2 DDRAM - Display Data RAM


Display data RAM (DDRAM) stores display data represented in 8-bit character codes. Its extended capacity is 80 X 8 bits, or 80 characters. The area in display data ram (DDRAM) that is not used for display can be used as general data RAM. So whatever you send on the DDRAM is actually displayed on the LCD. For LCDs like 1x16, only 16 characters are visible, so whatever you write after 16 chars is written in DDRAM but is not visible to the user. Figures below will show you the DDRAM addresses of 1 Line, 2 Line and 4 Line LCDs.

Figure 4.2(a): DDRAM Address for 1 Line LCD

Figure 4.2(b) : DDRAM Address for 2 Line LCD

55

Figure 4.2(c): DDRAM Address for 4 Line LCD

4.3 CGROM - Character Generator ROM


Now you might be thinking that when you send an ascii value to DDRAM, how the character is displayed on LCD? so the answer is CGROM. The character generator ROM generates 5 x 8 dot or 5 x 10 dot character patterns from 8-bit character codes (see Figure 5 and Figure 6 for more details). It can generate 208 5 x 8 dot character patterns and 32 5 x 10 dot character patterns. User defined character patterns are also available by mask-programmed ROM.

As you can see in both the code maps, the character code from 0x00 to 0x07 is occupied by the CGRAM characters or the user defined characters. If user want to display the fourth custom character then the code to display it is 0x03 i.e. when user send 0x03 code to the LCD DDRAM then the fourth user created character will be displayed.

As clear from the name, CGRAM area is used to create custom characters in LCD. In the character generator RAM, the user can rewrite character patterns by program. For 5 x 8 dots, eight character patterns can be written, and for 5 x 10 dots, four character patterns can be written. Later in this tutorial i will explain how to use CGRAM area to make custom character and also making animations to give nice effects to your application.

56

Figure

4.3

(a)

LCD

characters

code

map

for

5x8

dots

Busy Flag is an status indicator flag for LCD. When we send a command or data to the LCD for processing, this flag is set (i.e BF =1) and as soon as the instruction is executed successfully this flag is cleared (BF = 0). This is helpful in producing and exact delay, To read Busy Flag, the condition RS = 0 and R/W = 1 must be met and The MSB of the LCD data bus (D7) act as busy flag. When BF = 1 means LCD is busy and will not accept next command or data and BF = 0 means LCD is ready for next.

There are two 8-bit registers in HD44780 controller Instruction and Data register. Instruction register corresponds to the register where you send commands to LCD e.g LCD shift command, LCD clear, LCD address etc. and Data register is used for

57

storing data which is to be displayed on LCD. when send the enable signal of the LCD is asserted, the data on the pins is latched in to the data register and data is then moved automatically to the DDRAM and hence is displayed on the LCD.

Figure 4.3(b) : LCD characters code map for 5x10 dots

Data Register is not only used for sending data to DDRAM but also for CGRAM, the address where you want to send the data, is decided by the instruction you send to LCD. We will discuss more on LCD instruction set further in this tutorial.

Only the instruction register (IR) and the data register (DR) of the LCD can be controlled by the MCU. Before starting the internal operation of the LCD, control information is temporarily stored into these registers to allow interfacing with various MCUs, which operate at different speeds, or various peripheral control devices. The
58

internal operation of the LCD is determined by signals sent from the MCU. These signals, which include register selection signal (RS), read/write signal (R/W), and the data bus (DB0 to DB7), make up the LCD instructions (Table 3). There are four categories of instructions that: Designate LCD functions, such as display format, data length, etc. Set internal RAM addresses Perform data transfer with internal RAM Perform miscellaneous functions

59

Table 4.3 (a) : Command and Instruction set for LCD type HD44780

Although looking at the table you can make your own commands and test them. Below is a brief list of commands which are used frequently while working on LCD.

No. 1 2 3 4 5 6 7 8 9 10 12 13 14 15 16 17

Instruction Hex Decimal Function Set: 8-bit, 1 Line, 5x7 Dots 0x30 48 Function Set: 8-bit, 2 Line, 5x7 Dots 0x38 56 Function Set: 4-bit, 1 Line, 5x7 Dots 0x20 32 Function Set: 4-bit, 2 Line, 5x7 Dots 0x28 40 Entry Mode 0x06 6 Display off cursor off (clearing display without clearing DDRAM 0x08 8 content) Display on Cursor on 0x0E 14 Display on Cursor off 0x0C 12 Display on Cursor blinking 0x0F 15 Shift entire display left 0x18 24 Shift entire display right 0x1C 30 Move cursor left by one character 0x10 16 Move cursor right by one character 0x14 20 Clear Display (also clear DDRAM content) 0x01 1 Set DDRAM address or coursor position on 0x80+add* 128+add* display Set CGRAM address or set pointer to CGRAM 0x40+add** 64+add** location Table 4.3 (b): Frequently used commands and instructions for LCD

DDRAM

address

given

in

LCD

basics

section

see

Figure

2,3,4

** CGRAM address from 0x00 to 0x3F, 0x00 to 0x07 for char1 and so on.

Before using the LCD for display purpose, LCD has to be initialized either by the internal reset circuit or sending set of commands to initialize the LCD. It is the user who has to decide whether an LCD has to be initialized by instructions or by internal reset circuit. we will discuss both ways of initialization one by one.

60

An internal reset circuit automatically initializes the HD44780U when the power is turned on. The following instructions are executed during the initialization. The busy flag (BF) is kept in the busy state until the initialization ends (BF = 1). The busy state lasts for 10 ms after VCC rises to 4.5 V.

As mentioned in the Note, there are certain conditions that has to be met, if user want to use initialization by internal reset circuit. These conditions are shown in the Table 5 below.

Table 4.3(c): Power Supply condition for Internal Reset circuit

Initializing LCD with instructions is really simple. Given below is a flowchart that describes the step to follow, to initialize the LCD.

Move data to LCD port select data register select write operation send enable signal wait for LCD to process the data

Now we are ready with sending data and sending command to LCD.

61

Figure 4.4(a) : Flow chart for LCD initialization

Reading data from the LCD is done in the same way, but control line R/W has to be high. When we send a high to the LCD, it will reset and wait for instructions. Typical instructions sent to LCD display after a reset are: turning on a display, turning on a cursor and writing characters from left to right. When the LCD is initialized, it is ready to continue receiving data or instructions. If it receives a character, it will write it on the display and move the cursor one space to the right. The Cursor marks the next location where a character will be written. When we want to write a string of characters, first we need to set up the starting address, and then send one character at a

62

time. Characters that can be shown on the display are stored in data display (DD) RAM. The size of DDRAM is 80 bytes.

Before we access DD RAM after defining a special character, the program must set the DD RAM address. Writing and reading data from any LCD memory is done from the last address which was set up using set-address instruction. Once the address of DD RAM is set, a new written character will be displayed at the appropriate place on the screen. Until now we discussed the operation of writing and reading to an LCD as if it were an ordinary memory. But this is not so. The LCD controller needs 40 to 120 microseconds (uS) for writing and reading. Other operations can take up to 5 mS. During that time, the microcontroller cannot access the LCD, so a program needs to know when the LCD is busy. We can solve this in two ways.

One way is to check the BUSY bit found on data line D7. This is not the best method because LCD's can get stuck, and program will then stay forever in a loop checking the BUSY bit. The other way is to introduce a delay in the program. The delay has to be long enough for the LCD to finish the operation in process. Instructions for writing to and reading from an LCD memory are shown in the previous table.

At the beginning we mentioned that we needed 11 I/O lines to communicate with an LCD. However, we can communicate with an LCD through a 4-bit data bus. Thus we can reduce the total number of communication lines to seven. The wiring for connection via a 4-bit data bus is shown in the diagram below. In this example we use an LCD display with 2x16 characters, labeled LM16X212 by Japanese maker SHARP. The message 'character' is written in the first row: and two special characters '~' and '}' are displayed. In the second row we have produced the word 'mikroElektronika'. When working with a microcontroller the numbers are presented in a binary form. As such, they cannot be displayed on a display. That's why it is necessary to change the numbers from a binary system into a decimal system so they can be easily understood. For printing the variables lcdbyte and lcdword we have used the macros digbyte and digword which convert the numbers from binary system into a decimal system and
63

print the result on LCD. Main program has the purpose of demonstrating use of LCD display. At the start it's necessary to declare variables LCDbuf, LCDtemp, Digtemp, Dig1, Dig2, and Dig3 used by the macros for LCD support. It is also necessary to state the port of microcontroller that LCD is connected to. Program initializes the LCD and demonstrates printing text and 8-bit variable temp.

64

5.ELECTROMECHANICAL RELAYS
A relay is a switch worked by an electromagnet. It is useful if we want a small current in one circuit to control another circuit containing a device such as a lamp or electric motor which requires a large current, or if we wish several different switch contacts to be operated simultaneously.

When the controlling current flows through the coil, the soft iron core is magnetized and attracts the L-shaped soft iron armature. This rocks on its pivot and opens, closes or changes over, the electrical contacts in the circuit being controlled it closes the contacts.

The current needed to operate a relay is called the pull-in current and the dropout current in the coil when the relay just stops working. If the coil resistance R of a relay is 185 and its operating voltage V is 12V, the pull-in current I is given by:

I = V/R = 12/185 = 65 mA

Relays are electromagnetic switches, which provides contact between two mechanical elements. Relays have a coil which works on 12V dc power supply and provides DPDT action as an output. In general relays provide potential free contacts which can be used for universal function like DC, AC voltage switching and to control bigger electrical switch gears.

The electromechanical relays are

based on the comparison between operating

torque/force and restraining torque/force. The VA burden of such relays are high.

The characteristics of these relays have some limitations. Each relay can perform only one protective function. Such relays are used for simple and less costly

protection purposes. For important and costly equipment installation static relays are preferred.
65

FIG 5(a): Relay schematic diagram

Protective relaying is necessary for almost every electrical plant and no part of the power system is left unprotected.

The choice of protection depends upon several aspects such as

# type and rating of the protected equipment. # its importance.

# location and cost.

# probable abnormal conditions between generators and final load points.

There are several electrical equipments and machines of various ratings. Each needs certain adequate protection .The protective relaying senses the abnormal conditions in a part of the power system and isolates that part from the healthy part of system.

The relays used in this project are compact, self-contained devices which respond to abnormal conditions (relays can distinguish normal and abnormal conditions).

66

The Relay driver Circuit Works as follows. A Relay is connected as shown in the figure 5(a).

Figure 5(a): Working Of Relay Circuit

The output of the controller decides Relay operation. The Relay works only if the Positive and the Ground is connected to the appropriate terminals of the relay coil. We control the relay by controlling the ground signal given to the relay using a transistor. The operation is as follows.

When the output of the controller is High, then the transistor conducts, allowing the low potential to reach one end of the relay, which results in switching of the relay form NC to NO.

When the output is Low, the transistor will not conduct. So ground is not applied to the relay Coil. So the relay remain in NC position.

Using this Normally open (NO) and Normally Closed (NC) contacts we can switch any supply AC or DC. The supply to the operated device should be given to the Common of the relay and the output from the NO is given to the Device. So that when the relay is switched on the device gets supply and works.
67

6.TESTING CIRCUIT
Basically, there are two methods of controlling the charging current: series regulation and parallel (shunt) regulation. A series regulator is inserted between the solar panel and the battery. The series type of regulation wastes a lot of energy while charging the battery as the control circuitry is always active and series regulator requires the input voltage to be 3-4 volts higher than the output voltage. The current and voltage output of a solar panel is governed by the angle of incidence of light, which keeps varying.

Parallel regulation, is preferred in solar field. In parallel regulation, the control circuitry allows the charging current (even in MA) to flow into the battery and stop the charging once the battery is fully charged. At, this stage, the charging current is wasted by converting into heat (current is passed through low value, high-wattage resister); this part of the regulation dissipate a lot of heat.

In this project, we have used parallel regulation but instead of wasting the charging current as heat, we have made it pulsed and applied to the battery to keep the battery topped-up. After power-on, the microcontrollers read the battery voltage with the help of the ADC and display the values on LCD. It monitors the input signal from the dusk-todawn sensor and activates the load or charging relay RL1 accordingly. The digital voltmeter works up to 20V. As Vref of the ADC is converted to Vcc (5V), the input voltage to the ADC connect exceed +5V. A potential divider is used at pin 2 of the ADC (IC2) using resisters R5, R6 & R7 to scale down the voltage from ADC output is multiplied four times and displayed on the LCD as battery voltage. When the solar panel voltage is present, the duck-to-down sensor provides a signal to the microcontroller, which the displays charging message on the LCD. During charging, the battery voltage is continuously monitored. When the voltage reaches 14.0V, the microcontroller interrupts the charging current by energizing the relay, which is connected to the MOSFET BS170 (T2) , and start a 5-minute times. During this stage, The LCD shows battery full.
68

After 5-minutes, the relay reconnects the panel to the battery. This way, the charging current is pulsed at the intervals of five minutes and the cycle repeats until the panel voltage is present.

FIG 6(a): solar charger testing schematic circuit

When the panel voltage falls below the zener diode (ZD1) voltage of the dusk-todawn sensor, the microcontroller senses this and activates the load by switching on MOSFET T3 via optocoupler IC3 and load on message is displayed. In this mode, the microcontroller monitors for low battery. When the battery voltage drops below 10 volts, the microcontroller turns off the load by switching off MOSFET T3 and Battery Low-Load Off message is displayed. Normally, when the load is switched off, the battery voltage tends to rise back and the load oscillates between on and off states. To avoid this, the microcontroller employs a hysteresis control by intering into a lock mode during low-battery state and comes out of the lock mode when the duck-to-dawn sensor receives the panel

69

voltage (the next morning). During lock mode, the microcontroller keeps converting the ADC value and displays the battery voltage on the LCD.

6.1 SOURCE CODE

1. 2.

Click on the Keil uVision Icon on DeskTop The following fig will appear

FIG: 6.1 (a): Keil Dumping Software Program Window

3. 4.

Click on the Project menu from the title bar Then Click on New Project

70

5.

Save the Project by typing suitable project name with no extension in u r own folder sited in either C:\ or D:\

6. 7. 8.

Then Click on Save button above. Select the component for u r project. i.e. Atmel Click on the + Symbol beside of Atmel

71

9.

Select AT89C51 as shown below

10. 11.

Then Click on OK The Following fig will appear

72

12. 13. 14.

Then Click either YES or NOmostly NO Now your project is ready to USE Now double click on the Target1, you would get another option Source group 1 as shown in next page.

15.

Click on the file option from menu bar and select new

73

16.

The next screen will be as shown in next page, and just maximize it by double clicking on its blue boarder.

17. 18.

Now start writing program in either in C or ASM For a program written in Assembly, then save it with extension . asm and for C based program save it with extension .C

74

19.

Now right click on Source group 1 and click on Add files to Group Source

20.

Now you will get another window, on which by default C files will appear.

75

21. 22. 23.

Now select as per your file extension given while saving the file Click only one time on option ADD Now Press function key F7 to compile. Any error will appear if so happen.

24. 25.

If the file contains no error, then press Control+F5 simultaneously. The new window is as follows

76

26. 27.

Then Click OK Now Click on the Peripherals from menu bar, and check your required port as shown in fig below

28.

Drag the port a side and click in the program file.

77

29. 30.

Now keep Pressing function key F11 slowly and observe. You are running your program successfully

6.2 Program Used In PIC16F877

// With LCD Display #include <pic.h> #include <math.h> #include <stdlib.h> #include <stdio.h> #include <delay4.c> #include <lcdportd.h> #defineRelay RC0 int Printval; char Ostr[5]; float Volt,Volt1; void main() { TRISA = 0xff; TRISB = 0xff; TRISC = 0x80; TRISD = 0x00; TRISE = 0x00;
78

ADCON0 = 0x81; ADCON1 = 0x82; PORTD = 0x00; PORTE = 0x00; LCD_init(); DelayMs(200); LCD_SendCmd(0x80); Relay = 0; do { ADCON0 = 0x81; DelayUs(50); ADGO = 1; while(ADGO) continue; Volt = (float)((ADRESH * 256)+ADRESL); Volt = Volt / 101.0; LCD_SendCmd(0x80); LCD_puts("SV:"); sprintf(Ostr,"%3d",(int)(Volt * 10)); LCD_SendData(Ostr[0]); LCD_SendData(Ostr[1]); LCD_SendData('.'); LCD_SendData(Ostr[2]); LCD_SendData('V'); ADCON0 = 0x89; DelayUs(50); ADGO = 1; while(ADGO) continue; Volt1 = (float)((ADRESH * 256)+ADRESL); Volt1 = Volt1 / 102.0; LCD_SendCmd(0xc0); LCD_puts("BV:"); sprintf(Ostr,"%3d",(int)(Volt1 * 10)); LCD_SendData(Ostr[0]); LCD_SendData(Ostr[1]); LCD_SendData('.'); LCD_SendData(Ostr[2]); LCD_SendData('V'); LCD_SendCmd(0x89); if(Volt > 6.0) { Relay = 1; LCD_puts("Chrgng "); } else { Relay = 0; LCD_puts("Nt Chrg"); } LCD_SendCmd(0xc9);
79

if(Volt1 < 4.0) { LCD_puts("Lo Volt"); } else { LCD_puts("Volt OK"); } DelayMs(200); }while(1); }

80

7.CONCLUSION
In future, India will have to depend on renewable energy. The only source available around us is sunlight, and we can easily convert sunlight energy into electrical energy by using PV cells to meet our requirement.

Presently, solar systems are developing 2%. By the end of 2010, the growth rate may increase to 7%.

However to extend use of solar power energy to industrial and commercial areas, the price of PV cells need to be brought down through low-cost manufacturing techniques.

By using the solar energy power generation technology the usage of non-conventional resources can be minimized which not only reduces the resource extinction but helps widely in reducing the environmental pollution. By Generating Power Through Solar Energy The Cost Of Electricity Can Be Minimized And Occasionally Can Be Provided With Free Of Cost. Electricity Can Be Supplied Even To Remote Areas With Out The usage Of Transmission Lines. The key point is "Start Using Solar Power And Save Earth From Destruction"

81

8.REFERENCES
Solar Electricity Engineering of Photovoltaic System by Lorezo E. Solar Energy by Maxwell J.F & McGown J.G System Identification by Solderstron T. & Stoica P. Power Electronics by Bhimbra P.S Electronics and Circuits - by Allen Mottershead Basic Electronics by Miami A.K www.electronicsforu.com www.wikipedia.com
www.atmel.com

82

You might also like