# CAD-Based Robot Programming Solution for Wire Harness Manufacturing in Aeronautic Sector

^{*}

## Abstract

**:**

## 1. Introduction

- First implementation of a CAD-based robot programming framework for wire harness manufacturing in the aeronautic sector.
- Cable routing planner extended to manage dual-arm robot setups.
- Integrated calibration procedure to adapt the system to inaccuracies on the manufacturing workbench preparation.

## 2. Related Work

## 3. Scenario Description

- Initially, operators adhere the drawing to the workbench to use it as a template.
- Operators configure the workbench by placing some pins in some specific points of the drawing like endpoints and bifurcations to guide the wires. The placement of these pins can be observed on the left part of Figure 1, positioned on the inner part of the curve, and are crucial to maintaining the shape of the wire harness.
- When the workbench is prepared, operators start checking all the wire information documents to select the appropriate wires and start guiding them along the drawing. This production step can take a long time as operators need to constantly study the provided documentation to verify the initial and final points of each wire and its route, especially when they are not familiar with the produced reference.
- Once all the wires are routed, operators perform different tasks like cable torching, connector welding, and placement of protection. Figure 1 shows an operator securing a set of wires with a cord.

## 4. Proposed Approach

## 5. Offline Programming Framework

## 6. Real-Time Execution Framework

- There is a nominal CAD origin in the workbench, which is calibrated for each robot of the dual-arm system. Therefore, homogeneous transformation matrices$${}^{robo{t}_{1}}{H}_{ca{d}^{*}},$$$${}^{robo{t}_{2}}{H}_{ca{d}^{*}},$$
- As it is complex to place manually a 2D drawing precisely in the robot cell’s CAD origin, the Real-Time Execution Framework includes a CAD calibration step. This CAD calibration will calculate the offset between the nominal CAD coordinate system and the real CAD origin, an offset generated due to small errors in the placement of the drawing on the workbench. Transformation matrix$${}^{ca{d}^{*}}{H}_{cad},$$
- To ensure the capability to modify the robot tools and adapt the robot movements accordingly, matrix$${}^{flange}{H}_{too{l}_{1}},$$$${}^{flange}{H}_{too{l}_{2}},$$
- Finally, each robot has a pin feeder near its base$${}^{robo{t}_{1}}{H}_{feede{r}_{1}},$$$${}^{robo{t}_{2}}{H}_{feede{r}_{2}},$$$${}^{robo{t}_{1}}{H}_{cabl{e}_{i}},$$

**CAD Information Manager:**This module is in charge of managing all the CAD data received from the Offline Programming Framework in XML file format. Specifically, the module loads the XML files and offers different queries to get information about pin positions and routing paths. Additionally, due to the errors in the positioning of 2D drawings on the workbench, this module provides a function for calculating the offset matrix ${}^{ca{d}^{*}}{H}_{cad}$ based on the position of calibration points in the drawing and the position of the robots.**Robot Skill Manager:**This second module is in charge of managing the robots and grippers, offering different skills to perform each of the steps of the assembly process. Specifically, there are two different skills available: (1) configuration of the workbench by placing the routing pins in the selected points of the CAD drawing and (2) routing of the cables based on the defined paths.

#### 6.1. CAD Information Manager

**Load XML files:**To ensure a real-time reconfiguration, the module allows loading XML files defining the CAD points, paths, and cable-path pairs. If several wire harness references are available, users can switch between them selecting the appropriate XML files at any time.**Query CAD points:**The Robot Skill Manager can ask for information about the different CAD points $P={\{}^{cad}{T}_{{P}_{1}},{\phantom{\rule{0.166667em}{0ex}}}^{cad}{T}_{{P}_{2}},\dots ,{\phantom{\rule{0.166667em}{0ex}}}^{cad}{T}_{{P}_{N}}\}$ defined in the offline programming phase. This information is used in further steps for pin positioning and routing operations.**Query path information:**The Robot Skill Manager can ask for information about the CAD points of a specific path ${Q}_{i}$. This information is used for the routing skill.**Query cable information:**The Robot Skill Manager can ask for information about the path $({D}_{k},{Q}_{i})$ assigned for a specific cable identifier ${D}_{k}$, used for routing purposes.

