Re-engineering my Dolphin
by PoolBoy
(Washington, DC)
I love my dolphin except for when it breaks. This is my second unit on its second drive box. They last about three to four years with my use. So I have taken my box apart and there is no water damage, no visible component damage, it goes through the test sequence and then shuts off. I have cleaned both motors and still no luck. Always the same story. I have always bought the rebuilt boxes and in my discussions with the service center, a german fellow as I remember, he always chastised me for taking the box apart. He claimed that the boxes are nitrogen charged at a certain numbers of atmospheres. This makes perfect sense since nitrogen is much more thermally stable than air. So for my project I have installed a Schrader valve in the cover. I have not been able to get the box to hold more than a couple of pounds though. It leaks right past the o-ring. Just being filled with nitrogen is probably better than air but I would like a little more positive pressure. Anyway on to the real problem.
So I have set off on retrofitting the unit with an alternative controller. I know others have talked about this in the past but nothing has come to pass. So my first attempt will be with some basic Arduino hardware. An Uno, L298 bridge, and a tilt sensor. I am basing my code on what I have observed and I am sure there is probably a lot more baked into the factory controller. I can do a pretty good job brushing and vacuuming my pool so if I can just get the machine to do just a little better I will be happy. This will be a little clumsy mounted in the box but if it works I can move on to something more purpose built and probably cheaper than the $35 worth of Arduino gear I borrowed from my son.
So I am hoping for some input and knowledge from anyone in the forum that can help with these questions.
1) In the water during the startup I observed the amp draw @ 1.8 when the fan starts, then jumping to 2.3 or so when it tries to drive. Out of the water the amp draws are roughly 1/3 of this. Does anyone have any other information about amp draws? The L298 bridge is rated 2 amp continuous / 3 amp peak per motor,so I would be close now.
2) Is there any reason to believe that the current sense resistors adjust the motor PWM up based on load? Like a dirty bag or when climbing the wall. This would make sense but maybe overkill and I will see when I start testing. Thoughts?
3) My next test is to measure the rpm's of the two motors as it goes through test. This will be out of the water and unloaded but should be relative -- I think. Anyone got any info?
4)Cleaning logic - This is the part that Maytronics has a lot of experience in but does it need to be that hard. I think there are three modes that are happening when the machine runs. Ignoring the self test, which I don't plan on replicating. It will either work or not. Here are the differences I see;
A)- (Quick Clean) The machine moves about the bottom cleaning only up the walls far enough to trip the tilt sensor. Maytronics calls this scanning but other than recognizing the longest run I don't see how it is gathering anymore info. If it had a compass it could plot the size x direction but it doesn't so it really doesn't know where it is. It does this for a period of time before it allows itself to start climbing the walls. Any thoughts on how long this should be? Is this necessary? For this function I have the code set to drive in one direction for "X" seconds or until the tilt sensor activates. It then reverses direction and repeats the same checks. The tilt sensor also counts the total cycles to be used in determining how long the cleaning cycle has been running as well as when to "steer"
B)- (Steering) Steering is accomplished by running up the speed and the cable drags to spin it around. Any ideas on how often this should occur (10 Cycles) and how long the high speed should last (3-4 seconds. It would be helpful if someone could post their observations since my machine doesn't work anymore.
C)- (Wall Climbing) So this one is pretty self explanatory and may be he simplest operation. Ignore the tilt sensor and lengthen the drive time in any direction. This may be part of the "Scanning" where it takes the lonest run without tilting and then adds a number of seconds for it to get up the wall and move laterally. Does the fan motor PWM need to be bumped up when climbing so it sticks to the wall better? What about the drive speed, does it get increased to get better brushing action at the top? Any thoughts or observations would be great.
I have most of my code cobbled together with variables I think might be right for my pool. I am waiting for a LM2575 voltage regulator to post and hope to give it a whirl this weekend.