Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

If you can attach encoders to the back of your wheelchair motors (on the motor side of the gearbox), the gear reduction will probably get you a decent number of counts per cm, even if you only have a few counts per revolution on the encoder itself. I've made some decent encoders just by hot-gluing a magnet to a shaft, and putting a pair of hall-effect sensors nearby to create a quadrature encoder. You could read this with an arduino or something similarly simple, and then use rosserial to pass the encoder counts up to ROS. You'd probably want to take a look at the differential_drive package if you decide to go this route.

Don't be tempted to build a non-quadrature encoder. Sensing speed and direction are both critical, and you can't always assume the motor is spinning the same direction that you're commanding, particularly at low speed.

I've also seen a number of people report decent success getting fake odometry out of the lidar scan matcher, but I'm not quite sure how to set up all of the pieces to make that work well.