- Initially, the operator guides the robots manually to the calibration points marked in the drawing that is placed on the workbench$${}^{cad}{T}_{cali{b}_{1}},$$$${}^{cad}{T}_{cali{b}_{2}},$$
- Once the robots are placed correctly on the calibration points, the system retrieves the robot’s status, specifically the robot poses$${}^{robo{t}_{1}}{H}_{flang{e}_{1}},$$$${}^{robo{t}_{2}}{H}_{flang{e}_{2}},$$
- At this point, it is necessary to estimate the offset ${}^{ca{d}^{*}}{H}_{cad}$ between the nominal CAD origin and the real one, to ensure that$$\left\{\begin{array}{c}{}^{robo{t}_{1}}{H}_{flang{e}_{1}}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{flang{e}_{1}}{T}_{too{l}_{1}}={\phantom{\rule{0.277778em}{0ex}}}^{robo{t}_{1}}{H}_{ca{d}^{*}}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{ca{d}^{*}}{H}_{cad}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{cad}{T}_{cali{b}_{1}}\hfill \\ {}^{robo{t}_{2}}{H}_{flang{e}_{2}}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{flang{e}_{2}}{T}_{too{l}_{2}}={\phantom{\rule{0.277778em}{0ex}}}^{robo{t}_{2}}{H}_{ca{d}^{*}}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{ca{d}^{*}}{H}_{cad}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{cad}{T}_{cali{b}_{2}}\hfill \end{array}\right.$$Specifically, a nonlinear least-squares solver [29] is implemented allowing to solve problems of the form$$\begin{array}{cc}\hfill \underset{\mathbf{x}}{min}& \phantom{\rule{0.8.em}{0ex}}\frac{1}{2}\sum _{i}{\rho}_{i}\left({\u2225{f}_{i}\left({x}_{{i}_{1}},\dots ,{x}_{{i}_{k}}\right)\u2225}^{2}\right)\hfill \\ \hfill \mathrm{s}.\mathrm{t}.& \phantom{\rule{0.8.em}{0ex}}{l}_{j}\le {x}_{j}\le {u}_{j}\hfill \end{array}$$In the posed problem, the parameter block is defined as$$\{{t}_{x},{t}_{y},{t}_{z},{q}_{x},{q}_{y},{q}_{z},{q}_{w}\}$$Additionally, residual block r is defined as$$r={[r1,r2,r3,r4,r5,r6]}^{T},$$$$\left[\begin{array}{c}r1\\ r2\\ r3\end{array}\right]={\phantom{\rule{0.277778em}{0ex}}}^{robo{t}_{1}}{H}_{ca{d}^{*}}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{ca{d}^{*}}{H}_{cad}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{cad}{T}_{cali{b}_{1}}\phantom{\rule{0.277778em}{0ex}}-{\phantom{\rule{0.277778em}{0ex}}}^{robo{t}_{1}}{H}_{flang{e}_{1}}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{flang{e}_{1}}{H}_{too{l}_{1}},$$$$\left[\begin{array}{c}r4\\ r5\\ r6\end{array}\right]={\phantom{\rule{0.277778em}{0ex}}}^{robo{t}_{2}}{H}_{ca{d}^{*}}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{ca{d}^{*}}{H}_{cad}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{cad}{T}_{cali{b}_{2}}\phantom{\rule{0.277778em}{0ex}}-{\phantom{\rule{0.277778em}{0ex}}}^{robo{t}_{2}}{H}_{flang{e}_{2}}\phantom{\rule{0.277778em}{0ex}}\xb7{\phantom{\rule{0.277778em}{0ex}}}^{flang{e}_{2}}{H}_{too{l}_{2}},$$Based on these parameter blocks and residual blocks, the nonlinear least-squares solver calculates the transformation ${}^{ca{d}^{*}}{H}_{cad}$ between the nominal CAD origin defined in the workbench and the real CAD origin of the drawing placed on the workbench.

#### 6.2. Robot Skill Manager

**Workbench Configuration Skill:**As presented previously in the scenario description, it is necessary to place some pins at specific points of the workbench to guide the cable routing and maintain the shape of the cables and branches for further manufacturing steps. Therefore, this skill receives the pin positions defined by the designers on the Offline Programming Framework and places the pins on the drawing in the indicated positions. To enhance its usability, the skill includes object symmetry management mechanisms as well as collision detection capabilities to sequence the pin placement movements ensuring collision-free movements.**Routing Skill:**During the routing process, operators guide the cables along the different paths, using the pins to conduct the wires and maintain the shape of the wire harness. In each pin, it is necessary to decide through which side of the pin the path will follow; sometimes it is mandatory to select one of the sides (e.g., sharp curves always from the outer side) but at some points the decision is arbitrary. Additionally, as both robots of the bi-manual system need to exchange the cable, it is also necessary to select this exchange point. Therefore, this skill must generate and execute trajectories able to cope with these restrictions, ensuring the reachability of both robot arms for any arbitrary wire harness configuration.

#### 6.2.1. Workbench Configuration Skill

- Initially, the Pin division step divides the pins to be placed, assigning them to the most appropriate robot arm.
- The second step is the Trajectory generation, where the module calculates the robot trajectories for the pin grasping and placing manoeuvres.
- In the fourth step the Trajectory sequencer defines the final trajectory sequence, checking if both robots can execute the movements in parallel to speed up the process.
- Finally, the Trajectory executor manages all these trajectories, operating both robots and grippers as defined in the plan.

#### 6.2.2. Routing Skill

- Initially, the path is subjected to a Path segmentation process, dividing the routing path into distinct segments assigned to the most appropriate robot arm.
- The second step is the Side selection, where the module defines the pin side that the path will follow to meet the routing strategy described above.
- The third step is the Cable exchange, where the most suitable cable exchange positions are estimated when both robots need to hand over the wire.
- In the fourth step the Trajectory planner calculates the robot trajectories of the previously calculated routing paths and cable exchange manoeuvres.
- Finally, the Trajectory executor manages all these trajectories, handling both robots and grippers as defined in the plan.

## 7. Implementation

- Two Kuka LBR iiwa 7 robots [33] (KUKA, Augsburg, Germany), 7-axis lightweight cobots equipped with torque sensors in each joint. Both arms are placed side-by-side in front of a workbench used for wire harness manufacturing. The compliant capabilities of the robots allow them to execute force-controlled movements; this capability ensures a safe execution of movements for pin placement and cable routing avoiding to damage the parts due to excessive forces.
- Each robot is equipped with a Schunk WSG50-110 gripper [34] (Weiss Robotics GmbH & Co. KG, Ludwigsburg, Germany), servo-electric grippers with a full stroke of 110 mm, and a gripping force of up to 80 N. Grippers include custom-designed fingers attached to them; specifically, the fingers have a planar shape with both sides covered by a thin foam to protect the cables and a vertical groove to ensure the grip of pins. The capability to set dynamically the desired gripping force, not present in the classical pneumatic grippers, is a critical aspect in the decision to include them in the setup due to the flexible nature of the grasped elements.

- Workbench where all the elements of the wire harness are placed and managed.
- A metal sheet where operators place the CAD drawings.
- Pins of 60 mm in length and equipped with a magnetic base, which can be attached to the metal sheet of the drawing. Besides, two pin trays are placed near each robot to feed the system.
- A cable feeder consisting of 5 cable rolls placed on a side of the workbench. The tip of each cable includes a small clip with magnets to facilitate its grasping and ensure that it is correctly attached to the metal sheet.

- Compliant robot movements for both pin placing and cable routing. On the one hand, every pin and cable grasp and release movement includes compliance in the Z axis to avoid excessive forces that could damage the part. On the other hand, the routing paths include compliance in the X and Y axes to facilitate the routing and to alleviate the effects of possible entanglements.
- Variable gripping force of the grippers to ensure a suitable grasp for both pins and cables without any damage on the part.

## 8. Validation

#### 8.1. Offline Programming Framework Validation

#### 8.2. Real-Time Execution Framework Validation

**Manual operation:**The operator configures the workbench (T1) and routes all the cables (T2). During both tasks, operators spend time checking the drawing information and cable/route tables to verify where each pin or cable should be placed.**Robotized solution:**The operator guides the robots to the calibration points of the drawing using a 6D joystick and launches the robot program. Afterwards, robots configure the workbench (T1) and route all the cables (T2). Operators only intervene in the calibration step, leaving the execution of tasks T1 and T2 to the robotic solution.

#### 8.2.1. Baseline

#### 8.2.2. Robotized Solution

**Calibration:**The operator guides both robots to the calibration points using a 6D joystick (implemented as two twist controllers on the robotic system). Once the calibration points are reached, operators launch the application, which starts executing the calibration procedure of the CAD Information Manager module. The calibration step mainly lasts the time spent by the operator guiding the robot to the defined points as the final optimization procedure requires between 50–100 ms.**Workbench configuration:**The Worbench Configuration Skill executes the pin placing operation using the CAD data provided by the CAD Information Manager module. Operators do not intervene in this step.**Routing:**The Routing Skill places all the cables of the list using the CAD data provided by the CAD Information Manager module. Operators do not intervene in this step.

#### 8.2.3. Comparison

#### 8.2.4. Scalability

## 9. Conclusions and Future Work

## Author Contributions

## Funding

## Data Availability Statement

## Conflicts of Interest

## References

- Aguirre, E.; Raucent, B. Performances of wire harness assembly systems. In Proceedings of the 1994 IEEE International Symposium on Industrial Electronics (ISIE’94), Santiago, Chile, 25–27 May 1994; pp. 292–297. [Google Scholar]
- Aguirre, E.; Raucent, B. Economic comparison of wire harness assembly systems. J. Manuf. Syst.
**1994**, 13, 276–288. [Google Scholar] [CrossRef] - Neto, P.; Pires, J.N.; Moreira, A.P. CAD-based off-line robot programming. In Proceedings of the 2010 IEEE Conference on Robotics, Automation and Mechatronics, Singapore, 28–30 June 2010; pp. 516–521. [Google Scholar]
- Neto, P.; Mendes, N. Direct off-line robot programming via a common CAD package. Robot. Auton. Syst.
**2013**, 61, 896–910. [Google Scholar] [CrossRef] - Foit, K.; Ćwikła, G. The CAD drawing as a source of data for robot programming purposes—A review. MATEC Web Conf.
**2017**, 94, 05002. [Google Scholar] [CrossRef] - Norberto Pires, J.; Godinho, T.; Ferreira, P. CAD interface for automatic robot welding programming. Ind. Robot. Int. J.
**2004**, 31, 71–76. [Google Scholar] [CrossRef] - Larkin, N.; Short, A.; Pan, Z.; Van Duin, S. Automatic program generation for welding robots from CAD. In Proceedings of the 2016 IEEE International Conference on Advanced Intelligent Mechatronics (AIM), Banff, AB, Canada, 12–15 July 2016; pp. 560–565. [Google Scholar]
- Ferreira, L.A.; Figueira, Y.L.; Iglesias, I.F.; Souto, M.Á. Offline CAD-based robot programming and welding parametrization of a flexible and adaptive robotic cell using enriched CAD/CAM system for shipbuilding. Procedia Manuf.
**2017**, 11, 215–223. [Google Scholar] [CrossRef] - Klein, A. CAD-based off-line programming of painting robots. Robotica
**1987**, 5, 267–271. [Google Scholar] [CrossRef] - Kim, J. CAD-based automated robot programming in adhesive spray systems for shoe outsoles and uppers. J. Robot. Syst.
**2004**, 21, 625–634. [Google Scholar] [CrossRef] - Deng, S.; Cai, Z.; Fang, D.; Liao, H.; Montavon, G. Application of robot offline programming in thermal spraying. Surf. Coat. Technol.
**2012**, 206, 3875–3882. [Google Scholar] [CrossRef] - Bi, Z.M.; Lang, S.Y. A framework for CAD-and sensor-based robotic coating automation. IEEE Trans. Ind. Inform.
**2007**, 3, 84–91. [Google Scholar] [CrossRef] - Neto, P.; Mendes, N.; Araújo, R.; Norberto Pires, J.; Paulo Moreira, A. High-level robot programming based on CAD: Dealing with unpredictable environments. Ind. Robot. Int. J.
**2012**, 39, 294–303. [Google Scholar] [CrossRef] - Warnecke, H.; Walther, J.; Schlaich, G. Flexible automated wiring harness assembly. In Toward the Factory of the Future, Proceedings of the 8th International Conference on Production Research and 5th Working Conference of the Fraunhofer-Institute for Industrial Engineering (FHG-IAO) at University of Stuttgart, Stuttgart, Germany, 20–22 August 1985; Springer: Berlin/Heidelberg, Germany, 1985; pp. 453–460. [Google Scholar]
- Jiang, X.; Koo, K.M.; Kikuchi, K.; Konno, A.; Uchiyama, M. Robotized assembly of a wire harness in a car production line. Adv. Robot.
**2011**, 25, 473–489. [Google Scholar] [CrossRef] - Palomba, I.; Gualtieri, L.; Rojas, R.; Rauch, E.; Vidoni, R.; Ghedin, A. Mechatronic re-design of a manual assembly workstation into a collaborative one for wire harness assemblies. Robotics
**2021**, 10, 43. [Google Scholar] [CrossRef] - Navas-Reascos, G.E.; Romero, D.; Rodriguez, C.A.; Guedea, F.; Stahre, J. Wire harness assembly process supported by a collaborative robot: A case study focus on ergonomics. Robotics
**2022**, 11, 131. [Google Scholar] [CrossRef] - Zhang, X.; Domae, Y.; Wan, W.; Harada, K. A Closed-Loop Bin Picking System for Entangled Wire Harnesses using Bimanual and Dynamic Manipulation. arXiv
**2023**, arXiv:2306.14595. [Google Scholar] - Lv, N.; Liu, J.; Jia, Y. Dynamic modeling and control of deformable linear objects for single-arm and dual-arm robot manipulations. IEEE Trans. Robot.
**2022**, 38, 2341–2353. [Google Scholar] [CrossRef] - Nguyen, H.G.; Habiboglu, R.; Franke, J. Enabling deep learning using synthetic data: A case study for the automotive wiring harness manufacturing. Procedia CIRP
**2022**, 107, 1263–1268. [Google Scholar] [CrossRef] - Huang, X.; Chen, D.; Guo, Y.; Jiang, X.; Liu, Y. Untangling Multiple Deformable Linear Objects in Unknown Quantities with Complex Backgrounds. IEEE Trans. Autom. Sci. Eng. 2023; early access. [Google Scholar] [CrossRef]
- Caporali, A.; Zanella, R.; Greogrio, D.D.; Palli, G. Ariadne+: Deep Learning–Based Augmented Framework for the Instance Segmentation of Wires. IEEE Trans. Ind. Inform.
**2022**, 18, 8607–8617. [Google Scholar] [CrossRef] - Žagar, B.L.; Caporali, A.; Szymko, A.; Kicki, P.; Walas, K.; Palli, G.; Knoll, A.C. Copy and Paste Augmentation for Deformable Wiring Harness Bags Segmentation. In Proceedings of the 2023 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), Seattle, WA, USA, 28–30 June 2023; pp. 721–726. [Google Scholar]
- Tunstel, E.; Dani, A.; Martinez, C.; Blakeslee, B.; Mendoza, J.; Saltus, R.; Trombetta, D.; Rotithor, G.; Fuhlbrigge, T.; Lasko, D.; et al. Robotic wire pinning for wire harness assembly automation. In Proceedings of the 2020 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), Boston, MA, USA, 6–9 July 2020; pp. 1208–1215. [Google Scholar]
- Guo, J.; Zhang, J.; Wu, D.; Gai, Y.; Chen, K. An algorithm based on bidirectional searching and geometric constrained sampling for automatic manipulation planning in aircraft cable assembly. J. Manuf. Syst.
**2020**, 57, 158–168. [Google Scholar] [CrossRef] - Morrow, J.D.; Khosla, P.K. Manipulation task primitives for composing robot skills. In Proceedings of the International Conference on Robotics and Automation, Albuquerque, NM, USA, 25 April 1997; Volume 4, pp. 3354–3359. [Google Scholar]
- Bøgh, S.; Nielsen, O.S.; Pedersen, M.R.; Krüger, V.; Madsen, O. Does your robot have skills? In Proceedings of the 43rd International Symposium on Robotics, Taipei, Taiwan, 29–31 August 2012. [Google Scholar]
- Pedersen, M.R.; Nalpantidis, L.; Andersen, R.S.; Schou, C.; Bøgh, S.; Krüger, V.; Madsen, O. Robot skills for manufacturing: From concept to industrial deployment. Robot. Comput.-Integr. Manuf.
**2016**, 37, 282–291. [Google Scholar] [CrossRef] - Agarwal, S.; Mierle, K.; The Ceres Solver Team. Ceres Solver. 2022. Available online: https://github.com/ceres-solver/ceres-solver (accessed on 27 August 2023).
- Descartes: Cartesian Path Planner. Available online: http://wiki.ros.org/descartes (accessed on 27 August 2023).
- Pan, J.; Chitta, S.; Manocha, D. FCL: A general purpose library for collision and proximity queries. In Proceedings of the 2012 IEEE International Conference on Robotics and Automation, Saint Paul, MN, USA, 14–18 May 2012; pp. 3859–3866. [Google Scholar] [CrossRef]
- Chitta, S.; Sucan, I.; Cousins, S. MoveIt! [ROS Topics]. IEEE Robot. Autom. Mag.
**2012**, 19, 18–19. [Google Scholar] [CrossRef] - Kuka LBR iiwa. Available online: https://www.kuka.com/en-us/products/robotics-systems/industrial-robots/lbr-iiwa (accessed on 27 August 2023).
- Schunk WSG50 Grippers. Available online: https://weiss-robotics.com/servo-electric/wsg-series/product/wsg-series/ (accessed on 27 August 2023).

