On the Integration of Tactile and Force Feedback

Haptic interfaces promise to add a new channel to digital communication, through the exploitation of the sense of touch, beside the traditional sense of sight and of hearing. Nonetheless, even if they firstly appeared on the market in the early nineties, they haven’t spread yet in the society as a consumer product. This is not due to the intrinsic nature of the sense of touch that is a very sophisticated sensorial system, able to perceive fine and complex time and spatial varying characteristics of the outer world, but to the limited capabilities of the nowadays available haptic systems. Indeed, if from one side they allow quite realistic rendering of “mediated contacts” (i.e. contact of an object mediated by a specific tool like a pen, scissors, screw driver etc.), on the other side they are less effective for the rendering of cases of interaction in which the human limbs contact directly the object (direct contact). The main limitation lays in the lack of a proper simultaneous elicitation of kinesthetic and tactile cues.


Introduction
Haptic interfaces promise to add a new channel to digital communication, through the exploitation of the sense of touch, beside the traditional sense of sight and of hearing.Nonetheless, even if they firstly appeared on the market in the early nineties, they haven't spread yet in the society as a consumer product.This is not due to the intrinsic nature of the sense of touch that is a very sophisticated sensorial system, able to perceive fine and complex time and spatial varying characteristics of the outer world, but to the limited capabilities of the nowadays available haptic systems.Indeed, if from one side they allow quite realistic rendering of "mediated contacts" (i.e.contact of an object mediated by a specific tool like a pen, scissors, screw driver etc.), on the other side they are less effective for the rendering of cases of interaction in which the human limbs contact directly the object (direct contact).The main limitation lays in the lack of a proper simultaneous elicitation of kinesthetic and tactile cues.
In this chapter we provide a review of the main problems and possible solutions for the realization of a complete hardware and software system that integrates kinaesthetic and tactile devices.We provide an analysis of the direct contact interaction and of possible HW/SW architectural solutions for the implementation of a haptic system.
We analyze the mechanical design aspects (Machine Haptics) and software computational issues (Computer Haptics) that arise when tactile and kinaesthetic device have to be integrated.
In the last section of this chapter we present a case study focussed on the realization of a complete integrated system for the simulation of haptic interaction with virtual textiles.

Integration of tactile and kinesthetic feedback toward direct contact simulation
Tasks that involve direct contact between hand and objects are the most complex manipulative actions that humans can perform.Human ability of exploring, grasping and manipulating tools and objects relies on superior morphological and physical properties of our hands.A sophisticated system of bone, joints and tendon allow our hands to perform complex movement and to control accurately interaction forces.
Alternatively the subject can directly interact with her/his bare fingers with the environment.In this case the artificial recreation of interaction is much more complex and is focused on reproducing the physical phenomena that occurs at the fingertip level.
We will refer to these two different cases respectively as Mediated Contact interaction and Direct Contact interaction.Hayward in (Hayward, 2008) provided a very clear theoretical description of the difference between these two modes.

Mediated contact interaction
During haptic interaction mediated by a tool the subject holds a tool in his hand and the haptic information regarding the interaction is practically contained in the motion and the forces that are acting on the tool.An ideal device able to perfectly reproduce the haptic interaction can be equipped with a toll moke-up that is a faithful reproduction of the real tool.The problem of perfectly reproducing the tactile and kinesthetic sensory input is then reduced to the problem of imposing to such moke-up the same static and dynamic behavior of the real tool.
For this kind of interaction kinesthetic haptic interface are theoretically very efficient but in many cases their mechanical performance in terms of frequency response, fidelity in force reproduction and force resolution are still insufficient for high fidelity reproduction of the real feelings.
A lot of research efforts has been applied for improving and optimizing kinesthetic haptic interfaces specifically developed for mediated tool interaction and many systems are already commercialized and available as an off the shelf product.
For example, in the field of surgical simulators for training of laparoscopic surgery, catheter insertion, phlebotomy, or, in the domain of Virtual Prototyping and Assembly, mediated contact device have been successfully employed.

Direct contact interaction
The analysis of the Direct Contact interaction requires looking with higher level of detail to the physics of the phenomena.The problem of perfectly reproducing the phenomena through artificial stimulus can be seen in a dual way.The first consists in defining the haptic interface as a device able to perfectly reproduce the shape and the spatial distributed mechanical impedance of the contact surface.Or, dually, the device can be seen as a generator of pressure field that perfectly reproduce the interaction pressure distribution that www.intechopen.comHaptics Rendering and Applications 50 is generated at the contact surface.These two definitions are dual and functionally equivalent so we will assume this second perspective for defining the ideal haptic interface as a device able to perfectly reproduce the forces of interaction between finger and object i.e. able to generate a continuously distributed pressure field over the contact surface: , , , , with: ∈

