Abstract
The algorithm of semi-finished products’ preparation for packaging is presented and its efficiency is evaluated. The semi-finished products are chilled nuggets, which move along the high-speed conveyor line section in open cardboard boxes. The preparation consists of aligning the polyethylene packages with the nuggets so that they do not protrude beyond the walls of the box. This must be done to ensure that the box of nuggets seals correctly at the final packing stage. Leveling of semi-finished products is performed by a robot-manipulator DR-1, manufactured by Intelligent Robotics LLC, which is suspended above the conveyor belt on a special frame. Also included in the automation system is a detector of boxes with chilled semi-finished products, and a speed sensor for the conveyor belt. The estimation of errors during data transfer between sensors and actuators is given. Application of the proposed algorithm allows to perform of equalization of boxes with nuggets in automatic mode, thereby increasing productivity and reducing the number of rejects.
Access provided by Autonomous University of Puebla. Download chapter PDF
Similar content being viewed by others
Keywords
1 Introduction
In the food processing company on the packaging line of finished products, there is a task of equalizing semi-finished products that are in the opened box. The necessity of the process is due to the fact that if the semi-finished products protrude outside the box, the packaging machine will not work correctly.
At the moment, the balancing is done by people. It is proposed to automate the alignment process. The publications [1, 2] describe the process of development of robot-manipulator DR-1, which has the necessary characteristics for the implementation of equalization. It uses forward and inverse kinematics [3, 4] for positioning the end-effector. Delta robots with the same construction are used to sort waste [5].
The aim is to develop an algorithm that, based on the signal from the sensor of the passage of the box on the conveyor belt, gives control commands to the robot manipulator. The same task was solved in [6, 7].
The tasks defined are:
-
1.
To assemble an installation for the equalization of semi-finished products in laboratory conditions.
-
2.
Create a mathematical description of the equalization process.
-
3.
Develop an algorithm for the equalization process.
-
4.
Calculate the errors in the execution of the algorithm.
-
5.
Conduct tests of the resulting automation system.
2 Hardware Description
The nugget packaging production line consists of a conveyor belt and a robot arm DR-1 located above it. The robot is mounted on a frame. A working body is attached to the robot manipulator, which is a vibrating platform. The conveyor line has a maximum movement speed of 0.55 m/s and adjustable width, which allows moving boxes with nuggets one after another (Fig. 1).
The nugget box moves in the direction of the blue arrow (Fig. 1) and has the characteristics shown in Table 1.
A laser pointer and a photo-sensor were used as a detector, fixed at the beginning of the conveyor line, with a distance of about 0.7 m to the center of the robot. This is the best way because using RGB-D cameras [8] and neural networks to determine the position of the boxes [9, 10] takes too much time and is redundant in this situation. Used a more classic way, like here [11].
The photosensor outputs a discrete signal of 0 V if the box is not present, and 3.3 V if the box interrupts the beam. The sensor was connected to the discrete input of the onboard microcontroller of the DR-1 robot.
3 Mathematical Description of the Equalization Process
For simplification, the installation shown in Fig. 1, considers schematically from the side (Fig. 2) and from above (Fig. 3).
The coordinate system, the center of which is located at point \(M_{0}\), the \(Z\) axis is directed downwards, the \(X\) axis makes an angle a with the central line of the conveyor, is presented. The \(Y\) axis complements the right triplet. The point \(M_{0}\) is the geometric center of the robot.
The angle \(a\) appears because the robot is attached to the frame in such a way that it cannot touch it when it moves. Therefore, the central axis of the conveyor is not coaxial with any of the axes of the robot’s coordinate system. The angle \(a\) is constant.
During the experiments on debugging of motion planning system of robot manipulator DR-1 it was found that the highest speed can be obtained by setting the motion path with a minimum number of points. This is due to the fact that the robot manipulator must stop at a given point. Therefore, the trajectory in the form of a triangle is used when performing the nuggets flattening operation (Fig. 2).
In Fig. 2, the blue rectangle is the box with the nuggets, the point \(M_{\kappa }\) is the center of its upper edge. The box appears in the line of sight of the robot manipulator at the moment of passing through the detector (point \(M_{\partial }\)). \(M_{0}\) is the origin of the coordinate system of the robot manipulator. The point \(M_{1}\) is the coordinate of the center of the bottom plate of the working body in the waiting position. The point \(M_{2}\) is the coordinate when the bottom plate of the robot manipulator first contacts the box. At this point, the impact on the nuggets in the box by the robot manipulator itself and the pneumatic vibrator placed on the working organ is carried out. This impact continues up to the point \(M_{3}\), the working body accompanies the box. At the point \(M_{3}\), the tool stops impacting the box and starts moving to the waiting position—point \(M_{1}\).
The point heights \(M_{1} ,\,M_{2} ,\,M_{3}\) are chosen experimentally. The quality of the nuggets and the safety of the packs and half-finished products depend on them. During the tests, it was observed that the best way to level the nuggets is to set the height of points \(M_{2}\) and \(M_{3}\) at the height of the top edge of the box. This height minimizes the impact of the implementation on the carton. The height of the point \(M_{1}\) is a few centimeters less (\(Z\)-axis pointing downwards) than \(M_{2}\) and \(M_{3}\), which is enough to prevent the box and the half-finished products in it from getting caught when the implement is moved.
At the moment the box passes through the detector (point \(M_{\partial }\), time moment \(t_{0}\)), the coordinates of the center of the box \(M_{\kappa }\) (1) and the projection of the distance \(M_{\kappa } M_{0}\) on the \(XY\) plane become known, denote \(S_{0}\). It turns out that \(S_{0}\) is the distance by which the box moves from the moment of its detection until it is directly below the middle of the robot.
where \(l\) is the length of the box, indexes \(x\) and \(y\) denote the projections on the corresponding axes.
The box moves to the projection of the point \(M_{0}\) with constant velocity \({\text{v}}\), equal to the velocity of the conveyor.
Thus, we can write down the equation of motion of the center of the box in projections to the \(X\) and \(Y\) axes, assuming that \(t\) is the current time:
It should be explained that the velocity \({\text{v}}\) will have a negative value in the coordinate system of the robot.
Let us define on the plane \(XY\) a circle with a radius \(R\) and center at \(M_{0}\), which will be the effective working area of the robot manipulator. This means that the robot will not perform equilibrium until the box moves inside the circle:
The radius \(R\) was chosen experimentally. An experiment was conducted, in which \(R\) was decreased from 0.2 to 0.03 m. The criterion was the qualitative alignment of the nuggets (the nugget pack does not protrude beyond the top edge of the box) and the fact that the robot has time to align all the boxes on the conveyor belt. A high \(R\) value is excessive and doesn’t equalize all the boxes. A small value of \(R\), which degenerates into pushing from above on the box without accompanying it, is less effective from the point of view of leveling.
A \({\text{delta}}\) value is introduced for tracking multiple boxes. This is the time it takes for one box to completely travel down the conveyor belt past the box detector. The \({\text{delta}}\) is calculated by formula (4).
where \(l\) is the length of the box, \({\text{v}}\)—conveyor velocity. The \({\text{delta}}\) value allows excluding false triggers of the detector when one box moves and at the same time to signal the beginning of a new box, if they go one after another without separation.
Assign each box an ordinal number \(i\left( {i\, = \,1 \ldots } \right),\) and for each \(i\)-th box, we will remember \(t_{{0_{i} }}\)—the time of passage of each box through the detector, from which we can calculate the position of the box at a time \(t\).
4 Algorithm of Half-Finished Products Equalization
Based on the mathematical description of the semi-finished product equalization process, an algorithm has been developed, the description of which is given in natural language.
The algorithm is divided into 2 blocks, working in parallel.
The first block is responsible for processing signals from the box detector and recording time \(t_{{0_{i} }}\) in a ring queue:
In case a signal from the box detector arrives, do the following. If the queue is empty or the difference between the current time t and the last element of the queue is greater than or equal to the delta, then add the current time t to the end of the queue.
An empty queue means that no box has passed through the detector yet. The time difference must be determined in order to separate 2 boxes that follow each other.
The second block is responsible for calculating the position of the box whose time \(t_{0}\) is recorded at the beginning of the queue and sending control commands.
-
1.
Set the signal “Operation allowed” to FALSE.
-
2.
If the signal “Operation is permitted” is set to FALSE, go to step 3, otherwise go to step 5.
-
3.
If the queue size is greater than 0, calculate the current position of the box according to formula (2), go to step 4, otherwise go to step 2.
-
4.
If the current position of the box is within the working area of the robot (formula (3)), set the “Operation allowed” signal to TRUE and remove the first element from the queue, go to step 2.
-
5.
Perform sequential movement from point \(M_{1}\) to \(M_{2}\), then from \(M_{2}\) to \(M_{3}\). Then from \(M_{3}\) to \(M_{1}\). Set the “Operation Allowed” signal to FALSE. Go to step 2.
The presented algorithm was implemented in the C + + 11 standard programming language and integrated into the existing software solution as a node in the Robot Operating System (ROS) software platform [12,13,14].
This node communicates with forward and inverse kinematics solver nodes via topics and [15] tells it works in real-time. It is suitable to use the Linux real-time kernel patch as done here [16] to increase performance. TCP/IP connection over Ethernet is used in robotics and is quite efficient [17]. The onboard microcontroller uses the operating system FreeRTOS, which is real-time [18].
5 Errors Estimation
It is especially important to estimate the errors when performing work on the equalization of boxes with nuggets because we consider the high-speed section of the production line, where errors can lead to damage to semi-finished products and packaging containers.
The permissible positioning error of the working body is \(e\) = 0.02 m. This is the difference between the length and width of the box and the similar parameters of the lower part of the working body.
At the speed of the conveyor in \({\text{v}}\) = 0.55 m/c error in time can be no more than \(t_{{{\text{err}}}}\) = 36 ms. The calculation was carried out according to the formula (5).
Table 2 shows the main delays that can affect the positioning error.
Thus, in the worst case, the delay will be no more than 23 ms, which satisfies the conditions.
6 Tests
Three boxes of nuggets with nuggets protruding outside the package were used for the tests. The main condition for quality leveling was to level the nuggets in such a way that they do not protrude outside the package. Also, the integrity of the packaging and the semi-finished products was evaluated, here we should take into account that the equalization must be done exactly once in production conditions, and in the experimental conditions, it was done several times.
Boxes of nuggets were placed on the conveyor belt before the detector in various combinations:
-
1.
One box.
-
2.
Two boxes going across the gap.
-
3.
Two boxes going side by side.
-
4.
Three boxes going side by side.
The case with three boxes going in a row was considered most “thorough” as the most difficult to perform.
Twenty experiments were conducted. The boxes were consecutively fed on the conveyor so that there were no gaps between them (Fig. 4). After that, the boxes were influenced and the result was checked (Fig. 5). All boxes of nuggets were successfully aligned. Damage to the carton and some of the nuggets was observed. No damage to the polyethylene packaging was observed.
7 Conclusions
In the course of the study, all of the objectives have been achieved. The goal of the research has been achieved. The developed algorithm showed effectiveness in the equalization of boxes of nuggets, it can be used in industry after longer testing in the complex with the robot manipulator and the working body.
At the same time, the disadvantages of the robot manipulator design were identified:
-
1.
Installation of a more rigid connection to the conveyor belt.
-
2.
Reducing positioning error by transferring the algorithm from the control computer to the onboard microcontroller, which is a real-time system, for example [19].
-
3.
Adding the ability to quickly calibrate the system in-house, for example [20].
Such improvements will allow more efficient and less costly use of the equalization algorithm and the entire automation system.
References
Tarachkov, M.V., Kalenik, A.V.: Development of the DR-1 robot-manipulator, hybrid and synergetic intelligent systems. In: Kolesnikov, A.V. (ed.) Proceedings of the V All-Russian Pospelov Conference with International Participation, pp. 482–489 (2020)
Tarachkov, M.V., Lebedev, F.A.: Development of motion planning system for DR-1 robot-manipulator. Math. Methods Technol. Eng. 12, 70–75 (2021)
Tyves, L.I.: Mechanisms of Robotics. The Concept of Interchanges in Kinematics, Dynamics and Motion Planning. Lenand, p. 28 (2018)
Zsombor-Murray, P.: Descriptive Geometric Kinematic Analysis of Clavel’s «Delta» Robot, McGill University Department of Mechanical Engineering Centre for Intelligent Machines, p. 2 (2004)
Gemuev, ShSh., Vorotnikov, S.A.: Robotic complex for sorting solid household waste. Caspian J. Manag. High Technol. 2(46), 194–207 (2019)
Koltygin, D.S., Sedelnikov, I.A.: Methodology for developing a robot control program for the Delta* robotic arm. Sci. Bull. NSTU 70(1), 103–116 (2018)
Zhang, G., Li, Z., Ni, F., Liu, H.: A real-time robot control framework using ROS Control for 7-DoF light-weight robot. In: Proceedings of the 2019 IEEE/ASME International Conference on Advanced Intelligent Mechatronics Hong Kong, China, pp. 1754–1579 (2019)
Zhou, T., Fan, D.P., Cheng, M.M., et al.: RGB-D salient object detection: a survey. Comp. Vis. Media 7, 37–69 (2021). https://doi.org/10.1007/s41095-020-0199-z
Arkin, E., Yadikar, N., Xu, X., et al.: A survey: object detection methods from CNN to transformer. Multimed. Tools Appl. 82, 21353–21383 (2022). https://doi.org/10.1007/s11042-022-13801-3
Marullo, G., Tanzi, L., Piazzolla, P., et al.: 6D object position estimation from 2D images: a literature review. Multimed. Tools Appl. 82, 24605–24643 (2022). https://doi.org/10.1007/s11042-022-14213-z
Jin, X., Li, M., Li, D., et al.: Development of automatic conveying system for vegetable seedlings. J. Wireless Commun. Netw. 2018, 178 (2018). https://doi.org/10.1186/s13638-018-1200-8
Mahtani, A., Sanchez, L., Fernandez, E., Martinez, A.: Effective Robotics Programming with ROS, PacktPublishing Ltd., Birmingham B3 2PB, UK, p. 129 (2016)
Joseph, L. Mastering ROS for Robotics Programming, PacktPublishing Ltd., Birmingham B3 2PB, UK, p. 552 (2018)
Quigley, M., Conley, K., Gerkey, B.P., Faust, J., Foote, T., Leibs, J., Wheeler, R., Ng, A.Y.: Ros: an open-source robot operating system. In: ICRA Workshop on Open Source Software (2009)
Aarizou, M.L., Berrached, N.E.: ROS-based telerobotic application for transmitting high-bandwidth kinematic data over a limited network. Int. J. Control Autom. Syst. 17, 445–453 (2019). https://doi.org/10.1007/s12555-018-0047-4
Adam, G.K., Petrellis, N., Doulos, L.T.: Performance assessment of Linux Kernels with PREEMPT_RT on ARM-based embedded devices. Electronics 10, 1331 (2021). https://doi.org/10.3390/electronics10111331
Kim, D.W., Lee, H.D., de Silva, C.W., et al.: Service-provider intelligent humanoid robot using TCP/IP and CORBA. Int. J. Control Autom. Syst. 14, 608–615 (2016). https://doi.org/10.1007/s12555-014-0441-5
Pinto, M.L., Wehrmeister, M.A., de Oliveira, A.S.: Real-time performance evaluation for robotics. J. Intell. Robot. Syst. 101, 37 (2021). https://doi.org/10.1007/s10846-020-01301-1
Subbaraman, S., Patil, M.M., Nilkund, P.S.: Novel integrated development environment for implementing PLC on fPGA by converting ladder diagram to synthesizable VHDL code. In: 11th International Conference on Control Automation Robotics and Vision, pp. 1791–1795. IEEE (2010)
Chen, Z., Yang, X., Zhang, C., Jiang, S.: Extrinsic calibration of a laser range finder and a camera based on the automatic detection of line feature. In: 2016 9th International Congress on Image and Signal Processing, BioMedicalEngineering and Informatics (CISP-BMEI), pp. 448–453 (2016)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Tarachkov, M.V., Tolstel, O.V., Kalabin, A.L. (2023). Development of an Algorithm for Preparing Semi-finished Products for Packaging. In: Kravets, A.G., Bolshakov, A.A., Shcherbakov, M.V. (eds) Society 5.0. Studies in Systems, Decision and Control, vol 437. Springer, Cham. https://doi.org/10.1007/978-3-031-35875-3_5
Download citation
DOI: https://doi.org/10.1007/978-3-031-35875-3_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-35874-6
Online ISBN: 978-3-031-35875-3
eBook Packages: EngineeringEngineering (R0)