**Figure 12.**Different cost curves used to determine the risk of pin collision based on relative distance.

Subject—Time | Overall | ||||||
---|---|---|---|---|---|---|---|

CAD Reference | S1 | S2 | S3 | S4 | S5 | Mean | $\mathit{\sigma}$ |

Reference 1 —2D | ${8}^{\prime}{36}^{\u2033}$ | ${5}^{\prime}{36}^{\u2033}$ | ${6}^{\prime}{30}^{\u2033}$ | ${6}^{\prime}{50}^{\u2033}$ | ${7}^{\prime}{40}^{\u2033}$ | ${7}^{\prime}{2}^{\u2033}$ | ${1}^{\prime}{9}^{\u2033}$ |

Reference 2—2D | ${4}^{\prime}{18}^{\u2033}$ | ${4}^{\prime}{10}^{\u2033}$ | ${4}^{\prime}{50}^{\u2033}$ | ${5}^{\prime}{20}^{\u2033}$ | ${6}^{\prime}{11}^{\u2033}$ | ${4}^{\prime}{58}^{\u2033}$ | ${0}^{\prime}{49}^{\u2033}$ |

Reference 3—2D | ${3}^{\prime}{10}^{\u2033}$ | ${3}^{\prime}{50}^{\u2033}$ | ${4}^{\prime}{30}^{\u2033}$ | ${5}^{\prime}{11}^{\u2033}$ | ${5}^{\prime}{22}^{\u2033}$ | ${4}^{\prime}{25}^{\u2033}$ | ${0}^{\prime}{55}^{\u2033}$ |

