MSC 70E60 DOI: 10.14529/mmp210206
SOFTWARE FOR THE MOBILE ROBOT SPATIAL ORIENTATION SYSTEM
E.I. Bazhenov1, S.A. Mokrushin1, S.I. Okhapkin2
1Moscow State University of Food Production, Moscow, Russian Federation 2Vyatka State University, Kirov, Russian Federation
E-mails: [email protected], [email protected], [email protected]
Ensuring the orientation of the mobile robot in space requires solving the problem of its precise positioning. For this purpose, it is proposed to include an additional measuring complex in the control system of the mobile robot. The complex is designed to determine the orientation of the robot in space by the values of the angles of course, roll and pitch. The analysis of the mobile robot positioning solutions allows to justify the feasibility of using inertial navigation systems based on microelectromechanical sensors to obtain navigation information about the orientation of the mobile robot in space. The key element of the developed functional scheme of the mobile robot control system is the software of the mobile robot spatial orientation system. The software implements separate sections of the code that determine the orientation in space using inertial sensors in parallel to the main algorithm of the mobile robot. The result of the developed software is a string containing up-to-date information about the three orientation angles of the robot: the string is sent to the server to form control actions to correct the spatial orientation of the mobile robot. To improve the accuracy of determining the robot orientation in space based on the values of the angles of course, roll and pitch, the developed software eliminates the systematic error of microelectromechanical sensors and corrects the magnetometer readings taking into account the displacement of the magnetic field along its three axes. The developed software of the mobile robot spatial orientation system provides a significant increase in the positioning accuracy of the mobile robot designed for use in a room with an area of 30 to 200 m2 with a known layout and a priori set starting point.
Keywords: mobile robot; robot orientation system; robot spatial orientation; robot navigation; inertial navigation system; microelectromechanical sensor.
Introduction
One of the key problems in the development of autonomous mobile robots is the precise determination of the robot orientation in space [1, 2]. The experience of solving problems of short-and long-term planning of the robot route; plotting the trajectory of its movement; accurate elaboration of planned actions; adequate response to external influences shows the need to improve the systems of spatial orientation of mobile robots [3].
1. Problem Statement
The object of the study is a mobile robot designed for use in a room with an area of 30 to 200 m2 with a known (specified) layout with a known (specified) starting point. The control of the mobile robot has a two-level character. The upper level is the remote
server program that is responsible for creating the task. The lower level is the mobile robot program, which is responsible for completing the task received from the remote server. Communication between the upper and lower levels is carried out by means of messages transmitted over a local Wi-Fi network. The remote server generates a string that contains the required value of the robot speed. The robot receives the string and maintains the specified speed. In turn, the robot sends the current speed to the server, thanks to this, the server monitors the position of the robotic platform. The problem of improving the accuracy of positioning the device is solved by developing special software for the spatial orientation system of the mobile robot.
Arrangement of elements on a mobile robot
In most cases, the robot trajectory is worked out due to incremental encoders on the motor shaft: they are used for constant calculation of the platform speed and the robot position in space [4]. However, this method of positioning is inaccurate, since the process of numerical differentiation and integration of the incremental encoder readings accumulates an error, and there is no reference system to correct this error [5]. This makes it necessary to introduce an additional measuring system into the control system of the mobile robot designed to determine the orientation of the robot in space based on the values of the angles of course, roll and pitch.
2. Conducting Research
For the development of an additional software and hardware complex of the mobile robot orientation system, personal orientation detection systems were not considered, since the mobile robot does not have actuators that could use personal navigation methods [6]. Based on the results of the analysis of methods for constructing mobile robot orientation systems in space according to the criteria of accuracy, versatility, resistance to interference,
Вестник ЮУрГУ. Серия «Математическое моделирование и программирование» (Вестник ЮУрГУ ММП). 2021. Т. 14, № 2. С. 64-69
simplicity and cost of implementation, conducted by a group of experts, the choice of inertial navigation systems is justified.
To combine the readings of different sensors, the "Sensor fusion" technique is used, according to which the readings of different sensors are combined in a certain way in order to obtain a single parameter [7]. In this case, these parameters are the Euler angles in three-dimensional space. In contrast to the gyroscope, the accelerometer and magnetometer allow to determine the orientation of the robot in the global coordinate system. The measuring module receives the values of the magnetic induction vector, the acceleration of free fall, and the angular velocity in its own coordinate system. To determine the orientation of the robot in the global coordinate system, we need to perform additional mathematical calculations to find the course angle (the projection of the Earth's magnetic field vector in the robot coordinate system), the roll angle (the projection of the gravity acceleration vector in the coordinate system of the device), and the pitch angle.
In practice, the raw readings of the accelerometer and magnetometer have noise and measurement errors, which lead to unstable results, even if the device is at rest [8]. To solve the problem, the obtained accelerometer and magnetometer readings are passed through a low-frequency filter, which removes high-frequency noise, but increases the response to changes in orientation in space [9]. To compensate for this inertia, the gyroscope readings are used. The high-pass filter for the gyroscope and the low-pass filter for the accelerometer and magnetometer combine a complementary filter.
From the power supply, the voltage is applied to all the functional units of the device. The voltage is applied to the motors via the control element - the motor driver. The microcomputer is supplied with voltage via a DC step-down converter in accordance with the power supply characteristics of the computing platform. Wi-Fi adapter, inertial microelectromechanical sensors, matching device, encoders are powered by a computing platform [10, 11].
The memory of the microcomputer stores the operating system and the developed program of the orientation system. The memory and the central processing unit actively interact. According to the control program, the central processing unit controls the generalpurpose I/O interface. The control signals from the interface control the motor driver, which switches the power circuits of the electric motors depending on the control signals generated by the computing platform. The general-purpose I/O interface also receives signals from encoders and inertial microelectromechanical sensors. The control program processes the received information, calculates the orientation value, and transmits it via a Wi-Fi network to a remote server using a Wi-Fi receiver. In turn, the remote server transmits the speed and direction of rotation of the motors to the computing platform.
As inertial microelectromechanical sensors, the system uses a single measuring module Troyka IMU 10 DOF, which includes three necessary sensors: a three-axis accelerometer, a gyroscope, and a magnetometer.
The measuring module is placed on the upper surface of the mobile robot, in the center of the wheel axle. This placement is due to the need to remove the magnetometer from the sources of the magnetic field-DC motors and the battery.
The software of the spatial orientation system of a mobile robot implements separate sections of the code that provide the determination of orientation in space using inertial sensors. To implement this additional functionality without loss of performance, the developed software is implemented as a parallel process to the main algorithm of the
mobile robot. The result of the orientation system software is a string containing up-to-date information about the three orientation angles of the robot. This string is sent to the server, which uses the information to form control actions to correct the spatial orientation of the mobile robot.
3. Results
Based on the results of experimental studies, the software of the spatial orientation system of the mobile robot was modified to solve the following problems.
Due to the imperfection of the design, it is necessary to calibrate microelectromechanical sensors and eliminate systematic error. The microelectromechanical gyroscope is subject to zero drift, the correction of which is carried out on the basis of averaging the sequence of a series of measurements of the gyroscope readings. Since the microelectromechanical gyroscope shows not the value of the angle of rotation, but the angular velocity (as a result of which there is no information about the initial position of the robot), to obtain the initial position, it is necessary to perform a series of calculations of the orientation angles using an accelerometer and a magnetometer, averaging the results obtained to determine the initial angles of the gyroscope.
The magnetometer is affected by two types of distortion: a distortion created by magnetic field sources (motors, speakers, batteries) and a distortion introduced by foreign objects that distort the existing magnetic field (metal frame, fasteners). To correct the magnetometer readings, it is necessary to determine the values of the magnetic field displacement along the three axes of the magnetometer, the scale matrix, and the orthogonalization.
Taking into account the above, it is shown that it is expedient to use mainly a gyroscope while the robot is moving, with an adjustment to the reference system of an accelerometer and a magnetometer at rest. The motion is determined by finding the standard deviation of the samples of the values of the orientation angles found using the accelerometer and magnetometer. The sample size is 100 items. If the standard deviation exceeds 0.1, the object rotates, otherwise it is at rest.
Conclusion
The developed software of the mobile robot spatial orientation system provided a significant increase in the positioning accuracy of the mobile robot intended for use in a room with an area of 30 to 200 m2 with a known (given) layout with a known (a priori set) starting point.
References
1. Tzafestas S.G. Introduction to Mobile Robot Control. London, Elsevier, 2014.
2. Larkin E., Akimenko T., Bogomolov A., Krestovnikov K. Mathematical Model for Evaluating
Fault Tolerance of On-Board Equipment of Mobile Robot. Proceedings of 15th International
Conference on Electromechanics and Robotics "Zavalishin's Readings", Ufa, 2020, pp. 383393. DOI: 10.1007/978-981-15-5580-0_31
3. Kolpashchikov D., Danilov V., Laptev N., Skirnevskiy I., Manakov R., Gerget O.,
Meshcheryakov R. Inverse Kinematics for Steerable Concentric Continuum Robots. Smart
Вестник ^ЭУрГУ. Серия «Математическое моделирование и программирование» (Вестник ЮУрГУ ММП). 2021. Т. 14, № 2. С. 64-69
Innovation, Systems and Technologies, 2020, vol. 154, pp. 89-100. DOI: 10.1007/978-981-13-9267-2_8
4. Larkin E., Bogomolov A., Feofilov S. Stability of Digital Feedback Control Systems. Proceedings of 15th International Conference on Electromechanics and Robotics "Zavalishin's Readings", St. Petersburg, 2018, no. 161, article ID: 02004, 5 p. DOI: 10.1051/matecconf/201816102004
5. Larkin E., Bogomolov A., Privalov A. Discrete Model of Mobile Robot Assemble Fault-Tolerance. Interactive Collaborative Robotics, 2019, vol. 2019, pp. 204-215. DOI: 10.1007/978-3-030-26118-4_20
6. Astrum J., Wittenmark B. Computer Controlled Systems: Theory and Design. Tsinghua, Prentice Hall, 2002.
7. Larkin E., Bogomolov A., Gorbachev D., Privalov A. About Approach of the Transactions Flow to Poisson One in Robot Control Systems. Interactive Collaborative Robotics, 2017, vol. 2017, pp. 113-122. DOI: 10.1007/978-3-319-66471-2_13
8. Rousand M. Reliability of Safety-Critical Systems: Theory and Applications, New York, John Wiley and Sons, 2014.
9. Larkin E.V., Bogomolov A.V., Privalov A.N., Dobrovolsky N.N. Relay Races Along a Pair of Selectable Routes. Bulletin of the South Ural State University. Series: Mathematical Modelling, Programming and Computer Software, 2018, vol. 11, no. 1, pp. 15-26. DOI: 10.14529/mmp180102
10. Larkin E., Bogomolov A., Privalov A. Data Buffering in Information-Measuring System. 2nd International Ural Conference on Measurements, Chelyabinsk, 2017, pp. 118-123. DOI: 10.1109/URALC0N.2017.8120697
11. O'Conner P., Kleyner A. Practical Reliability Engineering, New York, John Wiley and Sons, 2012.
Received March 16, 2021
УДК 62-529 Б01: 10.14529/шшр210206
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ СИСТЕМЫ
ПРОСТРАНСТВЕННОЙ ОРИЕНТАЦИИ МОБИЛЬНОГО РОБОТА Е.И. Баженов1, С.А. Мокрушин1, С.И. Охапкин2
1Московский государственный университет пищевых производств, г. Москва, Российская Федерация
2Вятский государственный университет, г. Киров, Российская Федерация
Обеспечение ориентации мобильного робота в пространстве требует решения задачи его точного позиционирования. Для этого предлагается включение в систему управления мобильного робота дополнительного измерительного комплекса, предназначенного для определения ориентации робота в пространстве по величинам углов курса, крена и тангажа. Анализ решений позиционирования мобильного робота позволил обосновать целесообразность применения для получения навигационной информации об ориентации мобильного робота в пространстве инерциальных навигационных
систем, построенных на основе микроэлектромеханических датчиков. Ключевым элементом разработанной функциональной схемы системы управления мобильного робота является программное обеспечение системы пространственной ориентации мобильного робота. Программное обеспечение реализует отдельные участки кода, обеспечивающие определение ориентации в пространстве с помощью инерциальных датчиков параллельно основному алгоритму работы мобильного робота. Результатом работы разработанного программного обеспечения является строка, содержащая актуальную информацию о трех углах ориентации робота: строка отправляется на сервер для формирования управляющих воздействий по коррекции пространственной ориентации мобильного робота. Для повышения точности определения ориентации робота в пространстве на основании величин углов курса, крена и тангажа разработанное программное обеспечение обеспечивает устранение систематической погрешности микроэлектромеханических датчиков и корректировку показаний магнитометра с учетом смещения магнитного поля по трем его осям. Разработанное программное обеспечение системы пространственной ориентации мобильного робота обеспечило существенное повышение точности позиционирования мобильного робота, предназначенного для применения в помещении площадью от 30 до 200 м2 с известной планировкой и априорно заданной точкой старта.
Ключевые слова: мобильный робот; система ориентации робота; пространственная ориентация робота; навигация робота; инерциальная навигационная система; микроэлектромеханический датчик.
Евгений Иванович Баженов, магистрант, кафедра <Автоматизированные системы управления биотехнологическими процессами:», Московский государственный университет пищевых производств (г. Москва, Российская Федерация), [email protected].
Сергей Александрович Мокрушин, кандидат технических наук, доцент, кафедра <Автоматизированные системы управления биотехнологическими процессами», Московский государственный университет пищевых производств (г. Москва, Российская Федерация), [email protected].
Сергей Иванович Охапкин, кандидат технических наук, доцент, кафедра <Электропривод и автоматизация промышленных установок», Вятский государственный университет (г. Киров, Российская Федерация), [email protected].
Поступила в редакцию 16 марта 2021 г.
Вестник !Ю"УрГ"У. Серия «Математическое моделирование и программирование» (Вестник ЮУрГУ ММП). 2021. Т. 14, № 2. С. 64-69