Where
, is a pressure field made of three components: , is the normal component and , and , the tangent components to the contact surface .Each component of such pressure distribution together with the contact surface changes independently with time over an infinite bandwidth with an infinite range of magnitude.Moreover the contact surface is also subject to large displacements and deformations that means the device should be able to exert such a pressure distribution in any wanted points of the space, e.g. when a soft object is grasped and lifted the contact area is subject to deformation during the prehension and to large displacement while lifting the object.The design of a system with such performances would require a tactile display with infinite resolution, infinite bandwidth and infinite force exertion capability.This is evidently far beyond what is currently feasible with present technologies.
The problem can be faced only through a simplification.A first reduction of complexity of the problem is achieved by reducing the requirements considering the limitations of the human tactile and kinesthetic senses.This means that the device has not to reproduce completely the physics of interaction but only the subset of components that can be perceived by the human tactile and kinesthetic senses i.e. components that are under perceptual thresholds in terms of intensity, spatial distribution and frequencies are neglected.
Unfortunately also under these hypotheses the problem remains technically unsolvable.Human tactile and kinesthetic senses are actually extremely efficient sensing systems (Jones & Lederman, 2004)  The ideal solution is then far from being implemented.However several simplified device have been realized and they are not able to simulate the whole interaction with fingers, but rather they are able to simulate a subset of features of the real interaction.
Basically these devices have been realized for purposely simulate a subset of the stimulus with fingertips that are strongly correlated with certain types of object properties or with certain scale of details.
Some devices are able to render roughness of object, other are able to render small details of the object shape, or global shape, or weight and friction etc.Of course one device can be able to render several of this characteristics but a device that is able to render the whole set of object properties has not been yet invented.
A rough classification of the type of device according to the type of details that are able to simulate can be done distinguishing the typical dimension and the scale that describe the geometry of the detail.
We can categorize the devices as: -Kinesthetic devices: This type of devices are responsible of providing the net interaction force.These device are definitely the most popular type of haptic interface.-Large Shape Displays: This type of device are able of generating the artificial stimulus that lead to the perception of curvature of surfaces.The perception of surface curvature with radius that are much greater that the typical dimension of the fingertip, is strongly correlated with the position and displacement of the contact area on our fingertips (Dostmohamed & Hayward, 2005).Large shape displays are thus device able to control the position of the contact surface around the user fingertip.Examples of portable large shape displays able to simulate also transition between non-contact to contact have been developed by Solazzi (Solazzi et al., 2010).-Small Shape Displays: Surface details that have dimensions in that are smaller than the fingertip dimensions and are perceived through a distributed deformation of the skin of our fingertips.Small shape displays are devices that are able to locally replicate the shape of the surface.These devices are usually made of an array of transducer able to deform locally the skin of the fingertip.Basically two tyoe of working principle can be employed: the normal indentation as described in (Wagner et al., 2004) or lateral deformation (Wang & Hayward, 2010).-Tactile Displays or Surface Properties Displays.This type of display are responsible of providing artificial stimulus that are related with very small details and textures whose dimensions are fraction of millimetres.Typically this kind of stimulus are distributed on the fingertip surface and they are characterized by a wide frequency content in the range of 10-500Hz.Such kind of the device are implemented through movable pinarray that can be actuated with very different technologies: piezo electric, electromagnetic, pneumatic and ultrasonic.
Of course research has been oriented also on other very specific device like (Bicchi et al., 2000) that is able to render the variation of the contact surface area on the fingertip.Actually the spreading of contact surface when contact occur has been demonstrated to be a fundamental input for perceiving the stiffness of deformable objects.The authors also integrated the device with a kinesthetic stage.
However we will mainly concentrate our analysis on the integration of tactile, shape and kinesthetic devices.

Mechanical architecture of integrated systems
As previously discussed the complexity of the general problem of creating the perfect illusion of touching a general object is still unsolved in the practice.However there are several device that are able to effectively reproduce a subset of fingertip physical interaction that generates artificial feeling of certain type of object properties.
A possible idea for implementing a more general and flexible interface consists in designing a device that integrates together devices conceived for different scales.
The mechanical architecture of this kind of integrated device can be visualized as in Fig. 1.
The system is composed by different layers:  This type of architecture can be found in many of the integrated haptic system that have been developed in (Frisoli et al., 2008), (Fontana et al., 2007), (Wagner et al., 2005) (Scilingo et al. 2010), (Sato et al.,2007).

General issues related with integration
Integration of haptic devices can generally raise several problems especially when both the tactile components and kinesthetic device are not conceived for the integration.Problems that may occur can be related to mechanics and electronics integration. Mechanics: -

Miniaturization of tactile device
The tactile device must be lightweight as thin as possible and at the same time it has to be strong and must guarantee a sufficient array spatial density When interaction requires more than one finger the encumbrance under the fingertip must be reduced in order to allow the fingers to get close together for grasping and manipulating virtual objects.

-Force transmission
The force that is exerted by the force feedback device to the user fingers have to be transmitted through a contact surface.In particular the way to transmit force has to take into account that the palmar side of the user finger surface is taken up by the tactile device.Such surface is than involved in the transmission of contact forces and the tactile array has to be capable of sustaining such efforts without compromising its functionalities.
-Force sensing: Several kinesthetic devices are equipped with force sensors that measure the interaction force at the level of the fingers of the user.The force signal is generally employed to compensate friction and inertia effects.The integration of a tactile feedback with the force sensor is a trivial problem since the vibration generated by the tactile transducer may introduce a force noise reading (Fontana et al., 2007).
Electronics and wiring -Wiring: Arrays with high density are desirable but as the number of transducers to be driven raises, the electrical cabling and the electronics get more and more complicated.-Electronics Processing electronics for controlling independently each actuator of a tactile array can be complex.For example a 5x5 array requires to independently control 25 current or voltage signals (depending from the actuation technology) over a bandwidth of 1-2 kHz.Moreover if we want to simplify the cabling this control electronics must should be placed as close as possible to the tactile display thus its dimension and weight must be reduced in order to minimize additional weight and inertia compensation forces for the kinesthetic stage.