Reference 4—3D | ${5}^{\prime}{55}^{\u2033}$ | ${5}^{\prime}{15}^{\u2033}$ | ${6}^{\prime}{20}^{\u2033}$ | ${7}^{\prime}{10}^{\u2033}$ | ${7}^{\prime}{35}^{\u2033}$ | ${6}^{\prime}{27}^{\u2033}$ | ${0}^{\prime}{56}^{\u2033}$ |

Reference 5—3D | ${4}^{\prime}{30}^{\u2033}$ | ${4}^{\prime}{40}^{\u2033}$ | ${5}^{\prime}{50}^{\u2033}$ | ${5}^{\prime}{10}^{\u2033}$ | ${6}^{\prime}{24}^{\u2033}$ | ${5}^{\prime}{19}^{\u2033}$ | ${0}^{\prime}{48}^{\u2033}$ |

${5}^{\prime}{38}^{\u2033}$ | ${1}^{\prime}{18}^{\u2033}$ |

Subject—Time Improvement | Overall | ||||||
---|---|---|---|---|---|---|---|

CAD Reference | S1 | S2 | S3 | S4 | S5 | Mean | $\mathit{\sigma}$ |

2D CAD | 50% | 25.6% | 25.6% | 21.9% | 19.3% | 28.5% | 11% |

