Localization of a Mobile Robot According to the Centre of Mass of an Environment Profile

V. Baranauskas, A. Derviniene, K. Sarkauskas Department of Control Engineering, Kaunas University of Technology, Studentu 48-319, LT-51367 Kaunas, Lithuania, phone +370 37 300292, e-mails: virgisbar@yahoo.com, alma.derviniene@ktu.lt, kastytis.sarkauskas@ktu.lt S. Bartkevicius Department of Electrical Engineering, Kaunas University of Technology, Studentu 48-230, LT-51367 Kaunas, Lithuania, phone: +370 37 300253, e-mail: stanislovas.bartkevicius@ktu.lt


Introduction
One of most important parameter of mobile robot in manufacturing operations is its coordinates.Mobile robot moves along given path [1,2] and prosecutes manufacturing task, solves its autonomous tasks: scans the environment in order to avoid suddenly emerged or possible conflicts; follows parameters of the path and, using feedback equipment, sends all information to supervisory system.Robot must periodically check its position because of possible deviations.Origin of these deviations is from the environment (oil on the ground, extraneous things).These deviations call necessity of permanent control of position (localization) of a robot by supervisory or other system.Various systems follow and correct robots coordinates [3], when it moves.Information about these coordinates is sent to the supervisory system, which performs control functions.
There are systems, which follows coordinates of mobile robot (autonomous GPS systems, radio or laser beacon, gyroscopes, compass and others).This paper describes determination of coordinates of mobile robot without any additional equipment, just using profile of "seen" environment, got by scanning of the environment, and calculating its centre of gravity (mass).Solution of the task may be assigned to the robot, or supervisory system.In order to solve localization problem robot and supervisor must interchange information about the profile.
Let's suppose, that robot is able to scan the environment, change the angle of the radar and determine the distance to the nearest obstacle.When the environment is scanned 360 0 , the series of the points, corresponding prominent polygon vertex, are obtained.This polygon is named as the profile of the environment, if the space is twodimensional.This profile will be finite only then, if the environment is closed, i. e. there are no points, which seems to be infinitely far for radar, in the environment.
There is no different from which of these points the scanning of the environment starts in order to determine the profile of environment and to calculate the centre of gravity.The position of the centre of gravity in respect of profile will always be the same.The purpose of the article -to determine possibility to find coordinates of the robot, using information about the centre of gravity of the figure.

