Hi all,
I am going to make a MPPT Solar Charger for 12v lead acid battery. I wish to use buck or sepic converter. A microcontroller will generate pwm to control voltage. Most of the codes I found uses calculation for solar voltage and current to determine maximum power point. Then sets the pwm. Like for example:
I want to know whether it is really necessary to read solar current. Because finally the pwm has to be set to produce about 14v to charge a 12v battery. If the MPP is found at 17v set pwm to 14v, if MPP is found at 18v, 19v or other - set pwm to 14v to charge the battery. So, what is the use of reading solar current, unless you want to display the MPP or other info on LCD etc.? Does it help charging the battery more efficiently? If yes, please tell me how?
What happens if I code like bellow:
Even if I read solar current * voltage, at last I have to set pwm for 14 volts. If I straight set the voltage to 14 volts (considering solar voltage is more than 14), the deducted voltage will be converted to current and help charging the battery faster.
I beg your pardon for any mistake might have made by me due to inexperience and lack of knowledge.
Your suggestion please and thanks a lot.
I am going to make a MPPT Solar Charger for 12v lead acid battery. I wish to use buck or sepic converter. A microcontroller will generate pwm to control voltage. Most of the codes I found uses calculation for solar voltage and current to determine maximum power point. Then sets the pwm. Like for example:
Code:
current = adc(pv_current_channel);
voltage = adc(pv_voltage_channel);
battery_voltage=adc(battery_channel);
power_new = current * voltage;
if (power_old >= power_new) {
decrease_duty_cycle ;
else if (power_old < power_new) {
increase_duty_cycle;
}
power_old = power_new;
I want to know whether it is really necessary to read solar current. Because finally the pwm has to be set to produce about 14v to charge a 12v battery. If the MPP is found at 17v set pwm to 14v, if MPP is found at 18v, 19v or other - set pwm to 14v to charge the battery. So, what is the use of reading solar current, unless you want to display the MPP or other info on LCD etc.? Does it help charging the battery more efficiently? If yes, please tell me how?
What happens if I code like bellow:
Code:
voltage = adc(pv_voltage_channel);
battery_voltage=adc(battery_channel);
if (battery_voltage < 12 && voltage > 14) {
adjust_duty_cycle_to_set_14v ;
}
Even if I read solar current * voltage, at last I have to set pwm for 14 volts. If I straight set the voltage to 14 volts (considering solar voltage is more than 14), the deducted voltage will be converted to current and help charging the battery faster.
I beg your pardon for any mistake might have made by me due to inexperience and lack of knowledge.
Your suggestion please and thanks a lot.