Бюллетень науки и практики /Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
ТЕХНИЧЕСКИЕ НАУКИ/ TECHNICAL SCIENCES
UDC 621.865.8 https://doi.org/10.33619/2414-2948/43/26
AGRIS J10 J15
NEW METHOD OF USING MOBILE ROBOTS FOR MOVING CARGO IN WAREHOUSE
©Bodrenko A., ORCID: 0000-0002-4618-3784, SPIN-code: 8343-3661, Ph.D., Volgograd, Russia, [email protected]
НОВЫЙ СПОСОБ ПРИМЕНЕНИЯ МОБИЛЬНЫХ РОБОТОВ ДЛЯ ПЕРЕМЕЩЕНИЯ ГРУЗОВ НА СКЛАДЕ
©Бодренко А. И., ORCID: 0000-0002-4618-3784, SPIN-код: 8343-3661, канд. физ.-мат. наук,
г. Волгоград, Россия, [email protected]
Abstract. The new patented method for moving cargo in warehouse is proposed in this article. According to the new method, movement of cargo from the storage area to another warehouse area is carried out by throwing the cargo by the first mobile robot and catching the thrown cargo on fly by the second mobile robot. The parameters of the calculated trajectory of movement, in the free flight phase, of the center of mass of the cargo to be thrown are calculated by numerical methods for solving the Cauchy problem for a system of ordinary differential equations, and by the shooting method for boundary value problems of a system of ordinary differential equations. The first mobile robot throws the cargo at the specified angle to the horizon with the specified initial velocity, at the specified moment of time. In order to catch the thrown cargo on fly by the second mobile robot, the parallel algorithm A1-A2 for catching a thrown cargo on fly by the second mobile robot was created. The method allows the first mobile robot to throw cargoes for large distances, and the created algorithms allow the second mobile robot to catch reliably the thrown cargoes on fly. The proposed method for moving cargo is superior in economic efficiency and reliability to the other methods for moving cargo by implementing tossing of inventory items by robots.
Аннотация. В статье представлен новый запатентованный способ перемещения грузов на складе. В соответствии с этим новым методом, перемещение груза из зоны хранения в другую зону склада осуществляют посредством метания груза первым мобильным роботом и посредством осуществления захвата этого груза на лету вторым мобильным роботом. Параметры расчетной траектории перемещения центра масс груза в фазе свободного полета вычисляют с помощью численных методов решения задачи Коши для систем обыкновенных дифференциальных уравнений, и с применением метода пристрелки для краевых задач системы обыкновенных дифференциальных уравнений. Первый мобильный робот метает груз под заданным углом к горизонту, с заданной начальной скоростью, в заданный момент времени. Для осуществления захвата груза на лету вторым мобильным роботом, разработан параллельный алгоритм A1-A2. Этот метод позволяет первому мобильному роботу метать грузы на большие расстояния, и разработанные алгоритмы позволяют второму мобильному роботу надежно захватывать грузы на лету. Представленный метод перемещения грузов превосходит по экономической эффективности и надежности все другие методы перемещения грузов, осуществляемые посредством метания грузов роботами.
Бюллетень науки и практики /Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
Keywords: robots; warehouses; image processing; logistics; loading; unloading; computers; sensors; storage; equipment.
Ключевые слова: роботы; склады; обработка изображения; логистика; загрузка; разгрузка; компьютеры; датчики; место хранения; оборудование.
There is a method for implementing warehouse operations used by Amazon (1) which is carried out by tossing of inventory items in a warehouse and tossing of inventory items is implemented by a robot arm for moving cargo into a container.
The new method for implementing warehouse operations was invented in June 2017 in (2). The proposed method for moving cargo (2) is superior in economic efficiency and reliability to the other methods for moving cargo by tossing of inventory items. The reliability and economic efficiency of the proposed method are carried out by the fact that the first mobile robot is capable of throwing cargoes for large distances while the second mobile robot is capable of reliably catching the thrown cargoes on fly.
Merits of the new method of using mobile robots for implementing warehouse operations
The new method relates to the field of robotics and to warehouses of enterprises and shops. In implementing the method, two identical mobile robots are used by implementing automatic operations of these mobile robots, each of which contains a mobile platform, an omnidirectional mobile wheel-type mechanism, a robot arm, a wrist, a gripper. According to the new method, movement of cargo from the storage area to another warehouse area is carried out by throwing the cargo by the first mobile robot and catching the thrown cargo on fly by the second mobile robot. Wherein throwing the cargo has a free flight phase and an acceleration phase, which consists of forced movement and holding this cargo by the gripper of the first mobile robot, which is carried out by the movement of the robot arm, the wrist and the gripper by which this cargo is held. Wherein catching of the thrown cargo on fly is implemented by the gripper of the second mobile robot.
When throwing the cargo, mobile robots are positioned so that the distance between the orthogonal projection (on the upper horizontal plane of the floor of the warehouse building) of the space which can be swept by the wrist reference point on which the gripper of the first mobile robot is installed when the mobile platform of the first mobile robot is positioned for throwing the cargo, and the orthogonal projection (on the upper horizontal plane of the floor of the warehouse building) of the space which can be swept by the wrist reference point on which the gripper of the second mobile robot is installed when the mobile platform of the second mobile robot is positioned for catching the cargo on fly, is more than the diameter of the space which can be swept by the wrist reference point on which the gripper of the first mobile robot is installed when the mobile platform of the first mobile robot is positioned motionless.
Technical result, the achievement of which the new method is directed, is to ensure the decrease of the total distance of movements of mobile platforms of mobile robots with cargoes loaded during movements of cargoes in a warehouse.
Two mobile robots used to carry out the new method for implementing warehouse operations
The first mobile robot is used for loading of cargoes on this mobile robot, and for throwing cargoes, and the second mobile robot is used for catching the thrown cargoes on fly, carrying cargoes and unloading of cargoes from the second mobile robot (by implementing automatic operations of these mobile robots).
Бюллетень науки и практики / Bulletin oof Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
Each mobile robot, which is a wheeled robot, comprises: a mobile platform having an omnidirectional mobile mechanism; an onboard computer with an information storage device; a Wi-Fi network node equipment connected to the onboard computer; an electric battery; two video cameras; a gripper; a wrist on which the gripper is installed; a robot arm on which the gripper is installed. The weight of each mobile platform is from 100 to 150 kg. The width and length of each mobile platform is from 100 to 150 cm. The weight of each robot arm is from 10 to 20 kg. The length of each robot arm is more than 180 cm. The DOF of each robot arm is not less than 7. The maximum individual joint velocity of each robot arm and each gripper is more than 1200 degrees per second. The gripping force of each gripper is more than 50 N. The electric battery provides electric power to the mobile robot on which this electric battery is installed.
Each video camera is capable of getting and transferring the images to the onboard computer of the mobile robot, on which this video camera is installed, for image processing at 1000 fps for 1024x1024 pixels. Each onboard computer is capable of real-time image processing of the input images received from the two video cameras (at 1000 fps for 1024x1024 pixel, for each video camera). The real-time image processing is done by using software for computer vision systems, Linux-based real-time operating system, software for parallel computing, and software allowing applications to run on real-time operating systems. Thus, the onboard computer and the two video cameras connected to it form a real-time vision system.
The mobile robot is represented on Figure 1.
l
9
10 11 \
5
2
Figure 1. The view of the mobile robot. On the Figure 1, the following items were denoted by the numbers: 1 — the mobile robot, 2 — the mobile platform of the mobile robot, 3 — the gripper, 4 — the wrist on which the gripper is installed, 5 — the robot arm on which the gripper is installed, 6 — the onboard computer, 7 — the information storage device connected to the onboard computer, 8 — the network node equipment connected to the onboard computer, 9 — a video camera, 10 — a wrist on which the video camera is installed, 11 — a robot arm on which the video camera is installed, 12 — the electric battery
Software used to carry out the new method for implementing warehouse operations
In order to implement automatic operations of mobile robots, the following software is installed on the onboard computers of the first and the second mobile robots, and on the computer of the control center:
- «NI Linux Real-Time» (3) which is a Linux-based real-time operating system, fully supported in by the NI LabVIEW development environment with the LabVIEW Real-Time Module;
- «LabVIEW Robotics Bundle» (4) which includes the software tools needed to control mobile robot;
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
- «The Orocos Real-Time Toolkit» (5) allows software to run on real-time operating systems;
- OpenCV software (Open Source Computer Vision Library) (6) with using standard OpenVX (7) and with using the CUDA technology (Compute Unified Device Architecture) (8) which is a parallel computing platform from NVIDIA for general purpose computing on graphical processing units (GPUs);
- OpenCL software (Open Computing Language) (9) which is the open standard for cross-platform, parallel programming of diverse compute devices, including GPUs;
- OpenMP software (Open Multi-Processing) (10) and OpenMP compilers (11) for developing parallel applications on various platforms;
- the ntpd program (Network Time Protocol daemon) (12) which is used in order to maintain the system time on the onboard computers of the first and the second mobile robots in synchronization with a time server (the computer of the control center is used as a time server) using the Network Time Protocol (NTP).
- software for solving the Cauchy problem for a system of ordinary differential equations, and software for implementing the shooting method for boundary value problems of a system of ordinary differential equations.
Loading of cargoes on the first mobile robot and unloading of cargoes from the second mobile
robot
The pose of the first mobile robot at the moment before beginning the loading of a cargo on the first mobile robot is represented on Figure 2.
Figure 2. The side view of the first mobile robot at the moment before beginning the picking of the cargo from the storage place
Localization of each mobile robot is conducted continuously through the dead reckoning by using sensor fusion and analyzing information received from the video cameras and proprioceptive sensors of this robot.
At first, the name of the cargo to be transported is inputted into the computer of the control center. Then the storage place, where this cargo is stored, is found on the computer of the control center. After that the first and the second mobile robots receive (on the onboard computers) the parameters of the storage place and the name of the cargo to be transported, and the first mobile robot moves to this storage place, and the second mobile robot moves to the position for catching the cargo on fly. Then the first mobile robot loads the cargo from the storage place by using the robot arm with the gripper.
Бюллетень науки и практики /Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
After that the first mobile robot throws this cargo to the second mobile robot, and the second mobile robot catches this thrown cargo on fly. Thus throwing the cargo by the first mobile robot and catching the thrown cargo on fly are performed by implementing automatic operations of the first and the second mobile robots.
After catching the thrown cargo on fly is implemented by the second mobile robot the holding this cargo is performed by implementing automatic operations of the second mobile robot. Wherein the robot arm, the wrist and the gripper of the second mobile robot are positioned in the poses intended for holding this cargo during the movement of this cargo by this mobile robot.
After that the second mobile robot with the cargo loaded moves (along the line of possible movements of the second mobile robot) to another warehouse area, for example, to the picking area, and unloads the cargo by implementing automatic operations of this mobile robot.
Unloading of the cargo from the second mobile robot is provided by opening the gripper installed on the robot arm of this mobile robot. After the gripper is opened, the cargo is placed into the storage container for cargoes transported to the picking area. This completes the intra-warehouse movements of the cargo from the storage area to the picking area in the warehouse.
The pose of the second mobile robots at the moment before beginning the unloading of a cargo from the second mobile robot is represented on Figure 3.
18
Figure 3. The side view of the second mobile robot at the moment before beginning the unloading of the cargo from the second mobile robot. On the Figures 2 and 3, the following items were denoted by the numbers: 2 — the mobile platform of the mobile robot, 3 — the gripper, 4 — the wrist on which the gripper is installed, 5 — the robot arm on which the gripper is installed, 9 — the video camera, 10 — the wrist on which the video camera is installed, 11 — the robot arm on which the video camera is installed, 14 — a warehouse rack, 17 — a cargo, 18 — the floor of the warehouse building, 19 — the container
Throwing of cargoes by the first mobile robot and catching thrown cargoes on fly by the second mobile robot The weight of a cargo to be thrown is from 100 g to 2 kg while the cargo dimensions are from 5 to 15 cm (width, length, height).
The parameters of the poses of the mobile robots during throwing of the cargo and catching of the cargo on fly are specified so that so that the distance between the orthogonal projection (on the upper horizontal plane of the floor of the warehouse building) of the space which can be swept by the wrist reference point on which the gripper of the first mobile robot is installed when the mobile platform of the first mobile robot is positioned for throwing the cargo, and the orthogonal projection
Бюллетень науки и практики /Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
(on the upper horizontal plane of the floor of the warehouse building) of the space which can be swept by the wrist reference point on which the gripper of the second mobile robot is installed when the mobile platform of the second mobile robot is positioned for catching the cargo on fly, is more than the diameter of the space which can be swept by the wrist reference point on which the gripper of the first mobile robot is installed when the mobile platform of the first mobile robot is positioned motionless. For example, the distance between the mobile robots during throwing of a cargo and catching the cargo on fly can be from 5 to 30 m.
Before throwing of the cargo is implemented by the first mobile robot, the parameters of the calculated trajectory of movement, in the free flight phase, of the center of mass of the cargo to be thrown are calculated by numerical methods for solving the Cauchy problem for a system of ordinary differential equations, and by the shooting method for boundary value problems of a system of ordinary differential equations.
The parameters of the calculated line of movement of the cargo during the acceleration phase are calculated by the following method. The acceleration phase of the movement of the cargo is implemented by the rocking movement of the robot arm (of the first mobile robot) which is done by the rotary joint of this robot arm. Thus, the center of mass of the cargo, during the acceleration phase, is moved along the arc of the circle. Wherein this circle is passing through the calculated point of release of the cargo from the gripper so that the calculated velocity vector (with initial point at the calculated point of release of the cargo from the gripper) of the center of mass of the cargo at the calculated moment of release of the cargo from the gripper is tangent to this circle.
After that the calculated distance between the center of mass of the cargo to be thrown during holding the cargo by the gripper and the axis of rotation of the rotary joint during the acceleration phase of the movement of the cargo is specified.
Then the vertical plane passing through the calculated point of release of the cargo from the gripper and parallel to the calculated velocity vector of the center of mass of the cargo to be thrown at the calculated moment of release of the cargo from the gripper, i.e. the plane containing all points of the calculated trajectory of movement, during the acceleration phase, of the center of mass of the cargo to be thrown, is obtained.
After that the calculated position of the center of the circle by which the center of mass of the cargo to be moved during the acceleration phase, is specified. Then the arc (which is less than semicircle) of this circle is set by specifying the coordinates (calculated in the world coordinate system) of the two points, where the first point is located on this circle so that this point and the center of this circle belong to the same horizontal straight line, and the second point is the calculated point of release of the cargo from the gripper at the calculated moment of release of the cargo from the gripper, wherein the central angle of this arc is obtuse. Wherein, the duration of the acceleration phase is specified.
Thus, the initial calculated pose of the robot arm during the beginning of the acceleration phase is specified so that the axis of rotation of the rotary joint by which the rocking movement of the robot arm is implemented, and the center of mass of the cargo located during the beginning of the acceleration phase belong to the same horizontal plane.
Wherein the parameters of the calculated initial pose of the first mobile robot, calculated in the world coordinate system, are specified so that the cargo to be thrown is located at the initial position during the beginning of the acceleration phase.
The acceleration phase of the movement of the cargo is implemented by the rocking movement of the robot arm from the calculated initial pose of this robot arm, wherein:
- the pose of the axis of rotation of the rotary joint, by which this rocking movement of the robot arm is implemented, is not changed;
Бюллетень науки и практики /Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
- the rotary joint is not moved along the axis of rotation of this rotary joint;
- the rotary joint, by which this rocking movement of the robot arm is implemented, is positioned so that the center of mass of the cargo is located on the vertical plane passing through the calculated point of release of the cargo from the gripper and parallel to the calculated velocity vector of the center of mass of the cargo to be thrown at the calculated moment of release of the cargo from the gripper;
- the distance between the center of mass of the cargo to be thrown during retention of this cargo by the gripper and the axis of rotation of the rotary joint, by which this rocking movement of the robot arm is implemented, during the acceleration phase of the movement of the cargo, wherein the axis of rotation of this rotary joint is orthogonal to the vertical plane passing through the calculated point of release of the cargo from the gripper and parallel to the calculated velocity vector of the center of mass of the cargo to be thrown at the calculated moment of release of the cargo from the gripper, is not changed.
The poses of the first and the second mobile robots during throwing of the cargo by the first mobile robot and catching the thrown cargo on fly by the second mobile robot are represented on Figure 4.
Figure 4. The side view of the first and the second mobile robots during throwing of the cargo by the first mobile robot and catching the thrown cargo on fly by the second mobile robot. On the Figure 4, the following items were denoted by the numbers: 17 — a cargo, 34 — the calculated trajectory of movement, in the free flight phase, of the center of mass of the thrown cargo.
After that the parameters of the working modes of the actuators of the robot arm, the wrist and the gripper of the first mobile robot for the implementation of the movement of the cargo, during the acceleration phase, along the calculated line for the implementation of the movement of the cargo along the calculated trajectory, in the free flight phase, with the specified initial velocity, are obtained by implementing automatic operations of the first mobile robot and using special computer programs. Wherein these parameters are obtained for the specified calculated moment of beginning of the acceleration phase of the movement of the cargo, for the specified calculated duration of the acceleration phase, for the specified calculated velocity vector of the center of mass of the cargo to be thrown at the calculated moment of release of the cargo from the gripper, for the pose of the mobile platform of the first mobile robot during throwing of the cargo.
Parameters of the calculated trajectory of movement, in the free flight phase, of the center of mass of the cargo to be thrown The parameters of the calculated trajectory of movement, in the free flight phase, of the center of mass of the cargo to be thrown are calculated by the following method.
At first, the vertical plane passing through the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly, i.e. the plane containing all points of the calculated trajectory of movement, in the free flight phase, of the center of mass of the cargo to be
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
thrown, is obtained. The orthogonal, right-oriented coordinate system is introduced in this vertical plane, and the origin of this coordinate system coincides with the calculated point of release of the cargo, and the first coordinate axis is on a horizontal plane and directed orthogonally to the direction of the force of gravity, and the second coordinate axis is directed vertically upward, i.e. directed in the opposite direction of the force of gravity.
The calculated trajectory of movement, in the free flight phase, of the center of mass of the cargo thrown at the specified angle to the horizon (suggesting that the air resistance force acting on the thrown cargo is proportional to the square of the velocity of this cargo), calculated in this coordinate system introduced in this vertical plane, is calculated from the following system of ordinary differential equations:
x'=u, (1)
y'=v,
u'= - (K/m)u(u2+v2)1/2, v'= - g - (K/m)v(u2+v2)1/2,
where:
x=x(t) is the abscissa of the center of mass of the thrown cargo at the moment of time t; x'=x'(t) is the derivative of the function x=x(t) at the moment of time t; u=u(t) is the first coordinate of the velocity vector of the center of mass of the thrown cargo at the moment of time t;
y=y(t) is the ordinate of the center of mass of the thrown cargo at the moment of time t; y'=y'(t) is the derivative of the function y=y(t) at the moment of time t; v=v(t) is the second coordinate of the velocity vector of the center of mass of the thrown cargo at the moment of time t;
u'=u'(t) is the derivative of the function u=u(t) at the moment of time t; K is the air resistance coefficient determined by the properties of the environment, the shape of the thrown cargo, and corresponding to the square of the velocity of the thrown cargo; m is the mass of the thrown cargo;
v'=v'(t) is the derivative of the function v=v(t) at the moment of time t; g is the acceleration of gravity.
Wherein the air resistance coefficient K for this cargo is calculated approximately, for example, by using the video recordings of the throwing of the cargo at the specified angle to the horizon, and with specified initial velocity not exceeding the value of 15 m/s.
For the equation system (1), the following initial conditions, relative to the Cartesian rectangular coordinate system introduced in the vertical plane passing through the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly, are considered:
x(T)=A, y(T)=B, u(T)=C, v(T)=D, (2)
where:
x(T) is the abscissa of the center of mass of the cargo thrown at the moment of time T; T is the calculated moment of time when the center of mass of the thrown cargo is located at the point of release of this cargo during throwing of this cargo;
A is the value of the abscissa of the center of mass of the cargo thrown at the moment of time
T;
y(T) is the ordinate of the center of mass of the cargo thrown at the moment of time T;
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
B is the value of the ordinate of the center of mass of the cargo thrown at the moment of time
T;
u(T) is the first coordinate of the velocity vector of the center of mass of the cargo thrown at the moment of time T;
C is the value of the first coordinate of the velocity vector of the center of mass of the cargo to be thrown at the moment of time T;
v(T) is the second coordinate of the velocity vector of the center of mass of the cargo thrown at the moment of time T;
D is the value of the second coordinate of the velocity vector of the center of mass of the cargo thrown at the moment of time T.
The system of ordinary differential equations (1) with the initial conditions (2) describes the movement of the center of mass of the thrown cargo in the vertical plane passing through the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly, wherein the cargo is thrown at the specified angle to the horizon, at the specified moment of time with the specified initial values of the coordinates of the center of mass of this cargo, and with the specified initial values of the coordinates of the velocity vector of the center of mass of this cargo (suggesting that the air resistance force acting on the thrown cargo is proportional to the square of the velocity of this cargo).
Numerical methods for solving the Cauchy problem for a system of ordinary differential equations are used in order to obtain the approximate solution of the system of ordinary differential equations (1) with the initial conditions (2).
For the system of ordinary differential equations (1), the following border conditions, relative to the Cartesian rectangular coordinate system introduced in the vertical plane passing through the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly, are considered:
x(T)=A, y(T)=B, x(L)=E, y(L)=G (3)
where:
x(T) is the abscissa of the center of mass of the cargo thrown at the moment of time T; T is the calculated moment of time when the center of mass of the thrown cargo is located at the point of release of this cargo during throwing of this cargo;
A is the value of the abscissa of the center of mass of the cargo thrown at the moment of time
T;
y(T) is the ordinate of the center of mass of the cargo thrown at the moment of time T; B is the value of the ordinate of the center of mass of the cargo thrown at the moment of time
T;
x(L) is the abscissa of the center of mass of the thrown cargo at the moment of time L; L is the calculated moment of time when the center of mass of the thrown cargo is located at the calculated point of catching of the thrown cargo on fly;
E is the value of the abscissa of the center of mass of the thrown cargo at the moment of time
L;
y(L) is the ordinate of the center of mass of the thrown cargo at the moment of time L; G is the value of the ordinate of the center of mass of the thrown cargo at the moment of time
L.
The shooting method for boundary value problems of a system of ordinary differential equations are used, by applying numerical methods, in order to obtain the approximate solution of the system of ordinary differential equations (1) with the border conditions (3). Thus, the values of
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
the approximate solution of the system of ordinary differential equations (1) with the border conditions (3) are obtained.
Therefore, in order to obtain the parameters of the calculated trajectory of movement, in the free flight phase, of the center of mass of the thrown cargo the following set of actions is performed.
For the cargo and for each pair of the following poses of the two mobile robots: the pose of the first mobile robot during throwing of this cargo and the pose of the second mobile robot (corresponding to the pose of the first mobile robot) during catching of the thrown cargo on fly, the following initial conditions are specified: the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly, calculated in the world coordinate system, the calculated duration of free flight of the cargo, the calculated moment of release of this cargo from the gripper of the first mobile robot during throwing of this cargo. Wherein the vertical plane passing through the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly, i.e. the plane containing all points of the calculated trajectory of movement, in the free flight phase, of the center of mass of the thrown cargo, is specified.
Then the Cartesian rectangular coordinate system is introduced in this vertical plane, wherein the origin of this coordinate system coincides with the calculated point of release of the cargo, and the first coordinate axis is on a horizontal plane and directed orthogonally to the direction of the force of gravity, and the second coordinate axis is directed vertically upward, i.e. directed in the opposite direction of the force of gravity.
After that the approximate solution of the system of ordinary differential equations (1) with the border conditions (3) (which describes the calculated trajectory of movement of the center of mass of the thrown cargo, in the free flight phase, in the vertical plane passing through the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly), and with specified parameters of the cargo to be thrown, is obtained by using the shooting method for boundary value problems of a system of ordinary differential equations. Wherein, in the system of ordinary differential equations (1), the value of the parameter m is the mass of the thrown cargo, and the value of the parameter K is the air resistance coefficient corresponding to this cargo.
Wherein, in the border conditions (3), the value of the parameter T is the calculated moment of release of this cargo from the gripper of the first mobile robot during throwing of this cargo, the value of the parameter L is the sum of T and the specified calculated duration of free flight of the cargo, the values of the parameters A and B are the calculated coordinates of the point of release of the cargo, calculated in the coordinate system introduced in the vertical plane passing through the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly, the values of the parameters E and G are the calculated coordinates of the point of catching of the thrown cargo on fly, calculated in the coordinate system introduced in the vertical plane passing through the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly.
In particular, the sequence of values of the approximate solution of the system of ordinary differential equations (1) with the border conditions (3) for the following 1001 values of the independent variable t is calculated:
tw=T+h0-0,001-w,
where:
- tw is the value of the independent variable t, i.e. the specified calculated moment of time coming after such calculated moment of time when the center of mass of the thrown cargo is located at the point of release of this cargo from the gripper of the first mobile robot during throwing of this cargo;
Бюллетень науки и практики / Bulletin of Science and Practice https://www.bulletennauki.com
Т. 5. №6. 2019 DOI: 10.33619/2414-2948/43
- w is the ordinal number of the independent variable t, i.e. an integer taking all values from 0 to 1000;
- T is the calculated moment of time when the center of mass of the thrown cargo is located at the point of release of this cargo from the gripper of the first mobile robot during throwing of this cargo;
- h0 is the specified calculated duration of free flight of the cargo.
Thus, the sequence of values of the approximate solution of the system of ordinary differential equations (1) with the border conditions (3) is calculated, and which has the following form: (x(tw), y(tw), u(tw), v(tw)) for all integer number w taking all values from 0 to 1000.
The system of ordinary differential equations (1) is autonomous. Therefore, if the calculated initial moment T of release of this cargo from the gripper of the first mobile robot during throwing of this cargo and the calculated moment of catching of the thrown cargo on fly are changed by the same value S then the calculated sequence of values of the approximate solution of the system of ordinary differential equations (1) with the border conditions (3) is used for calculation of the approximate solution of the system of ordinary differential equations (1) with the border conditions (3), with these modified initial data.
Thus, the sequence of 4004 values {Hs} (for all integer number s taking all values from 1 to 4004), which are the calculated coordinates of points and vectors calculated in the coordinate system introduced in the vertical plane passing through the calculated point of release of the cargo and the calculated point of catching of the thrown cargo on fly, is calculated.
Wherein the values H1+4w, H2+4w (for all integer number w taking all values from 0 to 1000) are the ordered pair of numbers which are the calculated coordinates of the center of mass of the thrown cargo at the calculated moment of time coming after the calculated moment of release of this cargo from the gripper of the first mobile robot during throwing of this cargo, and coming after the period of time equal to the product of the following three values: the value w, the value h0 and the value 0,001. Wherein the value H1+4w is equal to the value x(tw), the value H2+4w is equal to the value y(tw) (for all integer number w taking all values from 0 to 1000).
After that, for each point determined by the coordinates H1+4w, H2+4w (for all integer number w taking all values from 0 to 1000) the coordinates of this point are calculated in the world coordinate system in the form of ordered troika of numbers: h1+6w, h2+6w, h3+6w.
Wherein the values H3+4 w, H4+4 w (for all integer number w taking all values from 0 to 1000) are the ordered pair of numbers which are the calculated coordinates of the velocity vector of the center of mass of the thrown cargo at the calculated moment of time coming after the calculated moment of release of this cargo from the gripper of the first mobile robot during throwing of this cargo, and coming after the period of time equal to the product of the following three values: the value w, the value h0 and the value 0,001. Wherein the value H3+4w is equal to the value u(tw), the value H4+4w is equal to the value v(tw) (for all integer number w taking all values from 0 to 1000).
After that, for each vector determined by the coordinates H3+4w, H4+4w (for all integer number w taking all values from 0 to 1000) the coordinates of this vector are calculated in the world coordinate system in the form of ordered troika of numbers: h4+6w, h5+6w, h6+6w.
Thus, the parameters of the calculated trajectory of movement of the center of mass of the cargo to be thrown, in the free flight phase, are calculated, and which are the ordered sequence of 6007 values {hn} (for all integer number n taking all values from 0 to 6006), wherein the first value h0 is the specified calculated duration of free flight of the thrown cargo, and the other 6006 values are the calculated coordinates of the center of mass of the cargo to be thrown and the calculated coordinates of the velocity vector of the center of mass of the cargo to be thrown at the
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
corresponding calculated moments of time, and which are calculated in the world coordinate system.
In particular, the ordered troika of values: h1, h2, h3 is the calculated coordinates of the center of mass of the cargo to be thrown at the calculated moment of release of this cargo from the gripper of the first mobile robot during throwing of this cargo, calculated in the world coordinate system, and the ordered troika of values: h4, h5, h6 is the calculated coordinates of the velocity vector of the center of mass of the cargo to be thrown at the calculated moment of release of this cargo from the gripper of the first mobile robot during throwing of this cargo, calculated in the world coordinate system.
In particular, the ordered troika of values: h6001, h6002, h6003 is the calculated coordinates of the center of mass of the thrown cargo at the calculated moment of catching of this cargo on fly, calculated in the world coordinate system, and the ordered troika of values: h6004, h6005, h6006 is the calculated coordinates of the velocity vector of the center of mass of the thrown cargo at the calculated moment of catching of this cargo on fly, calculated in the world coordinate system.
This completes the calculation of the parameters of the calculated trajectory of movement, in the free flight phase, of the center of mass of the cargo to be thrown.
Parallel algorithm A1-A2 for catching of a thrown cargo on fly
It is taken into account that during throwing of the cargo this cargo may deviate from the calculated trajectory of its movement. In order to catch this cargo on fly with respect to its possible deviation from the calculated trajectory of its movement, the following set of actions (intended to catch this cargo on fly through implementing automatic operations of the second mobile robot) is implemented, and which consists of set of actions A1 and set of actions A2, implemented in parallel by using parallel programming, and by implementing automatic operations of the second mobile robot in a real-time regime. Wherein these sets of actions A1 and A2 are implemented after the cargo is released from the gripper of the first mobile robot.
Wherein it is taken into account that if the thrown cargo is not caught on fly by the second mobile robot during, for example, 10 s after this cargo was released from the gripper of the first mobile robot then it is impossible to catch the thrown cargo on fly under these circumstances.
Wherein the times of beginning of the sets of actions A1 and A2 coincide with the calculated moment of release of the thrown cargo from the gripper of the first mobile robot.
The set of actions A1 (its description consists of the descriptions of the steps 1-2) is following:
Step 1. The following two sets of actions denoted by 1.1. and 1.2. (wherein the set of actions 1.1. consists of the steps 1a and 1b) are implemented in parallel in a real-time regime through using parallel programming, and by implementing automatic operations of the second mobile robot:
The set of actions 1.1. is following:
Step 1a. On the onboard computer of the second mobile robot, the following values are calculated by using the images received from the video cameras installed on the mobile platform of the second mobile robot: the coordinates of the center of mass of the thrown cargo calculated in the world coordinate system at the current moment of time (wherein the point with these calculated coordinates is denoted by J), the coordinates of the velocity vector of the center of mass of the thrown cargo calculated in the world coordinate system at the current moment of time (wherein the velocity vector with these calculated coordinates is denoted by F), and the current moment of time Q at which the coordinates of the center of mass of the thrown cargo is calculated.
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
Wherein, by using parallel programming, the localization of the second mobile robot is implemented and the parameters of the grasp zone (for the thrown cargo) of the gripper of the second mobile robot (calculated in the world coordinate system) are obtained.
After that, by using special computer programs, it is determined whether the point J belongs to the grasp zone (for the thrown cargo) of the gripper of the second mobile robot. If the point J belongs to the grasp zone then the thrown cargo is grasped by closing the gripper of the second mobile robot, and this completes catching the thrown cargo, and the exit from this cycle of the steps 1-2 is implemented with stopping all actions described in the steps 1-2, and stopping all actions from the sets of actions A1 and A2.
If the point J does not belong to the grasp zone then the following actions are implemented. The comparison of the calculated time of release of the thrown cargo from the gripper of the first mobile robot and the current moment of time Q is implemented. If the calculated time of release of the thrown cargo from the gripper of the first mobile robot differs from the current moment of time Q by more than 10 s, then the message of failure to catch the thrown cargo on fly is sent to the computer of the control center from the onboard computer of the second mobile robot through the wireless local Wi-Fi computer network, and the exit from this cycle of the steps 1-2 is implemented with stopping all actions described in the steps 1 -2, and stopping all actions from the sets of actions A1 and A2.
If the calculated moment of release of the thrown cargo from the gripper of the first mobile robot differs from the current moment of time Q by less than 10 s, then the following actions are implemented.
The vertical plane passing through the point J and parallel to the vector F is obtained on the onboard computer of the second mobile robot by implementing automatic operations of the second mobile robot in a real-time regime. The orthogonal, right-oriented coordinate system is introduced in this vertical plane, and the origin of this coordinate system coincides with the point J, and the first coordinate axis is on a horizontal plane and directed orthogonally to the direction of the force of gravity, and the second coordinate axis is directed vertically upward, i.e. directed in the opposite direction of the force of gravity.
After that the approximate solution of the system of ordinary differential equations (1) (by which the calculated trajectory of movement, in the free flight phase, of center of mass of the thrown cargo in the vertical plane passing through the point J and parallel to the vector F is determined) with the initial conditions (2) with specified parameters of the cargo is obtained by using special computer programs for obtaining the approximate solutions of the Cauchy problem for a system of ordinary differential equations by using numerical methods, and by implementing automatic operations of the second mobile robot in a real-time regime.
Wherein, in the system of ordinary differential equations (1), the value of the parameter m is set to the mass of the thrown cargo, and the value of the parameter K is set the air resistance coefficient corresponding to this cargo. Wherein, in the initial conditions (2), the value of the parameter T is set to Q, the values of the parameters A and B are set to the coordinates of the point J calculated in the coordinate system introduced in the vertical plane passing through the point J and parallel to the vector F. Wherein, in the initial conditions (2), the values of the parameters C and D are set to the coordinates of the vector F calculated in the coordinate system introduced in the vertical plane passing through the point J and parallel to the vector F.
In particular, the new sequence of values of the approximate solution of the system of ordinary differential equations (1) with the new initial conditions (2) for the following 1001 values of the independent variable t is calculated by implementing automatic operations of the second mobile robot in a real-time regime:
Бюллетень науки и практики /Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
rw=Q+h0 0,001 w,
where:
- rw is the value of the independent variable t, i.e. the calculated moment of time coming after the moment of time Q obtained at the step 1a;
- w is the ordinal number of the independent variable t, i.e. an integer taking all values from 0 to 1000;
- Q is the moment of time at which the coordinates of the center of mass of the thrown cargo was calculated at the step 1a;
- h0 is the specified calculated duration of free flight of the cargo.
After that the new sequence of values of the approximate solution of the system of ordinary differential equations (1) with the new initial conditions (2) is calculated, and which has the following form: (x(rw), y(rw), u(rw), v(rw)) for all integer number w taking all values from 0 to 1000.
Thus, the sequence of 4004 values {Ns} (for all integer number s taking all values from 1 to 4004), which are the calculated coordinates of points and vectors calculated in the coordinate system introduced in the vertical plane passing through the point J and parallel to the vector F, is calculated.
Wherein the values N1+4w, N2+4w (for all integer number w taking all values from 0 to 1000) are the ordered pair of numbers which are the calculated coordinates of the center of mass of the thrown cargo at the calculated moment of time coming after the moment of time Q obtained at the step 1a, and coming after the period of time equal to the product of the following three values: the value w, the value h0 and the value 0,001. Wherein the value N1+4w is equal to the value x(rw), the value N2+4w is equal to the value y(rw) (for all integer number w taking all values from 0 to 1000).
After that, for each point determined by the coordinates N1+4w, N2+4w (for all integer number w taking all values from 0 to 1000) the coordinates of this point are calculated in the world coordinate system in the form of ordered troika of numbers: p1+6w, p2+6w, p3+6w.
Wherein the values N3+4w, N4+4w (for all integer number w taking all values from 0 to 1000) are the ordered pair of numbers which are the calculated coordinates of the velocity vector of the center of mass of the thrown cargo at the calculated moment of time coming after the moment of time Q obtained at the step 1a, and coming after the period of time equal to the product of the following three values: the value w, the value h0 and the value 0,001. Wherein the value N3+4w is equal to the value u(rw), the value N4+4w is equal to the value v(rw) (for all integer number w taking all values from 0 to 1000).
After that, for each vector determined by the coordinates N3+4w, N4+4w (for all integer number w taking all values from 0 to 1000) the coordinates of this vector are calculated in the world coordinate system in the form of ordered troika of numbers: p4+6w, p5+6w, p6+6w.
Thus, the parameters of the new calculated trajectory of movement of the center of mass of the thrown cargo, in the free flight phase, are calculated by implementing automatic operations of the second mobile robot in a real-time regime, and which are the ordered sequence of 6007 values {pi} (for all integer number i taking all values from 0 to 6006), wherein the first value p0, which is equal to h0, is specified calculated duration of free flight of the thrown cargo, and the other 6006 values are the calculated coordinates of the center of mass of the thrown cargo and the calculated coordinates of the velocity vector of the center of mass of the thrown cargo at the corresponding calculated moments of time, and which are calculated in the world coordinate system.
In particular, the ordered troika of values: p1, p2, p3 is the calculated coordinates of the point J calculated in the world coordinate system, and the ordered troika of values: p4, p5, p6 is the calculated coordinates of the vector F calculated in the world coordinate system.
Бюллетень науки и практики /Bulletin of Science and Practice https://www.bulletennauki.com
Т. 5. №6. 2019 DOI: 10.33619/2414-2948/43
After that, among the 1001 calculated points with calculated coordinates pi+6q, p2+6q, p3+6q (for all integer number q taking all values from 0 to 1000) the calculated point (denoted by R), which is located at the minimum distance from the grasp zone (whose parameters are calculated in the world coordinate system at this step 1a), for the thrown cargo, of the gripper of the second mobile robot, is obtained on the onboard computer of the second mobile robot by implementing automatic operations of the second mobile robot in a real-time regime.
This completes the step 1a, and then the step 1b is started to be implemented.
Step 1b. It is determined whether the point R, obtained at the step 1a, belongs to the space which can be swept by the wrist reference point (the gripper of the second mobile robot is installed on this wrist) when the mobile platform of the second mobile robot is positioned for catching the cargo on fly, which is thrown by the first mobile robot.
If the point R does not belong to this space then this completes the step 1b, and the step 1a is started to be implemented. If the point R belongs to this space then it is determined whether at least once the step 2 was performed. After that, the following actions are implemented.
If the step 2 has not been performed before then it is determined whether the point R belongs to the grasp zone (whose parameters are calculated in the world coordinate system at this step 1a), for the thrown cargo, of the gripper of the second mobile robot, and if the point R belongs to this grasp zone then the step 1a is started to be implemented (wherein the step 1b is stopped to be implemented), and if the point R does not belong to this grasp zone then the step 2 is started to be implemented (wherein the steps 1a and 1b are stopped to be implemented) wherein the set of actions 1.1. is stopped to be implemented (and therefore the set of actions 1.2. is also stopped to be implemented if, at this moment, this set of actions 1.2. has not been stopped to be implemented yet).
If the step 2 has been implemented at least once then the following actions are performed by implementing automatic operations of the second mobile robot in a real-time regime.
It is determined whether the point R, obtained at the step 1a, belongs to the grasp zone (whose parameters are calculated in the world coordinate system during the last implementation of the step 2 of this cycle consisting of two steps, if the step 2 has been implemented before at least once), for the thrown cargo, of the gripper of the second mobile robot. If the point R belongs to this grasp zone then the step 1b is stopped to be implemented and the step 1a is started to be implemented. If the point R does not belong to this grasp zone then the step 1b is stopped to be implemented and the step 1 is stopped to be implemented, and the step 2 is started to be implemented, wherein the set of actions 1.1. is stopped to be implemented (and therefore the set of actions 1.2. is also stopped to be implemented if, at this moment, this set of actions 1.2. has not been stopped to be implemented yet).
The set of actions 1.2. is following:
It is determined whether the step 2 has been implemented at least once before. If the step 2 has not been performed before then the set of actions 1.2. is stopped to be implemented. If the step 2 has been implemented before at least once then the movement of the second mobile robot, corresponding to the last implementation of the step 2 of this cycle consisting of the two steps, is started to be implemented by performing the corresponding task program.
After that, either this movement of the second mobile robot is continued to be implemented until the full completion of this movement (by performing completely the corresponding task program and wherein stopping the set of actions 1.2.) and before the moment of stopping of the implementation of the set of actions 1.1. of this step 1 occurs, or this movement is continued to be implemented, and stopped to be implemented (wherein not performing the full corresponding task program, and wherein stopping the set of actions 1.2.) when the moment of stopping of the implementation of the set of actions 1.1. of this step 1 occurs.
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
Step 2. The new parameters of the new grasp zone (for the thrown cargo) of the gripper of the second mobile robot (calculated in the world coordinate system) such that the calculated point R, obtained at the step 1, belongs to this new grasp zone, are determined.
After that the localization of the second mobile robot is implemented by using the software installed on the onboard computer of this mobile robot, and by implementing automatic operations of the second mobile robot in a real-time regime.
After that the parameters of the working modes of the actuators of this mobile robot for the implementation of the movement of the second mobile robot from the current pose, determined by the localization of the second mobile robot, to such pose that the point R, obtained at the step 1, belongs to this new grasp zone (for the thrown cargo) of the gripper of the second mobile robot, are determined. Wherein the new task program comprising the set of instructions for movement of the second mobile robot to such pose that the point R, obtained at the step 1, belongs to the new grasp zone (for the thrown cargo) of the gripper of the second mobile robot, is created by implementing automatic operations of the second mobile robot.
Wherein the full completion of this new task program means that the second mobile robot was positioned in the pose where the point R, obtained at the step 1, belongs to the new grasp zone (for the thrown cargo) of the gripper of the second mobile robot.
Then the step 2 is stopped to be implemented, and the step 1 is started to be implemented.
This completes the description of the set of actions A1.
The set of actions A2 (its description consists of the descriptions of the steps 2.1. and 2.2.) is following:
Step 2.1. On the onboard computer of the second mobile robot, the following values are calculated by using the images received from video cameras installed on the mobile platform of the second mobile robot: the coordinates of the center of mass of the thrown cargo calculated in the world coordinate system at the current moment of time (wherein the point with these calculated coordinates is denoted by J2). Wherein, by using parallel programming, the localization of the second mobile robot is implemented and the parameters of the grasp zone (for the thrown cargo) of the gripper of the second mobile robot (calculated in the world coordinate system) are obtained. After that the step 2.1. is stopped to be implemented, and the step 2.2. is started to be implemented.
Step 2.2. By using special computer programs, it is determined whether the point J2 belongs to the grasp zone (for the thrown cargo) of the gripper of the second mobile robot.
If the point J2 belongs to this grasp zone then the thrown cargo is grasped by closing the gripper of the second mobile robot, and this completes catching the thrown cargo and the set of actions intended to catch the thrown cargo on fly through implementing automatic operations of the second mobile robot with stopping all actions described in the steps 2.1. and 2.2., and stopping all actions from the sets of actions A1 and A2.
If the point J2 does not belong to this grasp zone then the step 2.2. is stopped to be implemented, and the step 2.1. is started to be implemented.
This completes the description of the set of actions A2.
The warehouse management system
The warehouse building is one story. The warehouse has a storage area and a picking area not intersecting with each other. At the warehouse, the cargoes are located in the storage places on the shelves of the racks in the storage area. The warehouse aisles intended for movements of the first and the second mobile robots during implementing warehouse operations are established at the warehouse.
The control center is located in the warehouse and outside the storage area, the picking area,
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
and the warehouse aisles intended for movements of the first and the second mobile robots. The control center comprises: the computer with the information storage device; the Wi-Fi network node equipment connected to the computer of the control center.
For this warehouse, the world coordinate system OXYZ is introduced, and the world coordinate system origin is on the upper surface of the floor of the warehouse building. In addition, the plane OXY contains the upper horizontal surface of the floor of the warehouse building, the axis OZ is directed vertically upward and perpendicularly to the plane OXY.
For each video camera, the coordinate system of the video camera is introduced. The origin of the coordinate system of the video camera is on surface of the video camera body, at the point of intersection of this surface and the optical axis of this video camera.
For each mobile platform, the coordinate system of the mobile platform is introduced. The origin of the coordinate system of the mobile platform is the mobile platform reference point which is on the upper surface of this mobile platform.
The parameters of the pose of each mobile robot, at the moment of time, are obtained through the dead reckoning by using sensor fusion and analyzing information received from the video cameras and proprioceptive sensors of this robot.
The warehouse aisles intended for movements of the first and the second mobile robots are established in the form of oriented simple two-dimensional polygons located on the plane OXY of the world coordinate system by setting the vertices of the simple broken-lines which are the boundaries of these polygons.
The lines of possible movements of the mobile platform of the first and the second mobile robots are established in the form of broken-lines located on the plane OXY of the world coordinate system, which are the lines of possible movements of the orthogonal projections of the mobile platform reference points on the plane OXY of the world coordinate system during movements of these mobile platforms.
The parameters of the warehouse aisles and the parameters of the lines of possible movements of the mobile platforms of the mobile robots are obtained by using a 3D scanner, and stored on the computer of the control center and on the onboard computers of the mobile robots.
For each mobile robot, the diameter of the space which can be swept by the wrist reference point, on which the gripper of the first mobile robot is installed when the mobile platform of the first mobile robot is positioned motionless, is obtained by using a 3D scanner. For example, the diameter of this space is equal 4 m.
The plan of the warehouse is represented on Figure 5.
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
о о
Figure 5. The plan of the warehouse. On the Figure 5, the following items were denoted by the numbers: 13 — a warehouse rack, 17 — a cargo, 19 — the container, 20 — the control center, 21 — the computer of the control center, 22 — the information storage device connected to the computer of the control center, 23 — the network node equipment connected to the computer of the control center, 24 — the input device connected to the computer of the control center, 25 — the picking area, 26 — the warehouse aisle intended for movements of the second mobile robot, 27 — the line of possible movements of the mobile platform of the second mobile robot, 28 — the orthogonal projection of the mobile platform reference point (of the second mobile robot) on the plane OXY of the world coordinate system during catching of the cargo on fly, 29 — the storage area, 30 — the warehouse aisle intended for movements of the first mobile robot, 31 — the line of possible movements of the mobile platform of the first mobile robot, 32 — the orthogonal projection of the mobile platform reference point (of the first mobile robot) on the plane OXY of the world coordinate system during picking of the cargo from the storage place, 33 — the orthogonal projection of the mobile platform reference point (of the first mobile robot) on the plane OXY of the world coordinate system during throwing of the cargo.
For each storage place on the shelves of the racks in the storage area in the warehouse, the parameters of this storage place are obtained, and which include:
- the address of this storage place;
- the coordinates of the four points located on the upper surface of this storage place, calculated in the world coordinate system, that determine the largest in area rectangle, which can be located on this storage place;
- the coordinates of the point, calculated in the world coordinate system, located on the upper surface of this storage place, and which is set so that the orthogonal projection of the origin of the coordinate system of the cargo stored in this storage place coincides with this point;
- the parameters of the coordinate system of this storage place;
- the parameters of the poses of the two video cameras installed on the mobile platform of the first mobile robot, such that the images received through these two video cameras, at the moment of time right before beginning picking of the cargo from this storage place, contain the view of this storage place;
- the parameters of the pose of the mobile platform of the first mobile robot, at the moment of time right before beginning picking of the cargo from this storage place;
- the parameters of the pose of the mobile platform of the first mobile robot during throwing of the cargo to be picked from this storage place;
- the parameters of the pose of the mobile platform of the second mobile robot during
209
Бюллетень науки и практики / Bulletin of Science and Practice Т. 5. №6. 2019
https://www.bulletennauki.com DOI: 10.33619/2414-2948/43
catching of the cargo (to be picked from this storage place) on fly.
For example, the distance between mobile robots during throwing of the cargo and catching of the cargo on fly can be up to 30 m.
Before the cargoes are located in the storage area, for each cargo, the following parameters are obtained:
- the name of the cargo;
- the total weight of the cargo;
- the parameters of the coordinate system of this cargo, wherein the origin of this coordinate system coincides with the center of mass of this cargo;
- the parameters of the 3D-model of this cargo;
- the air resistance coefficient determined by the properties of the environment, the shape of this cargo to be thrown at the initial velocity not exceeding 15 m/s.
After that the cargoes are placed in the storage places. Then the information on names of the cargoes, and addresses of the storage places where these cargoes are placed, are stored on the computer of control center and on the onboard computers of the mobile robots. After that the 3D-model of this warehouse building, with the warehouse building's contents, is obtained by using a 3D scanner. The parameters of this 3D-model are stored on the computer of the control center and on the onboard computers of the mobile robots.
Conclusion
The proposed method for moving cargo in warehouse is superior in economic efficiency and reliability to all other methods for moving cargo by tossing of inventory items by robots. This method derives its superiority from throwing of the cargo for large distances by the first mobile robot, and reliably catching of the thrown cargo on fly by the second mobile robot, by implementing automatic operations of these mobile robots.
The proposed method for implementing warehouse operations can be used in warehouses of industrial companies, and in various industries, such as the logistics industry, the retail industry, etc.
Sources:
(1). Method and system for transporting inventory items. Patent US8280547B2. Access mode: https://patents.google.com/patent/US8280547B2/en (circulation date: 14.05.2019).
(2). Bodrenko, A.I. (2018). Way to move goods in stock piece cargoes. Patent RU2017122271A. Access mode: https://patents.google.com/patent/RU2017122271A/en (circulation date: 14.05.2019).
(3). Introduction to NI Linux Real-Time. Access mode: URL: http://www.ni.com/ru-ru/innovations/white-papers/13/introduction-to-ni-linux-real-time.html (circulation date: 14.05.2019).
(4). Overview of the LabVIEW Robotics Module. Access mode: URL: http://www.ni.com/white-paper/11564/en/ (circulation date: 14.05.2019).
(5). The Orocos Real-Time Toolkit. Access mode: URL: http://www.orocos.org/rtt (circulation date: 14.05.2019).
(6). Open Source Computer Vision Library. Access mode: URL: http://opencv.org (circulation date: 14.05.2019).
(7). OpenVX Overview. Access mode: URL: http://www.khronos.org/openvx/ (circulation date: 14.05.2019).
(8). CUDA Zone. Access mode: URL: https://developer.nvidia.com/cuda-zone (circulation date: 14.05.2019).
(9). OpenCL Overview. Access mode: URL: https://www.khronos.org/opencl/ (circulation
Бюллетень науки и практики /Bulletin of Science and Practice https://www.bulletennauki.com
Т. 5. №6. 2019 DOI: 10.33619/2414-2948/43
date: 14.05.2019).
(10). The OpenMP API specification for parallel programming. Access mode: URL: http://www.openmp.org/ (circulation date: 14.05.2019).
(11). OpenMP compilers & Tools. Access mode: URL: https://www.openmp.org/resources/openmp-compilers-tools/ (circulation date: 14.05.2019).
(12). Network Time Protocol daemon. Access mode: URL: http://doc.ntp.org/4.1.0/ntpd.htm (circulation date: 14.05.2019).
Работа поступила в редакцию 16.05.2019 г.
Принята к публикации 21.05.2019 г.
Ссылка для цитирования:
Bodrenko A. New Method of Using Mobile Robots for Moving Cargo in Warehouse //
Бюллетень науки и практики. 2019. Т. 5. №6. С. 192-211. https://doi.org/10.33619/2414-2948/43/26
Cite as (APA):
Bodrenko, A. (2019). New Method of Using Mobile Robots for Moving Cargo in Warehouse. Bulletin of Science and Practice, 5(6), 192-211. https://doi.org/10.33619/2414-2948/43/26