mechhead
10 W
How to impliment MPPT tracking of a solar array to drive an electric pump using a flipsky vesc mini 4.2
how i used a cheap flipsky vesc to replace a solar pump controller and program it to operate directly from solar panels with no battery and serve as an mppt variable speed pump driver that varies the pump speed with the changing solar panel output
I was already familiar with the vesc from using them on ebikes i thought a higher power controller was in order as I had already replaced the worn out 60w industrial servo that drives the crank of the Sunmill pump. This pump is a simple double acting piston pump with a crank that has many bolt holes in it to allow different stroke lengths and delivery pressure and allow optimisation for different power levels and variable delivery heads.
Originally powered with a small 60w industrial nema frame spur gear reducer, this wore out after a few years and i replaced the motor with a more substantial 300w unit. that turns 90 rpm at 24v unloaded
The original controller only out put a max of 90w and we needed more water
The vesc has two clever functions without which this would not be possilble. the battery voltage power rollback function that allows motor throttling with a supply voltage variance, the other is to thermally throttle both itself and the motor its driving.
For mppt tracking and to preserve the line voltage from the panels to the controller the battery cutoff start is set at the mppt voltage for the chosen array. In this case the cable from the panel array was some 50 meters , the best power point was somewhat above the panel spec voltage because of the long cable and the pump ran fastest at 36v setting for the battery cutoff start and 34v for the cutoff end. below this voltage the controller does not attempt to turn the motor .
The motor is a dc brushed motor so the set up was easy
The vesc is setup with safe start off and the high throttle speed is set on the adc sensor to a value below the noise signal, the controller attempts to go for maximum speed should the voltage be above 36 as the voltage falls below this level the motor slows down and the line voltage is preserved. initially it had trouble with startups in the morning running through fault loops for the first few minutes of the day getting battery undervoltage fault everytime it starts up and shuts itself down in a loop until the sun is strong enough. Eventually when the brightness level rises to that of heavy overcast the pump will start to turn slowly. it performs very well once it starts up properly pumping at about 130 rpm in full sun down to very slow strokes that continue to move water in grey of winter overcast. two year on it still runs, the motor slows on hot days on the thermal ramp running at a max of about 13amps in full sun then slowing to about 9 on a 40 degree day that is with motor temps set to 60 deg C begin throttling and 65 degrees c for the stop value
Now for another this time using the cheap flipsky 75-100 vesc
Now its new project time and another pump requires installation, this is a more powerful model of three phase inrunner motor on a Lorentz cs600-15 swimming pool pump i got cheap without its expensive solar controller ($2300 aud ) its maximum q is 16 m3 hr @open flow @ 560w and hmax is 13m @48v 340 watts
This time i found a custom app example from Benjamin Vedder that can run the pump from a switch and pot on the adc port or, this is great because i can use a low water sensor to turn it on and off in series with another switch and a turn pot for a speed setting this is nice for testing purposes the system is still in the design phase i have the pump and controller in hand but the array is not yet built. i plan to test it on the bench with a pipe loop and a restrictor valve on the pump and my 60v lab power supply to drive it
the plan is a 63v oc array with an mppt voltage of 48
It will lift water against a 2 to 4.5m head from a pond that catches a small creek into an offstream dam
For any of you that read this that are into programming vesc i would like further input on coding for this type of autonomous startup it has a great potential to serve a great many different kinds of solar pumping operations
how i used a cheap flipsky vesc to replace a solar pump controller and program it to operate directly from solar panels with no battery and serve as an mppt variable speed pump driver that varies the pump speed with the changing solar panel output
I was already familiar with the vesc from using them on ebikes i thought a higher power controller was in order as I had already replaced the worn out 60w industrial servo that drives the crank of the Sunmill pump. This pump is a simple double acting piston pump with a crank that has many bolt holes in it to allow different stroke lengths and delivery pressure and allow optimisation for different power levels and variable delivery heads.
Originally powered with a small 60w industrial nema frame spur gear reducer, this wore out after a few years and i replaced the motor with a more substantial 300w unit. that turns 90 rpm at 24v unloaded
The original controller only out put a max of 90w and we needed more water
The vesc has two clever functions without which this would not be possilble. the battery voltage power rollback function that allows motor throttling with a supply voltage variance, the other is to thermally throttle both itself and the motor its driving.
For mppt tracking and to preserve the line voltage from the panels to the controller the battery cutoff start is set at the mppt voltage for the chosen array. In this case the cable from the panel array was some 50 meters , the best power point was somewhat above the panel spec voltage because of the long cable and the pump ran fastest at 36v setting for the battery cutoff start and 34v for the cutoff end. below this voltage the controller does not attempt to turn the motor .
The motor is a dc brushed motor so the set up was easy
The vesc is setup with safe start off and the high throttle speed is set on the adc sensor to a value below the noise signal, the controller attempts to go for maximum speed should the voltage be above 36 as the voltage falls below this level the motor slows down and the line voltage is preserved. initially it had trouble with startups in the morning running through fault loops for the first few minutes of the day getting battery undervoltage fault everytime it starts up and shuts itself down in a loop until the sun is strong enough. Eventually when the brightness level rises to that of heavy overcast the pump will start to turn slowly. it performs very well once it starts up properly pumping at about 130 rpm in full sun down to very slow strokes that continue to move water in grey of winter overcast. two year on it still runs, the motor slows on hot days on the thermal ramp running at a max of about 13amps in full sun then slowing to about 9 on a 40 degree day that is with motor temps set to 60 deg C begin throttling and 65 degrees c for the stop value
Now for another this time using the cheap flipsky 75-100 vesc
Now its new project time and another pump requires installation, this is a more powerful model of three phase inrunner motor on a Lorentz cs600-15 swimming pool pump i got cheap without its expensive solar controller ($2300 aud ) its maximum q is 16 m3 hr @open flow @ 560w and hmax is 13m @48v 340 watts
This time i found a custom app example from Benjamin Vedder that can run the pump from a switch and pot on the adc port or, this is great because i can use a low water sensor to turn it on and off in series with another switch and a turn pot for a speed setting this is nice for testing purposes the system is still in the design phase i have the pump and controller in hand but the array is not yet built. i plan to test it on the bench with a pipe loop and a restrictor valve on the pump and my 60v lab power supply to drive it
the plan is a 63v oc array with an mppt voltage of 48
It will lift water against a 2 to 4.5m head from a pond that catches a small creek into an offstream dam
For any of you that read this that are into programming vesc i would like further input on coding for this type of autonomous startup it has a great potential to serve a great many different kinds of solar pumping operations