CAD-Based Automatic Clash Analysis for Robotic Assembly

Assembly operation occupies major stake in the manufacturing process to obtain the final product. In order to obtain an assembly sequence for a given product, the product should be free of clashes between the parts. To know the clash between the parts, many researchers are followed mathematical models to generate contact data information of the product. These methods will consume much time and search space to extract the information from the product. Current research focuses on developing an automatic algorithm to generate the clash analysis report using macros CATIA V5 R17. In this method, it will not only generate the clash analysis report but also generate a contact information matrix between the parts of the assembly. The developed methodology is implemented on various industrial products to extract the clash information of the product.


Introduction
In present days, many advanced processes in manufacturing have been developed to meet the demand for customer needs. Even though many advanced manufacturing processes are there, to obtain the final product assembly operation is required. As the assembly process occupies a major stake in the overall manufacturing process, an improper assembly may lead to an increase in the cost of the final product as well as time to obtain the final product .
At the beginning stage of Assembly Sequence Planning (ASP) problem, mathematical models are applied to generate feasible sequences (Wilson and Latombe, 1994;Baishya, 2019). Initially, researchers are successful in achieving the feasible sequences using contact information of the product. Moreover, they generate the clash data between the parts by mathematically, which is a time-consuming and tedious process.
By the development of Artificial Intelligence (AI) techniques, researchers are interested in applying AI techniques for solving ASP problem. These AI techniques are developed by the behavior of animals & birds present in nature. Apart from these nature-inspired algorithms, based on human genetics & neural networks the algorithms like Genetic Algorithm (GA) and Artificial Neural Networks (ANN) have developed (Bonneville et al., 1995;Chen and Liu, 2001;Sahoo, algorithm is possible to increase the solution accuracy. Apart from advantages, there are some difficulties faced in GA, i.e., high dependence on the chromosomes and the offspring generated in GA has many chances, which lead to an infeasible solution for ASP problem. After GA, the most applied algorithm for solving ASP problem is Ant Colony Optimization (ACO) algorithm because of its positive feedback given by the different ants (Failli and Dini, 2000;Wang et al., 2005;McGovern and Gupta, 2006). On the other side, the algorithms like Particle Swarm Intelligence (PSO) (Wang and Liu, 2010), Simulated Annealing (SA) (Turgay, 2018), Artificial Neural Network (ANN) (Joshi, 2016), Teaching Learning Based Optimization (TLBO) algorithm and many more are developed to solve the ASP problem (Gunji et al., 2018).
To increase the rate of obtaining the global solution especially for the larger part number assemblies, Hybrid Algorithms (HA) are developed. The main aim to develop HA is to overcome the drawbacks of individual algorithms while solving ASP problems (Murali et al., 2017;Gunji et al., 2017).
Even though there exist several methods to solve the ASP problem, most of the methods use mathematical models to extract clash information as well as contact information among the parts of the product. However, these methods are a time-consuming and difficult process to extract the assembly predicates information. Moreover, the methods used to extract clash information between the parts only provides information about the clash, and they do not provide any data about the contact of the parts and clearance among the parts.
By considering the above limitations, in this research article, a CAD-based automatic algorithm has proposed to extract clash analysis report between the parts along with the Contact Information Matrix (CIM).
In the current research paper, different sections are as follows: section-1 deals the introduction to ASP problem and different methodologies/algorithms followed by researchers to extract contact information of the product. Section-2 deals with proposed clash analysis algorithm to extract the clash information of the product. Section -3 deals with results extraction for the different industrial product (block and pulley assembly) using the developed algorithm. Section -4 summarize the work carried out in the paper.

2.Clash Analysis Algorithm
A CAD-based automatic method is developed to generate a clash analysis report in the excel sheet stating which parts are in contact and which parts are in a clash along with the value of clash.
The detailed flow chart of the proposed method for clash analysis represents in Figure 1. In the proposed methodology, initially an active CAD environment (CATIA V5 R17) is considered, and the 3D design of the particular assembly to which clash report along with the CIM has to be generated should be open in the active CAD environment. By using CIM, contact matrix is generated to obtain the feasible sequences for the considered assembly. The code, which is developed using macros, should be to run. Based on the clash value calculated from the clash toolbar in the assembly module, the type of connection is decided between the parts. Generally, there are three types of connection one is a clash, the second one is contact, and the third one is clearance between the parts.
If the clash value is '0', the parts are in contact. If the clash value is less than '0', the pair of parts is in interference. If the clash value is greater than zero and in between the clearance value, the pair of parts is in clearance. Moreover, by the developed methodology, CIM can be extracted automatically for the given assembly, which is used as liaison data to check the feasibility of the sequence. The developed methodology is applied to a 4-part block assembly as well as 22-part pulley assembly to check the performance of the methodology.

Clash Data Extraction Code
Step-1: Import CAD product in the active window of the CATIA assembly module.
Step-2: Compute total numbers of parts in the assembly say "m" Step-3: Assign a null matrix of order " ".
Step-4: Compute Clash Value (CV) between the parts using clash compute command Step-5: Assign the total number of CV to" ".
Step-6: For CV to n If CV <0 Consider clash between the parts ( , ) and assign "negative value" at that position in null matrix Stop Else If CV=0 Consider contact between the parts ( , ) and assign value"1" at that position in null matrix Stop Else If CV<=clearance value & CV>0 Consider clearance between the parts ( , ) and assign "positive value" at that position in the null matrix Else Consider no contact between the parts ( , ) and assign value"0" at that position in the null matrix End Step-7: Export the matrix data to excel sheet.

Block Assembly to Explain Clash Analysis
In this section, a four-part block assembly is considered shown in Figure 2. From the figure, it clearly understands that which part is in a clash with which part. However, as it is a lesser number part assembly, we can identify the clash between the parts easily. Moreover, we cannot identify how much interference exists between the parts and also contact details of the parts. By the developed methodology we can identify which part is in contact with which part and its value along with the part name. The detailed data about the clash and contact among the parts of the product with the values are extracted to the excel sheet.   Figure 3 represents the clash information of the block assembly in an excel sheet. In the excel sheet, it is mentioned that the status of pair parts in different colors. 'Contact' status is highlighted with green color, and the 'Clash status is highlighted with red color. In the excel sheet, a negative value is displayed at the clash status, this is due to that much portion of the part is pierced into another part (a) (b)

Contact Information Matrix (CIM)
In this section, a contact information matrix has been extracted with the data in the excel sheet. A matrix is formulated stating the status of the parts in the assembly whether the parts are in contact or no contact or clash.

Contact Information Matrix
This matrix provides the contact information of the parts in the product. In the matrix '0' indicates no contact among the parts, '1' indicates contact among the parts and the negative value embodies the clash between the parts. In this section, a 22-part pulley assembly shown in Figure 5 is considered to test the performance of the developed methodology. In this, as the assembly is too large and has many parts, identifying the status of the parts manually or by the mathematical model is difficult and timeconsuming. The same configuration system is considered to run the method, and it takes '7.43sec' to extract the clash information for the considered assembly in the excel sheet.

Contact Information Matrix (CIM)
In this section, a contact information matrix has been extracted with the data in the excel sheet. A matrix is formulated stating the status of the parts in the assembly whether the parts are in contact or no contact or clash.

Conclusion
In this paper, an automated method is proposed to extract the clash information between the parts for the given assembly. Moreover, along with the clash information a contact information matrix is also extracted based on the clash data to generate the feasible sequences for an ASP problem.
In this paper, two different assemblies namely block assembly with four parts, and pulley assembly with twenty-two parts has been considered to test the performance of the developed methodology. The developed methodology is performed on a system with RAM 2GB and processor: I3. The performance of the methodology is quite impressive and takes less time for extracting the required information from the assembly.
As a future scope, the developed methodology is tested for different large number part assemblies, and moreover, this methodology can be made an integral part of the ASP problem methods to extract CIM for generating the feasible sequences to reduce the time to obtain the optimal assembly sequence.