3D CAD | 23.9% | 11.1% | 7.9% | 27.9% | 15.6% | 17.3% | 7.5% |

22.9% | 10.7% |

Wire Harness Reference 1 | ||||||||

Workbench Configuration | Routing | |||||||

Subject | Task | Idle Time | Total | Efficiency | Task | Idle Time | Total | Efficiency |

S1 | ${0}^{\prime}{26}^{\u2033}$ | ${0}^{\prime}{26}^{\u2033}$ | ${0}^{\prime}{52}^{\u2033}$ | 50% | ${0}^{\prime}{42}^{\u2033}$ | ${0}^{\prime}{57}^{\u2033}$ | ${1}^{\prime}{39}^{\u2033}$ | 42.4% |

S2 | ${0}^{\prime}{22}^{\u2033}$ | ${0}^{\prime}{34}^{\u2033}$ | ${0}^{\prime}{56}^{\u2033}$ | 39.3% | ${0}^{\prime}{55}^{\u2033}$ | ${0}^{\prime}{56}^{\u2033}$ | ${1}^{\prime}{51}^{\u2033}$ | 49.5% |

S3 | ${0}^{\prime}{33}^{\u2033}$ | ${0}^{\prime}{35}^{\u2033}$ | ${1}^{\prime}{08}^{\u2033}$ | 48.5% | ${1}^{\prime}{5}^{\u2033}$ | ${1}^{\prime}{39}^{\u2033}$ | ${2}^{\prime}{44}^{\u2033}$ | 39.6% |

