# How can I find the kinematics 2 differential drives attached together along their axes?

I have a system like shown in the diagram

where 2 robots having differential drive are physically constrained together. Traditionally for a single robot, we find the Instantaneous center of curvature (ICC) by equating the "omega" for both wheels. That would work since there are 2 equations (the relationship between the wheel velocities and angular velocity) and 2 unknowns (the distance of ICC from the center of the wheels and the angular velocity). However, in my system, there will be 4 equations and 2 unknowns. So should I solve it as an over-determined system? Or should I only consider the extreme cases, i.e. left most wheel speed for the left robot and rightmost wheel speed for the right robot? If neither approach is correct then how do I proceed?

• The diagram link is not working. You should embed the image, not link it.
– 50k4
Dec 2, 2020 at 10:27
• The link just works fine for me. And thanks for the suggestion Dec 2, 2020 at 22:01
• I believe JP Trevelyan solved this iteratively in the 1990s. Mark Rosheim also published on it (just going off the top of my head, though). Dec 3, 2020 at 22:04

You do not have an overdetermined system, you have an underdetermined or redundant system. There are multiple ways to deal with such systems, but all include adding further constraints or equations.

Simplest would be to consider an artificial coupling between the two subsystems. e.g. constrain the differential drives to have the same velocity vector. This way, you add two equations to the existing two equations and you have a fully defined system. Other ways of adding equations can also be considered.

Solving this as on optimization problem with a solver is also feasible. The cost function must be formulated. What is the function that should be minimized. This could be for e.g. deviation from the intended path/trajectory or similar.

EDIT:

After I managed to open the image you attached: I still do not think this system is overdetermined. I think you have 4 equations and 4 unknowns and you can solve for each. You can devise a generic formula for the rotational velocity of any wheel on the axis:

$$V_i = f(\omega, d) = \omega \cdot d$$

Where omega is the rotational velocity of the system around the ICC and d is the distance between the wheel and ICC. Just account for the distances between the wheels and it should be fine.