首页    期刊浏览 2025年08月17日 星期日
登录注册

文章基本信息

  • 标题:Automatic joints filling in sample tile displays using a robotic system.
  • 作者:Serrano Mira, Julio ; Sanchis Llopis, Roberto
  • 期刊名称:Annals of DAAAM & Proceedings
  • 印刷版ISSN:1726-9679
  • 出版年度:2010
  • 期号:January
  • 语种:English
  • 出版社:DAAAM International Vienna
  • 摘要:Sample tile displays are used by dealers to show product settings. These displays are manufactured by fixing ceramic tiles on a wooden flat panel. Once ceramic tiles are located, the remaining space between tile edges (known as joint) are filled with plaster (this process is called joint filling). The dimensions of ceramic displays range from 1x1 m to 1x2 m, and the joint width varies from 2-3 mm to 10 mm maximum (Fig. 1-a). The joint filling process involves the application of an oil based plaster mixed with a catalyser that cures in 30 min. To fill the joint, an application device is used that injects a determined plaster quantity directly in the joint between the tiles (Fig. 1-b). Once the plaster has been applied, the plaster excess is eliminated using a putty knife. Finally, the surface of the working area is cleaned with a sponge with solvent. This is a manual process that takes between 5 and 10 minutes per panel, depending on their size and complexity.
  • 关键词:Display devices (Electronics);Information display systems;Manufacturing;Manufacturing processes;Robots

Automatic joints filling in sample tile displays using a robotic system.


Serrano Mira, Julio ; Sanchis Llopis, Roberto


1. INTRODUCTION

Sample tile displays are used by dealers to show product settings. These displays are manufactured by fixing ceramic tiles on a wooden flat panel. Once ceramic tiles are located, the remaining space between tile edges (known as joint) are filled with plaster (this process is called joint filling). The dimensions of ceramic displays range from 1x1 m to 1x2 m, and the joint width varies from 2-3 mm to 10 mm maximum (Fig. 1-a). The joint filling process involves the application of an oil based plaster mixed with a catalyser that cures in 30 min. To fill the joint, an application device is used that injects a determined plaster quantity directly in the joint between the tiles (Fig. 1-b). Once the plaster has been applied, the plaster excess is eliminated using a putty knife. Finally, the surface of the working area is cleaned with a sponge with solvent. This is a manual process that takes between 5 and 10 minutes per panel, depending on their size and complexity.

In order to reduce the operation time, in this work a proposal for the process automation is exposed, by using a 6-joints anthropomorphic robot and an automatic plaster system supply, controlled by a system that integrates the panel image processing and the automatic robot trajectory definition.

[FIGURE 1 OMITTED]

2. DESCRIPTION OF THE AUTOMATIC TILE JOINT FILLING PROPOSED SYSTEM

The proposed system consists of (Fig. 2):

--6-joints anthropomorphic robot (Staubli RX90).

--System for plaster application, composed of a nozzle placed in the robot hand, and a peristaltic pump with DC motor.

--A 3.2 Mpixel digital camera.

--A computer with the following functions: image capture through a digital camera, image processing, filling path generator, and robot communication.

[FIGURE 2 OMITTED]

2.1 Description of the robot and its environment

An anthropomorphic Staubli RX90 6-joints robot has been used. It is a small robot (maximum reach of 900) with a limited load capacity (6 kg at nominal speed). Maximum cartesian speed is 2 m/s and repeatability is [+ or -]0,02 mm. Although the robot has 6 degrees of freedom, just 5 of them were necessary for this application. Joint 4 (forearm rotation about its axis) was not required since the application was on a perpendicular to joint 1 plane. To achieve a wide working volume on a plane, the most appropriate disposition is the ceiling-mounted robot with the panel to be filled located on the floor.

