View Single Post
  #12   Spotlight this post!  
Unread 10-01-2017, 12:01
Jared Russell's Avatar
Jared Russell Jared Russell is offline
Taking a year (mostly) off
FRC #0254 (The Cheesy Poofs), FRC #0341 (Miss Daisy)
Team Role: Engineer
 
Join Date: Nov 2002
Rookie Year: 2001
Location: San Francisco, CA
Posts: 3,082
Jared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond repute
Re: Optical mouse for mecanum Odometry?

Quote:
Originally Posted by AriMindell View Post
Correct me if I'm wrong, but I believe that accelerometers are pretty bad at tracking velocity or position, because the two integrations result in a massive amount of noise.
That's correct. You can typically obtain a position estimate for a wheeled mobile robot much more reliably through other means.

Typically the biggest challenge with using an optical mouse for position is that they are designed to glide over a smooth surface at a very precise height. You will almost certainly need some sort of suspension, and even that may not be enough for guaranteeing you don't lose track when traversing bumps and seams in the carpet. (EDIT: StephenB's post goes into more detail).

I wouldn't give up totally on using encoders on mecanum wheels for positioning. Although the rollers on the perimeters can spin freely, any movement in x, y, or theta will result in proportional rotation on a sensed axle (assuming your rollers may have rotated, but have not lost traction). However, unlike determining the necessary wheel speeds for a mecanum drive to achieve a given x, y, theta velocity (inverse kinematics), taking 4 independent velocity measurements and obtaining an x, y, theta velocity (forward kinematics) has 4 inputs and 3 unknowns; it is an overdetermined system. Due to noise you are virtually guaranteed not to have measured 4 velocities that exactly solve the equations. One common approach to deal with this is to use a least-squares solution, which would find 4 new velocities that are consistent and minimize the mean square "error" between what you measured and what your kinematic model says is possible. (A nice side effect is that you can measure this error - "residual" - and use it as a signal that you might be less certain about the vehicle's motion and could be colliding with something, etc.).

Alternatively, going back to the optical mouse idea, you could make something that is more similar to a ball mouse:

You don't even need a ball; two passive omniwheels mounted at right angles and connected to encoders could give you unambiguous X and Y measurements, even if your mecanum wheels have lost traction. As in the optical mouse case you are gonna want some sort of simple suspension to deal with irregularities in the carpet, but omniwheels at least have no trouble reliably rolling over typical imperfections in FRC field surfaces.
Reply With Quote