Determination of the centre of gravity of known environment, defined with profile
The profile of "visible" environment to the robot depends on the position of the robot.The only exception is the case, when the environment is restricted with only contour, which composes prominent polygon (Fig. 1).The coordinates (x C and y C ) of centre of gravity of the plane figure, described with surface S, in common case can be found so [ . If the coordinates (x', y') of the profile is deducting from the position of the robot (radar) (Fig. 1), then the coordinates of profile outline, in immobile system of axes (x, y) In analysed case 1   const  .Then, the mass (area) and coordinates of centre of gravity of the polygon, which has n vertexes, can be determined using expressions: Let's suppose, that calculated point of the trace has its attribute, which is composed from the coordinates of the centre of gravity and their fluxions of x and y in respect of coordinates.It is possible to compare the coordinates of centre of gravity with the coordinates of centre of gravity, which was calculated before, when robot overpass to new calculated position scans environment and calculates coordinates of the centre of gravity from the scanning data.The differences between expected and actual coordinates of the centre of gravity characterize not only the accuracy of the new position, but the direction (vector) of the correction.It is obviously, when there are no obstacles -when robot moves and if the point of initial robot position will be treated as the start point of the system of axis, the contour of the environment border "moves" in respect of robot.The vector of the alteration of coordinates of centre of gravity has contrariwise, but is the same length, as real robots shift vector (Fig. 1, AB ).
System, which determines coordinates of the robot, is constituted from two scanning systems: supervisory system, which "scans" geometric model of the known environment, so coordinates of centre of gravity determined by it has exact coordinates, and also scanner of the robot, which determines centre of gravity according to its position scanning physical environment.Exact coordinates of the robot can be determined from the results got by both systems.

Determination of coordinates of mobile robot, according to the weight centre of environment, defined with profile
System of mobile robot navigation uses idea, that supervisory system uses vector marks in order to determine paths for several mobile robots and solve emerged conflict situations [1,4].Robots perform given path tasks, using its scanning equipment.The feedback information must be sent back to the supervisory system, in order to avoid possible problems.Supervisory system can change parameters of the path, in order to avoid emerged dynamic obstacles or deviations from the given path.The reasons of deviations may be various.In order to avoid it, various expensive systems of robot tracking, having own problems of functionality, may be used.
Moving mobile robots prosecutes only two tasks: follows coordinates and maintains feedback with supervisory system.So there is possibility to solve some other tasks in free time intervals.
Mobile robots have various additional devices, which can be used for environment scanning.So, robot can gather information about environment, which is scanning and at the same time the environment profile can be compared to the profile, which is provided from the supervisory system.If the profiles match, the robot lays in the point where it should be according to the supervisory system.Problem emerges, when you need to compare information about profile.Experimental results showed that there are several restrictions in the determination of the coordinates of mobile robot according to the profile.One of the restrictions is requirement to have gyroscope, compass or other additional systems (eg.GPS).
The idea, that determination of the coordinates of mobile robot can be related with centre of gravity of scanned known environment, requires theoretical substantiations and experimental verification.
If mobile robot is in the same coordinates as supervisory system established and the scanning angles coincides, the centres of gravity of the visible environment in both scanning cases coincides.
The different task is when the coordinates of robot and the supervisory system disagree (Fig. 1. points A and B).
If robot, for casual phenomenon, deviated from the given path and its coordinates changed, the correction of the present robot trajectory must be done in order to prosecute task of manufacturing.But robot coordinates are unknown, because it will be determinate only after the comparison of both profiles and corresponding calculations.As mentioned before, mobile robot does not use all its computer time, so it is possible to assign that task of present coordinates determination for it.
During the process of determination of the centre of gravity, such results are known: supervisory system "knows" coordinates, in which mobile robot must be, so the coordinates of determined centre of gravity is known; robot determines centre of gravity of its own system of coordinates.The coordinates of mobile robot must be determined from this information.The process of determination will be analysed in further numerical experiments.Both profiles are shown in Fig. 2, when systems of coordinates are parallel.Fig. 2. The profiles and their centres of gravity, of supervisory system and robot, when both systems of coordinates are parallel Scanners are in zero point of own system of coordinates in both cases and let's assume, that the ordinate axis y of the supervisors coordinate system is always oriented along expected direction of movement of a robot.
The experiment was performed using profile shown in Fig. 1.Centre of gravity of such profile is x C and y C .Coordinates of supervisory system -x S = 10.0 and y S = 20.0,robot position x R = 20.0 and y R = 60.0.Supervisory system, according to the expressions (6, 7) determined, that coordinates of centre of gravity in respect of zero coordinates is x CS = 39.99 and y CS = 29.99,whereas robot coordinates x CR = 29.95 and y CR = -10.05.Robot position coordinates K R will be present in column matrix and can be found in this way The problem seems different, when systems of coordinates are not parallel.The system of coordinates of the robot can be treated as rotated on certain start angle with respect to system of coordinates of the supervisor.Fig. 3 shows scanned profiles, when coordinate system of the robot rotated on angle equal 1.0 rad.If the same calculation is used as in expression ( 8 In order to determine coordinates of the robot, centre of gravity of robot coordinates Fig. 3 should be transformed to the form, showed in Fig. 2. The start angle of robot scanner is not important, because the distance of centre of gravity from robot initial coordinates is the same.So, if the angular position of robot is known from its orientation equipment, its centre of gravity C  in Fig. 3 can be transformed to shape, as showed in Fig. 2, according to the expression where  -robot turn angle from the expected path In order to determine coordinates of the mobile robot using this method, equipment of orientation, e.g.gyroscope, must be included in robot.Gyroscope enables to fix start-scanning angle, evading additional possible calculations (10), and using expression (8) in order to determine mobile robot coordinates.

A problem in detection of robots coordinates in known environment with additional obstacles
The problem becomes more complicated, when additional obstacles exists in the environment.If robot deviates from given path, but does not lose its orientation, the coordinates of the robot can be determined according to the centre of gravity.If any obstacles exists in the environment, the coordinates, determined according (8) expression, will be accurate.In this case, authors suggest using such methodology in order to determine exact coordinates.The coordinate system of supervisory system is placed in determined coordinates after the first search.Then, scanning is performed with supervisory system in order to find coordinates of the robot.
Such calculation is repeated until adjustable coordinates becomes invariable or varies marginally.Experimental results showed, that in this case, amount of suffi-cient number of calculations is 4-5 times, when coordinates of supervisory system is changed.The search time is about 10 times shorter in comparison with method [2], using entire profiles.The search of environment centre always converges.That could not be said, about the search according to the entire profile of known environment.The coordinates of the robot position will be corrected, when the deviations from the path is not large, as in examined example, the search will always be successful and amount of steps of the search will be lesser.

Conclusions
1. Method of evaluation of the mobile robot position according to centre of gravity of known environment is suggested and verified.Algorithm of coordinate's evaluation according to the centre of gravity of known environment operates reliably if deviation from real coordinates is considerable and if there are several robots in the scanning environment.
2. It is necessary that equipment of orientation in environment (compass or gyroscope system) should be included in mobile robot.
3. Verification of the coordinates should be performed in places, where the direction of the robot movement changes and it should be performed frequently.This procedure should be performed by control system of the robot; obtained result should be transmitted to supervisory system, which will make corrections of the mobile robot path.

Fig. 1 .
Fig. 1.The profile of "visible" environment changes, when the coordinates of mobile robot changes (points A and B), but the centre of gravity C of the figure ENKLM is in the same point, according to the profile

Fig. 3 .
Fig. 3. Scanned profiles and there centres of gravity, when scanner of the robot is rotated regarding the expected direction of movement

Fig. 4 .
Fig.4.Scanned profiles, of supervisory system and robot, with other obstacles in the environment Fig.4shows different obtained profiles of supervisory system ant robot, because obstacles are visible in different angles and centres of gravity of the environment are different.Methodology of determination of robot coordinates is such: coordinates, determined from both profiles are approximate, so scanner of supervisory system is placed in calculated coordinates of robot and calculations of coordinates of mobile robot are executed again.This procedure is repeated until the coordinates of the robot is immutable.Coordinates of supervisory system, in analysed example is (10.0, 20.0), robot -(20.0,60.0).The coordinates of mobile robot were determined, with sufficient accuracy, only in four steps of the search