S4 | ${0}^{\prime}{24}^{\u2033}$ | ${0}^{\prime}{30}^{\u2033}$ | ${0}^{\prime}{54}^{\u2033}$ | 44.4% | ${0}^{\prime}{43}^{\u2033}$ | ${1}^{\prime}{6}^{\u2033}$ | ${1}^{\prime}{49}^{\u2033}$ | 39.4% |

S5 | ${0}^{\prime}{19}^{\u2033}$ | ${0}^{\prime}{34}^{\u2033}$ | ${0}^{\prime}{53}^{\u2033}$ | 35.8% | ${1}^{\prime}{29}^{\u2033}$ | ${3}^{\prime}{4}^{\u2033}$ | ${4}^{\prime}{33}^{\u2033}$ | 32.6% |

Mean | ${0}^{\prime}{25}^{\u2033}$ | ${0}^{\prime}{32}^{\u2033}$ | ${0}^{\prime}{57}^{\u2033}$ | 43.6% | ${0}^{\prime}{59}^{\u2033}$ | ${1}^{\prime}{32}^{\u2033}$ | ${2}^{\prime}{31}^{\u2033}$ | 40.7% |

$\sigma $ | 4.7${}^{\u2033}$ | 3.4${}^{\u2033}$ | 5.9${}^{\u2033}$ | 5.4% | 17.3${}^{\u2033}$ | 48.4${}^{\u2033}$ | ${1}^{\prime}{5}^{\u2033}$ | 5.5% |

