Automatic control of street lights is deigned to turn on and turn of street lights automatically. This project check the amount of light. If light is 80 percent available, it automatically turn off street lights. But if amount of light is less than 80 percent, this project will automatically turn on street lights. one can also adjust it according to its requirement. Light sensor is used to detect intensity of light. PIC161F877A microcontroller is used interfaced with light sensor to sense amount of light available. Control signal is generated with the help of pic16f877a microcontroller after analyzing amount of light. Control signal generated by pic microcontroller is used to turn on transistor which in turn energize the relay coil and relay turn on the street light. I have used only one lamp in this project. Because this is just for demonstration purpose. To use it practically, you can use as many street lights as many you want to control through this automatic control of street lights.
Applications :
This project have many applications. For example, you are too much lazy to turn on or turn off your street light manually and you forget to turn it on or off daily. So you easily use this project to save your electricity and in return your money. In countries where load shedding is a big issue due to short fall in electricity and less in resources to generate electricity. In these countries, load shedding issue can be resolved too some extent by saving as much as you can. By using automatic control of street lights, we can save maximum amount of energy which is useful for your nation and also beneficial for you. Because it will reduce you electricity bill and in return save your money.
Circuit description :
 Followings are the main components of automatic control of street lights :
Light sensor :
Light sensor is used to sense amount of light. There are many light sensors available in market but Light dependent resistor (LDR) is used as a light sensor. Because it is cheap in price, easily available in market and can be easily interfaced with microcontroller to sense intensity of light. LDR have property to change its resistance according to intensity of light. If light is high, LDR will have low resistance and if light is low, LDR will have high resistance. So microcontroller can easily read this resistance in the form of voltage and which can be back converted into proportional value of light by using a formula available in data sheet.I recommend you to have look in data sheet of LDR.
Relay interfacing with microcontroller :
As I have already mentioned above that microcontroller is used to analyze intensity of light and to generate control signal which in turn on or off transistor which in turn energize relay to turn street light on or off. NPN transistor is used as a switch and resistor at the base of transistor is used as current limiting resistor. Diode is used to avoid back emf voltage which may produce sparking across relay.
Circuit diagram :
circuit diagram of automatic control of street lights is shown below :

