Search Projects


Final year degree project for engineers DAC0800 based project circuit diagram and interfacing with pic mirocontroller Final year projects based on microcontrollers on programmable peripheral interface 8255
Microcontroller based different projects abstract and source code
PIC 16f877 microcontroller projects Motion control
PIC16f877 motor controller and other light projects
Tutorials of microcontroller PIC16f877, A step by step easy to use self learning rapidex

Saturday, February 5, 2011

Automatic Furnace Temperature Control

Automatic Furnace Temperature Control:-
In this project temerature of a furnace is controlled using microcontroller PIC16f877.
The furnce is a closed chamber in which an electric heater and fan is used to maintain the critical temperature.
The temperature is measured and checked then fan or heater is turned ON if necessary.
The Project is desinged to build an automatic furnce by taking a stability in preference. The heater and fan are turned ON in a specific range instead of set point. Forexample, if the set point is 50 degree C and running temerature is 25 degree C, then heater will be ON if temerature till 49 is echived then dueto heater's interia or heat in chamber, temperature can be rised to 51C, if temperature goes up even more than this, fan will be turned ON. Then temerature starts falling, Fan will switched OFF on 52C. and heater will then ON if temperature is down to 48C. This way the temperature will be very stable.

Automatic Furnace Temperature Control using PIC16f877

Source code:-

unsigned int cnt ,brk,lr,hr,st,chr,clr;
char led [3],key;
unsigned int rem ;
void converter (unsigned int z);
void scanled (void);
void highrang (void);
void lowrang (void);
void setvalue (void);
void keyid (void) ;
unsigned int valueed (unsigned int a);
void cont1 (void);
void main() {
OPTION_REG = 0x80; // pull up resistors
TRISB = 0x1f; // designate portb pins as first five line as input
PORTB = 0xff; //and other as output
TRISC = 0x00; // designate portb pins as first five line as input
PORTC = 0xec; //and other as output
PORTD = 0; // clear portd (make sure LEDs are off)
TRISD = 0; // designate portb pins as output
ADCON1 = 0x80;//ADCON2 = 0x80; // Configure analog inputs and Vref
cnt = 0;
lr= 1;
hr = 1;
st = 50;
key = 0;
clr = st - lr;
chr = st + hr;
if (Button( & PORTB, 0, 100, 0))
// port, pin #, time (ms), ative state (0 or 1)
key ++;
if (key  < =4)key = 0;
void keyid (void)
switch (key)
case 0 :
case 1 :
PORTC & = 0xef;
case 2 :
PORTC & = 0xef;
case 3 :
PORTC &= 0xef;
void cont1 (void)
cnt = cnt/2;
if(cnt < clr ){PORTB = 0xbf; PORTC = 0xfd;} else { if( cnt > chr){ PORTB = 0x7f; PORTC = 0xfe; }
else {PORTB = 0xdf; PORTC = 0xfc;}
void highrang (void)
if(hr >10) hr = 1;
hr = valueed (hr);
led[0] = 1;
led[1] = 12;
chr = st + hr;
void lowrang (void)
if(lr > 10) lr = 1;
lr = valueed (lr);
led[0] = 2;
led[1] = 11;
clr = st - lr;
void setvalue (void)
if(hr > 99) st = 10;
st = valueed (st);
led[0] = 3;
led[1] = 10;
unsigned int valueed (unsigned int a)

if (Button(&PORTB, 1, 100, 0)) a++;
if (Button(&PORTB, 2, 100, 0)) a--;
if(a<=1)a=1; return (a); }
void converter(unsigned int z) {
 led[0] = z/1000;
 rem = z%1000 ;
 led[1] = rem/100;
rem = rem%100 ;
led[2] = rem/10;
 led[3] = rem%10; }
void scanled(void) {
unsigned char i;
 for(i=0;i<4;i++) {
 portd = i << 4;
portd |= led[i];
 delay_ms(10); } }

furnace repair automatic control of the blast furnace process by means of microcontroller PIC16f877,coffee can furnace,Atmosphere Furnace Controller/Programmer,HIGH LIMIT CONTROL PROVIDES AUTOMATIC FURNACE CHAMBER TEMPERATURE CONTROL THAT ASSURES MAXIMUM MELTING PERFORMANCE AND EFFICIENCY WITH EXTENDED REFRACTORY furnace cleaning minneapolis,Automatic furnace control selects recipe and heat-time. ♦ Optimized heat-time saves seconds per load. Fully automatic furnace repair seattle drying machine commercial furnace , automatic control   ,furnace repair denver Automatic Control System for the High stability,automatic celestial furnace temperature control,Experiences Implementing the Smart Furnace Control ,chicago furnace PLC continues to control the automatic sequencing of the equipment ,furnace repair toronto
furnace installation cost furnace repair chicago heat treat furnace furnace vent cleaning home furnace repair furnace and air conditioning furnace duct cleaning 16f877 gas furnace installation pic microcontroller projects max6675 mikroc "877 with keypad" pic projects tutorial interrupt pwm pic16f87 a to d conversion to lcd display in c code how to programm a pic controler mikroc button write lcd pic temperature logger pic16f877a pin configuration


lee yewhui said...


I'm currently doing a project using PIC16f877a. (water temperature remote terminal unit)
In this project, i need to measure water temperature using LM35DZ and display the output at LCD display.

the temperature signal must be sent from main board to a control unit (receiver) using rf module, LED display will indicates the level of water temperature(receiver). If the temperature is less than 25deg, yellow light is on. Above 28deg, red light will ON. In between, green light is on.

Despite that, at least 5 temperature data must be save inside an EEprom with 5s time interval, the datas must be retrieve afterward and display on the LCD at main board.

I can provide you the circuitry. I wonder if you can do the coding using MikroC?



Dr.Rana said...

@ lee yewhui
ok send the circuit diagram of the project, i will help you in writing the code of it in MikroC.

lee yewhui said...

Basically, a input needs to be set at RC0 to activate LM35 and the data into the external eeprom and display the temperature at LCD.
Another input at RC1 for retrieving the datas and display on the LCD.

If the water temperature is below 25 deg, RD6 needs to be pull high to send the signal to RF transmitter.
If it is between 25-30, RD5 is high.
If it is above 30, RD4 is high.

I'm struggling in programming the eeprom part and LM35 sensor.


Melford Escala said...

In this project what is the cystal oscillator that you use?

Post a Comment

Hi: This is comments section. Here you are requested to write your question or problems in detail. Write the question in such a way that, it have all necessary information, sothat i can understand and reply.If you want to send pictures and codes then e-mail me (