# How can this mobile robot rotate so perfectly?

Please have a look at this youtube video.

When this mobile robot operates, the rack (which is said to weight up to 450 kg) can have its Center Of Mass (COM) distributed at any location. For example, this COM can be located 5 or 10 cm off from the center of the robot. Because of this, when the robot revolves, the center of rotation will not be at the center of the robot anymore. However as you see in the video, it can still rotate many circles perfectly around its up-right axis.

So what do you think about this? Is this possible by mechanical design only? Or did they use some kind of advanced feedback control system to counter the effect of the off-center COM?

• I'm voting to close this question because it's not clear what you're asking. Why would the center of mass move the axis of rotation? The parallel axis theorem clearly states you can rotate about an axis that is not the center of mass. Your car doesn't "care" where the center of mass is when it turns, neither does a shopping cart, bicycle, etc. The robots in the video are wheeled vehicles that have traction. I'm not sure what distinguishes these from any other wheeled vehicle or what they're doing that's special. Jan 13 '16 at 14:12
• The special thing about this robot is that it can rotates very fast and precisely many revolutions about its main up-right axis, no matter how weight (from 0 to 450 kg) you put on it, and no matter how this weight is distributed. I think this is not easily achieved without some kind of feedback control, and hauptmech in his below post seems to agree with me on this. Jan 13 '16 at 16:58
• hauptmech's answer states, "The location of the COM of the robot part of the system is unimportant as long as friction maintains the kinematics," which is what I'm saying - as long as the tires have traction, there is nothing special going on. Your car can turn in the same turning radius regardless of how much you load it. As long as the wheels have traction, there is no reason that the robot would not rotate about the center of its wheelbase. Jan 13 '16 at 19:32
• See here for a teardown of a Kiva robot for more info on its lift and drive hardware: robohub.org/…
– Ben
Feb 3 '16 at 14:45

If I understand correctly, you are referring to when the robot spins and the rack remains stationary (dynamic motions involving the rack mass seem to be slow as you would expect with such a high COM).

In this case only the kinematics are important. It's important that the rotational axis of the wheels and the rotational axis of the rack-support are colocated. The location of the COM of the robot part of the system is unimportant as long as friction maintains the kinematics.

• Thanks for your insight. “as long as friction maintains the kinematics.” I agree with you on this point. However, what if the rack is too heavy, let’s say 400 kg, and its COM is off 10 - 15 cm from the center of the robot, which makes the equivalent COM of the whole system is off too, let’s assume it is now near the right wheel. In this case, the static friction under the right wheel will be larger than that under the left wheel... Jan 13 '16 at 6:57
• ...It means if the robot rotates too fast, the left wheel could slip, whereas the right wheel still remains in a rolling-without-slipping state, am I right? in this case, the robot will no longer rotate around its up-right center axis, it will now rotate around a new, still up-right, but arbitary axis. I wonder how the engineers handled this situation? Jan 13 '16 at 6:58
• If one wheel slips (oil on the floor) with no feedback control, then yes, you have an unexpected force. But I would expect there to be feedback, in which case a slipping wheel would be detected as an error and torque to both wheels would be reduced until there was no slipping. Jan 13 '16 at 7:05

The youtube video High-Speed Robots Part 1: Meet BettyBot in "Human Exclusion Zone" Warehouses seems to me to better show and explain how the Kiva robots work when moving racks around the warehouse.

Although the video isn't clear enough to say for sure, the bot appears to remain centered beneath the rack, without using an x-y positioning mechanism to compensate for an off-center center of mass axis. It would be possible to use such a mechanism since the robot doesn't need to rotate 360° after it hooks up; it could get by with turning ±180°.

It looks like the bot's initial spin underneath a rack raises a round connector up from the bot to an attach point on the bottom of the rack. After that, the bot and the rack are mechanically coupled. That will make it less significant if the the rack's COM axis is a few cm off-center relative to the attach point.

If COM axis being off-center were still a problem, and no x-y positioning mechanism is used, they could have mechanisms to move weights around or pump water from vertical tubes on one side of a rack to the other side, etc.

• Thanks for your insight. However, please take a look at the video in my post again, from second 36 to second 39. The robot still rotates several circles after touching the rack. Jan 13 '16 at 5:52
• @user3286500 The robots seem to use a mechanical jack to lift a rack. Probably to save on adding an extra motor they use the wheels to rotate the robot underneath the rack, extending the jack and lifting the rack. Notice that the rack does not rotate. Jan 13 '16 at 13:45
• the rack does rotate! however, the robot's counter-rotation negates the rack's own rotation. you'll be able to see this more clearly when the robot makes 90 turns. the rack moves up and down ever so slightly because the robot is not using a jack. it's using a ball screw. Jan 13 '16 at 23:23

IEEE has a writeup with the general answer about 4/5's down the article.

Your concern about friction and slippage coming from COG offsets (Center of Gravity; COM) is a very good notion. A simple & potentially incorrect solution is to make the robot's wheelbase as wide as possible and to make the ball screw lift slowly. A very rigorous approach would be to account for torque and inertia, building a physical model and using Euler's equation (general rigid body dynamics equation).