SlideShare a Scribd company logo
1 of 22
Submitted by
19111037
Paduri Hrishitha
5th Semester
Biomedical Engineering
A solar charge controller is one of the key components of a solar panel system
within a battery. Their main job is to act as a charge regulator for the electricity
going into the battery bank from a solar array. Batteries with these buffers are
protected from overcharging and over-draining. They direct electricity from
the solar panels to the battery. It tells the solar panel system when to turn on or
off the charging. As a result, the batteries will not be damaged.
This unit performs 4 major functions:
 Charges the battery.
 It gives an indication when the battery is fully charged.
 Monitors the battery voltage and when it is minimum, cuts off the supply
to the load switch to remove the load connection.
 In case of overload, the load switch is in off condition ensuring the load
is cut off from the battery supply.
In the solar-powered lighting system, the solar charge controller plays an
important role as the system’s overall success depends mainly on it. It is
considered as an indispensable link between the solar panel, battery and load.
Semiconductors:
IC1 - AT89C2051 microcontroller
IC2 - ADC0831 analogue-to-digital
converter
IC3 - MCT2E optocoupler
IC4 - 7805, 5V regulator
T1 - BC547 npn transistor
T2 - BS170 n-channel MOSFET
T3 - IRF540 n-channel MOSFET
D1 - 6A4 rectifier diode
D2-D4 - 1N4007 rectifier diode
ZD1 - 7.5V zener diode
Resistors (all ¼-watt, ±5% carbon):
R1 - 8.2-kilo-ohm
R2 - 1.2-kilo-ohm
R3, R4, R6-R11 - 10-kilo-ohm
R5 - 20-kilo-ohm
R12 - 330-ohm
Capacitors:
C1 - 100µF, 63V electrolytic
C2 - 100µF, 16V electrolytic
C3, C7 - 0.1µF ceramic disk
C4, C9 - 10µF, 16V electrolytic
C5, C6 - 33pF ceramic disk
C8 - 0.01µF ceramic disk
Miscellaneous:
S1 - On/off switch
S2 - Push-to-on switch
RL1 - 12V, 1C/O relay
XTAL - 12MHz crystal
LCD - 16×2 line display
Solar panel - 10-40W
F1 - 10A fuse
- 10-pin bergstik SIP connector (male & female)
 Automatic dusk-to-dawn operation of the load
 Built-in digital voltmeter (0V-20V range)
 Parallel- or shunt-type regulation
 Overcharge protection
 System status display on LCD
 Deep-discharge protection
 Low battery lock
 Charging current changes to ‘pulsed’ at full charge
 Low current consumption
 Highly efficient design based on microcontroller
 Suitable for 10-40W solar panels for 10A load
 Microcontroller is powered up with 5V regulated DC supply from the battery. Once the
microcontroller is powered ON, it continuously monitors the battery voltage with the
help of ADC. A potential divider connected at the pin 2 of the ADC with resistor
arrangement, scale down the voltage from 0V-20V to 0V-05V. Then these values are
accordingly displayed on LCD display.
 This circuit is implemented with a parallel regulation technique which allows the
charging current to flow into the battery and once the battery is fully charged it stops
charging. By making this charging as pulsed, wasting of current as heat is reduced to
keep the battery topped-up.
 Microcontroller continuously gets the input signals from dusk to dawn sensor and based
on this input, it switches the load or charging relay. When this sensor gives the input to
microcontroller upon solar voltage presence, then microcontroller drives the LCD to
display the message as charging. Once battery is fully charged (reaches to 14V), then
microcontroller interrupts the charging by energizing the relay through the MOSFET. At
this time, microcontroller starts 5 minute timer and displays the message as Battery Full.
 After the timer elapsed, the relay reconnects the battery to solar panel. By this way solar
charging current is pulsed as long as the solar voltage is present.
 Whenever the solar panel voltage falls below the zener diode voltage of the dusk-to-
dawn sensor, then microcontroller receives it and activates the load through MOSFET
and accordingly displays the message as Load ON. Similarly, when the voltage falls
below the 10V of the dusk-to-dawn sensor then microcontroller turns OFF the load
through this MOSFET.
 By this way solar charging system charges the battery as well as protects the battery and
loads from over and under voltages.
Flow-chart of the source program
The source program for the project is written in Assembly language and assembled using Metalink’s
ASM51 assembler, which is freely available on the Internet for download. It is well commented for
easy understanding and works as per the flow-chart shown in figure below. The hex file ‘solar.hex’
is to be burnt into the microcontroller.
$MOD51; LCD 4-BIT MODE CONNECTIONS
RS EQU P1.7 ; LCD REGISTER SELECT LINE
EN EQU P1.6 ; LCD ENABLE LINE
DB4 EQU P1.5 ;
DB5 EQU P1.4 ;
DB6 EQU P1.3 ;
DB7 EQU P1.2 ; ADC0831 CONNECTIONS
CS EQU P3.0
CLK EQU P3.1
DO EQU P3.2 ; INPUT & OUTPUT
DYI EQU P3.4 ; SOLAR PANEL VOLTAGE SENSOR
CHG_RL EQU P3.5 ; CHARGING CONTROL RELAY
LD_RL EQU P3.7 ; LOAD CONTROL RELAY DSEG
ORG 0020H
VAL1: DS 1
VAL2: DS 1
VAL3: DS 1
ADC_VAL: DS 1
BUF: DS 1
ADC_VAL: DS 1
BUF: DS 1
CNT1: DS 1
CNT2: DS 1
IMG: DS 1
FLAGS: DS 1
OCF BIT FLAGS.0 ; OVER CHARGE FLAG
LBF BIT FLAGS.1 ; LOW BATT FLAG
CSEG
ORG 0000H
JMP MAIN
ORG 000BH ; Timer Interrupt0
JMP COUNTDOWN
MAIN: MOV SP, #50H
MOV P3, #0FFH
MOV P1,#0FFH
CLR CHG_RL
CLR LD_RL
LCALL PWR_DELAY
LCALL INIT
SETB CLK
SETB DO
SETB CS
SETB DYI
MOV VAL1, #00H
MOV VAL2, #00H
MOV VAL3, #00H
MOV FLAGS, #00H
LOADCHAR: MOV BUF, #40H
LCALL CMD
MOV DPTR, #RCHARG
REP:
CLR A
MOVC A,@A+DPTR
JZ SCREEN1
MOV BUF, A
LCALL DAT
INC DPTR
SJMP HERE
NEXT: MOV BUF, #0C0H
LCALL CMD
MOV DPTR, #MSG2
HERE1: CLR A
MOVC A,@A+DPTR
JZ OVER
MOV BUF, A
LCALL DAT
INC DPTR
SJMP HERE1
OVER: LCALL ONE_SEC_DELAY
LCALL ONE_SEC_DELAY
LCALL CLEAR
MOV BUF, #0C0H
LCALL CMD
MOV DPTR, #MSG7
HERE2: CLR A
MOVC A,@A+DPTR
JZ CONVERT
MOV BUF, A
LCALL DAT
INC DPTR
SJMP HERE2
CONVERT: LCALL DELAY
CLR CS ; INITIATE CONVERSION
SETB CLK
CLR CLK ; FIRST CLOCK
SETB CLK
CLR CLK ; SECOND CLOCK
MOV A, #00H ; CLEAR A
MOV R5, #08H ; 8 CLOCK PULSES
AGAIN: MOV C, DO
RLC A
SETB CLK
CLR CLK
DJNZ R5, AGAIN
SETB CS
MOV ADC_VAL, A
MOV B, #79D
MUL AB ; PRODUCT IN AB
MOV R1, B ; HIGH BYTE IN B
MOV R2, A ; LOW BYTE IN A
LCALL HEX2BCD
MOV VAL1, R7
MOV VAL2, R6
MOV VAL3, R5
LCALL SENDVAL2LCD
CHECK: JNB LBF, CHECK2 ; SEE IF ANY FLAGS ARE SET,
I , e LOW BATT FLAG OR BATTFULL FLAG
JB DYI, CONVERT
CHECK2: JNB OCF, PROCEED
JB DYI, NIGHT
SJMP CONVERT
PROCEED: JB DYI, NIGHT
CLR LD_RL ; OFF LOAD
CLR LBF ; CLEAR LOW BATT FLAG
MOV A, VAL2 ; SEE IF BATT.IS FULL
XRL A, #04H
JZ FULLCHG
CLR CHG_RL ; CONNECT BATT. TO PANEL
MOV DPTR, #MSG4 ; DISPLAY CHARGING MSG
MOV IMG, #00H
LCALL SENDSTAT2LCD
LJMP CONVERT
FULLCHG: SETB OCF ; SET OVERCHARGE FLAG
SETB CHG_RL ; DISCONNECT BATT.FROM PANEL
MOV TH0, #03CH ; START 5 MIN TIMER HERE
MOV TL0, #0B0H ; DISCONNECT BATT FROM PANEL
MOV CNT1, #200D
MOV CNT2, #30D
SETB ET0
SETB TR0
SETB EA
MOV DPTR, #MSG5 ; DISPLAY BATT.FULL MSG
MOV IMG, #01H
LCALL SENDSTAT2LCD
LJMP CONVERT
NIGHT: CLR CHG_RL ; RECONNECT BATT. TO PANEL
CLR TR0 ; STOP TIMER0 INCASE ITS RUNNING
CLR OCF ; CLEAR OVER CHARGE FLAG
SETB LD_RL ; CONNECT LOAD TO BATT.
MOV A, VAL1
XRL A, #00H
JZ LOWBAT
MOV DPTR, #MSG3 ; DISPLAY LOAD ON MSG
MOV IMG, #02H
LCALL SENDSTAT2LCD
LJMP CONVERT
LOWBAT: SETB LBF
CLR LD_RL ; DISCONNECT LOAD FROM BATT.
MOV DPTR, #MSG6 ; DISPLAY LOAD OFF MSG
MOV IMG, #03H
LCALL SENDSTAT2LCD
LJMP CONVERT
SENDVAL2LCD: MOV BUF, #0C7H
LCALL CMD
MOV A, VAL1
ORL A, #30H
MOV BUF, A
LCALL DAT
MOV A, VAL2
ORL A, #30H
MOV BUF, A
LCALL DAT
MOV BUF, #'.'
LCALL DAT
MOV A, VAL3
ORL A, #30H
MOV BUF, A
LCALL DAT
RET
SENDSTAT2LCD:
MOV BUF, #080H
LCALL CMD
HERE3: CLR A
MOVC A,@A+DPTR
JZ PICT
MOV BUF, A
LCALL DAT
INC DPTR
SJMP HERE3
PICT: MOV BUF, #0CEH
LCALL CMD
MOV BUF, IMG
LCALL DAT
BACK:
RET
;********************************
; TIMER0 ISR (5 MINUTES TIMER)
;********************************
COUNTDOWN: CLR TR0
MOV TH0, #03CH
MOV TL0, #0B0H
SETB TR0
DJNZ CNT1, BACK2
MOV CNT1, #200D
DJNZ CNT2, BACK2
CLR TR0 ; OFF 5 MIN TIMER
CLR ET0
CLR OCF ; CLEAR OVER CHARGE FLAG
CLR CHG_RL ; RE-CONNECT BATT TO PANEL
BACK2: RETI
Hex2BCD: MOV R3, #00D
MOV R4, #00D
MOV R5, #00D
MOV R6, #00D
MOV R7, #00D
ACALL H2B
RET
H2B: MOV B, #10D
MOV A, R2
DIV AB
MOV R3, B ;
MOV B, #10 ; R7, R6, R5, R4, R3
DIV AB
MOV R4, B
MOV R5, A
CJNE R1, #00H, HIGH_BYTE ; CHECK FOR HIGH BYTE
SJMP ENDD
HIGH_BYTE: MOV A, #6
ADD A, R3
MOV B, #10
DIV AB
MOV R3, B
ADD A, #5
ADD A, R4
MOV B, #10
DIV AB
MOV R4, B
ADD A, #2
ADD A, R5
MOV B, #10
DIV AB
MOV R5, B
CJNE R6, #00D, ADD_IT
SJMP CONTINUE
ADD_IT: ADD A, R6
CONTINUE: MOV R6, A
DJNZ R1, HIGH_BYTE
MOV B, #10D
MOV A, R6
DIV AB
MOV R6, B
MOV R7, A
ENDD: RET
ONE_SEC_DELAY: MOV R0, #10D ; One second delay routine
RZ3: MOV R1, #100D
RZ1: MOV R2, #250D
RZ2: NOP
NOP
DJNZ R2, RZ2
DJNZ R1, RZ1
DJNZ R0, RZ3
RET
PWR_DELAY:; 15 mSec DELAY FOR LCD TO INTIALIZE AFTER POWER-ON
MOV R4, #100D
H2: MOV R3, #250D
H1: DJNZ R3, H1
DJNZ R4, H2
RET;******LCD SUBROUTINES********
CMD: PUSH ACC ; SAVE ACCUMULATOR
SETB EN
CLR RS ; SELECT SEND COMMAND
MOV A, BUF ; PUT DATA BYTE IN ACC
MOV C, ACC.4 ; LOAD HIGH NIBBLE ON DATA BUS
MOV DB4, C ; ONE BIT AT A TIME USING...
MOV C, ACC.5 ; BIT MOVE OPERATOINS
MOV DB5, C
MOV C, ACC.6
MOV DB6, C
MOV C, ACC.7
MOV DB7, C
CLR EN
NOP
SETB EN ; PULSE THE ENABLE LINE
MOV C, ACC.0 ; SIMILARLY, LOAD LOW NIBBLE
MOV DB4, C
MOV C, ACC.1
MOV DB5, C
MOV C, ACC.2
MOV DB6, C
MOV C, ACC.3
MOV DB7, C
CLR EN
NOP
SETB EN ; PULSE THE ENABLE LINENOP
LCALL MSDELAY
POP ACC
RET;******LCD SUBROUTINES******
CLEAR: MOV BUF, #01H
LCALL CMD
RET;******LCD SUBROUTINES*******
DDELAY: MOV R5, #41D ; 4.1 mS DELAY
QT2: MOV R6, #50D
QT1: DJNZ R6, QT1
DJNZ R5, QT2
RET;******LCD SUBROUTINES*******
MSDELAY: MOV R5, #26D
QT22: MOV R6, #50D
QT11: DJNZ R6, QT11
DJNZ R5, QT22
RET;******LCD SUBROUTINES*******
INIT: MOV BUF, #30H ; FUNCTION SET -DATA BITS, LINES, FONTS
LCALL CMD
ACALL DDELAY ; INITIAL DELAY 4.1MSEC
MOV BUF, #30H ; FUNCTION SET - DATA BITS, LINES, FONTS
LCALL CMD
ACALL DDELAY ; INITIAL DELAY 4.1MSEC
MOV BUF, #30H ; FUNCTION SET-DATA BITS, LINES, FONTS
LCALL CMD
ACALL DDELAY ; INITIAL DELAY 4.1MSEC
MOV BUF, #28H ; 2 LINES 5X7, 4-BIT MODE
LCALL CMD
MOV BUF, #0CH ; DISPLAY ON
LCALL CMD
MOV BUF, #01H ; CLEAR DISPLAY, HOME CURSOR
LCALL CMD
MOV BUF, #06H ; SET ENTRY MODE
LCALL CMD ; INCREMENT CURSOR RIGHT, NO SHIFT
RET
ORG 0320H
MSG1: DB ' SOLAR CHARGE ', 00H
MSG2: DB ' DIPESH, SHRIPAL ', 00H
MSG3: DB ' LOADON ', 00H
MSG4: DB ' CHARGING ', 00H
MSG5: DB ' BATTERY FULL ', 00H
MSG6: DB ' BAT.LOW-LOAD OFF', 00H
MSG7: DB ' Volts: ', 00H
ORG 0400H
RCHARG: DB 04D, 31D, 17D, 31D, 17D, 31D, 17D, 31D ; CHARGING
DB 04D, 31D, 31D, 31D, 31D, 31D, 31D, 31D ; FULL
DB 31D, 31D, 14D, 04D, 04D, 14D, 31D, 31D ; LOAD
DB 04D, 31D, 17D, 17D, 17D, 17D, 17D, 31D ; LOW BATT
DB 31D, 31D, 31D, 31D, 31D, 31D, 31D, 31D
DB 31D, 31D, 31D, 31D, 31D, 31D, 31D, 31D
DB 31D, 31D, 31D, 31D, 31D, 31D, 31D, 31D
DB 031D, 31D, 31D, 31D, 31D, 31D, 31D, 31D, 00H
END
APPLICATIONS:-
 These include solar lanterns, solar home lighting systems, solar streetlights, solar garden lights
