Shop OBEX P1 Docs P2 Docs Learn Events
Adjusting for wheel diameter changes — Parallax Forums

Adjusting for wheel diameter changes

VsandhuVsandhu Posts: 1
edited 2012-04-27 08:37 in General Discussion
Hello, I was hoping to get some help from this forum regarding changing wheel diameter. Currently I am working on a project that uses an encoder on a drive shaft to run a cart to a set destination. The destination is based on encoder counts. So if I have a destiantion of 2000, the cart will drive out until it reaches 2000 encoder pulses. I am using a 360 Pulse/Rev encoder on a cart whose max speed is 120 Feet/Min.

The issue I am seeing is that when this cart is loaded with product, the wheel diameter changes, or rather the wheel becomes out of round. When this occurs my setpoint is no longer correct. The set points are calculated via a 5 inch wheel. I am trying to come up with a method where I can sense the change in the wheel. One way I thought of is to run the cart at a set speed for a set distance. Say that distance is 24 inches and the speed is 30 F/M. When this criteria has been met, I should see 550 encoder pulses. If the wheel diameter changes by 1/16th of an inch, I should see 557 encoder pulses in the same distance at the same speed. I can use this to correct the setpoint based on the new encoder pulses.

Does anyone disagree or agree with this method? Can someone help me with another solution to this issue. Changing the wheel to a steel wheel is not an option.

Any help would be greatly appreciated.

Comments

  • ercoerco Posts: 20,259
    edited 2012-04-26 14:27
    Sounds reasonable, but your situation (wheel compressibility, cart weight range, floor surface) is unique to you. Is it really practical to recalibrate using your 24" travel test every time your load changes? Any way to gauge the weight of your load and use that info as part of your calibration?

    Probably it will come down to testing. From my experience, odometry is part science and part "fudging". Errors creep in from the darndest places, and try as you might to account for them, it will never be perfect. But with lots of work, you can get close.

    Is it an option to add a fifth wheel, spring loaded downward and trailering, whose weight/load never changes? That wheel should deliver more consistent odometry readings.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2012-04-26 15:35
    If you could measure the distance between a fixed part of the cart and the floor, you could make corrections on the fly. Parallax's Laser Range Finder might provide enough resolution and repeatability, but you would have to test it to make sure.

    -Phil
  • ercoerco Posts: 20,259
    edited 2012-04-26 15:51
    If you could measure the distance between a fixed part of the cart and the floor, you could make corrections on the fly. Parallax's Laser Range Finder might provide enough resolution and repeatability, but you would have to test it to make sure.

    -Phil

    Another nice approach, PhiPi! Is the LRF accurate to tenths or hundreds of an inch?

    Of course, load CG makes a differences with any method detecting wheel squish. That is, if the load is concentrated for or aft of center, it will distort the front/rear wheels differently. So depending which wheel is monitored, or where the LRF is located, YMMV. Also, I suspect that a wheel that swishes 1/!6" will not track exactly the same as a wheel 1/16" smaller in diameter. There is much experimental determination yet to do.
  • GordonMcCombGordonMcComb Posts: 3,366
    edited 2012-04-26 17:33
    Most robots (or other vehicles) that require accurate odometry regardless of weight, tire pressure, tire diameter, etc. use an additional "trailer wheel," which can be placed at the rear or even underneath your vehicle. Being a small independent wheel, often on a suspension, it's not affected by vehicle weight. These are not unlike the distance counters used by surveyors, which consist of a hard rubber over a precision steel or aluminum hub.

    One wheel gives you overall distance for the robot, but not distance for each wheel. You need two wheels for that, or a single wheel that pivots, and a sensor to measure the degree of pivot. The latter requires a lot of precision.

    Other work-arounds depend your the environment and other variables, and your description doesn't provide much more to go on. But as an example, few autonomous cart systems used in warehouses (like the company Amazon just bought) rely on encoders alone. You may already be aware, but odometry involves what's known as unbounded error -- the error just keeps adding up as the robot/vehicle moves about, until at some point it thinks its in Connecticut (and you're in New Jersey). RFID tags, stripes, wires, and other methods help to reorient the vehicle at regular intervals, and correct for odometry error.

    -- Gordon
  • ercoerco Posts: 20,259
    edited 2012-04-26 18:09
    ...and you're in New Jersey...
    -- Gordon

    Joisey? What exit?
  • T ChapT Chap Posts: 4,223
    edited 2012-04-26 19:47
    The weight is affecting the radius which is the distance from the axle to the floor. Are all the tires being affected equally? What about adding pressure sensors to some point in the suspension. Get a ratio of the pressure/weight to the sensor output, take a running average, factor it in. If the load is always distributed evenly, the pressure should be consistent also as a bias. Times of accel and decel should be omitted from the average. An accelerometer can be used to determine when the cart is starting or stopping. Or better yet, only calculate weight/pressure at standstills.

    Edit. On second, thought, I am not sure that altering the shape of the tire due to weight is the same thing as altering the radius from axle to floor. If you let 15lbs out of your car tires, do you have to use more RPMs to maintain the same speed as you did before letting out the air?
  • JordanCClarkJordanCClark Posts: 198
    edited 2012-04-27 04:59
    The encoder should probably not be on the drive shaft. I'd have it on its own "idler" wheel (a-la Gordon) to remove any slip or wheel deformity you may have going on. I've used Encoder Product's TR1 "All-in-One" deals for several years. It's on it's own spring-loaded arm to keep pressure on the wheel without deforming it.
  • stamptrolstamptrol Posts: 1,731
    edited 2012-04-27 05:47
    You're getting good advice to make sure the measuring wheel doesn't deform. Also, anything that allows you to periodically zero out the error ( known points on the course, for example) will help. As you noted,if you could always begin each run with that 24" calibration, you could calculate the "scale factor" for each run.

    Even on our tree havesters, the spiked measuring wheel (approx 3 ft circumference) has to have a "winter/summer" setting to compensate for how far the 1.5" spikes dig into the the tree as the seasons change.

    Cheers,
  • RobotWorkshopRobotWorkshop Posts: 2,307
    edited 2012-04-27 08:37
    I must admit that this is the first time I have heard of anyone mentioning that a wheel deforming under weight made that much of a difference in the counts but I can see where it would be a factor. Most of the time errors are contributed to wheel slippage, etc.

    Encoders on the wheels are a great way to help keep tabs on where your robot (or mobile cart) is going. I always add them to my robots and they can help.

    While trying to add an extra sensor to determine if the tires are deforming may help you may be better off trying to use a combination of different sensors to help keep the robot on track. Use the data from all the sensors to help keep it on track.

    Robert
Sign In or Register to comment.