Video:
To check working of this project and to understand  code watch following video:
Automatic control of street lights using microcontroller by bilalmalikuet
Code :
Code for this project is written in Mikro C and 8Mhz crystal is used in this project.
//***************microcontrollerslab.com******************
//**************[email protected]*******************
int light;
void read_ldr()
{
unsigned int adc_value=0;
adc_value=ADC_Read(0);
light = 100 – adc_value/10.24;
if(light>=80) // SWITCH of the light when light is 80 percent
{
PORTB.F1=0;
}
else
{
PORTB.F1=1;
}
}
void main()
{
TRISB=0X00;
PORTB=0X00;
Adc_Init();
while (1)
{
read_ldr();
}
}
[button-brown url=”http://store.microcontrollerslab.com/product/automatic-control-of-street-lights/” target=”_self” position=”left”]click here to buy proteus simulation[/button-brown]
if you feel any issue after reading this article, comment on this post. Kindly don’t forget to share this article with your friends. thanks 🙂
Can you please upload the datasheet of LDR?
You can easily download it by searching on google
can u give the list of the components required
100-adc_value/1024
what’s the mening this formula
it is used to convert light intensity into percentage
please help me because appear error in this in mikroc
1/light = 100 -adc_value/10.24;
2/ I dont understand HOW WORK THIS EXPRESSION
adc_value=ADC_Read(0);
Hi
is not working…..
check video its working
Why didn’t you simulate it?? Because it doesn’t work ? Yeah it doesn’t work. Really.
check video its working.yOU must be making some mistake
thanks a lot dude it s worki,
What compiler did you use?
The code is not working .. its giving error in line “light = 100 – adc_value/10.24;”
these are the errors ..
6 402 ; expected, but ‘–’ found street light.c
6 424 ‘}’ expected ‘;’ found street light.c
11 371 Specifier needed street light.c
11 396 Invalid declarator expected'(‘ or identifier street light.c
14 371 Specifier needed street light.c
14 396 Invalid declarator expected'(‘ or identifier street light.c
16 393 ” Identifier redefined street light.c
16 300 Syntax Error: ‘(‘ expected, but ‘{‘ found street light.c
25 1503 Result is not defined in function: ” street light.c
0 102 Finished (with errors): 04 Jun 2015, 20:08:57 street light.mcppi
It is working. Check the video and which complier you are using ?
i have checked the video and i m doing the same thing as yours but when i try to build the program the error occurs. i m using Mikro C ..
Can you help me in solving the above issue.
I got the same errors when I complied the program.
Thanks in advance.
tell met the compiler name.
100-(adc_value/1023.0)*5=for read voltage
The issue is resolved .. thnx
one more thing to ask, it might look stupid but what is that component attached with resistor R3 .. i m not talking abt LDR the upper one ..
thnx in advance ….
That’s Great
It is 5 volt power supply
how did you resolved this issue.
please help.
how does it resolved? please help me , it is not working, it shows the errors that you have write?
How did you resolved the issue?
Please help me in solving it.
the code is not running the line:: adc_value=ADC_Read(0); i found Error here.
I need guidance in designing code for automatic street light system in AVR throgh ATMEGA16
Hi
Can you help me for project watt meter V/UHF.
Please mail me…
Thanks.
actually i want it to work with the IR sensors so as to conserve more energy so please provide help for this
1. how to connect IR sensor with this module.
2. n wat will b the changes in code.
I need help in designing a FPGA based automatic irrigation system
Great sir its very useful .
Sir please help me and give idea about the project on this topic.
need help in designing automatic room light contoll pic 16f877a need help with programing code
in mikro c
pls send complete code of above project
and also algorithm
i need a this project code for mplab xde
please upload again the video of automatic street light, it seems as it has removed.
please upload again the video so that we can have a look on it, and what mean adc_value=ADC_Read(0) ?
the programme is correct
do you hav code for 12MHz clock frequency ????
and using keil software ????
Can you please answer me a of a district in which LDR is used for save power.. It’s need because of my school project.. Some may question it.. please be fast to me..
BILAL, CAN WE WRIGHT SAME PROGRAM IN KAIL SOFTWARE ?
may i know what kind of diode is use in the circuit?
what model is that diode?
Plz the code isn’t workx, can some one help!!! Its compilx but not workx!
What’s the diff btw ADC, adc and Adc in the code? Will that not rep different things?
can i get this one in assembly language
sir ,please send me the circuit diagram with adding IR sensor and code for that circuit
May I know what is that component named L1 with 12v…
What is the type of Crystal oscillator used in the circuit diagram???
can you kindly explain the formula ? How did you have made this formula?
plz sir send me a complete c code of this project…..
hello
i m jyoti
can u give me a brief idea in this project
hi… Present I’m trying to get output in Proteus but it’s not coming… N may I know which part is troubling you?
can i use mikroc pro for pic v.6.0 or 8.2 version for executing above code.
Can you please upload the video again,it’s not available now
can you send me , the circuit diagram of “automatic street light based on vehicle moment” and its source code , im using microprocessor 8051…..!!!!
How to convert this into hex file
Bilal can i use this code for pic16f887
do you know how to programme this using mplab ide?
thank you in advance
What is the value of inductor in Henry ???
why it appear to be error when i’m done connected all the circuit?
please help me
how to measure LDR off time in pic program
can you give me complete code of this…
ask the blogger to give us answers
can you please tell me what is the advantage of using microcontroller other than LDR and relays
Can u plz send me the brief description of the working principle of the circuit ???????? and why 8Mhz crystal oscillator is used here?????????? plzz help me…its urgent
Sir the above ckt which you’ve given for ldr, doesn’t contain lcd for displaying output. so what if we want to put lcd there?? should we need right a program for lcd interfacing too???.
please suggest. it would be better if you give a program for this.
Will you please send me the code for ” auto intensity control of street lights using Atmega8 micro controller and which simulator I have to use?
sir can u please tell me the above circuit the resistor R1 (10 K) goes to where??? any supply?? thanks
can we make it for multiple street lights.?
Please send me the source code and circuit diagram for automatic street light using gsm and at89s52 microcontroller.
Please send me full code of this Project and this code working in keil..??
Comment Text*please help me to conduct thus project with title automatic street light controller
Hi am interested in this project can you please send me more details like the ratings of the components please
i need this code in keil uvision4
Can I get the full code for this please
Which software used for program
Need to manufacture street light controller, how can you help.E
Can you help me out of working with three LDR’s in the same circuit.
Will it work with 8051
I need the hex file sir please
Aslam o Alikum,Brother it is showing an error that ADC_Read is undeclared identifier , compiler i am using is mikroc for pic . Please bro is there any solution
I think you are using MPLAB but this code works with Mikroc for pic
is this code working in keil_v5?
is the code complete ?
pls send me the complete code of this project
its very urgent please…thanks in advance
can you please provide the same code in assembly language for atmega328p