and solar power packs
 A charge controller for a wind-electric or hydro-electric system must protect batteries from
overcharge, just a PV controller
 It can also be used in automobiles to increase their battery life.
 It can be also used a supplement for the inverter to control battery charging etc.
 Coast guard navigation
 Off-grid and grid –connected homes
 Railroad signaling
 Satellites and space station
 Outdoor lighting‘s
 Telecommunication and water pumping etc.
ADVANTAGES:-
 Salient and low maintenance
 Solid states with no moving parts
 High-quality powers
 Life times of 20 to 30 year
 Flexible and reliable
 Modular and expandable
LIMITATIONS:-
 Large initial setup is required to supply high rating solar energy supplies.
 Solar panels are costlier and its bulkiness increases to have large power suppliesof dc.
 Solar panels are very delicate and a slight mishandling may lead to destruction of solar cells
which are embedded in solar panels
CONCLUSION
By using the technique of microcontroller based solar charger we can accurately control the voltage
of solar Charger. It is automatic control the load, not need to control manually and it is reduce the
damages of battery due to over charging.
THANK YOU

More Related Content

Similar to MICROCONTROLLER 8051-BASED SOLAR CHARGE CONTROLLER.pptx

Similar to MICROCONTROLLER 8051-BASED SOLAR CHARGE CONTROLLER.pptx (20)