Wire Harness Reference 2 | ||||||||

Workbench Configuration | Routing | |||||||

Subject | Task | Idle Time | Total | Efficiency | Task | Idle Time | Total | Efficiency |

S1 | ${0}^{\prime}{26}^{\u2033}$ | ${0}^{\prime}{33}^{\u2033}$ | ${0}^{\prime}{59}^{\u2033}$ | 44.1% | ${0}^{\prime}{41}^{\u2033}$ | ${0}^{\prime}{53}^{\u2033}$ | ${1}^{\prime}{34}^{\u2033}$ | 43.6% |

S2 | ${0}^{\prime}{20}^{\u2033}$ | ${0}^{\prime}{25}^{\u2033}$ | ${0}^{\prime}{45}^{\u2033}$ | 44.4% | ${0}^{\prime}{47}^{\u2033}$ | ${0}^{\prime}{48}^{\u2033}$ | ${1}^{\prime}{35}^{\u2033}$ | 49.5% |

S3 | ${0}^{\prime}{27}^{\u2033}$ | ${0}^{\prime}{31}^{\u2033}$ | ${0}^{\prime}{58}^{\u2033}$ | 46.5% | ${0}^{\prime}{36}^{\u2033}$ | ${1}^{\prime}{11}^{\u2033}$ | ${1}^{\prime}{47}^{\u2033}$ | 33.6% |

S4 | ${0}^{\prime}{18}^{\u2033}$ | ${0}^{\prime}{23}^{\u2033}$ | ${0}^{\prime}{41}^{\u2033}$ | 43.9% | ${0}^{\prime}{36}^{\u2033}$ | ${0}^{\prime}{53}^{\u2033}$ | ${1}^{\prime}{29}^{\u2033}$ | 40.4% |

S5 | ${0}^{\prime}{18}^{\u2033}$ | ${0}^{\prime}{32}^{\u2033}$ | ${0}^{\prime}{50}^{\u2033}$ | 36% | ${1}^{\prime}{0}^{\u2033}$ | ${1}^{\prime}{58}^{\u2033}$ | ${2}^{\prime}{58}^{\u2033}$ | 33.7% |

Mean | ${0}^{\prime}{22}^{\u2033}$ | ${0}^{\prime}{29}^{\u2033}$ | ${0}^{\prime}{51}^{\u2033}$ | 43% | ${0}^{\prime}{44}^{\u2033}$ | ${1}^{\prime}{9}^{\u2033}$ | ${1}^{\prime}{53}^{\u2033}$ | 40.2% |

$\sigma $ | 3.9${}^{\u2033}$ | 4${}^{\u2033}$ | 7.1${}^{\u2033}$ | 3.6% | 9${}^{\u2033}$ | 25.9${}^{\u2033}$ | 33.2${}^{\u2033}$ | 6.0% |

Wire Harness Reference 1 | |||
---|---|---|---|

Subject | Calibration | Workbench Conf. | Routing |

S1 | ${0}^{\prime}{52}^{\u2033}$ | ${1}^{\prime}{4}^{\u2033}$ | ${3}^{\prime}{24}^{\u2033}$ |

S2 | ${0}^{\prime}{40}^{\u2033}$ | ${1}^{\prime}{3}^{\u2033}$ | ${3}^{\prime}{26}^{\u2033}$ |

S3 | ${1}^{\prime}{1}^{\u2033}$ | ${1}^{\prime}{4}^{\u2033}$ | ${3}^{\prime}{26}^{\u2033}$ |

S4 | ${1}^{\prime}{29}^{\u2033}$ | ${1}^{\prime}{5}^{\u2033}$ | ${3}^{\prime}{26}^{\u2033}$ |

S5 | ${0}^{\prime}{44}^{\u2033}$ | ${1}^{\prime}{4}^{\u2033}$ | ${3}^{\prime}{26}^{\u2033}$ |

