Вы находитесь на странице: 1из 15

HOME APPLIANCES AUTOMATIC AND MANUAL SPEED/INTENSITY CONTROL USING TOUCH-SCREEN INTERFACE

A MINI PROJECT REPORT Submitted by ANJALI S ARCHANA RAJAN ASWITHA MARY ABRAHAM JERIN JOE In partial fulfillment for the award of the Degree of BACHELOR OF TECHNOLOGY IN ELECTRONICS AND COMMUNICATION ENGINEERING Under the guidance of MR. RAGHU C. V.

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING NATIONAL INSTITUTE OF TECHNOLOGY CALICUT NIT CAMPUS PO, CALICUT KERALA, INDIA 673601. APRIL 2013

DECLARATION

We hereby declare that this submission is our own work and that, to the best of our knowledge and belief, it contains no material previously published or written by another person nor material which has been accepted for the award of any other degree or diploma of the university or other institute of higher learning, except where due acknowledgement has been made in the text.

Name Anjali S Archana Rajan Aswitha Mary Abraham Jerin Joe

Reg. No. B100215EC B100299EC B100001EC B100981EC

Signature

Place: Date:

CERTIFICATE
This is to certify that the Project entitled: Home appliances automatic and manual speed/ intensity control using touch screen interface submitted by Ms. Anjali S, Archana Rajan, Aswitha Mary Abraham, and Jerin Joe to the National Institute of Technology Calicut towards partial fulfillment of the requirements for the award of the Degree of Bachelor of Technology in Electronics and Communication Engineering is a bonafide record of the work carried out by them under my supervision and guidance.

Project Guide Mr. Raghu C. V. Assistant Professor ECE Department Dr. C. K. Ali Professor and Head ECE Department

Place:

Date :

(Office seal)

ABSTRACT The objective of this project is to develop a system to control home appliances in both the manual mode and automatic mode depending on the external conditions and constraints and thereby avoid malfunctioning and frequent manual supervision of appliances like fan speed regulators in which we have to manually control and set the speed of the device. Moreover, when switches are getting extinct and touch screens coming in as a substitute for almost all appliances, we use a touch screen as the manual mode interface thereby, getting familiarized with touch screens, the technology of present times. If the user wants to manually set the speed of the fan in his room, he can control using the touch screen interface, using which continuous range of speeds can be set unlike with clich fan regulators. If the user is discreet, like sleeping, the device has to automatically set the fan speed judging the room temperature, which is the automatic mode. Microcontroller that takes in analog voltage values from the touch screen converts it to digital values based on which the current flow is determined and thereby the motor speed is set. In automatic mode, the room temperature is measured and based on room temperature that sets the voltage values determined by the sensor, microcontroller determines the fan speed. This can be extended to other appliances that need to be controlled in both the modes and those that demand user flexibility.

TABLE OF FIGURES

FIGURE NUMBER 1.1 1.2 2.1 2.2 2.3 2.4 2.5 3.1 3.2 3.3

TITLE Block diagram to control AC motor Block diagram to control DC motor Circuit diagram Simulation result 1 Simulation result 2 Simulation result 3 Simulation result 4 Zero crossing detector circuit Firing angle control circuit Operation

PAGE NUMBER 6 7 11 12 12 13 13 20 22 26

ACKNOWLEDGEMENT

Firstly, we thank Almighty God for enabling us to do this project. We would like to take this opportunity to express our gratitude towards all the people who have been involved in this project. Without them, this project would have never reached its present state. We would like to thank our project guide, Mr. Raghu C. V. for his valuable time, eorts, guidance and moral support. We would also like to thank the project cocoordinator and the evaluation team for their approval to do this project. We would like to express our sincere gratitude to Mr. K. R. Anandan, senior mechanic, Embedded Systems Lab. His rich experience with hardware helped us during the hardware implementation phase of the project. We would also like to express our gratitude to our friends and classmates for their valuable suggestions during the formulation of the code and troubleshooting hardware errors. We would also like to thank all our peers who helped us with their expertise during various phases of the project. Last but not the least, we would like to thank our parents for motivating us throughout all the phases of the project.

