# Digital Twin for Human-Robot Collaboration in Manufacturing: Review and Outlook
## 3 Review of DT in HRC
### SBA vs. LBA Development
#### 3.4.1 Software for the Development of Digital Twin for HRC  
It is expected that both commercialized software tools and open-source platforms will be used for the development of the DT of a given system. A number of the commercial tools available to create a virtual replica of a robot carrying out the work as well as simulating the same in the virtual environment include Visual Components (VC), Siemens Simatic WinCC and KUKA.Sim Pro [108]. In addition to these tools, game engines, such as Unity3D, have already been used to develop the DT of industrial robots. Here, the motion between the real and the virtual robot has been synchronised and tested [109]. Likewise, tools such as those found in Siemens Tecnomatix are used for simulation of the DT model for optimization, ergonomics, assembly line planning, offline robotic programming and task planning [1,14,22,48,110]. DT using MATLAB is discussed in [111], where the DT of an industrial robot coupled with machine learning algorithms is used to monitor the workspace effectively and avoid collision so that the robotic cell is suitable for HRC applications. Similarly, the DT of an industrial robot using machine vision for autonomous decision making for sorting applications is discussed [112]. This approach uses two packages, Robot Operating System (ROS) and MATLAB, for communication, data handling and motion planning. Two platforms that are frequently used for experimentation in DT are Gazebo and CoppeliaSim. These two simulation tools can be used with MATLAB and ROS, which provides more flexibility, particularly in modelling humans in the virtual environment [20,98,113,114]. Cloud computing can be used to meet the high computational power required for DT-HRC, as well as to take advantage of readily available cloud-based data processing techniques [115]. Public cloud platforms or open-source cloud platforms, such as OpenWhisk, WSO2, or OpenShift can be used in such instances. However, cloud-based DT can cause communication delays. Hence, these cloud-based solutions can be helpful in processing the non-real-time data and for other non-real-time applications. A framework for integrating DT and web-based technologies is explained in [116]. There are advantages and disadvantages of using open source and commercial software tools for the development of DT-HRC. The cost of the software must be considered when selecting commercial tools. Some commercial software tools offer free licenses valid for a specified trial period for users to carry out initial experiments. Another factor to consider with any software is the learning curve. Commercial tools usually provide standard documentation to get started with the platform. However, to utilize the software to its full potential, the user might have to attend dedicated training delivered by the company, which may incur an additional cost. Another advantage of the commercial platform is the availability of dedicated customer technical support that can assist the user with any technical issues when using the platform. On the other hand, open-source platforms have a very steep learning curve with limited documentation for accessing advanced software capabilities. Some open-source platforms have online communities with supportive users, which can provide quicker resolution to technical problems compared to commercial software tools. Thirdly, the range of functionality offered by commercial software tends to be better than open-source platforms. Some commercial tools have a library of robot models, grippers and other devices that can be easily imported into the virtual environment. However, tools such as Gazebo require 3D models that are not readily available to be introduced into the simulation environment. In comparison, CoppeliaSim offers some readily available models within the software that can be easily imported into the simulation environment. Commercial platforms also offer various built-in tools for data analytics, such as plotting the joint parameters of the robot [108].