Pushing things forward with multi-purpose robots
One of VTT’s research topics in the MURO project is developing pushing tasks with mobile robots. Pushing is a motion primitive which can greatly expand a mobile robot’s capabilities*, allowing a mobile platform to become multi-purpose by performing tasks other than simply driving from A to B. Pushing tasks could be useful in the following service robotics applications:
- packing boxes in a warehouse, by pushing them into a tight formation against a wall
- pushing away obstacles which are blocking a path
- cleaning tasks which require the continuous application of pressure, such as wiping a floor or wall. This would be in combination with a tool or manipulator mounted on the mobile platform.
Mobile robot pushing can be challenging to control due to unpredictable friction effects, and since the object being pushed may have unknown physical properties(e.g. mass, material). This topic is also challenging because while physical contact with objects is required for pushing, safety must also be considered.The robot should therefore generally maintain automatic obstacle avoidance to prevent accidental collisions.
The mobile robot we are currently working with is the Mobile Industrial Robotics MiR 100. The MiR is able to autonomously navigate indoors by using 2D laser scanners to detect walls and surrounding objects,build a map, localize itself, and also avoid collisions. We initially investigated haptic teleoperation of the MiR, i.e. remote control with a joystick that enables force feedback. This could be useful in applications where a mobile robot normally operates autonomously, but may require help from a remote human operator if it gets stuck. If some unknown objects are blocking the robot’s path, the human can take over using the joystick and guide the robot to push the objects out of the way. Judging the objects’ physical properties might be difficult for the human operator using only video camera feedback, but the resistance to the pushing action can be conveyed by adding force feedback via the haptic joystick.
Haptic teleoperation was tested in the Gazebo simulator with a virtual model of the MiR. In this example,the distance between the blue block and the MiR is used to determine how much force to apply to the Novint Falcon haptic joystick. This joystick can also be used to drive the real MiR. The onboard laser scanners can be used to measure the distance to surrounding objects, and this information could in turn be used to add force feedback to the joystick, such as when the MiR approaches close to an object.
We are also focusing on autonomous pushing tasks. In this simple example, the MiR is able to push a stack of boxes with a total mass of 36.6 kg after sending a driving velocity command of 0.05 m/s. The makeshift “bumper” attached to the MiR is needed to keep the object far enough away to avoid triggering its automatic emergency stop. Next we will be constructing a new bumper attached to the MiR with a force-torque sensor. This should allow for greater control of pushing actions, compared with only using object position estimates based on laser scanner data, for example.
Stay tuned for more!
* J. Stüber, C. Zito, and R. Stolkin, “Let’s Push Things Forward: A Survey on Robot Pushing,” Frontiers in Robotics and AI 7:8, February 2020