APPENDIX
1.CODE
#include<avr/io.h> #include<util/delay.h> #include<avr/interrupt.h> void ADC_init(void); unsigned int ADC_read(unsigned char); unsigned int value2,value3; static volatile int value1,value4; int main(void) { ADC_init(); DDRD|=((1<<PD4)|(1<<PD5)); PORTD|=((1<<PD4)|(1<<PD5)); //INITIALIZATION OF ADC DDRB&=~((1<<PB0)|(1<<PB4)); MCUCR|=((1<<ISC11)|(0<<ISC10)); GICR|=(1<<INT1); sei(); while(1) { if(PINB & (1<<PB4)) { if(PINB & (1<<PB0)) { value2=ADC_read(5); if ((value2>0x19)&& (value2<=0x33)) { value1=8; } else if((value2>0x33) && (value2<=0x66)) { value1=6; } else if((value2>0x66) && ( value2<=0x99))

{ value1=4; } else if((value2>0x99) && ( value2<=0xCC)) { value1=2; } else if(value2>0xCC) { value1=1; } else if ((value2>=0X00)&& (value2<=0X19)) value1=value4; value4=value1; } else { value3=ADC_read(1); if((value3>=0x99)&& (value3<=0xB3)) { value1=8; } else if((value3>0xB3) && (value3<=0xCC)) { value1=6; } else if ((value3>0xCC) && ( value3<=0xE6)) { value1=4; } else if((value3>0xE6)) { value1=2;

} } } else { value2=ADC_read(5); if ((value2>0x19)&& (value2<=0x33)) { value1=8; } else if((value2>0x33) && (value2<=0x66)) { value1=6; } else if ((value2>0x66) && ( value2<=0x99)) { value1=4; } else if((value2>0x99) && ( value2<=0xCC)) { value1=2; } else if(value2>0xCC) { value1=1; } else if ((value2>=0X00)&& (value2<=0X19)) value1=value4; value4=value1; } } }

void ADC_init(void) { ADMUX=(1<<REFS0)|(0<<REFS1)|(1<<ADLAR); ADCSRA=(1<<ADEN)|(1<<ADPS1)|(1<<ADPS0); } unsigned ADC_read(unsigned char ch ) { ch=ch & 0b00000111; ADMUX |= ch; ADCSRA|=(1<<ADSC); while(!(ADCSRA & (1<<ADIF))); ADCSRA|=(1<<ADIF); return(ADCH); } ISR(INT1_vect) { if(PINB & (1<<PB4)) { PORTD&=~(1<<PD5); _delay_ms(value1); PORTD|=(1<<PD5); } else { PORTD&=~(1<<PD4); _delay_ms(value1); PORTD|=(1<<PD4); } }

2. CODE SEGMENT TO IMPLEMENT CONVENTIONAL TOUCHSCREEN WITH CONTINOUS VARIATION

value=0x00; b=0x00; value3=0x00;

value4=0x00;

while(1) { ADC_init(); if(PINB & (1<<PB0)) { flag=0; b=value; value=ADC_read(0); if(value>(b+0x20)) value1+=1; //increase the count for every 0.1 volt variation //mode1

else if(value<(b-0x20))

value1-=1;

//decreas the count for every 0.1 volt variation

else { if(value1==0) { flag=1; ADC_init(); //switching ON the device in mode2

value2=ADC_read(4);

if((value2>=0x00)&& (value2<=0x33))

{ value1=5; }

else if((value2>0x33) && (value2<=0x66)) { value1=6; } else if ((value2>0x66) && ( value2<=0x99)) { value1=7; } else if((value1>0x99) && ( value2<=0xcc)) { value1=8; } else if((value2>0xCC) && ( value2<=0xFF)) { value1=9; } }

else I {

//switching to mode2 from mode1 the value in the register is retained and varied with respect to external temp

if(flag==0) { value4=value3; ADC_init(); value3=ADC_read(4);

if(value3>(value4+0x03)) value1+=1; else if(value3< (value4-0x03)) value1-=1; }

} }

Вам также может понравиться