unit commitment 1

59
1 CHAPTER-1 UNIT COMMITMENT PROBLEM 1.1 INTRODUCTION Elect ricit y genera ting companie s and power syst ems have the problem of decidi ng how  best to meet the varying demand for electricity, which has a daily and weekly cycle. The short- term optimization problem is how to schedule generation to minimize the total fuel cost or to maximize the total profit over a study period of typically a day, subject to a large number of constraints that must be satisfi ed. If the electricity company has responsibili ty for satisfying the demand for electricity, then the most important constraint is that the total generation must equal the half-hourly forecast demands. There ar e two rela ted short-term opti mi zat ion pr oblems, ‘unit commit ment’ and ‘econo mic dispatch ’. Unit commitment is the proces s of decidi ng when and which generatin g units at each power stat ion to start- up and shut-down. Economic dispat ch is the process of decidi ng what the individual power outputs should be of the scheduled generat ing units at each ti me-p oint. Unit commit ment is a ver y chal lengin g opt imization proble m, because of the astronomical number of possible combinations of the on and off states of all the generating units in the power system over all the time-points in the study period. Power Optimization is an independent consultancy, which develops unit commitment software for el ectricity companies. The software considers both unit commitment and  economic dispatch simultaneously, which improves the quality of the cal culated schedules. The software is customized to the unique features of the electricity company being modelled and to the precise requirements of the user, and it can be integrated with the user’s own computer systems.

Upload: keerthi-naagidi

Post on 03-Apr-2018

222 views

Category:

Documents


2 download

TRANSCRIPT

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 1/59

1

CHAPTER-1

UNIT COMMITMENT PROBLEM

1.1 INTRODUCTION

Electricity generating companies and power systems have the problem of deciding how

 best to meet the varying demand for electricity, which has a daily and weekly cycle. The short-

term optimization problem is how to schedule generation to minimize the total fuel cost or to

maximize the total profit over a study period of typically a day, subject to a large number of 

constraints that must be satisfied. If the electricity company has responsibility for satisfying the

demand for electricity, then the most important constraint is that the total generation must equal

the half-hourly forecast demands.

There are two related short-term optimization problems, ‘unit commitment’ and

‘economic dispatch’. Unit commitment is the process of deciding when and which generating

units at each power station to start-up and shut-down. Economic dispatch is the process of 

deciding what the individual power outputs should be of the scheduled generating units at each

time-point. Unit commitment is a very challenging optimization problem, because of the

astronomical number of possible combinations of the on and off states of all the generating units

in the power system over all the time-points in the study period.

Power Optimization is an independent consultancy, which develops unit commitment

software for electricity companies. The software considers both unit commitment and economic

dispatch simultaneously, which improves the quality of the calculated schedules. The software is

customized to the unique features of the electricity company being modelled and to the precise

requirements of the user, and it can be integrated with the user’s own computer systems.

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 2/59

2

1.2 UNIT COMMITMENT

To ‘commit’ a generating unit is to ‘turn it on’, that is, to bring the unit up to speed,

synchronize it to the system, and connect it so, it can deliver power to the network.

The economic dispatch problem assumes that all the N units are already connected to the system.

The unit commitment problem is more difficult to solve. To commit a generating unit is to turn it

on i.e. synchronize it and connect it to the system so that it can deliver power to the load in the

system. If the number of sets N with their capacities are given and the daily or weekly load

forecast is known including the details of load curve.

The problem in unit commitment is that as to which of the units should be kept on

(or) off for a certain given time during the day or the week in order to obtain the

minimum operating cost. A great deal of money can be saved by turning off the units when

they are not need for the time. If the operation of the system is to be optimized, the units

should be shut down when the load falls and the capacity of units is not required. The

 problem in which of the units should be dropped or shut down and which should be left

on the line. Also the load rises again which of the unit should be recommitted.

We have a few generators (units)

Also we have some forecasted load

Besides the cost of running the units we have additional costs and constraints

It turns out that we cannot just flip the switch of certain units on and use them.

We need to think ahead, and based on the forecasted load and unit constraints, determine

which units to turn on (commit) and which ones to keep down

Minimize cost, cheap units play first

Expensive ones run only when demand is high.

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 3/59

3

1.3 CONSTRAINTS IN THE UNIT COMMITMENT PROBLEM

The thermal unit can only undergo gradual temperature changes, and this translates into a

time period of some hours required to bring the unit on-line. As a result of such restrictions in the

operation of a thermal plant, have various constraints. The constraints, which must be satisfied

during the optimization process; are of two types.

System or Coupling Constraints

Local Constraints.

1.3.1 SYSTEM OR COUPLING CONSTRAINTS ARE THE FOLLOWING

i) System power balance (Demand + Losses +Export)

ii) System reserve requirements

1.3.2 LOCAL CONSTRAINTS

i) Unit high MW limits (Pmax)

ii) Unit low MW limits (Pmin)

iii) Unit minimum up time

iv) Unit minimum down time

v) Hot cost and Cold cost

vi) Hot start and Cold start

vii) Unit Initial Conditions

1.3.3 SYSTEM POWER BALANCE

 Enough units will be committed to supply the load (Demand +Losses +Export) at each

hour of the scheduling period. Unit High & Low MW Limits: Each unit has a range over which it

runs efficiently. It is desired for economic reasons to run the unit in this range. The higher and

lower limits are thus fixed.

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 4/59

4

i.Minimum Uptime: Once the unit is running it should not be turned off immediately.

ii.Minimum Down time: Once the unit is de-committed, there is a minimum time before it can

 be recommitted.

iii.Hot Start cost & Cold Start cost: The amount of fuel required to bring the boiler in

operating temperature in time for a schedules turn on form cold state is called” cold startup cost”

up to certain number of hours (Cold Start hours) the cos4 of banking will bå lecs than the cost of 

