Research Topic: Building of Personal Service Robot Platform – Functional Core Development

The main research objectives concern with a concept of the functional personal robot platform for a massive introduction of service robots into the homes, offices, public places, and generally into the every-day human life. Concept of an advanced personal robot platform is based on high perceptive, cognitive as well as manipulative capabilities of robotic system to be assumed. In that sense, basic functional modules as well as appropriate system architecture are considered.

The long-term imaginative idea of personal robots as user-friendly human assistents in different tiresome or monotonous daily tasks is very attractive and challenge. Nowdays, there are still no commercially available industrial service robots to be extensively utilized in every-day appliance such as for example PCs, personal cars, GSM mobile phones, etc.

Advanced personal robots (PR) are imagined to be user-oriented, multi-purpose, service robots of high maneuverability, handling capabilities, operational authonomy and intelligence, broadly utilized in every-day life as useful, user-friendly human assistants and companions capable to perform diverse daily tasks. Nowdays, there are lot of different indoor service robots developed to assist humans. Their common characteristics that they have still limmited capabilities in thier authonomy of motion, navigation, environment understanding and especialy in manipulation.

Personal robots can be designed as wheel-based or leg-based (biped robots or multi-legged structures) robotic systems. Contemporary indoor service robots are predominatly wheeled robots. The choice of appropriate robotic system depends on specific application, complexity of tasks to be performed, price, etc. Leg-based robots (biped robots, i.e. humanoids) are still not in commercial use due to their current technical imperfecteness primary concerning difficuilties in their stabilization (dynamic balance maintaining) as well as in their still low mobility. Besides, contemporary wheel-based robots have certain advanteges such as: (i) they are cheeper in comparison to the humanoids; (ii) capable to carry out a higher payload than existing biped ones; (iii) have satisfactory mobility, etc. In spite of that, they have significant drawbacks if we consider the fact that variety of indoor tasks to be performed by personal robots request anthropomorphic capabilities, i.e. robot to climb the stairs, move through the nerrow corrdior, run over the uneven carpets, step over the sill, etc. Such motions cannot be performed by existing wheeled robot platforms.

Consequently, wheel-based robots represent currently better choice to be customized as personal robots and to be used in house, office, public buildings, etc. In spite of that, humanoids have broad perspectives in the future to take an absolute primacy in service robotics as future personal robots due to the following facts:

Both robotic platforms, wheel-based as well as leg-based one, will be used in the forthcoming years as advanced modalities of the personal robot (PR) platforms. The choice between them will be made according to the function of the system, robot performances, price, etc. Having in mind a positive experience with implementation of PC-computers, personal cars and mobile phones, that are the most popular devices assisting humans in everyday life, PRs provide humans with new technical perspectives.

The Concept

A principle scheme of a PR platform with robotic system (wheeled or legged) and universal functional PR core and applicative software modules are shown in Fig. 1. Heterogeneous service robots (e.g. ROBOT “A”,… , ROBOT “E”) available at the robot market, can be customized to be personal robots. The other blocks from the structure shown in Fig. 1, are provided together with the robotic system.

Principle scheme of a personal robot platform consists of: (i) appropriate robotic system (wheeled or legged), (ii)  universal functional PR  platform  (PR core), and (iii) user-oriented applicative software

Fig. 1. Principle scheme of a personal robot platform consists of: (i) appropriate robotic system (wheeled or legged), (ii) universal functional PR platform (PR core), and (iii) user-oriented applicative software.

Functional PR platform (PR core) represents a set of the cognitive functional modules (to be realized as an objects/program library) designed to enable full robot functionality in different operative conditions. The role of the functional core is to determine the way of performing robot tasks. It represents a high hierarchical control level of the arbitrary chosen service robot. Most of the functional modules represent specific cognitive blocks. PR functional platform consists of several functional modules that will be described in the text to follow.

Human-robot Interface

PR functional platform includes a special software interface to enable advanced communication and command understanding. Complementary to the vision module and human gestures understanding, PRs will possess advanced speech recognition (in the domicile language of the customer). Considered human-robot interface will enable robot to understand human motion and body gestures, to understand certain emotional conditions (for health-care or elderly people assistance) as well as to recognize and understand sound commands such as: come, go, carry out, bring, keep, clean, etc. As a consequence, robot has to perform these commands using another functional cognitive blocks.

Data Acquisition & Advanced Perception

Cognitive perception of personal robots will be based on advanced data acquisition from surrounding using reach sensory and communication system. Advanced perception will enable PR a fine interaction with humans and avoiding static or dynamic objects (obstacles) in its environment.

Simultaneous Localization & Mapping

SLAM is a basic cognitive block enables accurate positioning of the personal robot in the 3D-world. According to the current information about actual position as well as using information about the previous positions, robots make terrain/environment maps that assist them to plan motion as well as to find relative location of surrounding objects of interest. Designing this functional module, some bio-inspired principles have to be implemented.

Trajectory Prediction, Path Planning & Navigation

This cognitive block should to enable personal robots performing of intelligent autonomous motion in unknown as well as unstructured indoor environment. Due to the real-time information about the relative positions of fix and mobile obstacles in surrounding, this block make prediction of the possible trajectory(s), i.e. it determines the tactic of motion (locomotion). After that, the lower level does path planning to determine the kinematical parameters of motion characteristic for the specific type of robot. For the legged robots these are: (i) azimuth of motion, (ii) step period, (iii) step length, (iv) lifting height of robot feet.

Object Recognition & Environment Understanding

