**3.2 Haptic rendering architecture**

The above contact models and contact resolution techniques have to be implemented in a framework that manages the interfaces with the haptic interface control module under the limitations of computational resources. Each module has a different target rate connected to the perceptual field namely: 1 kHz for kinesthetic, 300Hz for tactile and 60Hz for visual. The computational resources pose strong limitations to the achievable update rates. Modularization allows not only to manage correctly different rates but also to keep the software flexible against changes, for design exploration and management. The result of such modularization is a multi-rate architecture (F Barbagli, Prattichizzo, & K Salisbury, 2005) in which modules at different rates exchange data at synchronization points. In particular we can identify several elements:


The collision detection module is typically the slowest part because it has to take into account the overall geometry of the virtual objects, although some techniques can be applied to limit the area of search based on speed and space boundaries. In addition, some GPU techniques can improve the rate, although it is difficult to reach the rate of the other components, in particular the haptic one. The connection between the collision detection and the simulation models is based on the notification of the contacts that are then used in the simulation block. Depending on the quality of the simulation in some cases it is worth clustering the contacts aggregating them based on their distance as performed by Otaduy (Miguel A. Otaduy, 2005).

An additional technique that can be employed for guaranteeing haptic rates in the simulation is the adoption of a multi level approach in the simulation, in particular when dealing with deformable models. A coarse representation of the objects is used in a slow simulation, slow in the sense that the time step of the simulation advances at large steps,

On the Integration of Tactile and Force Feedback 61

Textiles are deformable objects characterized by very fine surface and bulk physical properties, indicated with terms such as stiffness, smoothness, softness, fullness, crispness, thickness, weight, etc. Taken as a whole they constitute the so called Fabric Hand (Behery, 2005) of a specific fabric, which is the basis for assessing its quality in relation to a given use. These properties can be well distinguished and quantitatively evaluated by the human haptic sensorial system, with an important contribution given by the sense of sight. There is experimental evidence that the highly sophisticated mechanoreceptors located in the human skin are combined in the brain with those generated by the kinesthetic sensors located in the physiological articulations and in the muscles providing the so-called Tactile Picture of the fabric. For example, when gently stroking the fingertip on a fabric to evaluate its smoothness, the kinesthetic sensors give to the brain information about the fingertip speed and the global force exerted on the fabric while the mechanoreceptors sense the small local

Due to the limitations of the present technology, since the beginning it has been decided to focus the system simulation capability on the interactions that can be attained using only

Fig. 2. Scenario of the interaction in which the user can use thumb and index finger for

Taking into account the above considerations, the reference configuration for the development of the device responsible for generating the artificial mechanical stimuli to be delivered on the fingertips, has been conceived as the combination of two independent force-controlled manipulators (Force Feedback Device, FFD), and two arrays of

Each FFD is able to track the movements of the index and thumb fingertips and to convey the global force of arbitrary direction on it, and each TA mounted on the end-effector of the corresponding FFD is able to deliver to the surface of the fingertip skin specified spatial and

**4.1 Introduction** 

fluctuation of the tangential force due to friction.

two fingertips: the ones of the index and the thumb (see Fig. 2).

rubbing and stretching a standing piece of virtual textile.

independently actuated pins (Tactile Actuator, TA).

temporal sensory input patterns, (see Figure 2).

while a finer representation localized around the contact point with the user is computed at faster rates. The complexity of this approach is in the transfer of the effects from the fast model to the slow one. An example of application of this approach to textile simulation is provided by Bottcher et al. (Böttcher, Dennis Allerkamp, & F.E. Wolter, 2010).

Timing is very important in real-time interaction and in particular it is interesting to discuss how time behaves in simulation. The simulation takes some real computational time to perform an integration step, and if the simulation is based on iterative methods then this computation can take a variable amount of time. The desired behavior of the simulation is to be synchronous with the real timing allowing presenting a realistic behavior. Due to the computational time required by the integration step this means that the simulation has to perform a larger time step than the simulation, eventually estimating in advance the final computational time. There is anyway an issue in the selection of the integration time step, that depends on the integration method and the material parameters: a too large time step is not able to express the propagation of deformation waves inside the material, and, at the same time, a too large time step can produce numerical issues when part of the matrix depends on time and others are constant. This issue is well represented by the Courant condition that, for implicit integration, states how the squared maximum integration step should be of the order of a ratio between the mass of each element and the stiffness factors. This condition together with the computational time function can express how a given material and a simulation implementation are not suitable for real-time computation.
