People who code: we want your input. Take the Survey
2

I've never worked on Mecanum wheels before so I researched a bit. One of the first things I look for is there has to be a way to combine all of the encoder velocity measurements. Apparently, Jacobian equation can be used for that (I believe it is H_encoder in your question). You can calculate system's velocity by \begin{equation} \left[\begin{array}{c} V_{X} ...


2

In order to transform encoder signals to robot motions a kinematic model of the robot is needed. In some cases this is very simple, just including the gear ratios and a heading angle (e.g. with Ackerman steering model). This is a simple kinematic model. A more complex case is differential steering, where the encoder signals pass through a kinematic ...


1

Usually, robot's float a topic (eg /mobile_base/commands/reset_odometry for TurtleBot) to reset the odometry. The URDF for the Rosbot2.0 uses Skid Steer plugin. This plugin does not expose a method for resetting the odometry of the robot. So you can't reset odometry by calling a topic or from launch file. But nothing stops you from internally keeping track ...


1

Your noise term for the KF needs to reflect how you expect the true propagation of the state will differ from your model of the propagation. For example, the acceleration uncertainty is 1 while your true uncertainty is drawn from a uniform distribution of [-10,10]. I altered your code so the KF is now using the IMU information within the propagation step. ...


Only top voted, non community-wiki answers of a minimum length are eligible