Applications of microcontroller(8051)
Applications of microcontroller(8051) Applications of microcontroller(8051)
Applications of microcontroller(8051)
 
Lect2 up140 (100325)
Lect2 up140 (100325)Lect2 up140 (100325)
Lect2 up140 (100325)
 
Digital stop watch
Digital stop watchDigital stop watch
Digital stop watch
 
Electrónica: Probador de LOPT/FBT Flyback
Electrónica: Probador de LOPT/FBT FlybackElectrónica: Probador de LOPT/FBT Flyback
Electrónica: Probador de LOPT/FBT Flyback
 
Probador de-flybacks
Probador de-flybacksProbador de-flybacks
Probador de-flybacks
 
8051 FINIAL
8051 FINIAL8051 FINIAL
8051 FINIAL
 
Ds1307 datasheet
Ds1307 datasheetDs1307 datasheet
Ds1307 datasheet
 
RT7257E Datasheet PDF
RT7257E Datasheet PDFRT7257E Datasheet PDF
RT7257E Datasheet PDF
 
Simple Automatic Water Level Controller
Simple Automatic Water Level ControllerSimple Automatic Water Level Controller
Simple Automatic Water Level Controller
 
Gsm based transformer fault detection system
Gsm based transformer fault detection systemGsm based transformer fault detection system
Gsm based transformer fault detection system
 
