Update(MM/DD/YYYY):07/28/2008
Simulation Software Expected to be a Common Software Platform for the Development of Next-generation Robots
- Starting distribution of the software under an open-source license -
Points
-
We have developed a software system that can simulate a wide variety of robots.
-
The simulator comes with fast and high-precision dynamics calculation engines developed by us.
-
The simulator realizes software development based on a robot middleware conforming to international standards.
Summary
Shin'ichiro Nakaoka (Research Scientist) and other researchers of the Intelligent Systems Research Institute (Director: Shigeoki Hirai) of the National Institute of Advanced Industrial Science and Technology (AIST) (President: Hiroyuki Yoshikawa) have developed simulation software called OpenHRP3 (Open Architecture Human-centered Robotics Platform 3) for a wide variety of robots, in collaboration with Katsu Yamane (Associate Professor), the Graduate School of Information Science and Technology, the University of Tokyo (Univ. Tokyo) (President: Hiroshi Komiyama), and General Robotix, Inc. (President: Takakatsu Isozumi). The distribution of the software began on June 18, 2008, under an open-source license.
OpenHRP3 enables the dynamics simulations and view simulations of various robots such as robot arms, wheeled mobile robots and humanoid robots (Figures 1 and 2). It enables the efficient development of software for robots such as route planning, motion control, visual feedback control, and other operations. Furthermore, user programs can be developed using RTC (Robotic Technology Component), which was approved as an international standard by an international organization for standardization, OMG (Object Management Group). Thus, OpenHRP3 is expected to be a common software platform that promotes the research and development of next-generation robots in an effective and efficient manner. This software can be obtained from http://www.openrtp.jp/openhrp3/.
Fig.1 Example of a robot arm (The model data is proveded by Mitsubishi Heavy Industries, Ltd.)
|
|
Fig.2 Example of a humanoid robot
|
Social Background for Research
The Council for Science and Technology Policy (CSTP) of Cabinet Office has determined important themes from national and social viewpoints that should be promoted under collaboration among related office and ministries, eliminated unnecessary duplication of related measures and policies, and strengthened cooperation among ministries; in this manner, they have promoted a set of measure/policy groups for scientific and technological collaboration. Among these groups, a group that is concerned with next-generation robot collaborations is promoting the core mission of offering "a common platform technology for next-generation robots", a fundamental and infrastructure technology which accelerates R&D of next-generation robots, to society.
Traditionally, robots were researched and developed in a less efficient manner because the R&D of robots was often conducted on an individual basis and each institution developed complete software from scratch. In addition, the reutilization of past software assets required a lot of labor when new hardware was developed. In order to eliminate the inefficiencies in the development of robot software, a common platform technology for next-generation robots is required.
History of Research
The Ministry of International Trade and Industry (presently known as Ministry of Economy, Trade and Industry (METI)) implemented an R&D project for Humanoid Robotics System for five years from FY1998. In this project, AIST developed OpenHRP2, an old version of OpenHRP3. OpenHRP2 focused on the simulations of humanoid robots and was distributed as a binary file. In this study, however, AIST extended the target to those of general robots and developed OpenHRP3, which is distributed under an open-source license.
OpenHRP3 implements ABA (Articulated Body Algorithm) and ADA (Assembly-Disassembly Algorithm) as forward dynamics algorithms. With respect to the development of this software, AIST, Univ. Tokyo, and General Robotix, Inc. were responsible for the overall designing of the software and development of the ABA engine, the development of ADA engine, and graphical user interface, respectively.
This study has been conducted for three years from FY2005 onward as a complementary project of "Distributed Component Robot Simulator" (Research representative: Hirohisa Hirukawa, Deputy Director, Intelligent Systems Research Institute of AIST) in a group of next-generation robot collaborations promoted by CSTP, with the aid of the Special Coordination Funds for Promoting Science and Technology, held by the Ministry of Education, Culture, Sports, Science and Technology.
Details of Research
We developed two dynamics calculation engines; the one is based on ABA, which is a well-known algorithm enabling calculation in a time period that is in proportion to robots’ degree of freedom, and another one is based on ADA, which was independently developed by Yoshihiko Nakamura (Professor) and Katsu Yamane (Associate Professor) of Univ. Tokyo. ADA enables us to simulate rigid-body link mechanisms including closed link mechanisms. When a single CPU is used, this engine enables calculations over a time period that is in proportion to degree of freedom. The use of a sufficient number of CPUs enables high-speed calculations within a period proportional to logarithm of degree of freedom. The ADA engine makes small computing errors and can stably calculate the dynamics of a robot mixing large and small mass links. In order to use these two engines appropriately in terms of the operation speed, the ABA engine should be used for robots with a relatively small degree of freedom, and the ADA engine is suitable to those with a large degree of freedom.
Both the dynamics calculation engines of ABA and ADA use a constraint-based method to calculate the contact force between objects. The constraint-based method was known to be a method for the calculation of correct contact forces; however, it was conventionally difficult to implement it in a numerically stable manner. In this study, we developed algorithms which enable us to obtain efficient and stable solutions even under complicated contact conditions. Thus, we enabled the realization of simulations involving many contacts between a robot and surrounding objects (Figure 3).
|
Fig.3 Example of a simulation with a number of contacts among objects
|
Assuming operations such as the execution of the simulator, the control of a real robot, and the creation of operating patterns of robots, the company developed a GUI (Graphical User Interface) that consists of data structures supporting these operations (called item) and GUI parts to edit and display the items (called view). It has a structure in which users can add items and views as plug-ins (Figures 4 and 5).
For an open source license of this software, we selected EPL (Eclipse Public License), referring to the results of a survey entrusted to Nishimura & Asahi Law Offices considering the future commercialization of the software. We began the distribution of the open source on June 18, 2008.
Fig.4 Plug-in structure of GUI
|
|
Fig.5 A screenshot of GUI
|
Future Schedule
We are scheduled to continue the development of software for next-generation robots, such as addition of acoustic simulations and improvement of the development environment for software in "Robot Software Platform," which under development as part of the "Project for Technical Development of Next-generation Intelligent Robots" that has been promoted since FY2007 as part of a 5-year project by the METI.