Abstract
Spot welding is widely used for the lightweight and rigid bonding of metal parts. To plan the spot welding, the welding engineer should check the posture of a welding gun to ensure that it does not collide with the welding objects and fixtures. Although commercial programs can check the posture range of a welding gun, it requires a long calculation time, infeasible for industrial applications with hundreds or thousands of welding points. This study proposed a method for automatically calculating the weldable posture range for given welding points. The proposed method detects the possible collision areas between the welding objects and the welding gun in advance by the octree method, drastically reducing the calculation time. It used the central processing unit (CPU) parallel processing to calculate the exact weldable posture to shorten the calculation time further. The proposed method uses the stereolithography (STL) model as input for versatility for welding objects and guns. It also developed several algorithms to overcome the limited information available with the format. As a result, the program could calculate the weldable posture range within 4 s per single welding point with a one-degree resolution. The proposed method is intended for spot welding but may be utilized for other welding applications.
Similar content being viewed by others
References
Teschner M, Kimmerle S, Heidelberger B et al (2005) Collision detection for deformable objects. Comput Graph Forum 24(1):61–81. https://doi.org/10.1111/j.1467-8659.2005.00829.x
Xavier PG (1997) Fast swept-volume distance for robust collision detection. In: Proceedings of international conference on robotics and automation, Albuquerque, USA, pp 1162–1169. https://doi.org/10.1109/ROBOT.1997.614295
Bergen GVD (1997) Efficient collision detection of complex deformable models using AABB trees. J Graph Tools 2(4):1–13. https://doi.org/10.1080/10867651.1997.10487480
Klosowski JT, Held M, Mitchell JSB, Sowizral H, Zikan K (1998) Efficient collision detection using bounding volume hierarchies of k-DOPs. IEEE Trans Vis Comput Graph 4:21–36. https://doi.org/10.1109/2945.675649
Kockara S, Halic T, Bayrak C, Iqbal K, Rowe RA (2009) Contact detection algorithms. J Comput 4(10):1053–1063. https://doi.org/10.4304/jcp.4.10.1053-1063
Badreddine J, Remy S, Micoulaut M, Rouhaud E, Desfontaine V, Renaud P (2014) CAD based model of ultrasonic shot peening for complex industrial parts. Adv Eng Softw 76:31–42. https://doi.org/10.1016/j.advengsoft.2014.05.010
Hubbard PM (1996) Approximating polyhedra with spheres for time-critical collision detection. ACM Trans Graph 15(3):179–210. https://doi.org/10.1145/231731.231732
Klein J, Zachmann G (2004) Point cloud collision detection. Comput Graph Forum 23(3):567–576. https://doi.org/10.1111/j.1467-8659.2004.00788.x
Bhalerao K, Kurien Issac K (2006) Simulation of impact, based on an approach to detect interference. Adv Eng Softw 37(12):805–813. https://doi.org/10.1016/j.advengsoft.2006.05.001
Lin MC, Manocha D, Kim YJ (2004) Collision and proximity queries. In: Goodman JE, O’Rourke J, Toth CD (eds) Handbook of discrete and computational. Boca Raton, CRC Press LLC, Geometry, pp 1029–1056
Zhang L, Quigley SF, Chan AHC (2013) A fast scalable implementation of the two-dimensional triangular discrete element method on a GPU platform. Adv Eng Softw 60–61:70–80. https://doi.org/10.1016/j.advengsoft.2012.10.006
Tropp O, Tal A, Shimshoni I (2006) A fast triangle to triangle intersection test for collision detection. Comput Animat Virtual Worlds 17:527–535. https://doi.org/10.1002/cav.115
Mei K, Lee R (2015) Collision detection for virtual machine tools and virtual robot arms using the shared triangles extended octrees method. Int J Comput Integr Manuf 29(4):355–373. https://doi.org/10.1080/0951192X.2015.1033755
Gupta A, Shastry GK, Hunsur NK, Cai W, Tilove R (2012) An approach for automated and optimized selection of weldguns for spot welding in automotive body shop. J Manuf Sci Eng 134(3):167–172. https://doi.org/10.1115/1.4005795
Larkin N, Short A, Pan Z, Duin S (2016) Automatic program generation for welding robots from CAD. In: 2016 IEEE international conference on advanced intelligent mechatronics, Banff, Canada, pp 560–565. https://doi.org/10.1109/AIM.2016.7576827
Nelaturi S, Abhyankar A, Shapiro V, Tilove R (2008) Feasible spaces in weld gun selection. 2008 IEEE conference on automation science and engineering, Arlington, USA, pp 870–875. https://doi.org/10.1109/COASE.2008.4626483
Sun Y, Li F, Zhang Q (2019) CATIA V5–6R2017 from entry to master. People Post Press, Beijing
Szilvśi-Nagy M, Mátyási GY (2003) Analysis of STL files. Math Comput Model 38(7–9):945–960. https://doi.org/10.1016/S0895-7177(03)90079-3
Wei J (2013) OBB generation via principal component analysis. Programmatical Musings. https://hewjunwei.wordpress.com/2013/01/26/obb-generation-via-principal-component-analysis/. Accessed 16 Oct 2021
Rutishauser H (1996) The Jacobi method for real symmetric matrices. Numer Math 9:1–10. https://doi.org/10.1007/BF02165223
Sun X (2012) VC++ in-depth explanation. Electronic Industry Press, Beijing
Shreiner D (2012) OpenGL programming guide. China Machine Press, Beijing
Wu X (2013) Function and action of GetTickCount() function. CSDN. https://blog.csdn.net/wuxinliulei/article/details/12314207. Accessed 17 Apr 2022
Bachrathy D, Stépán G (2012) Bisection method in higher dimensions and the efficiency number. Period Polytech Mech Eng 56(2):81–86. https://doi.org/10.3311/pp.me.2012-2.01
Lee K (1999) Principles of CAD/CAM/CAE systems. Prentice Hall PTR, East Rutherford
Kela A (1989) Hierarchical octree approximations for boundary representation-based geometric models. Comput-Aided Des 21(6):355–362. https://doi.org/10.1016/0010-4485(89)90002-X
Rodriguez A, Aguinaga I, Matey LM (2009) Automatic extraction of the topology of 3D electrical mock-ups using a mixed octree-voxel method. Adv Eng Softw 40(8):570–582. https://doi.org/10.1016/j.advengsoft.2008.10.004
Jarble (2021) Minimum bounding box. Wikipedia. https://en.wikipedia.org/wiki/Minimum_bounding_box. Accessed 17 Apr 2022
Pacheco P (2011) An introduction to parallel programming. Morgan Kaufmann, USA
Gregory K, Miller A (2012) C++ AMP: Accelerated massive parallelism with microsoft visual C++. Microsoft Press, USA
Funding
This work was supported by the Hyundai Motor Company (No. 201917370001). The authors thank the Hyundai Motor Company for the CAD models of their vehicles and welding guns in study design.
Author information
Authors and Affiliations
Contributions
Ruidong Man and Chungil Son developed the algorithm and the program. Songkil Kim advised the algorithm and conducted a preliminary review of the manuscript. Yoongho Jung supervised the entire progress of the project and completed the revision of the manuscript.
Corresponding author
Ethics declarations
Ethics approval
Not applicable.
Consent to participate
Not applicable.
Consent for publication: not applicable.
Competing interests
The authors declare no competing interests.
Competing interests
The authors have no competing interests to declare that are relevant to the content of this article.
Additional information
Publisher's note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Man, R., Son, C., Kim, S. et al. Fast calculation of the welding gun posture for spot welding using octrees and CPU parallel processing. Int J Adv Manuf Technol 122, 2685–2699 (2022). https://doi.org/10.1007/s00170-022-09378-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00170-022-09378-8