Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   General Forum (http://www.chiefdelphi.com/forums/forumdisplay.php?f=16)
-   -   Trouble-shooting Low Traction (http://www.chiefdelphi.com/forums/showthread.php?t=138389)

alecmuller 03-10-2015 12:00

Trouble-shooting Low Traction
 
Has your team experienced difficult-to-diagnose traction problems?

I built an off-season drivetrain as part of a tutorial project, and every time I try to measure the traction force, the wheels slip on the carpet with far less traction force than expected. Here's the set-up:
  1. 4-wheeled robot with 4" rough top wheels (actually it's an octocanum, but I've confirmed that the 4 traction wheels are the only thing in contact with the carpet); the wheels have slipped a few times but still look rough to me.
  2. weights added to bring total mass to ~148 lbs
  3. nylon parachute cord running from robot to 2 pulleys to (barely) lift 3 garden bricks; wheels slip when trying to lift 4.
  4. each brick weighs ~20 lbs alone and requires about 26 lbs of tension to lift through the pulleys (measured with bathroom scale)
  5. carpet is good-looking used scrap of actual FRC field carpet

I've read this thread and this whitepaper, which suggest I should expect coefficients of friction in the 1.2 to 1.6:1 range, compared to the (78/148 = 0.53:1) I'm actually getting.

I have video of the 1st test here (ignore the fact that I have the wrong carpet - I forgot to video the 2nd test after replacing it with the correct carpet).

Any idea what I can do to get traction strength closer to 160 / 200 lbs?

SenorZ 03-10-2015 12:10

Re: Trouble-shooting Low Traction
 
Set up looks good. Cord parallel to ground. But that doesn't look like 148lbs of robot.

Electronica1 03-10-2015 12:39

Re: Trouble-shooting Low Traction
 
Any idea which wheels are slipping? Also, where is your cg located?

GeeTwo 03-10-2015 18:59

Re: Trouble-shooting Low Traction
 
I can't make out what is going on in the video. Are the wheels spinning on the carpet? I would expect with roughtop for the robot to jump a bit vertically as they begin to spin, and I don't see that. If not, the problem appears to be that you don't have enough torque from your motors.

Munchskull 03-10-2015 20:35

Re: Trouble-shooting Low Traction
 
If it were me, I would double check the math. How close is the the calculations to the weight you are testing? Did you calculate what motor controllers you were going to use?

You can loose performance in many ways, what is your cim motors internal resistance? Same for the battery. Those are just the things I can think of to test.

alecmuller 17-10-2015 14:54

Re: Trouble-shooting Low Traction
 
I finally had a chance to double-check the setup just now:

1) I re-weighed everything, and it's definitely 148-149 lbs (there are 3 pavers and an EXTRA 14 lb battery).
2) The CG is fairly close to center of the robot (all 4 wheel pods are the same or left/right symmetric), the pavers are evenly spread, and the batteries are evenly spread. I'm not sure where the CG is height-wise but the robot isn't tipping so I don't think it matters.
3) It turns out ONE of the wheels is slipping, and the other 3 aren't. These 3 suggest I'm either not driving them at full power or there's far more friction in the system than I accounted for in my calculations (i.e. like ~70% losses instead of 20-30% losses).
4) The battery is fully-charged. The motors are commanded to full power within the limits of my hardware. More detail on this: each motor is driven by a Talon SR hooked up to a 2014 power distribution board with 40A breakers. The Talons are commanded by an Arduino Uno controlling them as a servo (i.e. 0-180 where 0 is full reverse, 180 is full forward, and 90 is stop). They were all calibrated WITH the same arduino.

I suspect friction is a big culprit (I made most of the parts in my basement with low tolerance tools). I might also have to figure out a way to test the torque of an individual CIM to see if the arduino is driving it with full force too, though.

I'm open to other ideas for tests & troubleshooting, though!

GeeTwo 17-10-2015 22:56

Re: Trouble-shooting Low Traction
 
Quote:

Originally Posted by alecmuller (Post 1500656)
3) It turns out ONE of the wheels is slipping, and the other 3 aren't. These 3 suggest I'm either not driving them at full power or there's far more friction in the system than I accounted for in my calculations (i.e. like ~70% losses instead of 20-30% losses).

This looks like the first question to tackle. Check the voltage being given to those motors, after the controllers. If the controllers aren't putting out 12V, you'll get a lot less torque than you're expecting. If that's OK, try checking the torque of a single motor/gearbox by replacing the wheel with a spool and winding some cord onto it.

Also, recheck your force calculations. We don't know what motors, gear ratios you're using. If you provided this info, I'd be happy to do a cross check.

RyanCahoon 17-10-2015 23:51

Re: Trouble-shooting Low Traction
 
A couple of things come to mind:

- If the loading cord is above the ground (it's hard to tell from the video), there's a torque moment rocking the robot onto its back wheels. If the wheel that's slipping is in the front, that may be part of the reason why.

- (This may apply more later than now) Be careful you aren't applying too much power to the wheels. If the motor command is a step from 0 to 100%, there could be enough torque for the wheels to start slipping (regardless of the loading - simply because the rotational inertia of the wheel is probably less than the inertia of the entire robot), and then you're into dynamic friction which is (theoretically) less than the full static friction coefficient. Try ramping from 0 to 100% over a couple seconds.

- Have you tried an inclined plane test to determine coefficient of friction?

cbale2000 18-10-2015 02:26

Re: Trouble-shooting Low Traction
 
Quote:

Originally Posted by RyanCahoon (Post 1500700)
A couple of things come to mind:

- If the loading cord is above the ground (it's hard to tell from the video), there's a torque moment rocking the robot onto its back wheels. If the wheel that's slipping is in the front, that may be part of the reason why.

I was going to suggest this also. Try connecting the cord in such a way as to have it running at the same level vertically as the center of the wheels. The main downside to 4wd aside from turning is that it's very sensitive to weight and force distribution when attempting to maintain traction.

alecmuller 18-10-2015 14:25

Re: Trouble-shooting Low Traction
 
Excellent suggestion!

I forgot to account for the weight transfer due to the cord being 5.5" off the ground. When I did a free body diagram, I found that just over 2/3 of the weight is resting on the rear wheels in that configuration.



I rigged up an extension to lower the cord to about 3/4" off the ground and re-ran the test. It still barely lifts the 3 pavers, but this time 3 out of 4 wheels spin (the left front wheel does not spin in any of the tests - I suspect I have a lot of internal friction losses in that one).



I still need to re-write the code to ramp up the torque instead of going full-bore from the start of the test.

alecmuller 18-10-2015 14:54

Re: Trouble-shooting Low Traction
 
p.s. I have not tried an inclined plane test for traction yet.

Edit: For a moment I thought I'd found the problem in my calculations, but it turns out I still have a calculated torque that's far higher than tests are showing.

The CORRECT formula for total robot traction should have been:

Traction = [# of wheels] x [CIM Torque] x [Gear Reduction Ratio] x [Gearing Efficiency] / [Wheel Radius]

For my setup, the numbers were 4 wheels, 4.84 in*lbs CIM torque (assuming 30A limit and linear torque vs. current), 23.18:1 gear ratio, 80% assumed efficiency, and 2" wheel radius. I made the mistake of forgetting to include the 4 wheels AND multiplying by the 2" radius instead of dividing by it (i.e. my mistakes canceled each other out).

4 x [4.84 in*lbs] x 23.18 x 0.80 / [2 in] = 179.6 lbs.

So I need to fix what might be causing torque loss in that one wheel, and I need to write power-ramping code.

Thank you all for the help!
Sincerely,
Alec

philso 18-10-2015 22:39

Re: Trouble-shooting Low Traction
 
Are all 4 wheels bearing the same weight? How stiff or flexible is your chassis?

Electronica1 18-10-2015 22:41

Re: Trouble-shooting Low Traction
 
You "might" be able to get away with lowering the pressure on your suspension to keep all 4 wheels on the ground.

Chris is me 19-10-2015 09:03

Re: Trouble-shooting Low Traction
 
How many points define a plane? If your frame is too rigid and not perfectly square, this could be a big part of your problem.

KrazyCarl92 19-10-2015 10:00

Re: Trouble-shooting Low Traction
 
Another way that weight distribution issues can be mitigated in a tank drive (at least front to back) is by chaining, belting, or gearing the rotation of the wheels together. It appears that this is not the case in your setup. Coupling together the rotation of the wheels by some method that can transmit the torque makes it so that in order to lose traction on one side of your drive train, the total output from the motors/gearbox(es) on that side has to overcome the total tractive force of all the wheels on that side. This is instead of it being on a wheel by wheel basis.

This may help because once you have 1 wheel slipping, it kind of screws up the rest of the experimental set up. Let's suppose the weight of the robot is 100 lbs, that your wheels have a static CoF of 1 and a dynamic CoF of 0.5, and that your wheels are not chained together. If your front wheels are supporting 20 lbs each and your back wheels 30 lbs each, then your front wheels will begin to slip early on and go from 20 lbs of tractive force down to 10 lbs of tractive force. Then since those are already slipping, your back wheels will both have 30 lbs of tractive force just before they start to slip, but that will only give you a total of 80 lbs of tractive force. If you were to chain your wheels together in this example, you would get 100 lbs of tractive force.

This wouldn't solve weight distribution issues side to side, but it is a very easy and simple way to solve the problem front to back.

alecmuller 20-10-2015 20:46

Re: Trouble-shooting Low Traction
 
Thank you for the ideas. That 3/4" plywood is essentially the whole chassis (all 4 drive pods are screwed to it), so it's pretty stiff relative to the weight of the robot. I don't have a whole lot of margin on the pneumatics (which deploy the traction wheels), so I don't think I'd be able to get away with reducing the pressure very much. I believe all 4 wheels are carrying pretty close to the same weight (due to symmetry), but I don't have 4 identical scales to verify that with.

Coupling the front & rear wheels tank-style sounds like a great solution for most 4 & 6 wheel robots; unfortunately it defeats (or complicates the heck out of) the mecanum part of the Octocanum in my case.

At the moment I'm still trying to debug the power-ramping code (to avoid going straight to full power and slipping the wheels). My first attempt (based on the arduino clock time) didn't move at all. I need to find an easy-to-use clock function in Arduino . . .

JamesBrown 23-10-2015 09:05

Re: Trouble-shooting Low Traction
 
Quote:

Originally Posted by alecmuller (Post 1498567)
[*]each brick weighs ~20 lbs alone and requires about 26 lbs of tension to lift through the pulleys (measured with bathroom scale)

How did you measure the tension to lift through the pulleys with a bathroom scale?

IKE 23-10-2015 09:41

Re: Trouble-shooting Low Traction
 
You could have them all hooked together and at a higher weight than robot can pull (say 300 lbs), then record initial weight and weight at stall and the difference would be the pull weight.

alecmuller 24-10-2015 17:43

Re: Trouble-shooting Low Traction
 
Quote:

Originally Posted by JamesBrown (Post 1501423)
How did you measure the tension to lift through the pulleys with a bathroom scale?

I stood on the scale, pulled the cord to raise and lower the weight a few times, and watched the scale move. The friction in the pulleys works against the direction of travel both ways, so the scale goes down a few pounds when you're lowering (i.e. friction offsets the weight), and goes up a few pounds when you're lifting (i.e. friction adds to the weight). The average should be: [weight of Alec] + [weight of the paver], and the max should be [weight of Alec] + [force needed to lift paver through pulleys].

Quote:

Originally Posted by IKE (Post 1501428)
You could have them all hooked together and at a higher weight than robot can pull (say 300 lbs), then record initial weight and weight at stall and the difference would be the pull weight.

I like that - like some of the teams used with their hooks to lift totes & hold them a fixed distance apart this past year. It would also provide a "stair-stepped" resistance instead of suddenly hitting the full load all at once. Unfortunately I'd need to get lighter weights (because my ~20lb weights are very low resolution).


I realize I neglected to point directly to my calculations. This Google Sheet (specifically the "Architecture" tab) has my traction calculations (lines 220 to 410).

GeeTwo 24-10-2015 18:51

Re: Trouble-shooting Low Traction
 
Quote:

Originally Posted by IKE (Post 1501428)
You could have them all hooked together and at a higher weight than robot can pull (say 300 lbs), then record initial weight and weight at stall and the difference would be the pull weight.

Quote:

Originally Posted by alecmuller (Post 1501613)
I like that - like some of the teams used with their hooks to lift totes & hold them a fixed distance apart this past year. It would also provide a "stair-stepped" resistance instead of suddenly hitting the full load all at once. Unfortunately I'd need to get lighter weights (because my ~20lb weights are very low resolution).

Not quite what I think Ike had in mind - something more like:
  • Place a single load on the back end of the cord that is greater than the maximum pull your robot can lift, but less than the top limit of your scale.
  • Put the scale under the load, in the configuration ready to be lifted.
  • Record the reading on the scale.
  • With someone watching the scale, turn the robot on, and gradually increase the pull until a wheel slips.
  • Record the lowest weight on the scale just before spin-out.
  • Subtract the pre-spin-out weight from the full weight to get tension in the cord at the point of maximum traction.
  • Add/multiply whatever fudge factor is needed to account for the friction in the pulleys to get the maximum traction force.

Labman 28-10-2015 19:48

Re: Trouble-shooting Low Traction
 
Those interested in this type of testing may be interested in American Weigh Scales model PK-110. This small digital hanging-style scale can be set to record peak force pulling on the hook. It operates horizontally as well as vertically so it is easy to use to measure robot pulling power, as well as weighing parts, testing robotic arm lifting power, checking crimp pull-out strength and many other force measurements. The scale reports weights below 44 pounds to 0.02 pounds, and weights above 44 pounds to 0.1 pounds. I tested two scales against highly accurate lab scales and found that one was right on while the second averaged 0.1 pound too low. The scales cost about $45 and have held up well over a year. The only downside is their max capacity is 110 pounds, so we use two in tandem to measure larger weights/forces.

GeeTwo 28-10-2015 20:13

Re: Trouble-shooting Low Traction
 
Quote:

Originally Posted by Labman (Post 1502103)
hanging-style scale

In addition to our digital flat scale, we have four old-school fish-weighing scales from the sporting goods store. We have four so that we can hang a robot by the axles of the four corner wheels, and figure out where the CoG is (we did Mecanum in 2014, and H/slide in 2015). Not as elegant as the digital peak-recording variety, but they've met our needs.


All times are GMT -5. The time now is 19:57.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi