A 6-DoF Zero-Order Dynamic Deformable Tool for Haptic Interactions of Deformable and Dynamic Objects

. Continuous collision detetion is required for haptic interactions with thin and fast-moving objects. However, previous studies failed to eliminate the force artifacts caused by the tool’s inertia. In this paper, we propose a multi-sphere proxy method for a 6-DoF deformable virtual tool with continuous collision detection. We use Zero-order Dynamics to avoid force artifacts caused by the tool’s inertia. In addition, we eliminate the “tunneling” problem introduced by the use of Zero-order Dynamics. As a result, we support fast motions of both the tool and the virtual object with sphere-mesh-level contacts and real-time simulation. Stability is guaranteed via a position-based dynamics simulator and an optional multi-rate architecture.


Introduction
Haptic interaction requires accurate collision detection in order to render the contact force between the virtual tool and the virtual environment. The "tunneling" problem, also called the pop-through effect, caused by using discrete collision detection can be avoided by using continuous collision detection (CCD).
Garre et al. [3] presented a deformable 6-DoF tool which was able to interact with deformable objects using CCD. However, they used bidirectional viscoelastic coupling between the device and the tool, which introduced force artifacts caused by the force of the tool's inertia. These artificial forces reduce rendering transparency, and fast motion input from the device may trigger stability problems when interacting with heavy objects.
To the contrary, the traditional proxy method [11] can directly manipulate the proxy position without force artifacts. This simulation method is called Zeroorder Dynamics (ZoD) [6].
In this paper, we propose a multi-sphere proxy (MSP) model to achieve 6-DoF haptic interactions with ZoD. In addition, this method is also able to perform CCD by using the method from [2] to handle collisions between the proxy sphere and triangle meshes.
However, ZoD may induce the "tunneling" problem if the collisions are not identified during the constraint computation. In this paper, we perform an additional CCD to solve this problem. Therefore, constraints, such as deformation, can be performed correctly without causing the "tunneling" problem. We list our contributions below: -An MSP model which enables 6-DoF haptic interactions with dynamic and deformable objects through sphere-mesh-level CCD contacts; -A ZoD simulation of a deformable 6-DoF haptic tool which eliminates the force artifacts caused by the tool's inertia as well as the "tunneling" problem.

Haptic Rendering with Zero-Order Dynamics
ZoD [6] was proposed to describe the simulation of the traditional virtual proxy method [11]. This method uses a virtual finite-radius sphere, i.e., the proxy, to represent a 3-DoF virtual tool. When the device moves, the proxy tries to follow its path via iterative collision detections. If contact occurs, the proxy finds the closest position to the device constrained by contacts. If there is no contact, the proxy tracks the device perfectly. The time integration has no mass or velocity involved. When considering the dynamics of the 6-DoF haptic tool, many studies use second-order dynamics [3,4] with virtual coupling [10], thus producing force artifacts. Meanwhile, the constraint-based [9] and configuration-based optimization [12] methods can be used to remove force artifacts. However, these methods are limited to rigid tools. Mitra et al. [6,7] used first-order dynamics but position constraints must be transferred into velocity constraints making contact forces difficult to compute.

Haptic Rendering with Continuous Collision Detection
The traditional virtual proxy method [11] checks just the collisions between the moving proxy and static virtual objects. Therefore, if a dynamic thin virtual object is moving quickly or deforming greatly during one time step and pass through the proxy position, the collision will not be detected.
Ding et al. [2] proposed a method utilizing triangle-proxy CCD and Proxy Pop-out processes to solve this problem. Triangle-proxy CCD computes the CCD between the triangle and the proxy by solving the coplanar condition between the moving triangle and the proxy center. After that, the Proxy Pop-out carries our iterative discrete collision detections between multiple triangular meshes and the proxy sphere. These processes are used to secure the start of the proxy to avoid the "tunneling" problem.
For the CCD used in 6-DoF haptic rendering, Ortega et al. [9] used a constraint-based god-object method for rigid-rigid haptic interactions. Garre et al. [3,4] can simulate deformation on both the tool and the object. Other haptic rendering approaches can be found in the survey [10].

Multi-sphere Proxy Model for a Virtual Tool
As described in Sect. 2.2, CCD between the proxy and dynamic triangular models can be computed using a sphere proxy [2]. Here, we extend the method used in [2] via the MSP model.
The Oriented Particles (OP) [8] method uses ellipsoid particles to simulate solid deformations. We directly use the particles of the OP model as our MSP model. The particle of the virtual tool is called the tool particle, and the particle representing the device is called the device particle. Since we apply CCD and proxy method described in [2] for each tool particle, we use spherical particles instead of ellipsoids for better performance. However, since ellipsoids can be used to represent a more precise contact model compared to spheres, it will be interesting to conduct further research using ellipsoids.
Since the number of tool particles is related directly to both collision accuracy and simulation speed, collision accuracy and system efficiency should be balanced. In this paper, we use the same method as [8] to create the OP model. An example is shown in Fig. 3.
This method is similar to that employed in [1] and [12], which also utilize spheres. However, their methods cannot handle CCD contact between the sphere and the triangular mesh, and method in [1] cannot avoid force artifacts caused by the tool's inertia.

Six Degree-of-Freedom Haptic Rendering
Force and Torque Feedback. We calculate the force and torque feedback from the discrepancy between the virtual tool and the device. As shown in Fig. 1, we first calculate force and torque of each pair of tool and device particles. Only the particles that have collided are considered in the calculation. Next, we sum all the forces and all the torques, respectively. Finally, we divide each of these sums by the total number of tool particles. We use translational and rotational springs to adjust the feedback magnitude. Haptic Contact Force Computation. The contact force applied to the virtual object is computed using the method in [2], which uses a distributed pointlike contact force applied as an external force of PBD to the corresponding OP particle of the virtual object.
Multi-rate Architecture. To improve interaction stability, we use a multi-rate architecture. First, we simply synchronize all the tool particle positions from the physics thread to the haptic thread. The feedback force and torque are calculated in the haptic thread. However, the delay caused by synchronization may induce "dragging" forces. Therefore, we also synchronize the collision information (collision occurs or not) to eliminate the force artifacts when no contact occurs.

Zero-Order Dynamic Deformable Haptic Tool
As introduced in Sect. 2.2, the traditional proxy method [11] uses ZoD to avoid force artifacts. We achieve ZoD by manipulating the position of the tool particle directly with a position-based haptic constraint.
Haptic Constraint. The haptic constraint helps us to apply the haptic device input to the virtual tool by computing current position of the device particle as the goal position. The computation is as follows: Here, o i represents the tool particle's original barycentric coordinates before deformation, while Q dev and d dev represent for the device's orientation matrix (3 × 3) and position, respectively. The variable with a bold font refers to a 3 × 1 vector.
After the goal position is computed, we perform the traditional proxy method [11] to update tool particles to the goal positions, i.e., the positions of device particles (shown in Fig. 2(b)).

The "Tunneling" Problem Caused by Constraints.
Since we use a stiff haptic constraint in PBD, it cancels the effect of the other constraints. To solve this problem, we apply the haptic constraint only once before the other constraints. Therefore, the other constraints, e.g., the deformation constraint, can be performed correctly.
However, if we perform the constraint calculation, the result may violate the collision constraints and cause the "tunneling" problem (shown in Fig. 2(c)). Unfortunately, it is impossible to identify all of the collision constraints ahead in the proxy method collision detection we executed when applying the haptic constraint since they have different starts and goals.
Solving the "Tunneling" Problem. To solve the "tunneling" problem caused by the constraint calculation, our proposal is to run an additional CCD, which is the same as the proxy method, for the constraint calculation (shown in Fig. 2(d)) to revise the particle positions. In order to do so, we record the tool particle positions before and after the PBD constraint calculation. After that, we perform the proxy method between the recorded start and end. The whole progress is shown in Fig. 2.

Simulation of a Zero-Order Dynamic Deformable Haptic Tool
Our simulation loop of the physics thread is executed as follows:

Evaluations
In this section, we will introduce two evaluations of our method. The evaluations were performed on an Intel i5-7300 4-core CPU PC without GPU. A Spidar-G6 was used as the haptic device. We also provide a supplementary video.

The Evaluation of Interactions and Efficiency
In this evaluation, we used a deformable 1 kg hand model [5] as the tool to interact with a double-faced, 8-m, 200 g curtain model. The curtain model contained 1089 vertices and 4096 triangles, while each vertex was modeled with one OP particle and connected with another eight nearby particles. The hand model had 3919 vertices and 3906 triangles with 37 OP particles (the placement of the tool particles can be further optimized). Only shape-matching and distance constraints were simulated for the two models. The PBD iteration counts were two and four for the curtain and the hand models, respectively. The feedback springs were both set to 20 N/m. No damping of virtual coupling was used.
The result is displayed in Fig. 3. A series of interactions were performed, including tapping and pressing, on the curtain model. From Fig. 3, we can see that the tool moved freely in the air without the force caused by the inertia. The system was stable even fast motions were inputted with strong impacts while the tool and the device deformation were performed correctly. The whole simulation took 2.5 s. The data was collected from the haptic thread which was running at 1kHz, while one time-stamp indicated one loop of the calculation.
The simulation ran at an average rate from 45 to 59 FPS, depended on the collision number. The calculation of the PBD constraints took 4 ms. The CCD, including triangle-proxy CCD and Proxy Pop-out, required 3 ms, while the two runs of the proxy method required 8 to 12 ms depending on the collision count. We used a basic pruning method which ignored far-off meshes (at least 1 m from every tool particle). The computational efficiency was highly related to the number of tool particles; therefore, we also ran a test of this scene using tool particles numbering from 1 to 50 (illustrated in Fig. 4(a)).

The Evaluation of Multi-rate Haptic Rendering
We conduct a comparison between multi-rate and single-rate haptic rendering to evaluate the force artifacts caused by multi-rate simulation. In this evaluation, the device slid along a virtual horizontal plane using the same hand model of the first evaluation. The results in Fig. 4(b) and (c) show that the horizontal "dragging" forces (forces on X and Z axis) arise only in the multi-rate case as the device moves. During our tests, the magnitude of the force artifacts was proportional to the computation time of the physics simulation.

Conclusion, Limitations, and Future Works
We propose a 6-DoF deformable tool that can interact with another deformable virtual object. The contact is handled between spherical proxies and triangular meshes. The force artifacts caused by the tool's inertia were eliminated, and tool deformation was performed without the "tunneling" problem. Our simulation is stable even with fast motion input using a large feedback spring. We also provide a multi-rate haptic rendering option which improves the stability but induces other force artifacts.
Compared to other studies, our system uses a less accurate contact tool model compared to the one in [3], in which the tool has 1441 triangular meshes for collision detection (not sure about the deformable object). The hand model we used in the evaluations does not have a rigid-body or joint constraint; therefore, the physics behavior of the hand model is less accurate than that used in [3]. Also, as we represent the tool with spherical particles, objects that are thinner than the gap between particles may result in penetrations. In the future, we plan to find solutions to cover this gap and use ellipsoids to handle accurate contacts.