Mean | ${0}^{\prime}{57}^{\u2033}$ | ${1}^{\prime}{4}^{\u2033}$ | ${3}^{\prime}{26}^{\u2033}$ |

$\sigma $ | 17.5${}^{\u2033}$ | 0.6${}^{\u2033}$ | 0.8${}^{\u2033}$ |

Wire Harness Reference 2 | |||

Subject | Calibration | Workbench Conf. | Routing |

S1 | ${0}^{\prime}{51}^{\u2033}$ | ${1}^{\prime}{40}^{\u2033}$ | ${3}^{\prime}{45}^{\u2033}$ |

S2 | ${0}^{\prime}{37}^{\u2033}$ | ${1}^{\prime}{40}^{\u2033}$ | ${3}^{\prime}{47}^{\u2033}$ |

S3 | ${0}^{\prime}{44}^{\u2033}$ | ${1}^{\prime}{41}^{\u2033}$ | ${3}^{\prime}{46}^{\u2033}$ |

S4 | ${1}^{\prime}{15}^{\u2033}$ | ${1}^{\prime}{38}^{\u2033}$ | ${3}^{\prime}{47}^{\u2033}$ |

S5 | ${0}^{\prime}{33}^{\u2033}$ | ${1}^{\prime}{40}^{\u2033}$ | ${3}^{\prime}{47}^{\u2033}$ |

Mean | ${0}^{\prime}{48}^{\u2033}$ | ${1}^{\prime}{40}^{\u2033}$ | ${3}^{\prime}{46}^{\u2033}$ |

$\sigma $ | 14.8${}^{\u2033}$ | 1${}^{\u2033}$ | 0.8${}^{\u2033}$ |

**Table 5.**Comparison of the manual and robotized solution’s task times for the Real-time Execution Framework validation.

Wire Harness Reference 1 | |||
---|---|---|---|

Operation Type | Calibration | Workbench Conf. | Routing |

Manual | - | ${0}^{\prime}{57}^{\u2033}$ | ${2}^{\prime}{31}^{\u2033}$ |

Robotized | ${0}^{\prime}{57}^{\u2033}$ | ${1}^{\prime}{4}^{\u2033}$ | ${3}^{\prime}{26}^{\u2033}$ |

Wire Harness Reference 2 | |||

Operation Type | Calibration | Workbench Conf. | Routing |

Manual | - | ${0}^{\prime}{51}^{\u2033}$ | ${1}^{\prime}{53}^{\u2033}$ |

Robotized | ${0}^{\prime}{48}^{\u2033}$ | ${1}^{\prime}{40}^{\u2033}$ | ${3}^{\prime}{46}^{\u2033}$ |

Wire Harness Reference 1 | ||||
---|---|---|---|---|

Operation Type | Operator Time | Robot Time | Total | Idle Time |

Manual | ${3}^{\prime}{28}^{\u2033}$ | - | ${3}^{\prime}{28}^{\u2033}$ | ${2}^{\prime}{4}^{\u2033}$ |

Robotized | ${0}^{\prime}{57}^{\u2033}$ | ${4}^{\prime}{30}^{\u2033}$ | ${5}^{\prime}{27}^{\u2033}$ | - |

Wire Harness Reference 2 | ||||

Operation Type | Operator Time | Robot Time | Total | Idle Time |

Manual | ${2}^{\prime}{44}^{\u2033}$ | - | ${2}^{\prime}{44}^{\u2033}$ | ${1}^{\prime}{38}^{\u2033}$ |

Robotized | ${0}^{\prime}{48}^{\u2033}$ | ${5}^{\prime}{26}^{\u2033}$ | ${6}^{\prime}{14}^{\u2033}$ | - |

Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |

© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

González Huarte, J.; Ortiz de Zarate, M.; Ibarguren, A.
CAD-Based Robot Programming Solution for Wire Harness Manufacturing in Aeronautic Sector. *Robotics* **2023**, *12*, 130.
https://doi.org/10.3390/robotics12050130

**AMA Style**

González Huarte J, Ortiz de Zarate M, Ibarguren A.
CAD-Based Robot Programming Solution for Wire Harness Manufacturing in Aeronautic Sector. *Robotics*. 2023; 12(5):130.
https://doi.org/10.3390/robotics12050130

**Chicago/Turabian Style**

González Huarte, Javier, Maite Ortiz de Zarate, and Aitor Ibarguren.
2023. "CAD-Based Robot Programming Solution for Wire Harness Manufacturing in Aeronautic Sector" *Robotics* 12, no. 5: 130.
https://doi.org/10.3390/robotics12050130