The application device consists of a peristaltic pump (http://www.boyser.com, 2009) driven by a speed regulated DC motor, which pushes the plaster -contained in a mixing tank-through a nylon tube to the nozzle located in the hand of the robot. The stainless steel nozzle has a terminal element that works as a putty knife to collect excess material. The applied plaster flow is changed by changing the DC motor speed, accordingly to joint thickness and path type.

2.2 Image processing and geometric data extraction

The starting point of this stage is a grey scale image of the whole panel. The first step to obtain the geometric data (lines and vertices) is to process the grey scale image to obtain a binary one where the tile joints are one pixel wide black lines. In order to do so, several well known image operations (Morris, 2004; De la Escalera, 2001) must be done in the image. For this purpose, the Matlab Image Processing Toolbox is used (Image Processing Toolbox User's Guide, 1998). The sequence of proposed operations, expressed in terms of referred Toolbox functions, is the following, and an example of this operations is shown in Fig. 3:

* I1 = imtophat(I0, strel('square',20));

* I2 = imbothat(I0, strel('square',20));

* I3 = imsubtract(imadd(I0,I1),I2);

* I4 = imbothat(I3, strel('square',20));

* I5 = im2bw(I4,0.85*graythresh(I4)+0.3);

* I6 = imcomplement(imfill(imcomplement(I5),'holes'));

* I7 = imclose(I6,strel('square',10));

* I8 = bwmorph(I7,'thin',Inf);

[FIGURE 3 OMITTED]

Once a binary image containing the one pixel wide inter tile lines is obtained, the geometrical data about vertices and lines coordinates must be calculated. First, the vertices are obtained by counting the number of black pixels in the immediate neighbourhood of each pixel. If there is only one black neighbour pixel, an exterior vertex has been found. If there are three or four black neighbours, an interior vertex has been found. When two vertices are found very near each other (only some pixels away), one of them is discarded. The image shows the vertices detected in the example (Fig. 4):

[FIGURE 4 OMITTED]

The next step is to define edges or lines joining the vertices. Each edge is defined by its two extreme vertices. Two kind of edges are defined: the required ones, that must be filled, and the non required ones, that must not be filled. The non required are the outside edges of the panel, that are defined by simply reordering the outside vertices. The required edges are detected by a more complex algorithm, that iteratively starts in every vertex and follows a black pixel way till another vertex is found. Finally, the geometric data (vertices and edges), obtained in number of pixels must be converted to real position coordinates in the robot coordinate system before storing the data in a file.

2.3 Trajectory definition and process conversion of the geometric trajectory to a robot movement sequence

Once the geometric data of the panel (vertices and edges) has been obtained, the controller must calculate the trajectory to be followed by the robot in order to fill all required edges. Well known graph problems (as de Chinese Postman Problem or the Rural Postman Problem) could be applied to calculate the optimum trajectory in the sense of minimum distance. Nevertheless, for the studied problem is more important to reach the higher quality in the edges filling. For this reason, the algorithm to define the trajectory is based on trying to fill in a single straight movement several consecutive edges, starting the movement from an outside vertex and finishing on another outside vertex. The minimum total distance becomes, then, a secondary objective. The algorithm starts in an outside arbitrary vertex. The first edge selected is any required one starting from that vertex. The next edge selected is a non covered required one with the same orientation that the previous (i.e. that follows a straight line with the previous). If this is not possible, the next edge is any non covered required one. If this is not possible, the next one is any non covered non required one. Finally, if this is not possible, the next edge is selected as a newly created virtual edge that joins the present vertex with any other vertex that belongs to any non covered required edge. This edge selection algorithm is sequentially applied till there are no required edges to be covered.

In order to cover the trajectories defined as a sequence of edges (some required and some non required), the robot movement sequence must be obtained. For this purpose, three types of robot movements are defined. The first one corresponds to filling a required edge. This movement starts with the tool positioned in the correct orientation of the edge, and is defined as a simple straight translation of the tip of the tool (without changing its orientation), at a constant Z, till the final vertex of the (possibly more than one) consecutive edges. The second movement corresponds to a change in orientation in a vertex. It starts with the tool positioned in the orientation of the last filled edge, and consists of rising, changing the orientation of the tool to position it for the next edge to be filled, and descending. The third movement corresponds to a non required edge. It starts with the tool positioned in the orientation of the last filled edge, and consists of a rising movement, a straight movement till the next vertex simultaneous with an orientation change of the tool to position it for the next edge to be filled, and a final descending movement. The trajectory is therefore converted in a sequence of movements of these three types.

2.4 Communication and control strategy

The communication between the master PC and the robot controller is performed via a serial and a parallel port. The serial port is used by the PC to send to robot controller the information about the movements that must be executed, and the parallel port is used by the PC to read a digital output of the robot controller indicating if the previous movement is being executed to synchronize the next movement communication. Therefore, the trajectory to be executed is communicated movement by movement, till the whole panel has been filled.

The robot controller has a loaded program that basically reads the serial port, interprets the transmitted movement, and executes it, changing the state of a digital output to ask the master PC for a new movement. This program is written in V+ Language, version 11 (1993), and it is started from the master PC by a serial port command.

3. CONCLUSION

In this work, the automatic filling of tile joints in sample tile displays has been addressed by using an anthropomorphic six joint robot. The tasks that have been successfully solved are: the extraction of the geometric data from an image of the panel, the definition of the trajectory to be followed, the conversion of this trajectory to a sequence of robot movements, the communication of this sequence to the robot and the execution of the movements. The filling of the joints of sample tile panels is a totally hand made work. The application developed will significantly reduce the cost of the process.

Future works to improve the system are: optimizing the synchronization between the plaster supply flow and the speed of the robot movement, and the automation of cleaning process.

4. REFERENCES

De la Escalera Hueso, A. (2001). Vision por computador: fun damentos y metodos, Prentice Hall, 8420530980, Madrid.

Morris, T. (2004). Computer Vision and Image Processing. Palgrave Macmillan. ISBN 0-333-99451-5

*** (1993). V+ Language, ver. 11. Reference Guide. Staubli France S.A., Adept Technology, Inc., USA.

*** (1998), Image Processing Toolbox User's Guide, v. 2.1 for Matlab 5.2, MathWorks online version ftp.mathworks.com

*** (2009) http://www.boyser.com--Bombas Boyser S.L., Accessed on: 2009-06-09
联系我们|关于我们|网站声明
国家哲学社会科学文献中心版权所有