LT3650 - Li-Ion Battery Charger
LT3650 - Li-Ion  Battery ChargerLT3650 - Li-Ion  Battery Charger
LT3650 - Li-Ion Battery Charger
 
Controlling of DC Motor using IC 555 Timer
Controlling of DC Motor using IC 555 TimerControlling of DC Motor using IC 555 Timer
Controlling of DC Motor using IC 555 Timer
 
Original Power Supply IC LNK616PG LNK616P LNK616 DIP-7 New
Original Power Supply IC LNK616PG LNK616P LNK616 DIP-7 NewOriginal Power Supply IC LNK616PG LNK616P LNK616 DIP-7 New
Original Power Supply IC LNK616PG LNK616P LNK616 DIP-7 New
 
ISL97684 Led Driver Evaluation Board User Manual
ISL97684 Led Driver Evaluation Board User ManualISL97684 Led Driver Evaluation Board User Manual
ISL97684 Led Driver Evaluation Board User Manual
 
Mp8126 r1.03 1384507
Mp8126 r1.03 1384507Mp8126 r1.03 1384507
Mp8126 r1.03 1384507
 
Chp7 pic 16 f84 interfacing - copy
Chp7 pic 16 f84 interfacing - copyChp7 pic 16 f84 interfacing - copy
Chp7 pic 16 f84 interfacing - copy
 
555 timer tutorial
555 timer tutorial555 timer tutorial
555 timer tutorial
 
Grid synchronisation
Grid synchronisationGrid synchronisation
Grid synchronisation
 
Lm555
Lm555Lm555
Lm555
 
Lm555
Lm555Lm555
Lm555
 

Recently uploaded

Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
Analog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAnalog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAbhinavSharma374939
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 

Recently uploaded (20)

Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
Analog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAnalog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog Converter
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 