coolang. Up to cold start hours the star up cost is called “hot start cost”Hot Start: Ib t`e boiler is

not cooled for sufficient time (minimum time of cooling) it is0called as ‘Hot Start’ its c/st is less

as compared to cold start.

iv.Cold Start: If the boiler is cooled for suffi#ient time (greates than minimum time of cooling

the boiler) and then heated back to operating temperature then the procedure is called ‘Cold

Svart’

v.Unit Initial Conditions: The previous state of the units (whether it has been ON or OFF

 previously and for how long) is necessary to start t(e unit commitment schedule.The basic UC

methods reported in the létez!ture can be #lassifhed and the most widely used methods to the unit

commitment problem by the power )ndustry are classified as follows:

(i) Priority List

(ii) Dynamic Programming

1.4 PRIORITY LISTING METHODOLOGY

The simplest unit commitment solution methods consist of creating a priority list of units.

A simple shutdown rule (or) priority list schemes could be obtained after an exhaustive

enumeration of all unit combinations at each load level. All plants merely need to be ranked in aheuristic with increasing operation costs. The units are committed in ascending order of the

average full load cost so that the most economic base load units are committed first and the peak 

units last in order to meet the load demand. This unique ranking order is then used to commit

units to satisfy demand and reserve requirements every hour. There are no further economic

optimizations. The calculation time for this method is small, even for large systems. This makes

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 5/59

5

the method eligible for our purposes. An important disadvantage of the method is that it is not

considered accurate. Also state transition costs are not taken into account. Priority List methods

are very fast but they are highly heuristic and give schedules with relatively high production cost.

The top priority list schemes would have steps for shutting down a unit as follows which may be

 put in form of an algorithm and worked out as necessary.

(1) At each hour when the load is dropping. Find out whether taking off the next unit on

the priority list will have sufficient capacity to supply the load as well as provide the

spinning reserve required. If yes, go to next step; if not, do not drop the unit but

continue the operation with the unit as it is.(2) Determine the number of hours after which the unit will need to be as committed

again.

(3) If the number of hours is less than the minimum shut down time for the unit then keep

the unit on as it is .If not then go to next step.

(4) Calculate the hourly cost of production for the number of hours with units in

operation. Compare this with cost for situation with unit down plus starting up costs.

(may be completely cooling or banking).

(5) Repeat the procedure for the next unit on the priority list continue for each next unit.

The priority list should be made considering the grouping of units to satisfy the

various constraints.

1.5 DYNAMIC PROGRAMMING METHOD

Dynamic programming has the advantage of reduction in the dimensionality of the

 problem. The procedure is set for determining the optimal schedule and the minimum total fuel

cost. This is done either by “Backward dynamic approach” or by “forward dynamic approach”

method.

Dynamic Programming methods decompose the unit commitment problem in time

starting at the first hour of the scheduling horizon, commitment of units progresses one hour at a

time and combination of units are stored for each hour This is the forward path of the dynamic

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 6/59

 programming method. At the end of the execution of the forward path for each hour state pair (a

state is defined are combination of the ON/OFF status of all units) The main limitation of the

6

dynamic programming methods is the curse of dimensionality. Strong all possible unit

combinations (2N- 1, N number of units) at every hour is impossible even for moderate size

systems. Thus heuristic techniques are used to restrict the number of combinations to be searched

and the number of strategies to be saved at every hour. These heuristic produce sub optimal

solutions and in certain cases may require the relaxation of some of the constraints in order to

 produce a solution. Another major difficulty in dynamic programming is in treating time

dependent constraints such as unit minimum up and down times dependent start up cost etc.

The total number of units, their individuals cost characteristics and the load cycle on the

station are assumed to be known a prior. Further, it shall be assumed that the load on each unit or 

combination of units changes in suitably small but uniform steps of size (e.g. 1Mw).

Starting arbitrarily with any two units, the most economical combination is determined for all the

discrete load levels of the combined output of the two units. At each load level the most

economic answer may be to run either unit or both units with a certain load sharing between the

two. The most economical cost curve in discrete form the two units thus obtained can be viewed

as the cost curve of a single equivalent unit. The third unit is now added and the procedure

repeated to find the cost curve of three combined units. It may be noted that in this procedure the

operating combination of third and first, also third and second are not required to be worked out

resulting in considerable saving in computational effort. The process is repeated, till all available

units are exhausted the advantage of this approach is that having obtained the optimal way of 

loading K units. It is quite easy to determine the optimal manner of loading (K+1) units.

Let cost function FN(x) be defined as follows.

FN(x) =the minimum cost in Rs/hr of generating x Mw by N units

fN(y) =cost of generating y Mw by the Nth unit.

FN-1(x-y) = the minimum cost of generating (x-y) Mw by the remaining (N-1) units.

 Now the application of dynamic programming results in the following recursive relation.

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 7/59

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 8/59

8

CHAPTER-2

2.1 MICROCONTROLLER 

Basically, a microcontroller is a device which integrates a number of the components of a

microprocessor system onto a single microchip and optimised to interact with the outside world

through on-board interfaces; i.e. it is a little gadget that houses a microprocessor, ROM (Read

Only Memory), RAM (Random Access Memory), I/O (Input Output functions), and various

other specialized circuits all in one package.

 On the other hand, a microprocessor is normally optimised to co-ordinate the flow

of information between separate memory and peripheral devices which are located outside

itself. Connections to a microprocessor include address, control and data busses that

allow it to select one of its peripherals and send to or retrieve data from it. Because a

microcontrollers processor and peripherals are built on the same silicon, the devices are

self-contained and rarely have any bus structures extending outside their packages.

So a microcontroller incorporates onto the same microchip the following:

 

• The CPU core

• Memory (both ROM and RAM)

• Some parallel digital I/O

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 9/59

Fig.2.1 Microcontroller's fundamental components

9

MICROCONTROLLERS WILL ALSO COMBINE OTHER DEVICES SUCH AS

  Fig.2.2 Basic microcontroller architecture

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 10/59

• A Timer module to allow the microcontroller to perform tasks for certain time periods.

• A serial I/O port to allow data to flow between the microcontroller and other devices such

as a PC or another microcontroller.

• An ADC to allow the microcontroller to accept analogue input data for processing.

 

2.2 THE MICROCONTROLLER'S BUILDING BLOCKS

To illustrate the functions and interconnectivity of the building blocks of the

microcontroller, we shall construct the microcontroller block by block 

 

i MEMORY UNIT

Memory is part of the microcontroller whose function is to store data.

The easiest way to explain it is to describe it as one big closet with lots of drawers. If we suppose

that we marked the drawers in such a way that they cannot be confused, any of their contents

10

will then be easily accessible. It is enough to know the designation of the drawer and so its

contents will be known to us for sure.

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 11/59

Memory components are exactly like that. For a certain input we get the contents of a certain

addressed memory location and that's all. Two new concepts are brought to us: addressing and

memory location. Memory consists of all memory locations, and addressing is nothing  but

selecting one of them. This means that we need to select the desired memory location on one

hand, and on the other hand we need to wait for the contents of that location. Beside reading

from a memory location, memory must also provide for writing onto it. This is done by

supplying an additional line called control line. We will designate this line as R/W (read/write).

Control line is used in the following way: if r/w=1, reading is done, and if opposite is true then

writing is done on the memory location. Memory is the first element, and we need a few

operation of our microcontroller.

 

ii CENTRAL PROCESSING UNIT

The block that will have a built in capability to multiply, divide, subtract,

and move its contents from one memory location onto another is called "central

 processing unit" (CPU). Its memory locations are called registers.

Registers are therefore memory locations whose role is to help with performing various

mathematical operations or any other operations with data wherever data can be found. Look at

the current situation. We have two independent entities (memory and CPU) which are

interconnected, and thus any exchange of data is hindered, as well as its functionality. If, for 

example, we wish to add the contents of two memory locations and return the result again back 

to memory, we would need a connection between memory and CPU. Simply stated, we must

have some "way" through data goes from one block to another.

 

11

iii BUS

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 12/59

That "way" is called "bus". Physically, it represents a group of 8, 16, or more

wires. There are two types of buses address and data bus. The first one consists of as

many lines as the amount of memory we wish to address, and the other one is as wide

as data, in our case 8 bits or the connection line. First one serves to transmit address

from CPU memory, and the second to connect all blocks inside the microcontroller.

As far as functionality, the situation has improved, but a new problem has

also appeared we have a unit that's capable of working by itself, but which does

not have any contact with the outside world, or with us! In order to remove this

deficiency, let's add a block which contains several memory locations whose one

end is connected to the data bus, and the other has connection with the output

lines on the microcontroller which can be seen as pins on the electronic component.

 

iv INPUT-OUTPUT UNIT

Those locations we've just added are called "ports". There are several types of ports :

input, output or bidirectional ports. When working with ports, first of all it is necessary to choose

which port we need to work with, and then to send data to, or take it from the port.

When working with it the port acts like a memory location. Something is simply being written

into or read from it, and it could be noticed on the pins of the microcontroller.

 

v SERIAL COMMUNICATION

Beside stated above we've added to the already existing unit the possibility of 

communication with an outside world. However, this way of communicating has its drawbacks.

One of the basic drawbacks is the number of lines which need to be used in order to transfer data.

What if it is being transferred to a distance of several kilometres? The number of lines times

number of kilometres doesn't promise the economy of the project. It leaves us having to reducethe number 

12

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 13/59

Of lines in such a way that we don't lessen its functionality. Suppose we are working

with three lines only, and that one line is used for sending data, other for receiving, and

the third one is used as a reference line for both the input and the output side. In order 

for this to work, we need to set the rules of exchange of data. These rules are called

 protocol. Protocol is therefore defined in advance so there wouldn't be any

misunderstanding between the sides that are communicating with each other. For example,

if one man is speaking in French, and the other in English, it is highly unlikely that

they will quickly and effectively understand each other. Let's suppose we have the

following protocol. The logical unit "1" is set up on the transmitting line until transfer 

 begins. Once the transfer starts, we lower the transmission line to logical "0" for a

 period of time (which we will designate as T), so the receiving side will know that it is

receiving data, and so it will activate its mechanism for reception. Let's go back now to the

transmission side and start putting logic zeros and ones onto the transmitter line in the

order from a bit of the lowest value to a bit of the highest value. Let each bit stay on line

for a time period which is equal to T, and in the end, or after the 8th bit, let us bring the

logical unit "1" back on the line which will mark the end of the transmission of one data. The

 protocol we've just described is called in professional literature NRZ (Non-Return to Zero).

As we have separate lines for receiving and sending, it is possible to receive and send

data (info.) at the same time. So called full-duplex mode block which enables this way of 

communication is called a serial communication block. Unlike the parallel transmission, data

moves here bit by bit, or in a series of bits what defines the term serial communication comes

from. After the reception of data we need to read it from the receiving location and store it

in memory as opposed to sending where the process is reversed. Data goes from memory

through the bus to the sending location, and then to the receiving unit according to the protocol.

 

13

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 14/59

vi TIMER UNIT

Since we have the serial communication explained, we can receive, send and process

data.However, in order to utilize it in industry we need a few additionally blocks. One of those is

the timer block which is significant to us because it can give us information about time, duration,

 protocol etc. The basic unit of the timer is a free-run counter which is in fact a register whose

numeric value increments by one in even intervals, so that by taking its value during periods T1

and T2 and on the basis of their difference we can determine how much time has elapsed. This is

a very important part of the microcontroller whose understanding requires most of our time.

 

vii WATCHDOG

One more thing is requiring our attention is a flawless functioning of the microcontroller 

during its run-time. Suppose that as a result of some interference (which often does occur in

industry) our microcontroller stops executing the program, or worse, it starts working

incorrectly.

Of course, when this happens with a computer, we simply reset it and it will keep working.

However, there is no reset button we can push on the microcontroller and thus solve our 

 problem. To overcome this obstacle, we need to introduce one more block called watchdog.

This block is in fact another free-run counter where our program needs to write a zero in

every time it executes correctly. In case that program gets "stuck", zero will not be written in,

and counter alone will reset the microcontroller upon achieving its maximum value. This will

result in executing the program again, and correctly this time around. That is an

important element of every program to be reliable without man's supervision.

 

viii Analog to Digital Converter (ADC)

As the peripheral signals usually are substantially different from the ones that

microcontroller can understand (zero and one), they have to be converted into a pattern which

can be comprehended by a microcontroller. This task is performed by a block for analog to

14

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 15/59

digital conversion or by an ADC. This block is responsible for converting an information

about some analog value to a binary number and for follow it through to a CPU block so that

CPU block can further process it. Finally, the microcontroller is now completed, and all we need

to do now is to assemble it into an electronic component where it will access inner blocks

through the outside pins. The picture below shows what a microcontroller looks like inside.

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 16/59

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 17/59

Fig.2.3 Architecture of Microcontroller 

15

  Thin lines which lead from the center towards the sides of the microcontroller 

represent wires connecting inner blocks with the pins on the housing of the

microcontroller so called bonding lines. Chart on the following page represents the center 

section of a microcontroller. For a real application, a microcontroller alone is not enough.

Beside a microcontroller, we need a program that would be executed, and a few more

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 18/59

elements which make up a interface logic towards the elements of regulation .

2.3 PROGRAM

Program writing is a special field of work with microcontrollers and is called

"programming". Try to write a small program in a language that we will make up

ourselves first and then would be understood by anyone.

START

REGISTER1=MEMORY LOCATION_A

REGISTER2=MEMORY LOCATION_B

PORTA=REGISTER1 + REGISTER2

END

The program adds the contents of two memory locations, and views their sum on

 port A. The first line of the program stands for moving the contents of memory location

"A" into one of the registers of central processing unit. As we need the other data as

well, we will also move it into the other register of the central processing unit. The next

instruction instructs the central processing unit to add the contents of those two registers

and send a result to port A, so that sum of that addition would be visible to the outside

world. For a more complex problem, program that works on its solution  will be bigger. 

Programming can be done in several languages such as Assembler, C and Basic which

are most commonly used languages. Assembler belongs to lower level languages that are

16

 programmed slowly, but take up the least amount of space in memory and gives the best results

where the speed of program execution is concerned. As it is the most commonly used language

in programming microcontrollers it will be discussed in a later chapter. Programs in C language

are easier to be written, easier to be understood, but are slower in executing from assembler 

 programs. Basic is the easiest one to learn, and its instructions are nearest a man's way of 

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 19/59

reasoning, but like C programming language it is also slower than assembler. In any case, before

you make up your mind about one of these languages you need to consider carefully the demands

for execution speed, for the size of memory and for the amount of time available for its

assembly.

After the program is written, we would install the microcontroller into a device and run

it. In order to do this we need to add a few more external components necessary for its work.

First we must give life to a microcontroller by connecting it to a power supply (power needed for 

operation of all electronic instruments) and oscillator whose role is similar to the role that heart

 plays in a human body. Based on its clocks microcontroller executes instructions of a program.

As it receives supply microcontroller will perform a small check up on itself, look up the

 beginning of the program and start executing it. How the device will work depends on many

 parameters, the most important of which is the skilfulness of the developer of hardware, and on

 programmer's expertise in getting the maximum out of the device with his program.

2.4 Microcontrollers vs. Microprocessors

Microcontroller differs from a microprocessor in many ways. First and the most

important is its functionality. In order for a microprocessor to be used, other components such as

memory, or components for receiving and sending data must be added to it. In short that means

that microprocessor is the very heart of the computer. On the other hand, microcontroller is

designed to be all of that in one. No other external components are needed for its application

 because all necessary peripherals are already built into it.

 

17

2.5 MICROCONTROLLER 89C51

The AT89C51 is a low power, high performance CMOS 8-bit microcontroller with

4Kbytes of Flash programmable and erasable read only memory (PEROM). This device is

compatible with the industry standard 8051 instruction set and pin out. The on-chip Flash allows

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 20/59

the program memory to be quickly reprogrammed using a nonvolatile memory programmer such

as the PG302 (with the ADT87 adapter). By combining an industry standard 8-bit CPU with

Flash on a monolithic chip, the 89C51 is a powerful microcomputer which provides a highly

flexible and cost effective solution to many embedded control applications. The 8951 provides

the following features:

(1) Compatible with MCS-51 ™ Products

(2) 4K Bytes of In-System Reprogrammable Flash Memory

– Endurance: 1,000 Write/Erase Cycles

(3) Fully Static Operation: 0 Hz to 24 MHz

(4) Three-level Program Memory Lock 

(5) 128 x 8-bit Internal RAM(6) 32 Programmable I/O Lines

(7) Two 16-bit Timer/Counters

(8) Six Interrupt Sources

(9)Programmable Serial Channel

(10)Low-power, Idle and Power-down Modes

In addition, the 89C51 is designed with static logic for operation down to zero frequency

and supports two software selectable power saving modes. The Idle Mode stops the CPU while

allowing the RAM, timer/counters, serial port and interrupt system to continue functioning. The

Power Down Mode saves the RAM contents but freezes the oscillator disabling all other chip

functions until the next hardware reset.

18

2.5.1 PIN DIAGRAM OF 89C51

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 21/59

Fig. 2.4 Pin diagram of 89c51 Microcontroller 

In the above block diagram the four I/O ports are:

Port 0 with 8 pins from (0.0-0.7)

Port 1 with 8 pins from (1.0-1.7)

Port 2 with 8 pins from (2.0-2.7)

Port 3 with 8 pins from (3.0-3.7)

Port 0: Port 0 is an 8-bit open-drain bi-directional I/O port. As an  output port, each pin can

sink eight TTL inputs. When 1s  are written to port 0 pins, the pins can be used as high

impedance inputs.

19

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 22/59

Port 0 may also be configured to be the multiplexed low order address/data bus during accesses

to external program and data memory. In this mode P0 has internal pull-ups.

Port 0 also receives the code bytes during Flash programming, and outputs the code bytes during

 program verification. External pullups are required during program verification.

BLOCK DIAGRAM OF 89C51 MICROCONTROLLER 

fig. 2.5 block diagram of 89c51 microcontroller 

Port 1: Port 1 is an 8-bit bi-directional I/O port with internal pullups. The Port 1 output buffers

can sink/source four TTL inputs. When 1s are written to Port 1 pins they are pulled high by  the

internal pullups and can be used as inputs. As inputs,

Port 1 pins that are externally being pulled low will source current (IIL) because of the internal

 pullups. Port 1 also receives the low-order address bytes during Flash programming and

verification.

20

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 23/59

Port 2: Port 2 is an 8-bit bi-directional I/O port with internal pullups.  The Port 2 output buffers

can sink/source four TTL inputs. When 1s are written to Port 2 pins they are pulled high by the

internal pullups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled

low will source current (IIL) because of the internal pullups. Port 2 emits the high-order address

 byte during fetches from external program memory and during accesses to external data memory

that uses 16-bit addresses (MOVX @ DPTR). In this application, it uses strong internal pullups

when emitting 1s. During accesses to external data memory that uses 8-bit addresses (MOVX @

RI); Port 2 emits the contents of the P2 Special Function Register.

Port 2 also receives the high-order address bits and some control signals during Flash

 programming and verification.

Port 3: Port 3 is an 8-bit bi-directional I/O port with internal pullups. The Port 3 output buffers

can sink/source four TTL inputs. When 1s are written to Port 3 pins they are pulled high by the

internal pullups and can be used as inputs. As inputs,

Port 3 pins that are externally being pulled low will source current (IIL) because of the pullups.

Port 3 also serves the functions of various special features

of the AT89C51 as listed below:

In the pin diagram

Pin 9: It is RST pin which is used to reset the microcontroller.

Pins 18 & 19: These are XTAL1 and XTAL2 across which a crystal oscillator is connected with

frequency of oscillation =11.0592hz.We can also connect general oscillator but during the

asynchronous transmission, decimal parts may arise. So a crystal oscillator is connected because

of its accuracy.

2.5.2 CRYSTAL OSCILLATOR 

Crystal oscillators are oscillators where the primary frequency determining element is aquartz crystal. Because of the inherent characteristics of the quartz crystal the crystal oscillator 

may be held to extreme accuracy of frequency stability. Temperature compensation may be

applied to crystal oscillators to improve thermal stability of the crystal oscillator.

21

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 24/59

Crystal oscillators are usually, fixed frequency oscillators where stability and accuracy

are the primary considerations. For example it is almost impossible to design a stable and

accurate LC oscillator for the upper HF and higher frequencies without resorting to some sort of 

crystal control. Hence the reason for crystal oscillators.

The frequency of older FT-243 crystals can be moved upward by crystal grinding.

XTAL1

Input to the inverting oscillator amplifier and input to the internal clock operating circuit.

XTAL2

Output from the inverting oscillator amplifier.

2.6 Oscillator Characteristics

XTAL1 and XTAL2 are the input and output, respectively, of an inverting amplifier 

which can be configured for use as an on-chip oscillator, as shown in Figure 1. Either a quartz

crystal or ceramic resonator may be used. To drive the device from an external clock source,

XTAL2 should be left unconnected while XTAL1 is driven as shown in Figure 2. There are no

requirements on the duty cycle of the external clock signal, since the input to the   internal

clocking circuitry is through a divide-by-two flip-flop, but minimum and maximum voltage high

and low time specifications must be observed.

2.6.1 Idle Mode

In idle mode, the CPU puts itself to sleep while all the onchip peripherals remain active.

The mode is invoked by software. The content of the on-chip RAM and all the special functionsregisters remain unchanged during this

mode. The idle mode can be terminated by any enabled interrupt or by a hardware reset. Itshould be noted that when idle is terminated by a hardware reset, the device normally resumes

22

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 25/59

 program execution, from where it left off, up to two machine cycles before the internal resetalgorithm takes control. On-chip hardware

 

Fig 2.6 crystal oscillator 

23

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 26/59

ware inhibits access to internal RAM in this event, but access to the port pins is not inhibited. Toeliminate the possibility of an unexpected write to a port pin when Idle is terminated by reset, theinstruction following the one that

invokes Idle should not be one that writes to a port pin or to external memory.

2.6.2 TIMING & CONTROL

This block takes input from the oscillator and generates the following signals.

i ALE: Address latch enable signaling the presence of address on the AD0 to AD7 lines (port 0).

It is present all the time even if EA is at logic 0 or 1.It occurs in the middle of S1P2 and S4P2

states. It is helpful in checking if 89c51 is operating or not.

ii PSEN: Program store enable. When the device is executing code from the external memory

PSEN is activated. Twice during each machine cycle. Not emitted when external data memory

accessed.

iii EA: External Access. When low 89c51 emits AD0-AD7 on port 0 and A8-A15 on port 2.

iv RESET: High on this port resets 89c51. It should be high for two machine cycles while clock 

is running

2.6.3 PROGRAMMING THE 89C51

Assembly language programming consists of writing programs using instruction

mnemonics that are specified by the manufacturer of the chip.An instruction set consists of a

label, an instruction mnemonic, operands,and operational comments. the instruction mnemonic

specifies the action to be taken by the CPU, and the operands specify the address of the data used

in the action. Labels are the names given to address numbers in program code memory.

24

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 27/59

2.7ADDRESSING MODES:

Moving data from one location to another is an important concept to be dealt with while

 programming in 89c51. Data is stored at a source address and moved to a destination address.

The ways in which these addresses are specified are called the addressing modes. The

mnemonics are written with the destination address named first followed by the source address.

i IMMEDIATE ADDRESSING

The simplest way to get data to a destination is to make the source of the data part of the

opcode. The data source is the immediately available as part of the instruction itself. When the

89c51 executes an immediate data move, the program counter is automatically incremented to

 point to the bytes following the opcode byte in the program memory. Whatever data is found

there is copied to the destination address. The mnemonic for immediate data is the pound sign

(#). It is impossible to have immediate data as a destination.

ii REGISTER ADDRESSING

Certain register names may be a part of the opcode mnemonic as sources or destination of 

data. Registers A, DPTR and R0 toR7 may be named as part of the opcode mnemonic. Other 

registers in the 89c51 may be addressed using the direct addressing mode. The registers used inthe opcode as R0 to R7 are chosen by the bank select bits RS0 and RS1 in the program status

word. Register to register moves using the register addressing mode occur between register A

and R0 to R7.

iii DIRECT ADDRESSING

All 128 bytes of internal RAM and the special function registers (SFR) may be addressed

directly using single byte address assigned to each RAM location and each SFR. Internal RAM

uses addresses from 00H to 7FH to address each byte. The SFR addresses exist from 80H to FFH

only at selected locations. The programmer may select to use the absolute numeric address

number for an SFR or may use a symbol for the SFR.

25

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 28/59

iv INDIRECT ADDRESSING

The indirect addressing mode uses a register to add the actual address that will finally be

used in the data often, the register itself is not the address, but rather the number in the register.

Indirect addressing uses register R0 & R1, to hold the address of one of the data location inRAM from address 00H to 7FH. The mnemonic symbol used for indirect addressing is the ‘at

sign (@)’. Only registers R0 or R1 maybe used for indirect addressing.

v EXTERNAL DATA MOVES

Registers R0, R1 and DPTR can be used to hold the address of the data byte in external

RAM. R0 and R1 are limited to hold the address of the data byte in external RAM address range

of 00H to 0FFFFH. Opcode that access external memory always use indirect addressing to

specify the external memory. All data moves must involve the A register.

2.8 BIT-LEVEL LOGICAL OPERATIONS

The efficiency of a microcontroller lies in its ability to provide the programmer with bit

level data manipulation. Bit operations yield compact program code that enhances program

execution speed. Certain internal RAM and SFRs can be addressed by the address

of each bit within a byte. Bit addressing is very convenient when we wish to alter a single bit

of a byte, in a control register for instance, crucial bit of the same byte. The assembler can alsoequate bit addresses to labels that make the program more readable.

2.9 JUMP AND CALL INSTRUCTIONS

Jumps operate by testing for conditions that are specified in the jump mnemonic. If the

condition is true, the jump is taken to the specified address. Otherwise it executes the next

instruction.A call whether hardware or software initiated, causes a jump to the address where the

call subroutine is located without testing for any condition.A microcontroller program uses jump

to alter program flow as external conditions require. This sort of program can determine external

conditions by moving data from the port pins to location and jumping on the conditions of the

 port pin data .This technique is called polling and requires that the program does not have to

respond to external conditions quickly.

26

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 29/59

CHAPTER-3

3.HARDWARE IMPLEMENTATION

3.1555 TIMER 

  The 555 timer is one of the most remarkable integrated circuits ever developed. It comes in

a single or dual package and even low power CMOS versions exist - ICM7555. Common part

numbers are LM555, NE555, LM556, and NE556. The 555 timer consists of two voltage

comparators, a bi-stable flip flop, a discharge transistor, and a resistor divider network.

555 timer applications:

Precision timing.

Pulse generation.

Sequential timing.

Time delay generation.

Pulse width modulation (PWM).

3.1.1 PIN CONFIGURATION OF 555 TIMER 

Here are the pin configurations of 555 timer given in figure 1 below

Fig.3.1 - 555 timer pin configurations

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 30/59

27

i Pin 1 (Ground): The ground (or common) pin is the most-negative supply potential of the

device, which is normally connected to circuit common (ground) when operated from positive

supply voltages.

ii Pin 2 (Trigger): This pin is the input to the lower comparator and is used to set the latch,

which in turn causes the output to go high. This is the beginning of the timing sequence in

monostable operation. Triggering is accomplished by taking the pin from above to below a

voltage level of 1/3 V+ (or, in general, one-half the voltage appearing at pin 5). The action of the

trigger input is level-sensitive, allowing slow rate-of-change waveforms, as well as pulses, to be

used as trigger sources. The trigger pulse must be of shorter duration than the time interval

determined by the external R and C. If this pin is held low longer than that, the output will

remain high until the trigger input is driven high again. One precaution that should be observed

with the trigger input signal is that it must not remain lower than 1/3 V+ for a period of time

longer  than the timing cycle. If this is allowed to happen, the timer will re-trigger itself upon

termination of the first output pulse. Thus, when the timer is driven in the monostable mode with

input pulses longer than the desired output pulse width, the input trigger should effectively be

shortened by differentiation. The minimum-allowable pulse width for triggering is somewhat

dependent upon pulse level, but in general if it is greater than the 1uS (micro-Second), triggering

will be reliable. A second precaution with respect to the trigger input concerns storage time in

the lower comparator. This portion of the circuit can exhibit normal turn-off delays of several

microseconds after triggering; that is, the latch can still have a trigger input for this period of 

time after the trigger pulse. In practice, this means the minimum monostable output pulse width

should be in the order of 10uS to prevent possible double triggering due to this effect. Thevoltage range that can safely be applied to the trigger pin is between V+ and ground. A dc

current, termed the trigger current, must also flow from this terminal into the external circuit.

This current is typically 500nA (nano-amp) and will define the upper limit of resistance

allowable from pin 2 to ground. For an astable configuration operating at V+ = 5 volts, this

resistance is 3 Mega-ohm; it can be greater for higher V+ levels.

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 31/59

28

iii Pin 3 (Output): The output of the 555 comes from a high-current totem-pole stage made up

of transistors Q20 - Q24. Transistors Q21 and Q22 provide drive for source-type loads, and their 

Darlington connection provides a high-state output voltage about 1.7 volts less than the V+

supply level used. Transistor Q24 provides current-sinking capability for low-state loads referred

to V+ (such as typical TTL inputs). Transistor Q24 has a low saturation voltage, which allows it

to interface directly, with good noise margin, when driving current-sinking logic. Exact output

saturation levels vary markedly with supply voltage, however, for both high and low states. At a

V+ of 5 volts, for instance, the low state Vce(sat) is typically 0.25 volts at 5 mA. Operating at 15

volts, however, it can sink 200mA if an output-low voltage level of 2 volts is allowable (power 

dissipation should be considered in such a case, of course). High-state level is typically 3.3 volts

at V+ = 5 volts; 13.3 volts at V+ = 15 volts. Both the rise and fall times of the output waveform

are quite fast, typical switching times being 100nS. The state of the output pin will always reflect

the inverse of the logic state of the latch. Since the latch itself is not directly accessible, this

relationship may be best explained in terms of latch-input trigger conditions. To trigger the

output to a high condition, the trigger input is momentarily taken from a higher to a lower level.

[see “Pin 2 - Trigger”]. This causes the latch to be set and the output to go high. Actuation of the

lower comparator is the only manner in which the output can be placed in the high state. The

output can be returned to a low state by causing the threshold to go from a lower to a higher level

[see “Pin 6 - Threshold”], which resets the latch. The output can also be made to go low by

taking the reset to a low state near ground [see “Pin 4 - Reset”]. The output voltage available at

this pin is approximately equal to the Vcc applied to pin 8 minus 1.7V.

iv Pin 4 (Reset): This pin is also used to reset the latch and return the output to a low state. The

reset voltage threshold level is 0.7 volt, and a sink current of 0.1mA from this pin is required to

reset the device. These levels are relatively independent of operating V+ level; thus the reset

input is TTL compatible for any supply voltage. The reset input is an overriding function; that is,

it will force the output to a low state regardless of the state of either of the other inputs. It may

thus be used to terminate an output pulse prematurely, to gate oscillations from “on” to “off”,

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 32/59

29

etc. Delay time from reset to output is typically on the order of 0.5 µS, and the minimum reset

 pulse width is 0.5 µS. Neither of these figures is guaranteed, however, and may vary from one

manufacturer to another. In short, the reset pin is used to reset the flip-flop that controls the state

of output pin 3. The pin is activated when a voltage level anywhere between 0 and 0.4 volt is

applied to the pin. The reset pin will force the output to go low no matter what state the other 

inputs to the flip-flop are in. When not used, it is recommended that the reset input be tied to V+

to avoid any possibility of false resetting.

v Pin 5 (Control Voltage): This pin allows direct access to the 2/3 V+ voltage-divider point, the

reference level for the upper comparator. It also allows indirect access to the lower comparator,

as there is a 2:1 divider (R8 - R9) from this point to the lower-comparator reference input, Q13.

Use of this terminal is the option of the user, but it does allow extreme flexibility by permitting

modification of the timing period, resetting of the comparator, etc. When the 555 timer is used in

a voltage-controlled mode, its voltage-controlled operation ranges from about 1 volt less than V+

down to within 2 volts of ground (although this is not guaranteed). Voltages can be safely

applied outside these limits, but they should be confined within the limits of V+ and ground for 

reliability. By applying a voltage to this pin, it is possible to vary the timing of the device

independently of the RC network. The control voltage may be varied from 45 to 90% of the Vcc

in the monostable mode, making it possible to control the width of the output pulse

independently of RC. When it is used in the astable mode, the control voltage can be varied from

1.7V to the full Vcc. Varying the voltage in the astable mode will produce a frequency

modulated (FM) output. In the event the control-voltage pin is not used, it is recommended that it

 be bypassed, to ground, with a capacitor of about 0.01uF (10nF) for immunity to noise, since it is

a comparator input. This fact is not obvious in many 555 circuits since I have seen many circuits

with ‘no-pin-5’ connected to anything, but this is the proper procedure. The small ceramic cap

may eliminate false triggering.

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 33/59

30

vi Pin 6 (Threshold): Pin 6 is one input to the upper comparator (the other being pin 5) and is

used to reset the latch, which causes the output to go low. Resetting via this terminal is

accomplished by taking the terminal from below to above a voltage level of 2/3 V+ (the normal

voltage on pin 5). The action of the threshold pin is level sensitive, allowing slow rate-of-change

waveforms. The voltage range that can safely be applied to the threshold pin is between V+ and

ground. A dc current, termed the threshold current, must also flow into this terminal from the

external circuit. This current is typically 0.1µA, and will define the upper limit of total resistance

allowable from pin 6 to V+. For either timing configuration operating at V+ = 5 volts, this

resistance is 16 Mega-ohm. For 15 volt operation, the maximum value of resistance is 20

MegaOhms.

vii Pin 7 (Discharge): This pin is connected to the open collector of a npn transistor (Q14), the

emitter of which goes to ground, so that when the transistor is turned “on”, pin 7 is effectively

shorted to ground. Usually the timing capacitor is connected between pin 7 and ground and is

discharged when the transistor turns “on”. The conduction state of this transistor is identical in

timing to that of the output stage. It is “on” (low resistance to ground) when the output is low and

“off” (high resistance to ground) when the output is high. In both the monostable and astable

time modes, this transistor switch is used to clamp the appropriate nodes of the timing network to

ground. Saturation voltage is typically below 100mV (milli-Volt) for currents of 5 mA or less,

and off-state leakage is about 20nA (these parameters are not specified by all manufacturers,

however). Maximum collector current is internally limited by design, thereby removing

restrictions on capacitor size due to peak pulse-current discharge. In certain applications, this

open collector output can be used as an auxiliary output terminal, with current-sinking capability

similar to the output (pin 3).

Pin 8 (V +): The V+ pin (also referred to as Vcc) is the positive supply voltage terminal of the

555 timer IC. Supply-voltage operating range for the 555 is +4.5 volts (minimum) to +16 volts

(maximum), and it is specified for operation between +5 volts and +15 volts. The device will

operate essentially the same over this range of voltages without change in timing period.

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 34/59

31

Actually, the most significant operational difference is the output drive capability, which

increases for both current and voltage range as the supply voltage is increased. Sensitivity of 

time interval to supply voltage change is low, typically 0.1% per volt. There are special and

military devices available that operate at voltages as high as 18 volts.

Fig.3.2 555 TIMER BLOCK DIAGRAM

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 35/59

32

Fig 3.3 555 timing circuit

3.2 ASTABLE OPERATION

Figure above shows the 555 connected as an astable multivibrator. Both the trigger and

threshold inputs (pins 2 and 6) to the two comparators are connected together and to the external

capacitor. The capacitor charges toward the supply voltage through the two resistors, R1 and R2.

The discharge pin (7) connected to the internal transistor is connected to the junction of those

two resistors.

33

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 36/59

When power is first applied to the circuit, the capacitor will be uncharged; therefore, both

the trigger and threshold inputs will be near zero volts. The lower comparator sets the control

flip-flop causing the output to switch high. That also turns off transistor T1. That allows the

capacitor to begin charging through R1 and R2. As soon as the charge on the capacitor reaches

2/3 of the supply voltage, the upper comparator will trigger causing the flip-flop to reset. That

causes the output to switch low. Transistor T1 also conducts. The effect of T1 conducting causes

resistor R2 to be connected across the external capacitor. Resistor R2 is effectively connected to

ground through internal transistor T1. The result of that is that the capacitor now begins to

discharge through R2.

The only difference between the single 555, dual 556, and quad 558 (both 14-pin types),

is the common power rail. For the rest everything remains the same as the single version, 8-pin

555.

As soon as the voltage across the capacitor reaches 1/3 of the supply voltage, the lower 

comparator is triggered. That again causes the control flip-flop to set and the output to go high.

Transistor T1 cuts off and again the capacitor begins to charge. That cycle continues to repeat

with the capacitor alternately charging and discharging, as the comparators cause the flip-flop to

 be repeatedly set and reset. The resulting output is a continuous stream of rectangular pulses.

The frequency of operation of the astable circuit is dependent upon the values of R1, R2,

and C. The frequency can be calculated with the formula

f = 1/ (.693 x C x (R1 + 2 x R2))

The Frequency f is in Hz, R1 and R2 are in ohms, and C is in farads. The time duration

 between pulses is known as the ‘period’, and usually designated with a ‘t’. The pulse is on for 

t1 seconds, then off for t2 seconds. The total period (t) is t1 + t2 (see fig. 10). That time interval

is related to the frequency by the familiar relationship:

f = 1/t or t = 1/f 

34

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 37/59

The time intervals for the on and off portions of the output depend upon the values of R1

and R2. The ratio of the time duration when the output pulse is high to the total period is known

as the duty-cycle. The duty-cycle can be calculated with the formula

D = t1/t = (R1 + R2) / (R1 + 2R2)

You can calculate t1 and t2 times with the formulas below

t1 = .693(R1+R2) C

t2 = .693 x R2 x C

The 555, when connected as shown in Fig. 9b, can produce duty-cycles in the range of 

approximately 55 to 95%. A duty-cycle of 80% means that the output pulse is on or high for 80%

of the total period. The duty-cycle can be adjusted by varying the values of R1 and R2.

3.3 GENERAL CONSIDERATIONS WITH USING A 555 TIMER 

Most devices will operate down to as low as 3V DC supply voltage.

However correct supply filtering and bypassing is critical, a capacitor between .01 mF to 10 mF

(depending upon the application) should be placed as close as possible to the 555 timer supply

 pin. Owing to internal design considerations the 555 timer can generate large current spikes onthe supply line. considerations limit maximum timing periods to no more than 30 minutes.

3.4 APPLICATIONS

There are literally thousands of different ways that the 555 can be used in electronic

circuits. In almost every case, however, the basic circuit is either a one-shot or an astable. The

application usually requires a specific pulse time duration, operation frequency, and duty-cycle.

Additional components may have to be connected to the 555 to interface the device to external

circuits or devices.

35

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 38/59

3.4.1 ANALOG TO DIGITAL CONVERTER (ADC 0808)

ADC : A device that converts continuously varying analog signals from instruments that

monitor such conditions as movement, temperature, sound, etc., into binary code for the

computer. It may be contained on a single chip or can be one circuit within a chip.

 Fig.3.4 timer to ADC connection

36

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 39/59

Normally ADC needs interfacing through a microprocessor to convert analogue data to digital

format. This requires hardware and software, resulting in increased complexity and hence the

total cost.

The ADC 0808 is an 8-bit A-to-D converter, having data lines D0-D7. It works on the principle of successive approximation. It has a total of eight analogue input channels, out of 

which any one can be selected using address lines A, B and C. Here, in this case, input channel

IN0 is selected by grounding A, B and C address lines.

3.4.2 MULTIPLEXER 

 The device contains an 8-channel single-ended analog signal multiplexer. A particular 

input channel is selected by using the address decoder. shows the input states for the address

lines to select any channel. The address is latched into the decoder on the low-to-high transition

of the address latch enable signal.

3.5 CONVERTER CHARACTERISTICS

The heart of this single chip data acquisition system is its 8-bit analog-to-digital

converter. The converter is designed to give fast, accurate, and repeatable conversions over a

wide range of temperatures. The converter is partitioned into 3 major sections: the 256R ladder 

network, the successive approximation register, and the comparator. The converter’s digital

outputs are positive true.

The successive approximation register (SAR) performs 8 iterations to approximate the

input voltage. For any SAR type converter, n-iterations are required for an n-bit converter.

In the ADC0808, ADC0809, the approximation technique is extended to 8 bits using the 256R 

network. The A/D converter’s successive approximation register (SAR) is reset on the positive

edge of the start conversion start pulse. The conversion is begun on the falling edge of the start

conversion pulse. A conversion in process will be interrupted by receipt of a new start

conversion pulse. Continuous conversion may be accomplished by tying the end-of-conversion

37

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 40/59

(EOC) output to the SC input. If used in this mode, an external start conversion pulse should be

applied after power up. End-of-conversion will go low between 0 and 8 clock pulses after the

rising edge of start conversion. The most important section of the A/D converter is the

comparator. It is this section which is responsible for the ultimate accuracy of the entireconverter. It is also the comparator drift which has the greatest influence on the repeatability

Usually the control signals EOC (end of conversion), SC (start conversion), ALE (address latch

enable) and OE (output enable) are interfaced by means of a microprocessor. However, the

circuit shown here is built to operate in its continuous mode without using any microprocessor.

Therefore the input control signals ALE and OE, being active-high, are tied to Vcc (+5 volts).

The input control signal SC, being active-low, initiates start of conversion at falling edge of the

 pulse, whereas the output signal EOC becomes high after completion of digitization. This EOC

output is coupled to SC input, where falling edge of EOC output acts as SC input to direct the

ADC to start the conversion requires hardware and necessary software, resulting in increased

complexity and hence the total cost.

As the conversion starts, EOC signal goes high. At next clock pulse EOC output again goes low,

and hence SC is enabled to start the next conversion. Thus, it provides continuous 8-bit digital

output corresponding to instantaneous value of analogue input. The maximum level of analogueinput voltage should be appropriately scaled down below positive reference (+5V) level.

The ADC 0808 IC requires clock signal of typically 550 kHz, which can be easily derived from

an astable multivibrator, constructed using 7404 inverter gates. Since ADC works in the

continuous mode, it displays digital output as soon as analogue input is applied. The decimal

equivalent digital output value D for a given analogue input voltage Vin can be calculated from

the relationship

38

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 41/59

3.6THE ELECTROMAGNETIC RELAY

The electromagnetic relay consists of a multi-turn coil, wound on an iron core, to form an

electromagnet. When the coil is energised, by passing current through it, the core becomes

temporarily magnetised. The magnetised core attracts the iron armature. The armature is pivotedwhich causes it to operate one or more sets of contacts. When the coil is de-energised the

armature and contacts are released.

Fig.3.5 Electromagnetic relay

The coil can be energised from a low power source such as a transistor while the contacts

can switch high powers such as the mains supply. The relay can also be situated remotely from

the control source. Relays can generate a very high voltage across the coil when switched off.

This can damage other components in the circuit. To prevent this a diode is connected across the

coil. The cathode of the diode is connected to the most positive end of the coil.

The springsets (contacts) can be a mixture of n.o n.c and c.o. Various coil operating

voltages (ac and dc) are available. The actual contact points on the springsets are available for 

high current and low current operation.

39

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 42/59

CURRENT TRANSFORMER 

Current transformers can perform circuit control, measure current for power 

measurement and control, and perform roles for safety protection and current limiting. They can

also cause circuit events to occur when the monitored current reaches a specified level. Currentmonitoring is necessary at frequencies from the 50 Hz/60 Hz power line to the higher 

frequencies of switch mode transformers that range into the hundreds of kilohertz.voltage can be

calibrated to produce the desired results when the voltage reaches a specified level.

Fir.3.6 current transformer 

A burden resistor connected across the secondary produces an output voltage

 proportional to the resistor value, based on the amount of current flowing through it. With our 

1:10 turns ratio transformer that produces a 10:1 current ratio, a burden resistor can be selected

to produce the voltage we want. If 1A on the primary produces 0.1A on the secondary, then by

Ohm’s law, 0.1 times the burden resistor will result in an output voltage per amp.

40

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 43/59

Many voltage transformers have adjusted ratios that produce the desired output voltage

and compensate for losses. The turns-ratios or actual turns aren’t the primary concern of the end-

user. Only the voltage output and possibly regulation and other loss parameters may be of 

concern. With current transformers, the user must know the current ratio to use the transformer.

The knowledge of amps in per amps out is the basis for use of the current transformer. Quite

often, the end users provide the primary with a wire through the center of the transformer. They

must know what secondary turns are to determine what their output current will be. Generally, in

catalogues, the turns of the transformers are provided as a specification for use.

With this knowledge, the user can choose the burden resistor to produce their desired

output voltage. The output current of 0.1A for a 1A primary on the 1:10 turns ratio transformer 

will produce 0.1 V/A across a 1&! burden resistor, 1V per amp across a 10&! burden and 10V

 per amp across a 100&! burden resistor.

In this analysis, the secondary dc resistance (R DCR 

) doesn’t become part of the calculation.

When considering the secondary current, only the actual current affects V. How well that current

can be determined controls the accuracy of the prediction of V. The secondary dc resistance is

 best analyzed by reflecting it to the primary by R DCR 

/N2.

When choosing the burden resistor, the engineer can create any output voltage per amp,

as long as it doesn’t saturate the core. Core saturation level is an important consideration whenspecifying current transformers. The maximum volt-microsecond product specifies what the core

can handle without saturating. The burden resistor is one of the factors controlling the output

voltage. There’s a limit to the amount of voltage that can be achieved at a given frequency. Since

frequency = 1/cycle period, if the frequency is too low (cycle period too long) so that voltage-

time product exceeds the core’s flux capacity, saturation will occur. The flux that exists in a core

is proportional to the voltage times cycle period. Most specifications provide a maximum volt-

microsecond product that the current transformer can provide across the burden resistor.

Exceeding this voltage with too large a burden resistor will saturate the transformer and limit the

voltage.

41

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 44/59

The output voltage will rise trying to develop current until it reaches the saturation

voltage of the coil at that frequency. At that point, the voltage will cease to rise and the

transformer will add no additional impedance to the driving current. Therefore, without a burden

resistor, the output voltage of a current transformer will be its saturation voltage at the operating

frequency.

There are factors in the current transformer that affect efficiency. For complete accuracy,

the output current must be the input current divided by the turns ratio. Unfortunately, not all the

current is transferred. Some of the current isn’t transformed to the secondary, but is instead

shunted by the inductance of the transformer and the core loss resistance. Generally, it’s the

inductance of the transformer that contributes the majority of the current shunting that detracts

from the output current. This is why it’s important to use a high-permeability core to achieve the

maximum inductance and minimize the inductance current. Accurate turns ratio must be

maintained to produce the expected secondary current and the expected accuracy .

ITRANSFORMED

=IINPUT

-ICORE

-jIMAG

(1)

Any measuring device alters the circuit in which it measures. For instance, connecting a

voltmeter to a circuit causes the voltage to change from what it was before the meter was

attached. However minuscule this effect may or may not be, the voltage you read isn’t the

voltage that existed before attaching the meter. This is also true with a current transformer. The

 burden resistor on the secondary is reflected to the primary by (1/N2), which provides a

resistance in series with the current on the primary. This usually has minimal effect and is

usually only important when you are concerned about the current that would exist when the

transformer isn’t in the circuit, such as when it’s used as a temporary measuring device.

The resistance of the primary loop (PRIDCR ), the core loss resistance (R CORE), the secondary DCR 

(R DCR 

) is reduced by 1/N2, and the secondary burden resistor R BURDEN

is also reduced by a factor of 

 N2. These are losses that affect current source (I). The resistances have an indirect effect on the

42

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 45/59

current transformer accuracy. It’s their effect on the circuit that they are monitoring that alters its

current. The primary dc resistance (PRIdcr 

) and the secondary DCR/N2 (R DCR 

/N2) don’t detract

from the Iinput

that is read or is affecting the accuracy of the actual current reading. Rather, they

alter the current from what it would be if the current transformer weren’t in the circuit. With theexception of the burden resistor, these loss resistors are the components that contribute to the loss

in the transformer and heating.

This wasted energy is usually small compared with the power in the circuit it’s

monitoring. Usually, the design of the transformer and choice of the burden resistor will be

within the maximum energy loss the end user can allow. As battery-operated devices come into

wider use and power consumption contributes to the energy crisis — even this power may be of 

concern. Under these circumstances, it may require special design attention to power consumption.

Current transformers are an efficient way to measure current. Since the burden resistor is

reflected to the primary by 1/N2, the resistance seen in the circuit being monitored can be very

small. This allows a larger voltage to be created on the output with minimal effect on the circuit

 being measured. A simpler and lower-cost method to measure current is to use a sense resistor 

connected in series with the current. However, this method can only be used when power 

consumption is of secondary concern. With the more frequent use of battery-powered devices

and the prevailing need to reduce power consumption, the extra expense of a current transformer 

can soon be recovered with use. Also, with high current or when a voltage of any magnitude is

required, a sense resistor would be impractical.

3.8 BUZZER 

A buzzer is used to give a signal to the persons or vehicles that the train is coming, so that not to

enter on the track. Buzzer is switched on when first magnetic sensor senses the train, and it is

switched off when the gate is closed.

43

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 46/59

V C C

Q ?

B C 5 4 7

D ?

4 0 0 7

+

1 2 V

-

B u z

Fig.3.7 buzzer diagram

The buzzer subsystem produces a 2Khz audible tone when powered. The buzzer will

sound coming into the driver is high. It must be connected to a Darlington transistor or a

transducer driver subsystem. The buzzer is connected between the supply rail (+12v) and the

input signal. This acts as load on the driver. When the input signal is coming into the buzzer of 

the subsystem is low, a potential difference across the buzzer causes current to flow. It is this

flow of current that causes buzzer to sound.

3.9 LIGHT EMITTING DIODE (LED)

LED’S are manufactured using Gallium Arsenic (GaAs) material. LED’S are used to

 provide signals to the train. Due to recombination of electrons and holes the energy release in the

form of light. These are used in our project to indicate the relay which is in operating mode.

3.10 BASIC PRINCIPLE

In this project load scheduling is done automatically depending on the changes in load

using the 89c51 microcontroller. The load is sensed by using a sensor, which is a current

transformer in this case. The sensed a.c load voltage is converted to d.c through a diode bridge

rectifier .the rectified a.c voltage is adjusted to within a range of (0-5v) using a potentiometer.

This adjusted voltage is fed to the ADC 0808 analog to digital converter which obtains the

square wave input from a 555 timer to a clock input pin of ADC pin. The ADC converts the

analog value of the

44

µC PORT

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 47/59

voltage sensed from the load into digital value, which is given as the input to the

microcontroller.

The microcontroller reads the input signal; the program in RAM computes the output and

sends the signal to the output port of the microcontroller.V C C + 5 vV C C + 1 2 v

V C C + 1 2 v

V C C + 5 v

1

4

5

8

P o w e r  1234

             +

1 0 / 1 6

35

412

B C 5 4 7

A T 8 9 C 5 2 / F P

9

              1

              9

              1

              8

2 0

2 93 03 1

4 012345678

2 12 22 32 42 52 62 72 8

1 0

1 11 21 31 41 51 61 7

3 83 9

3 73 63 53 43 33 2

R S T

              X

              T

              A

              L

              2

              X

              T

              A

              L

              1

G N D

P S E NA L E / P R O G

E A / V P P

V C CP 1 . 0P 1 . 1P 1 . 2P 1 . 3P 1 . 4P 1 . 5P 1 . 6P 1 . 7

P 2 . 0 / A 8P 2 . 1 / A 9

P 2 . 2 / A 1 0P 2 . 3 / A 1 1P 2 . 4 / A 1 2P 2 . 5 / A 1 3P 2 . 6 / A 1 4P 2 . 7 / A 1 5

P 3 . 0 / R X DP 3 . 1 / T X DP 3 . 2 / I N T 0P 3 . 3 / I N T 1P 3 . 4 / T 0P 3 . 5 / T 1P 3 . 6 / W RP 3 . 7 / R D

P 0 . 0 / A D 0P 0 . 1 / A D 1

P 0 . 2 / A D 2P 0 . 3 / A D 3P 0 . 4 / A D 4P 0 . 5 / A D 5P 0 . 6 / A D 6P 0 . 7 / A D 7

3 3 p f  

B C 5 4 7

1 0 3 S I P1

              2              3              4              5              6              7              8              9

B C 5 4 7

8 . 2 K

1 0 3

35

412

4 0 0 7

L 7 8 0 51

              3

2V I N

              G

              N

              DV O U T

+

4 7 0 / 1 6

4 0 0 7

R E S I S T O R

R E S I S T O R

R E S I S T O R

4 0 0 7

4 0 0 7+

1 0 / 5 0

4 0 0 7

4 0 0 7

1 0 3

35

412

4 0 0 7

1 0 K

1 0 K

4 0 0 7

1 1 . 0 5 9 2L M 5 5 5 3

              4              8

5

26

7

1

+

1 0 / 5 0

+

2 2 0 0 / 2 5

1 0 4 p

A D C 0 8 0 9

1 0

              9

7

1 71 41 581 81 92 02 1

62 2

              1

              1

1 3

              1

              2

1 6

2 62 72 8

12345

2 52 42 3

C L K

              O

              E

E O C

D 0D 1D 2D 3D 4D 5D 6D 7

S T A R TA L E

              V

              C

              C

G N D

              R

              E

              F

            +

R E F -

I N 0I N 1I N 2I N 3I N 4I N 5I N 6I N 7

A 0A 1A 2

1 0 3 S I P

1

              2 3 4 5 6 7 8 9

3 3 p f  

1

4

5

8

1 0 4 p

1 0 4 p1 0 4 p

S W 1

S W 1

S O U R C E

L O A D

Fig.3.8 diagram for unit commitment problem solving using microcontroller 

3.11 LOAD SENSING

The load applied can be measured by measuring the current absorbed by the load using a current

transformer.  Current transformers are an efficient way to measure current. The current

transformer is a step up transformer and hence it steps down current. A current transformer has a

large number of turns on its secondary winding but, very few turns on its primary winding. The

 primary winding of current transformer is connected the in series with the load so that it carries

the full load current to the system and is determined by the load connected on the secondary

45

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 48/59

winding of the current transformer. According to the current in the primary winding

corresponding voltage is developed in the secondary winding of the current transformer. Thus

the voltage corresponding to the load current is obtained.

3.12 A-D CONVERSION

The ADC 0808 is an 8-bit A-to-D converter, having data lines D0-D7. It works on the

 principle of successive approximation. It has a total of eight analogue input channels, out of 

which any one can be selected using address lines A, B and C. Here, in this case, input channel

IN0 is selected by grounding A, B and C address lines.

Fig.3.9 Analog to digital converter 

The ADC0808, ADC0809 offers high speed, high accuracy, minimal temperature

dependence,excellent long-term accuracy and repeatability, and consumes minimal power. These

features make this device ideally suited to applications from process and machine control to

consumer and automotive applications.

46

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 49/59

The sensed load is tracked with help of current transformer; it is fed to the ADC-0808 IC

through a potential divider .The analog load voltage is the input to the ADC, is converted to

digital value and sent to the input port of the microcontroller through the eight digital inputs.

47

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 50/59

CHAPTER-4

MICROCONTROLLER INTERFACING

4.1 89C51 MICROCONTROLLER PROGRAMMING

The AT89C51 is a low-power, high-performance CMOS 8-bit microcomputer with 4K 

 bytes of Flash programmable and erasable read only memory (PEROM). The device

is manufactured using Atmel’s high-density nonvolatile memory technology and is

compatible with the industry-standard MCS-51 instruction set and pinout. The on-chip

Flash allows the program memory to be reprogrammed in-system or by a conventional

nonvolatile memory programmer. By combining a versatile 8-bit CPU with Flash

on a monolithic chip, the Atmel AT89C51 is a powerful microcomputer which provides

a highly-flexible and cost-effective solution to many embedded control applications.

The ADC sends the digital signal continuously to the microcontroller. The microcontroller takes

the input from ADC and basing on the program that is according to the priority list method the

respective relay which obtains the input from the output port of the microcontroller is energized.

4.1.1 PROGRAM

P2.0=RLY1

P2.1=BUZ

P2.2=RLY2

P2.3=RLY3

P2.4=RLY4

P1=ADC DATA

P3.5=B

P3.4=A

48

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 51/59

P3.3=START

P3.2=ALE

 

70H=READ CURRENT VAULE

0RG 0

JMP START

ORG 0050H

START:

CLR P2.0

CLR P2.1

CLR P2.2

CLR P2.3

CLR P2.4

 

LCALL SSEC

SETB P2.0

SETB P2.1

SETB P2.2

SETB P2.3

49

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 52/59

SETB P2.4

 

LCALL SSEC

CLR P2.0

CLR P2.1

CLR P2.2

CLR P2.3

CLR P2.4

 

LCALL SSEC

SETB P2.0

SETB P2.1

SETB P2.2

SETB P2.3

SETB P2.4

 

LCALL SSEC

SETB P2.0

CLR P2.1CLR P2.2

CLR P2.3

CLR P2.4

50

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 53/59

XX1: LCALL ISEN

MOV A, 51H

MOV 70H, A

 

LCALL ICOM1

LJMP XX1

ICOM1: CLR C

CLR A

MOV A, # 43H

CJNE A, 70H, GTLS1

LJMP ICOM2

 

GTLS1: JC GT1

SETB P2.0

CLR P2.2

CLR P2.3

CLR P2.4

CLR P2.1

RET

51

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 54/59

GT1: LJMP ICOM2

ICOM2: CLR C

CLR A

MOV A, # 76H

CJNE A, 70H, GTLS2

LJMP ICOM3

GTLS2: JC GT2

SETB P2.0

SETB P2.2

CLR P2.3

CLR P2.4

CLR P2.1

RET

 

GT2: LJMP ICOM3

ICOM3: CLR C

CLR A

MOV A, #A9H

CJNE A, 70H, GTLS3

LJMP ICOM4

 

GTLS3: JC GT3

SETB P2.0

52

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 55/59

SETB P2.2

SETB P2.3

CLR P2.4

CLR P2.1

RET

GT3: LJMP ICOM4

ICOM4: CLR C

CLR A

MOV A, #E1H

CJNE A, 70H, GTLS4

LJMP ICOMP5

GTLS4: JC GT4

SETB P2.0

SETB P2.2

SETB P2.3

SETB P2.4

CLR P2.1

RET

GT4: LJMP ICOM5

53

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 56/59

ICOM5: SETB P2.1

LCALL SSEC

CLR P2.0

CLR P2.2

CLR P2.3

CLR P2.4

RET

ISEN: MOV P1, #FFH

MOV P3, #FFH

CLR P3.2

CLR P3.3

LCALL DEL

CLR P3.4

CLR P3.5

LCALL DEL

SETB P3.2

LCALL DEL

SETB P3.3

LCALL DEL

CLR P3.2

LCALL DEL

CLR P3.3

LCALL SEC

54

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 57/59

MOV R6, P1

MOV 51H, R6

RET

DEL: MOV R7, #FFH

DJNZ R7, $

SEC: MOV R5, #0AH

M1: MOV R6, #FFH

M2: MOV R7, #FFH

M3: DJNZ R7, M3

DJNZ R6, M2

DJNZ R5, M1

RET

SSEC: MOV R5, #0AH

SM1: MOV R6, #FFH

SM2: MOV R7, #FFH

SM3: DJNZ R7, SM3

DJNZ R6, SM2

DJNZ R5, SM1

RET

55

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 58/59

CHAPTER-5

CONCLUSIONThe economical significance of power generation scheduling becomes more apparent since this

 procedure may lead to large savings in fuel expenditure. Also, the lives of older units in a power 

 plant can be extended if a reasonable schedule is followed. The schedules produced are better 

than those that could be found manually. The unit cost can be rapidly reduced. It can be very

useful to small industries

FUTURE SCOPE

  This project has been implemented for single phase, further it can be extended to 3 phase

with 1 relay for each phase for the same circuitry.

The blind search which is a part of the conventional dynamic programming is eliminated,

and available information regarding the unit commitment scheduling in a specific power system

is used extensively. Computer software simulations of neural networks and various expert

systems shells have provided powerful tools for developing new systems.

The neural network computing enhances by expert systems open a new route to the

optimization of generation scheduling. With proper and sufficient offline training, the

information regarding the optimal operation of a system can be stored in the network, and the

output is obtained in a much shorter time. A short term unit commitment algorithm requires fast

and iterative decisions for the generation scheduling which underline the value of the proposed

approach. .

56

7/28/2019 Unit Commitment 1

http://slidepdf.com/reader/full/unit-commitment-1 59/59

BIBLIOGRAPHY

1. POWER GENERATION OPERATION AND CONTROL

Allen J.Wood, Bruce F.Wollenberg.

2.POWER SYSTEM OPERATION AND CONTROL

  G.R.Chandrasekhar Reddy.

3. MODERN POWER SYSTEM ANALYSIS

  I.J.Nagrath & D.P. Kothari

4. Wikipedia.net