Welcome, Guest. Please Login.
Surveyor Corporation Surveyor SRV-1
Home Help Search Login

Surveyor Robotics Forum

Welcome to the user support forum for Surveyor SRV-1 robots, SRV-1 robot controllers and SVS stereo vision systems. To register for this forum, please send an email to support@surveyor.com which includes your desired forum user name, your registration email address, and a brief explanation of why you wish to join, and we will create a forum account for you.

Please note that there is a Search button in the forum toolbar for forum topics. Another effective search method for the entire surveyor.com site is to use Google, e.g. "xyz site://www.surveyor.com" where "xyz" is the search topic.



Pages: 1
Send Topic Print
Abrupt change in motor performance (Read 2224 times)
avardy
YaBB Newbies
*




Posts: 12
Abrupt change in motor performance
11/17/11 at 5:36am
 
Hi all,
 
I'm developing a swarm robotics application that will require a group of SRV-1's to operate continuously for a long period.  I was very surprised and disappointed to find that the behavior of a fully charged SRV-1 running around on a table top changes dramatically after about 2 minutes.  The program (written in picoC) processes the camera image and will decide to move straight, make a random turn, or back up.  The actual motor command used is motors(50, 50) where the sign of the 50 will depend on the robot's current state.  The motor command is followed by:
 
    delay(50);
    motors(0, 0);
    delay(50);
 
In the following video you can see that the behavior changes abruptly after about 2 minutes (this roughly coincides with when the robot gets hung up on a block, but I am sure this is unrelated).
 
    http://www.cs.mun.ca/av/pub/SRV1First.mpeg
 
I also did a test with the robot sitting on a block with its treads in the air and executing motors(50,50) followed by the delay, motors, delay sequence shown above.  After about 18 minutes of continuous operation there is an abrupt transition and the motors slow to a crawl.  The "battery()" function returns a value of 1 throughout this test.  Again the robot was fully charged before the test began.
 
I know that one potential solution may be the addition of some form of feedback (from wheel encoders or the NAV board).  However, I would first like to understand what is going on here.  If anyone has any tips or suggestions, they would be most appreciated.
 
Best,
Andrew
 
Back to top
 
 
Email   IP Logged
tjump
Global Moderator
*****




Posts: 408
Re: Abrupt change in motor performance
Reply #1 - 11/17/11 at 6:40am
 
I would suspect something in your code. To eliminate any chip issues try running just a "motors on" single command and see how long the motors run and if the abrupt change happens or not. If the motors run continuously and only slow with battery drain then there is something in the data handling that is causing this behavior. If it happens with just one single command and no other processing taking place then it may be related to the H-bridge circuitry or the motors themselves overheating/other.
 
T. Jump
Back to top
 
 
  IP Logged
avardy
YaBB Newbies
*




Posts: 12
Re: Abrupt change in motor performance
Reply #2 - 11/17/11 at 9:54am
 
Thanks for the suggestions, T. Jump.  However, I am fairly sure it is not related to my code.  I have just conducted the test you suggested.  I uploaded and executed the following picoC program:
 
    motors(50,50);
 
I put a fully-charged robot on a block so that the tracks were free to spin.  It ran happily for 7 minutes, maintaining a roughly constant speed.  After 7 minutes some subtle changes in the oscillation seemed to arise.  After 9 minutes the motors stopped quite abruptly and the only activity was an electronic whining sound.  The aluminum chassis appeared to be at room temperature (or possibly slightly above, but not at all hot).
 
This is a serious problem for my application because it seems to limit running time on the ground to 2-3 minutes.  Perhaps this can be extended by changing the frequency of activation of the motors, but I'm sure there is a better solution.
 
Andrew
Back to top
 
 
Email   IP Logged
tjump
Global Moderator
*****




Posts: 408
Re: Abrupt change in motor performance
Reply #3 - 11/17/11 at 2:40pm
 
It is not the chassis that would get hot. What may be overheating is the H-bridge motor driver chip on the radio motor board. I never use this so I am only guessing. It could also be the motors themselves so you need to check their temperature to see if they are hot to the touch. If you simply turned them on and let them run and you get this behavior it is probably something to do with the motors or H-bridge.
 