MICROCONTROLLER 8051-BASED SOLAR CHARGE CONTROLLER.pptx

  • 1. Submitted by 19111037 Paduri Hrishitha 5th Semester Biomedical Engineering
  • 2. A solar charge controller is one of the key components of a solar panel system within a battery. Their main job is to act as a charge regulator for the electricity going into the battery bank from a solar array. Batteries with these buffers are protected from overcharging and over-draining. They direct electricity from the solar panels to the battery. It tells the solar panel system when to turn on or off the charging. As a result, the batteries will not be damaged. This unit performs 4 major functions:  Charges the battery.  It gives an indication when the battery is fully charged.  Monitors the battery voltage and when it is minimum, cuts off the supply to the load switch to remove the load connection.  In case of overload, the load switch is in off condition ensuring the load is cut off from the battery supply. In the solar-powered lighting system, the solar charge controller plays an important role as the system’s overall success depends mainly on it. It is considered as an indispensable link between the solar panel, battery and load.
  • 3.
  • 4.
  • 5. Semiconductors: IC1 - AT89C2051 microcontroller IC2 - ADC0831 analogue-to-digital converter IC3 - MCT2E optocoupler IC4 - 7805, 5V regulator T1 - BC547 npn transistor T2 - BS170 n-channel MOSFET T3 - IRF540 n-channel MOSFET D1 - 6A4 rectifier diode D2-D4 - 1N4007 rectifier diode ZD1 - 7.5V zener diode Resistors (all ¼-watt, ±5% carbon): R1 - 8.2-kilo-ohm R2 - 1.2-kilo-ohm R3, R4, R6-R11 - 10-kilo-ohm R5 - 20-kilo-ohm R12 - 330-ohm Capacitors: C1 - 100µF, 63V electrolytic C2 - 100µF, 16V electrolytic C3, C7 - 0.1µF ceramic disk C4, C9 - 10µF, 16V electrolytic C5, C6 - 33pF ceramic disk C8 - 0.01µF ceramic disk Miscellaneous: S1 - On/off switch S2 - Push-to-on switch RL1 - 12V, 1C/O relay XTAL - 12MHz crystal LCD - 16×2 line display Solar panel - 10-40W F1 - 10A fuse - 10-pin bergstik SIP connector (male & female)
  • 6.  Automatic dusk-to-dawn operation of the load  Built-in digital voltmeter (0V-20V range)  Parallel- or shunt-type regulation  Overcharge protection  System status display on LCD  Deep-discharge protection  Low battery lock  Charging current changes to ‘pulsed’ at full charge  Low current consumption  Highly efficient design based on microcontroller  Suitable for 10-40W solar panels for 10A load
  • 7.  Microcontroller is powered up with 5V regulated DC supply from the battery. Once the microcontroller is powered ON, it continuously monitors the battery voltage with the help of ADC. A potential divider connected at the pin 2 of the ADC with resistor arrangement, scale down the voltage from 0V-20V to 0V-05V. Then these values are accordingly displayed on LCD display.  This circuit is implemented with a parallel regulation technique which allows the charging current to flow into the battery and once the battery is fully charged it stops charging. By making this charging as pulsed, wasting of current as heat is reduced to keep the battery topped-up.  Microcontroller continuously gets the input signals from dusk to dawn sensor and based on this input, it switches the load or charging relay. When this sensor gives the input to microcontroller upon solar voltage presence, then microcontroller drives the LCD to display the message as charging. Once battery is fully charged (reaches to 14V), then microcontroller interrupts the charging by energizing the relay through the MOSFET. At this time, microcontroller starts 5 minute timer and displays the message as Battery Full.  After the timer elapsed, the relay reconnects the battery to solar panel. By this way solar charging current is pulsed as long as the solar voltage is present.  Whenever the solar panel voltage falls below the zener diode voltage of the dusk-to- dawn sensor, then microcontroller receives it and activates the load through MOSFET and accordingly displays the message as Load ON. Similarly, when the voltage falls below the 10V of the dusk-to-dawn sensor then microcontroller turns OFF the load through this MOSFET.  By this way solar charging system charges the battery as well as protects the battery and loads from over and under voltages.
  • 8. Flow-chart of the source program The source program for the project is written in Assembly language and assembled using Metalink’s ASM51 assembler, which is freely available on the Internet for download. It is well commented for easy understanding and works as per the flow-chart shown in figure below. The hex file ‘solar.hex’ is to be burnt into the microcontroller.
  • 9. $MOD51; LCD 4-BIT MODE CONNECTIONS RS EQU P1.7 ; LCD REGISTER SELECT LINE EN EQU P1.6 ; LCD ENABLE LINE DB4 EQU P1.5 ; DB5 EQU P1.4 ; DB6 EQU P1.3 ; DB7 EQU P1.2 ; ADC0831 CONNECTIONS CS EQU P3.0 CLK EQU P3.1 DO EQU P3.2 ; INPUT & OUTPUT DYI EQU P3.4 ; SOLAR PANEL VOLTAGE SENSOR CHG_RL EQU P3.5 ; CHARGING CONTROL RELAY LD_RL EQU P3.7 ; LOAD CONTROL RELAY DSEG ORG 0020H VAL1: DS 1 VAL2: DS 1 VAL3: DS 1 ADC_VAL: DS 1 BUF: DS 1 ADC_VAL: DS 1 BUF: DS 1 CNT1: DS 1 CNT2: DS 1 IMG: DS 1 FLAGS: DS 1
  • 10. OCF BIT FLAGS.0 ; OVER CHARGE FLAG LBF BIT FLAGS.1 ; LOW BATT FLAG CSEG ORG 0000H JMP MAIN ORG 000BH ; Timer Interrupt0 JMP COUNTDOWN MAIN: MOV SP, #50H MOV P3, #0FFH MOV P1,#0FFH CLR CHG_RL CLR LD_RL LCALL PWR_DELAY LCALL INIT SETB CLK SETB DO SETB CS SETB DYI MOV VAL1, #00H MOV VAL2, #00H MOV VAL3, #00H MOV FLAGS, #00H LOADCHAR: MOV BUF, #40H LCALL CMD MOV DPTR, #RCHARG REP: CLR A MOVC A,@A+DPTR JZ SCREEN1 MOV BUF, A
  • 11. LCALL DAT INC DPTR SJMP HERE NEXT: MOV BUF, #0C0H LCALL CMD MOV DPTR, #MSG2 HERE1: CLR A MOVC A,@A+DPTR JZ OVER MOV BUF, A LCALL DAT INC DPTR SJMP HERE1 OVER: LCALL ONE_SEC_DELAY LCALL ONE_SEC_DELAY LCALL CLEAR MOV BUF, #0C0H LCALL CMD MOV DPTR, #MSG7 HERE2: CLR A MOVC A,@A+DPTR JZ CONVERT MOV BUF, A LCALL DAT INC DPTR SJMP HERE2 CONVERT: LCALL DELAY CLR CS ; INITIATE CONVERSION SETB CLK CLR CLK ; FIRST CLOCK SETB CLK
  • 12. CLR CLK ; SECOND CLOCK MOV A, #00H ; CLEAR A MOV R5, #08H ; 8 CLOCK PULSES AGAIN: MOV C, DO RLC A SETB CLK CLR CLK DJNZ R5, AGAIN SETB CS MOV ADC_VAL, A MOV B, #79D MUL AB ; PRODUCT IN AB MOV R1, B ; HIGH BYTE IN B MOV R2, A ; LOW BYTE IN A LCALL HEX2BCD MOV VAL1, R7 MOV VAL2, R6 MOV VAL3, R5 LCALL SENDVAL2LCD CHECK: JNB LBF, CHECK2 ; SEE IF ANY FLAGS ARE SET, I , e LOW BATT FLAG OR BATTFULL FLAG JB DYI, CONVERT CHECK2: JNB OCF, PROCEED JB DYI, NIGHT SJMP CONVERT PROCEED: JB DYI, NIGHT CLR LD_RL ; OFF LOAD CLR LBF ; CLEAR LOW BATT FLAG MOV A, VAL2 ; SEE IF BATT.IS FULL XRL A, #04H
  • 13. JZ FULLCHG CLR CHG_RL ; CONNECT BATT. TO PANEL MOV DPTR, #MSG4 ; DISPLAY CHARGING MSG MOV IMG, #00H LCALL SENDSTAT2LCD LJMP CONVERT FULLCHG: SETB OCF ; SET OVERCHARGE FLAG SETB CHG_RL ; DISCONNECT BATT.FROM PANEL MOV TH0, #03CH ; START 5 MIN TIMER HERE MOV TL0, #0B0H ; DISCONNECT BATT FROM PANEL MOV CNT1, #200D MOV CNT2, #30D SETB ET0 SETB TR0 SETB EA MOV DPTR, #MSG5 ; DISPLAY BATT.FULL MSG MOV IMG, #01H LCALL SENDSTAT2LCD LJMP CONVERT NIGHT: CLR CHG_RL ; RECONNECT BATT. TO PANEL CLR TR0 ; STOP TIMER0 INCASE ITS RUNNING CLR OCF ; CLEAR OVER CHARGE FLAG SETB LD_RL ; CONNECT LOAD TO BATT. MOV A, VAL1 XRL A, #00H JZ LOWBAT MOV DPTR, #MSG3 ; DISPLAY LOAD ON MSG MOV IMG, #02H LCALL SENDSTAT2LCD LJMP CONVERT
  • 14. LOWBAT: SETB LBF CLR LD_RL ; DISCONNECT LOAD FROM BATT. MOV DPTR, #MSG6 ; DISPLAY LOAD OFF MSG MOV IMG, #03H LCALL SENDSTAT2LCD LJMP CONVERT SENDVAL2LCD: MOV BUF, #0C7H LCALL CMD MOV A, VAL1 ORL A, #30H MOV BUF, A LCALL DAT MOV A, VAL2 ORL A, #30H MOV BUF, A LCALL DAT MOV BUF, #'.' LCALL DAT MOV A, VAL3 ORL A, #30H MOV BUF, A LCALL DAT RET SENDSTAT2LCD: MOV BUF, #080H LCALL CMD HERE3: CLR A MOVC A,@A+DPTR JZ PICT MOV BUF, A LCALL DAT
  • 15. INC DPTR SJMP HERE3 PICT: MOV BUF, #0CEH LCALL CMD MOV BUF, IMG LCALL DAT BACK: RET ;******************************** ; TIMER0 ISR (5 MINUTES TIMER) ;******************************** COUNTDOWN: CLR TR0 MOV TH0, #03CH MOV TL0, #0B0H SETB TR0 DJNZ CNT1, BACK2 MOV CNT1, #200D DJNZ CNT2, BACK2 CLR TR0 ; OFF 5 MIN TIMER CLR ET0 CLR OCF ; CLEAR OVER CHARGE FLAG CLR CHG_RL ; RE-CONNECT BATT TO PANEL BACK2: RETI Hex2BCD: MOV R3, #00D MOV R4, #00D MOV R5, #00D MOV R6, #00D MOV R7, #00D ACALL H2B RET H2B: MOV B, #10D MOV A, R2 DIV AB MOV R3, B ;
  • 16. MOV B, #10 ; R7, R6, R5, R4, R3 DIV AB MOV R4, B MOV R5, A CJNE R1, #00H, HIGH_BYTE ; CHECK FOR HIGH BYTE SJMP ENDD HIGH_BYTE: MOV A, #6 ADD A, R3 MOV B, #10 DIV AB MOV R3, B ADD A, #5 ADD A, R4 MOV B, #10 DIV AB MOV R4, B ADD A, #2 ADD A, R5 MOV B, #10 DIV AB MOV R5, B CJNE R6, #00D, ADD_IT SJMP CONTINUE ADD_IT: ADD A, R6 CONTINUE: MOV R6, A DJNZ R1, HIGH_BYTE MOV B, #10D MOV A, R6 DIV AB MOV R6, B MOV R7, A
  • 17. ENDD: RET ONE_SEC_DELAY: MOV R0, #10D ; One second delay routine RZ3: MOV R1, #100D RZ1: MOV R2, #250D RZ2: NOP NOP DJNZ R2, RZ2 DJNZ R1, RZ1 DJNZ R0, RZ3 RET PWR_DELAY:; 15 mSec DELAY FOR LCD TO INTIALIZE AFTER POWER-ON MOV R4, #100D H2: MOV R3, #250D H1: DJNZ R3, H1 DJNZ R4, H2 RET;******LCD SUBROUTINES******** CMD: PUSH ACC ; SAVE ACCUMULATOR SETB EN CLR RS ; SELECT SEND COMMAND MOV A, BUF ; PUT DATA BYTE IN ACC MOV C, ACC.4 ; LOAD HIGH NIBBLE ON DATA BUS MOV DB4, C ; ONE BIT AT A TIME USING... MOV C, ACC.5 ; BIT MOVE OPERATOINS MOV DB5, C MOV C, ACC.6 MOV DB6, C MOV C, ACC.7 MOV DB7, C CLR EN NOP SETB EN ; PULSE THE ENABLE LINE MOV C, ACC.0 ; SIMILARLY, LOAD LOW NIBBLE
  • 18. MOV DB4, C MOV C, ACC.1 MOV DB5, C MOV C, ACC.2 MOV DB6, C MOV C, ACC.3 MOV DB7, C CLR EN NOP SETB EN ; PULSE THE ENABLE LINENOP LCALL MSDELAY POP ACC RET;******LCD SUBROUTINES****** CLEAR: MOV BUF, #01H LCALL CMD RET;******LCD SUBROUTINES******* DDELAY: MOV R5, #41D ; 4.1 mS DELAY QT2: MOV R6, #50D QT1: DJNZ R6, QT1 DJNZ R5, QT2 RET;******LCD SUBROUTINES******* MSDELAY: MOV R5, #26D QT22: MOV R6, #50D QT11: DJNZ R6, QT11 DJNZ R5, QT22 RET;******LCD SUBROUTINES******* INIT: MOV BUF, #30H ; FUNCTION SET -DATA BITS, LINES, FONTS LCALL CMD ACALL DDELAY ; INITIAL DELAY 4.1MSEC MOV BUF, #30H ; FUNCTION SET - DATA BITS, LINES, FONTS
  • 19. LCALL CMD ACALL DDELAY ; INITIAL DELAY 4.1MSEC MOV BUF, #30H ; FUNCTION SET-DATA BITS, LINES, FONTS LCALL CMD ACALL DDELAY ; INITIAL DELAY 4.1MSEC MOV BUF, #28H ; 2 LINES 5X7, 4-BIT MODE LCALL CMD MOV BUF, #0CH ; DISPLAY ON LCALL CMD MOV BUF, #01H ; CLEAR DISPLAY, HOME CURSOR LCALL CMD MOV BUF, #06H ; SET ENTRY MODE LCALL CMD ; INCREMENT CURSOR RIGHT, NO SHIFT RET ORG 0320H MSG1: DB ' SOLAR CHARGE ', 00H MSG2: DB ' DIPESH, SHRIPAL ', 00H MSG3: DB ' LOADON ', 00H MSG4: DB ' CHARGING ', 00H MSG5: DB ' BATTERY FULL ', 00H MSG6: DB ' BAT.LOW-LOAD OFF', 00H MSG7: DB ' Volts: ', 00H ORG 0400H
  • 20. RCHARG: DB 04D, 31D, 17D, 31D, 17D, 31D, 17D, 31D ; CHARGING DB 04D, 31D, 31D, 31D, 31D, 31D, 31D, 31D ; FULL DB 31D, 31D, 14D, 04D, 04D, 14D, 31D, 31D ; LOAD DB 04D, 31D, 17D, 17D, 17D, 17D, 17D, 31D ; LOW BATT DB 31D, 31D, 31D, 31D, 31D, 31D, 31D, 31D DB 31D, 31D, 31D, 31D, 31D, 31D, 31D, 31D DB 31D, 31D, 31D, 31D, 31D, 31D, 31D, 31D DB 031D, 31D, 31D, 31D, 31D, 31D, 31D, 31D, 00H END APPLICATIONS:-  These include solar lanterns, solar home lighting systems, solar streetlights, solar garden lights and solar power packs  A charge controller for a wind-electric or hydro-electric system must protect batteries from overcharge, just a PV controller  It can also be used in automobiles to increase their battery life.  It can be also used a supplement for the inverter to control battery charging etc.  Coast guard navigation  Off-grid and grid –connected homes  Railroad signaling  Satellites and space station  Outdoor lighting‘s  Telecommunication and water pumping etc.
  • 21. ADVANTAGES:-  Salient and low maintenance  Solid states with no moving parts  High-quality powers  Life times of 20 to 30 year  Flexible and reliable  Modular and expandable LIMITATIONS:-  Large initial setup is required to supply high rating solar energy supplies.  Solar panels are costlier and its bulkiness increases to have large power suppliesof dc.  Solar panels are very delicate and a slight mishandling may lead to destruction of solar cells which are embedded in solar panels CONCLUSION By using the technique of microcontroller based solar charger we can accurately control the voltage of solar Charger. It is automatic control the load, not need to control manually and it is reduce the damages of battery due to over charging.