Based on visual signals obtained from the stereo-vision cameras attached to the robotic mechanism and based on advanced perception, personal robot is enabled to recognize unknown objects in its surrounding. That cognitive behavior will be realized in this cognitive block by designing an object classifier. It will be designed using advanced techniques and methodologies from artificial intelligence. Special techniques for fast extraction of information from the large number of pixels appear in RGB matrices will be applied. Besides, a fuzzy identifier of object distances and their mutual relations (very close, close, moderate far, far, very far) will be designed, too. Based on the object classifier and corresponding distance identifier priory designed, the fast cognitive algorithms for object recognition and environment understanding will be developed and implemented in the functional personal robot platform.

Decision Making & Context Reasoning

Typical cognitive characteristics of any intelligent system are decision making and context-reasoning. The first one is a consequence of real circumstances in surrounding while the second is consequence of specific task to be performed. In real scenario personal robots will be surrounded with fixed as well as mobile obstacles as well as with humans at the same time. According to the commands obtained from people as well as according to the current situation in the scene robot has to make a right decision which activity it should to perform. Sometimes, in the same circumstances robot has to do different activities depending on concrete task. For example, if the glass is turned over and the personal robot performs house keeping task it must pick up the glass, put it at the safe place and dry the slopped liquid e.g. by dry rag. In another context, when the robot performs children-care application the order of activities is different. First personal robot has to move the child to the safe place to prevent child to be injured by the glass and not to allow it to come back before situation would be safe. This cognitive block as part of the PR functional platform, represent a corresponding software module to be designed to support such intelligent behavior of personal robots.

Advanced Manipulation

One of the main goals to design service robots is their possibility to perform sophisticated manipulative tasks such as: grasping, peg-in-hole assembling, screwing, smoothing, etc. Contemporary robots possess different kinds of grippers and end-effectors to enable different manipulative tasks. But, performing of manipulative tasks is not only mechanical activity. It is priory a willing action that depends on human experience and skill (some time intelligence). This cognitive block includes algorithms based on different learning algorithms and fuzzy logic that will enable personal robots to learn manipulation by imitation of human beings as well as by learning of behavior based on multiple trails and errors.

Multi-agent Robot Interaction

This functional module should to enable dynamic interaction between more personal robots. In some future applications of heterogeneous multi-agent robotic systems, such systems will perform tasks in cooperative way. This cognitive block should to enable synchronized collaborative operation of plenty of robots. It includes some social as well as psychological aspects of human behavior where individual person characteristics should be subordinated to the collective, team’s interest. In perspective robot groups can performed more complex tasks than individuals.

User Command Interface

Through a user-friendly graphical interface or sound warning system, useful information on the current status of robot system (e.g. position, detected obstacles, path planned, task performance phase, energy/battery status, troubleshooting, etc.) can be monitored or modified by the user. User interface is the mean that enable a way to check/proof if the personal robot has understood human commands. User interface should be designed to be user-friendly and synoptic.

User-oriented Applicative Software

Applicative software represents specialized software modules (program codes) that enable performing of the particular specific, user-defined tasks, i.e. applications. In this paper we will restricted to the indoor applications exclusively, such as for example: house keeping, home-serving, monitoring, sponging, cleaning, making a company, entertaining, health-care, etc.

Any of the mentioned applications is specific and requests variety of robot’s skills such as: fine manipulative capabilities, satisfactory locomotive performances, high perceptive and cognitive capabilities, etc. Applicative software defines what robot should to do, i.e. which task or sequence of tasks has to perform. In that sense, application is broken into the sequence of the simple tasks (primitives) to be performed in the order defined by the applicative software. The order of task performing is made according to the priority or nature of particular tasks. Applicative software designed by user relies to the corresponding data-base where general as well as specific information about particular tasks are saved. For example, if personal robot has to bring something to the user it need to have in the data-base accurate information where this object is located as well as its basic feature characteristics (e.g. photo image, etc). Also, if the personal robot is applied in the house it is possible to save the building map/plan in advance to enable robot fast motion (without mapping) and orientation in the house environment. The robot application is more sophisticated as the applicative software was written in a better and comprehensive way. That is a skill of the programmers employed in that task. Future implementations of the PR platform consider that user has to:

  1. choose an appropriate robotic system (mechanic structure with servo control onboard) available at the public robot market;
  2. to use corresponding high-control system (PC or cluster of computers) with functional PR platform installed, and
  3. to buy a specialized user-oriented applicative software to be installed at the control station. Designing of applicative software opens a door to many skill programmers and creative software designers to develop software support for variety of possible indoor applications.

Control Structure

The appropriate control structure able to support the variety of the mentioned indoor PR applications is presented in Fig. 2 by a corresponding block-scheme. The hierarchy control structure has two control levels: (i) low-level, and (ii) high-level. Low-level block consists of: (i) robotic system arbitrary chosen, (ii) data acquisition block, (iii) DSP-servo controller, and (iv) corresponding relay station. As mentioned, robotic system can be of heterogeneous type – wheeled or legged. Data acquisition block ensures feedback information for servo-control (generalized coordinates, contact forces, driving torques, etc.). DSP controller calculates driving commands at the robot actuators necessary for free motion. Relay station forwards the necessary information to the high-level block to be processed in the cognitive block.

High level block represents the highest level of system decision and control. It consists of functional PR platform, user-oriented applicative software module(s) and data-base. Relay station receives ethernet information from the low-level as well as it distributes the high-level commands to the low-level, too. Applicative software determines the strategy of task performance (identifies the sequence of simple tasks) and in that sense it represents a strategic control level of the system. This control structure intends to be a universal nevertheless to the type of robotic system (wheeled or legged one). Only applicative software modules can be changed and improved by the user. In such a way, PEERO system appears as a potential user-friendly system where further improvements and adaptation are possible by changing and upgrading the existing software.

Control architecture of the PR system

Fig. 2. Control architecture of the PR system.