Scenario dependency
The global problem of artificial creation of touch experience is too complex and a simplification can be made developing specific devices that are able to simulate only certain types of scenario.Basically, according to scenario, the device can be simplified in order to be optimized for a certain kind of application.Scenarios can be classified according to the complexity of the interaction starting from one finger interaction on a planar surface getting to spatial interaction with multiple fingers of the same hand: -One-Finger Planar: Haptic System for textile simulation 2D.This is the simplest scenario of integration of tactile and kinesthetic feedback.
The user can interact with an artificial surface moving on planar trajectories.According to the type of virtual surface, the speed and the forces exerted by the finger, the tactile display generates distributed stimulus.The kinaesthetic device can apply forces only on directions that are parallel to the plane and can simulate different macroscopic properties of the surface like friction or stiffness.Govindaraj in 2002 realize on planar system presenting a device able to simulate the interaction with a piece of fabric that is lying on a hard planar surface (Govindaraj et al., 2002).Another example of planar device has been realized by Yang (Yang & Zhang, 2009) that choose a cable-driven actuation system for the kinesthetic device.
In the case of planar devices the requirements for the integration of tactile and kinesthetic displays are less demanding.The weight and the encumbrance of the tactile display are less critical since there is no need of gravity compensation.Moreover the single finger interaction puts no strict limits to vertical encumbrance of the display.
-One Finger Spatial: One finger device has a superior level of complexity since the weights of the display has to be compensated by the kinaesthetic device.There are various implemented solutions that differ from the type of tactile display that is employed.
Wagner in (Wagner, 2005) proposed the integration of kinaesthetic feedback with a shape display.Kheddar introduced the concept of a multilevel device for the different spatial level of details (Kheddar, 2004).
-Multiple Finger Spatial: In the case of multi-finger interaction a major problem has to be considered.For allowing the simulation of grasping of reduced thickness the fingers have to be free to get close each other.This results in very though requirements for the thickness of the tactile display in the palmar area of the fingertip.The display has to be as flat as possible in order to allow the finger of user to get close together during grasps of small virtual objects.There are no experiments that exactly establish what is the exact tolerable thickness of a display for supporting multi-finger interaction, but simple tests can demonstrate that it must be kept in the range of few millimetres.
One possible way to get around this issue is to employ an electro-tactile display that can reach a very flat shape like in (Sato et al.,2007).However, electro-tactile displays show several disadvantages like large variation of perceived stimulus from subject to subject, dependence from wetness of the finger surface, employment of high voltage etc.Those unwanted feature made them hardly usable in the context of a virtual reality simulation.
Other attempts has been done for obtaining mechanical tactile displays with flat shape.
Benali-Khoudja in (Benali-Khoudja et al., 2003) developed a pin-array display based on a multilayer approach that has been conceived for integration with kinesthetic feedback.In the European Project HAPTEX a system composed by a desktop haptic device and a piezo-electric pin-array display have been adapted for the integration and tested (Fontana et al., 2007).
Recently a novel pin-array display based on a customized solenoid transducer has been purposely developed by authors for the integration with a hand exoskeleton (Salsedo et al.,2011).

Software for integrated haptic rendering
This section deals with the Computer Haptics aspects of the integrated force and tactile feedback, addressing, from one side, the physical and geometrical model of interaction, from the other, the computational challenges of the integrated rendering.The first part of this section is dedicated to a review of the models of contact, taking into account friction, soft finger representation and multiple finger interaction, both for kinesthetic and tactile feedback.The second part deals with architectural configurations of simulation and haptic rendering engines taking into account multi-rate and multi-resolution techniques.
The haptic rendering for object manipulation and exploration has the characteristic of combining the techniques from physics simulation with the principles of control and knowledge about human perception.Without losing generality haptic interaction scenarios can be represented by a physics simulation in which one or more virtual entities have the special role of exchanging haptic information with the user.These entities are called proxies.In some scenarios these virtual entities represent a user body part that directly interacts with other objects in the environment.A different type of representation is the one happening when the user interacts by means of a virtual tool as a stylus or a more complex tool.Examples of applications in the former type are exploration of surfaces, grasping, haptic rehabilitation and scenarios in which an avatar is employed.
Examples of the latter type are drilling, simulation and even driving simulation.Clearly, the type of proxy depends on the type of haptic interface and the specific attachment to the user body part.For direct contact, like virtual finger exploration, the robotic endeffector applies forces on the fingers of the user using a rigid attachment to the user, or, following an encountered haptic approach.Instead devices in which the user holds a stylus or a handle are more suited for tool based proxies.
The type of proxy has effects, for the purpose of our discussion, in terms of the geometry and physical modeling of contact having to simulate, in one case, the contact between the finger or a body part with virtual objects, while in the other the contact of a virtual rigid object that transmits the contact to the user.
The general aim of the proxy is to be respectful of the physical properties of the virtual world, meaning that its behavior will avoid penetration with other objects.There is anyway a caveat.In real world the user moves the haptic interface end-effector specifying in this way a requested virtual position for the proxy.This requested position and orientation is a virtual entity called haptic handle.When the proxy touches an object like a virtual wall, the haptic interface produces a force to represent the opposition of the wall to penetration but this force is not always able to prevent the motion of the user in real space into the space where the virtual object is located.The discrepancy between proxy position and haptic handle position is a key element of haptic rendering.The common to rendering approach is to simulate the presence of a virtual spring between the proxy and the handle with a factor proportional to the stiffness of the object in contact.This approach is called penalty based because force is proportional to the penalty of entering with the handle into the object.This spring can introduce some instability and for this reason it can be replaced by a damped spring.Please note how, in this discussion, we have not taken into account the effect of the force produced by the spring on the proxy.
Moreover, we have not made distinctions between impedance and admittance interfaces.In the formers the low level controller receives forces to be applied to the user at the endeffector, and in most of the cases such force is computed on the side of the computer performing simulation and collision.In the latters the low level controller specifies a position to be held with a given stiffness, up to the maximal force of the device.

Geometric and physical modeling of contact
Contact is a fundamental element of haptic interaction with virtual objects.At large it can be considered as the result of two modeling aspects, first the geometrical aspect then the physical one.The former describes the geometrical representation of the shape of the proxy and the objects touched, while the latter comprises the effects of deformation and material properties like friction.In terms of temporal scale it is possible to organize contact distinguishing between first impact and then continuous contact, having two different time scales and physical modeling.
At beginning of haptic rendering research, contact has been modeled by representing the proxy as a single point like in the reference god-object algorithm (Zilles & J. Salisbury, 1995) or as a rigid sphere (Ruspini et al., 1997).In both cases the interaction between the proxy and the objects is based on geometrical considerations with the objective of avoiding penetration.The proxy is mass-less, and it produces a force on the handle proportional to the material's stiffness without being affected by such force.This model is effective for rendering tool proxies that are rigid, with the advantage of high performance, requiring only point or sphere contact with object geometry.This model contains several simplifications that allow discussing the later improvements.First, both the proxy and the object are considered rigid in geometrical terms, while for realistic contact it will be necessary to represent soft fingers and deformable bodies.Second, the contact has no friction, an aspect that can be integrated with or without a complete physic simulation of the proxy.Third, the feedback has only a force component, while contact for grasping requires a torsion component.Fourth, contact is quasi static because there is low frequency contact transient.
There is anyway a general result that has been applied by later approaches with different geometry models and physical properties: the proxy is constrained to move over the surface of the object without penetration while the haptic handle pulls it around.The other general result is the importance of a collision detection method that allows to identify or to predict the intersection of the proxy with the object.For a review on the topic see (Teschner et al., 2005).As in this case it is not necessary that both proxy and object have the same geometrical representation, it is instead more usual the case of adopting an asymmetric scheme, knowing that the proxy object is under the control of the user.

Contact model
Contacts between objects can be represented with few entities that do not depend on the geometrical representation and the collision detection algorithm.For two contacting objects A and B we identify the two points P and Q that are computed as the innermost points of collision respectively on the two objects.The normal of contacting surfaces can be a general n vector not necessarily directed along QP, and assumed to be toward the inner part of A.
In addition, the velocities of the two points are provided, all in world coordinates.The Signorini law of contact expresses the contact of two generic objects by means of two functions: the first is the stress exerted on an object at a given point, and the second is the gap, or penetration depth, that is the projection of the QP vector on the normal.For the assumptions before a positive gap means that the two objects are penetrating.The Signorini model states that, when the contact is resolved, the gap is zero and the object B exerts a pressure toward the object A at point P, or the gap is negative and there is no pressure.
When pressure is exerted it can be represented by a force directed along the normal n.

57
In general, contact is characterized by an impulsive phase and later by a contact force.The impulsive phase takes into account Signorini law and restitution coefficient of the material, providing an impulsive force that separates the two objects.Later, the contact has to be taken into account during the evolution of the system.In literature this is addressed in two ways.The first way is a penalty function that applies a force directed along the contact direction and proportional to the computed penetration, expressed in terms of penetration depth or volume.Its simplicity is balanced by the fact of reduction of realism.The second way transforms the collision into a constraint equation that prevents the two objects to penetrate.This model is formulated as an additional equation in the Linear Complementarity Problem (LCP) that is used to describe the body dynamics.

Rigid objects
Objects for haptic interaction can be represented in several ways like implicit functions describing the surface (K Salisbury & Tar, 1997), volumetric objects based on voxels, or distance fields, but the most common are triangulated meshes that allow to rely on proven techniques from the fields of simulation and computer graphics.Due to the timing constraints of haptic rendering these representations can take advantage of boundary representation for collision detection or hierarchical representation of the object for reducing the computational effort.An interesting example is the technique of sensation preserving simplification by Otaduy (Otaduy & Lin, 2003) in which an object is represented by a hierarchy of variations of the object, each more detailed than the parent.Every level is represented by an aggregation of convex parts.In this approach the proxy is also an aggregate of convex parts, while collision detection is performed at a given level by comparing pairs of convex elements using the effective GJK algorithm (Gilbert, Johnson, & Keerthi, 1988).The sensation preservation is taken into account when the algorithm has to decide if it is necessary to descend into the hierarchy or to compute the force feedback at the current level.Surface properties of the pair are used to evaluate if the additional details can provide more sensation information or they are not influent.

Deformable objects
The interaction with deformable objects raises the computational requirements of haptic rendering and it requires adapting the deformable representations coming from other domains (Nealen, M"uller, Keiser, Boxerman, & Carlson, 2006) to the specific characteristics of haptics.The fact that the object is deformable means that it has smaller stiffness, reducing the required update rate.Several models have been explored in literature mostly based on Finite Element Models (FEM) depending on the linearization approach and the entity of supported deformations.
The key point of deformable haptics is the management of the potential collision.When the collision between the proxy and the object is identified at a given point in space and time, it is being handled by the collision response.The first stage of the response deals with handling the spatial overlapping that is typically managed by moving the deformable surface outside the proxy, as an extension of the impulsive phase discussed above.The second stage has the role of preventing future penetration and it can be solved using the general methods discussed above: penalty or motion constraints.In cloth simulation, for example, the constraint model is applied using filtering of the motion inside a Conjugate Gradient method (Baraff & Witkin, 1998).Duriez et al. (Duriez, Andriot, & Kheddar, 2004), instead, adopted a contact model that employs Signorini's law for quite convincing FEM model supporting contacts between deformable objects.In particular the contact is resolved by equating the gap with a combination of a post contact gap and the projection of the two displacements along the contact normal.This equation is then expressed in terms of the exchanged contact forces and resolved in the general deformable FEM framework.

Modeling friction
Friction is important for providing surface information during object exploration, and it is fundamental in the context of grasping.Friction is modeled by means of the Coulomb's friction law that is based on two states: stick and slip.In stick state the norm of the tangential component of the force between two objects is less than the product of the norm of the normal force by the static friction coefficient.In this case there is no relative motion.When the tangent component has a norm larger than the proportional normal force the slip occurs.In this case the effective tangential force is directed against relative motion and proportional to the normal component of the force by the dynamic friction coefficient.
In the basic case of mass-less rigid proxy, as in the god-object algorithm, Coulomb friction can be implemented by means of the friction cone algorithm (Melder & Harwin, 2004).In this case the force is obtained by a spring connected between proxy and handle.Without friction the force is directed along the normal of the surface based on the position of the proxy.In the friction cone model the stick state keeps the proxy in the previous position producing a tangential force up to the level of tangential force that makes the proxy enter the slip state.
The friction model in rigid body simulation can be performed with reduced precision by means of a sequential resolution of frictional contacts.In this case the friction force is applied as an external force that is added to other methods for contact resolution.More sophisticated models take into account the friction model in the integration step extending the LCP model.Specifically the friction cone is represented in the equation as a k-sided polygonal cone, at the cost of increased complexity of the system to be solved.Alternatively Durez et al. integrated friction cone in deformable haptics using Gauss-Seidel algorithm improving performance and precision of the friction model.

Soft fingers
Deformable bodies for contact allow us to introduce an important aspect for the rendering of direct interaction: the soft modeling of fingertips.Barbagli et.al (F Barbagli, A Frisoli, K Salisbury, & M Bergamasco, 2004) discussed fingertip contact deformation models and measured several in-vivo characteristics for comparing them with the models.In particular the indentation displacement, contact area and friction coefficient.These measurements allowed them to design a soft-finger 4 DOF proxy algorithm that took into account torsional friction based on applied pressure (Antonio Frisoli, Federico Barbagli, Ruffaldi, Massimo Bergamasco, & Ken Salisbury, 2006).The investigation on the model of human fingertip can be applied on the haptic rendering of soft fingers when they interact with rigid and deformable objects.In particular Ciocarlie et al. (Ciocarlie, Lackner, & Allen, 2007) presented a method for computing the soft finger contacts based on local geometries and object curvatures.

High frequency contact
The position control approach for rendering first contact is not able to represent high frequency transients that characterize stiff materials.A possible solution to this problem has been addressed by event-based haptics (Kuchenbecker, Fiene, & Niemeyer, 2005) in which the first instants of contact are performed in open loop by superimposing a previously recorded force profile.

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:  Simulation: performs a relatively slow simulation of the object in the environment.
Depending on the contact model it consider the proxy object as part of the simulation  Collision detection: evaluates the collision between entities in the environment, and in particular the proxy  Haptic Rendering: transforms the state and forces acting on the proxy into commands for the control of the kinesthetic part  Tactile Rendering: transforms the proxy into information for the tactile part 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, 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.

Integrated rendering
The integrated rendering deals with the combination of kinesthetic and tactile rendering based on the overall interaction of the proxy with the virtual environment.Such integration is realized by the communication between the kinesthetic haptic rendering module and the tactile rendering module running at different rates.In such communication the tactile rendering should receive sufficient information for actuating the haptic interface.Although there is not a reference approach for tactile devices, such information can be identified as a distribution of contact points over the fingertip expressing for each of them the amount of pressure and the relative velocity against the contacting object.The surface properties of the material together with this piece of information can be then used for generating the vibrations that allow simulating the tactile feedback.An example of approach is discussed in Böttcher et al. (Böttcher, D Allerkamp, & F. E. Wolter, 2010).

Case study: Haptic display of textile properties
In this section we discuss an integrated system for kinesthetic and tactile simulation applied to the interaction with virtual textiles.In the first part we introduce the scope of the system and its main characteristics.Then we proceed with the presentation of the integrated haptic interfaces.The section is closed by a discussion about the haptic rendering strategy that supports the discussed haptic interface, taking into account the models and the approaches presented in the previous sections.

Introduction
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 fluctuation of the tangential force due to friction.
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 two fingertips: the ones of the index and the thumb (see Fig. 2).
Fig. 2. Scenario of the interaction in which the user can use thumb and index finger for rubbing and stretching a standing piece of virtual textile.
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 independently actuated pins (Tactile Actuator, TA).
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 temporal sensory input patterns, (see Figure 2).

Kinesthetic and tactile stages conceived for integration
As briefly analyzed in the previous section multi-finger interaction is the most demanding and complex scenario.However it is also the most versatile application of haptics and the potential application fields are extremely wide.One of the most relevant aspects of the design of an integrated tactile/kinaesthetic display is to guarantee at the same time: -Reduced thickness of the display under the fingertip; -High spatial resolution of the display -Force transmission through the display must be considered.
In the present case study we introduce an example of design for integration where both tactile display and kinaesthetic devices were conceived for the integration.In particular a new transducer for the realization of a tactile display was purposely developed for the integration with an dual finger hand-exoskeleton.
The exoskeleton device is a dual arm serial manipulator able to deliver accurate forces in the range of 5N on the fingertip of the index and thumb fingers the device is shown in Fig. 4 and presented in detail in (Fontana et al., 2009).The architecture and the mechanical solutions for the exoskeleton have been studied in order to enhance performances and allow the hosting of a tactile display.The main characteristics can be summarized in table 1.The HE has been integrated in the work described in (Fontana et al., 2007) with tactile display based on piezo-electric beam that was purposely developed for the integration by Univeristy of Exeter.The system was integrated system was successfully tested on a scenario for virtual textile haptic simulation.
Despite of the effort applied for realizing a compact tactile display the system shows limitations in usability.Bulky shape of the display and wiring were determined by the basic principle.The piezo-beam actuators require a minimum length of few centimetres for each beam to guarantee a sufficient displacement of the contact pin.
A second tactile display has been studied focusing on compact electromagnetic actuators.
The system described in (Salsedo et al., 2011) is based on a solenoid transducer that was designed for optimal force-displacement versus encumbrance performances.Table 1.Mechanical performances of the hand-exoskelton The transducers were arranged in an array of 5x6 with a spacing of 2.4 mm with 4mm of thickness (Fig. 5).
Fig. 5. Scheme of the integration of tactile display with the hand exoskeleton

Electronics and control
One of the issues regarding the integration of a tactile array on a force feedback device is the bulkiness and disturbances introduced by the large number of connectors and signals that are needed for the independent control of each transducer of the tactile array.For getting around this issue the control electronic board should be integrated on the robotic structure as near as possible to the transducers.This solution is necessary for reducing the impact of the cabling on the robotic structure, but also it imposes constraints on the encumbrance of the electronic.For this reason specific customized solutions have to be adopted for the control of each transducer.Here we present a possible approach based on the strategy for controlling the status of the pixels in a LCD display called active matrix addressing.This strategy can be implemented in any n by m array of actuators but we show an implementation that is referred to the solenoid array described in the previous section.

Control of a single tactile transducer
For the sake of clarity we firstly present a method for the control of one transducer and extend the concept to multiple transducers in the following section.The scheme for controlling the current applied to a single transducer is shown in Fig. 6.The solution is based on current Pulse Width Modulation (PWM) technique.The represented circuit allows applying a pulsed current that can assume any wanted average value programmed by a PWM output of a microcontroller (named as uP in the figure).
Referring to the scheme in Fig. 6, the coil is schematized by an RL series circuit.The PWM output of the microcontroller modulates the current by mean of a the signal S through a MOSFET.When the MOSFET is turned on (ON phase), the current flows into the coil and also into the capacitor.When the MOSFET is turned off (OFF phase), the coil current is supplied by the capacitor.The capacitor is introduced in order to limit the current ripple.During the ON phase, the transfer function which expresses the coil current respect to the supply voltage is the following in which the typical MOSFET on-resistance is considered inside the term R 0 .The natural frequency, the damping ratio and the time constant are:

  
; A necessary condition for limiting the variation of current through the coil during a PWM cycle is to dimension the capacitor C and the resistor R 0 imposing a time constants of the OFF phase circuits larger enough than the period of the PWM cycle.
Assuming that this requirement is satisfied, it's possible to find a simplified relation between the coil current and the duty cycle of the PWM signal.Making the assumption that V C is a constant voltage applied to the capacitor, the current i C flowing into the capacitor during the ON phase is given by , 0 The supplied electrical charge can be written as:

    
During the OFF phase, the above quantities can be expressed as follow Indicating with α and T PWM respectively the duty cycle and the period of the PWM signal, When the frequency content of variation of the imposed average current is much lower than the PWM frequency we can assume that the charge during the two phases are identical.We can than calculate the duty cycle for obtaining an average coil current i L : Supposing that the supply voltage V CC is fixed, by the previous equation it's also possible to define the relation between the resistance R 0 and the maximum coil current i L,max : max ,max max 0 Where α max is the maximum duty cycle of the PWM signal.In particular, if α max = 1, we obtain

Design and simulation
For testing the current modulation performances of the proposed technique, the circuit shown in Fig. 6 has been simulated using Simulink (Matlab).The adopted system parameters for the simulation are reported in the same figure.The PWM switching frequency is fixed at 10kHz.A sine wave with frequency of 100Hz, amplitude of 0.6A and an offset of 0.3A is chosen as the average current to be imposed.The resistance R 0 has been dimensioned for obtaining the maximum current of 0.6A with a duty cycle α max = 1.In Fig. 7, the currents flowing through the coil by using three different capacitors of 100µF and 33µF are reported.

Control of the complete tactile array
The extension of the single actuation scheme proposed in the previous section to an m x n array of transducers imposes the use of a microcontroller able to generate m x n independent PWM signals and m x n wired connections.
In order to obtain simple hardware architecture, an actuation solution base on matrix addressing technique has been analyzed.In this case, only m + n control signals are required.The PWM signals are divided in into row signals and column signal.The row signals determine the row that is addressed: all of the m transducers on the selected row are addressed simultaneously.When a row is selected, each signal of the n columns should be individually controlled for modulating the respective coil current.
This type of addressing is similar to the strategy for controlling the status of the pixels in a LCD display called active matrix addressing.In Fig. 8, a scheme for controlling three rows and three columns of the tactile array is shown.For controlling the current of the generic element B ij (that indicates the ij-esim solenoid) it is sufficient to activate the row i by powering the gates of the associated miniature p-MOSFETs (digital output R i is set to logic 1) and to modulate the current by setting the correspondent duty cycle of the PWM signal which control the column j.The limitation of the maximum duty cycle for each coil (due to the limited period of time for the modulation) requires a higher impulse of the supplied current (approximately m time higher in comparison to the case of a single transducer).This produces higher disturbances in the coil current, as shown in 0 where the coil current are estimated as described in section 4.1 but limiting the maximum duty cycle to 0.2 (that is, considering the case of our array of 5 row).
According to a first set of preliminary tests, despite the fact that the current ripple seems to be quite large (Fig. 9), its effect on the output of the tactile transducer is not so relevant.
Probably the mass and the friction of the electromechanical solenoid acts as a filter for frequencies of 10kHz and the resulting displacement of the plunger is extremely reduced.

Haptic rendering
In this case study the target task is the simulation of interaction with a textile of a relatively small size, namely 20x20 cm, whose physical parameters have been taken from Kawabata measurements (Kawabata & Niwa, 1993).This textile is simulated by means of a multi-rate approach that decouples simulation, haptic rendering and tactile rendering.The discussion starts with the description of the simulation, then the haptic rendering and finally the integration part.The overall architecture of the system is shown in Fig. 10.

Simulation
The geometrical model adopted is based on FEM because they have been proved to be able to map and represent physical properties of material in a better way.In particular the textile is represented by thin triangular shells along the application to cloth simulation by Etzmuss (Etzmuss, Keckeisen, & Strasser, 2003).The physical forces employed are the stretch and bend as expressed by the elastic tensor.These forces are computed from the deformation of the triangle against its original condition but such computation is quite expensive.For this reason we employed co-rotated triangles in which the triangle deformation is expressed by a combination of a rotation and a deformation of the planar version of the triangle.The overall equation of motion of the nodes of the triangles takes into account these forces in addition to external forces like gravity.The node equation is then integrated using implicit Euler that provides more precise simulation at the cost of resolution of a system of equations.This system of equation is solved using a preconditioned conjugate gradient in which the preconditioning is the block diagonal.

Collision
The collision method employed is based on the contact between two spherical proxies of the subject fingers and the vertices of the textile.Each collision makes the textile instantly to move to avoid the collision and then the collision is implemented as a constraint that blocks the motion of the node toward the proxy sphere.This constraint on the node is taken into account in the system resolution by means of a modified preconditioned conjugate model using the filtering approach introduced by Baraff (Baraff & Witkin, 1998).This representation of constraints allows implementing also generic constrained nodes to hang the textile in a given position.

Proxy and haptic feedback
The haptic feedback module runs in a separate thread and it has two objectives: provide feedback of interaction among the finger proxies, and the interaction with the textiles.The finger feedback is provided by means of a damped virtual spring that is activated when the two proxies are below a given threshold.This spring is necessary to compensate the effective size of the gimble that surround the fingers.When each proxy sphere collides with the nodes of the textile it moves the node outside the sphere.The overall force on the proxy is made by two components one impulsive that accounts for the instantaneous motion of the textile, while the other is the pressure applied by the node on the sphere.This pressure of the node on the proxy can be measured as the action performed by the node over the constraint that is effectively the residual of the iterative resolution of the system.This approach is different with respect the previous work (Fontana et al., 2007) the haptic force was based on a penalty method.
The model described so far does not take into account two related aspects of the interaction: friction and textile compression.Without introducing textile compression friction emerges from the forces exchanged between the proxy and the nodes due to the work of the constraints of the contacting nodes.Effectively this model produces small exchanged forces due to the small work of these constraints.An additional contribution to the normal component is caused by the compression of the textile.The FEM model does not take into account these forces because it is a thin shell, but we can use them for the haptic computation.In particular when two proxies are both contacting the same region of the textile they can squeeze the material increasing the normal force on the contacting node, hence raising the effect of friction.The effect of the friction force on the nodes of the textile is integrated in the simulation with a stick slip model.A node subject to static friction is sticked to the surface of the sphere by means of a full constraint.

Tactile integration
The tactile rederer receives information from the contact response module, in particular the position of the contact points, relative velocities and pressures.This information is then used to control the tactile device, in which the 30 pins can be controlled using a single frequency of a sinusoid, whose intensity and phase can be changed for every pin.The rendering is performed by following the approach proposed in (D Allerkamp et al., 2007) and later integrated in (Fontana et al., 2007) although with a different device and with multiple degree of freedom in control.The idea is to start from a geometrical representation of the local feature of the textiles obtained from edge extraction of high resolution photos.Then the local height field is repeated over the textile surface and the position of the tactile actuators in real space is mapped to the surface of the textile.Taking into account the motion of the actuator over the surface the height local information is transformed into a profile of heights along the line of motion that can be transformed into a frequency signal.This signal is the one used for controlling the distinct pins.Differently from the cited work in which two frequencies where selected, this work uses a single sinusoidal frequency but different intensities and phases of the pins.
This model has to be extended for taking into account pressure over the textile and relative velocity.These two featured have indeed the effect of modifying the height of the surface and alter the frequencies of generated signal.Multiple contact points on the surface nearby the tactile actuator have the effect of cumulating the alteration on the surface due to pressure and velocity.

Implementation
The system discussed here has been implemented in C++ using the Eigen template library for optimized matrix manipulation and Qt for visualization and user interface.For exploiting parallel computing on modern hardware multiple versions of the core software have been implemented.In particular we started from a C++ version that has been extended with OpenMP commands for portable parallelization on the CPU although the advantage was quite limited.The reason is that the most computational intensive element is the conjugate method that, being iterative, it is inherently sequential.A second version has been created implementing the same functionalities in OpenCL for portable parallelism among CPU and GPU.This solution improved CPU performance while GPU one was reduced due to the many data structures of the topology.

Dimensions and performance
This system runs at a satisfactory rate with a configuration of 32 x 32 nodes in the FEM models obtaining around 200 frames per second on an Intel Core i750 3GHz with a tolerance of 0.05.These parameters have been selected for balancing frame-rate with precision of the system.Fig. 11 shows a snapshot of the execution of the execution of the system: the two fingers are the big spheres.On the top line there are the constrained vertices.The small light circles near the fingers are the contacting points.

Conclusions
Haptic interface technology has started in the late fifties with first teleoperation applications.
After sixty years of research there have been strong improvements each of the field of Machine Haptics, Computer Haptics and Human Haptics knowledge.The haptic systems that are now available have been employed in many fields like medicine, industry and education.However, while current technology has demonstrated to be quite effective for the simulation of Mediated Contact scenarios, there is still a lack in the simulation of Direct Contact.At the same time, the implementation of a system able to effectively simulated interaction with bare finger could be a real breakthrough.Many researches are currently working on integration of tactile and kinesthetic devices and rendering toward this objective.
In this chapter we introduced the main issues that concern with integration of tactile and kinesthetic feedback considering both Machine Haptics and Computer Haptics aspects.
An example of case study that includes the integration of a hand-exoskeleton with a pinarray device is presented.A possible approach for the real-time rendering of both tactile and kinesthetic components is shown.

Acknowledgments
Part of the work described in this chapter was partially funded by the RTD national project MANTES financed by the Regione Toscana.

-
A kinesthetic Device responsible of generating global force information.-A Large Shape Display able to simulate large curvature of objects.-A Small Shape display able to render details that generates variations in the pressure distribution on the fingertip.-Tactile Display or (Surface Properties Display) able to render the micro textures of the surface of the virtual object.

Fig. 3 .
Fig. 3. General architecture of the mechanical interface

Fig. 4 .
Fig.4.PERCRO Dual finger Exoskeleton with 3 DoF for each finger able to deliver 5N on the fingertip of index and thumb.The device was purposely developed for the haptic interaction with textiles and for the integration with a tactile display.

Fig. 6 .
Fig. 6.Scheme for the PWM control of a single tactile transducer During the OFF phase, the function of the coil current is given by transient behavior of the RLC-series circuit, characterized by the natural frequency, damping ratio and time constant

Fig. 8 .
Fig. 8. Scheme of the control electronics of a 3 x 3 array of pins.Referring to Figure 8, the algorithm for controlling the m+n digital signal in order to apply the required current values for the all transducers of the tactile array is the following: the rows are sequentially activated: indicating with T H the period of time required for a whole refresh of the array and with m the number of its rows, the selection time for each row is T R = T H /m; -when the row i is active, the digital signals of the columns are used for modulating the current of the coils which are placed on the row i: the period of time which is available for realizing the modulation is limited to T R ; this means that the maximum duty cycle indicate in formula (3) is equal to α max = 1/m.

Fig. 9 .
Fig. 9. Coil current of a matrix with 5 row and with capacitance C of 100µF (a) and 33µF (b).

Fig. 10 .
Fig. 10.Architecture of the software highlighting rates and components

Fig. 11 .
Fig. 11.Photo of the Haptic device and textile simulation