It could be too much load on the motors by a mechanical binding somewhere in the chassis/axles/tread system (this could cause the motors to overheat) but these are all just targets to check based on the behavior. You could pull the robot apart and run the motors unloaded to see if you still get the behavior but it will take this type of testing to find the solution unless you've got some way to monitor the actual inputs and outputs on the H-bridge.
 
T. Jump
Back to top
 
 
  IP Logged
avardy
YaBB Newbies
*




Posts: 12
Re: Abrupt change in motor performance
Reply #4 - 11/17/11 at 7:01pm
 
I think it is the H-bridge overheating!  This IC is not directly accessible but by unscrewing the radio/motor card from the base of the SRV-1 I was able to insert a digital thermometer directly underneath it.  I ran the same test as before (executing motors(50,50)).  The thermometer I used was designed for body temperature.  Its operating range is 32 - 43 degrees C.  Initially I couldn't get a reading because the temperature was below 32.  However, after 1 minute I was seeing a temperature of 32.  From the 1 minute mark to 5 minutes the temperature rose steadily to 43.9.  After this point the thermometer would not display a value.
 
I expected to see the motors stall at about the 9 minute mark as before.  However, they kept going and going!  I ended the test after 30 minutes.  My assumption is that by lifting the radio/motor PCB off the base I created an air gap that was able to cool things down.  The datasheet for the FAN8200 motor driver indicates that the normal operating range is -20 to +75 C.  It also mentions a built-in thermal shutdown function.  I strongly suspect that this was the source of my problem (well, actually overheating was the real culprit).  There is actually a small plastic cavity that the radio/motor PCB sits on which completely isolates the area underneath the FAN8200 from the ambient air.  You could probably cook a tiny cake in there!
 
My current plan is to insert some spacers to raise the radio motor board off its base and hopefully allow the h-bridge to cool passively.  I will let you know how this goes.
 
Thanks again T. Jump!
 
Andrew
Back to top
 
 
Email   IP Logged
KM6VV
Full Member
***




Posts: 107
Re: Abrupt change in motor performance
Reply #5 - 11/18/11 at 10:23am
 
good detective work!
 
Any room for the addition of a tiny heat sink with fins?
 
Alan  KM6VV
Back to top
 
 
  IP Logged
avardy
YaBB Newbies
*




Posts: 12
Re: Abrupt change in motor performance
Reply #6 - 11/21/11 at 6:26pm
 
Hi again,
 
I did another test on the build up of heat around the FAN8200 h-bridge IC.  In this case I attached a linear active thermistor (MCP9701) to the PCB directly below the FAN8200.  After executing motors(50, 50) I tracked the temperature every 30 seconds.  The temperature rose from 26 degrees (a few seconds after startup) to a peak of 64.6 C after 11.5 minutes.  I terminated the test at this point and the temperature slowly dropped back to room temperature.
 
Note that this test was applied with 0.5 inch standoffs separating the radio/motor board from the robot's plastic base.  However, opening this small air gap is not enough.  The FAN8200 is completely boxed in from above by the Lantronix card.  When the robot is running about on a tabletop it still shows an abrupt reduction in motor performance after 3-4 minutes.  I am investigating adding a heat sink to the FAN8200 or replacing it with another motor driver that has a built-in heat sink.  However, I haven't been able to find any suitable replacements yet.  I would be grateful if people could post any ideas for replacing the FAN8200 or finding some other means to keep it cool.
 
Cheers,
Andrew
Back to top
 
 
Email   IP Logged
Ray
YaBB Newbies
*




Posts: 42
Re: Abrupt change in motor performance
Reply #7 - 11/24/11 at 5:20am
 
Hi,  
 
you may try L298 Duall Full-Bridge Driver (DIP or SMD Type)
 
Max. 2A per motor, and operation temperature up to 130 degree celsius.
Quit suitable for robust motor control.
 
 
By the way, in the video, the control of the motion is quit smooth, is it controlled by image processing ?
the clipper is quit interesting, any detail description or blog ?
 
Ray.
Back to top
 
 
Email   IP Logged
Pages: 1
Send Topic Print