Few edits and new figure
authorThomas Pietrzak <thomas.pietrzak@gmail.com>
Fri, 21 May 2021 15:19:33 +0000 (17:19 +0200)
committerThomas Pietrzak <thomas.pietrzak@gmail.com>
Fri, 21 May 2021 15:19:33 +0000 (17:19 +0200)
tex/2-output.tex

index 377a3971d14590955398610f830bf331485f43bf..946030ca44ecaba12f51a756317321d69ea56446 100644 (file)
 Haptics is generally seen as an output modality, and most haptic systems are designed for providing \emph{haptic feedback}.
 Despite the usual user-centered approach in HCI, this is the typical convention in computer science and robotics, with a system-centered point of view.
 This is not the case for all scientific disciplines.
-For example, I had misunderstandings with Ludovic Potier when he arrived as a Postdoc in my team.
+For example, I had misunderstandings with Ludovic Potier when he joined our team as a Postdoc researcher.
 He has a background in cognitive sciences, and what he refers to as input and output is the opposite of the convention I use.
 This chapter will cover haptics as a way to stimulate the sense of touch.
 
 The sense of touch is the primary sense of newborns.
 Their vision takes months just to perceive shapes and colors.
 Therefore they start exploring the world by touching with their hands and mouth.
-Several years are necessary to reach \fixme{optimal} visual accuracy.
+Several years are necessary to reach their adult visual accuracy.
 However, children quickly use vision as their primary source of information.
 \fixme{trouver ref pour tout ça}
 
+There is a large diversity of haptic sensations and perceptions.
+When I use vocabulary related to haptic, I use the definitions Oakley \etal wrote in this article~\cite{oakley00}.
+As far as I know, this was the first time these terms were clearly defined in the Human-Computer Interaction community.
+Following these definitions, \defword{haptics} is a general term that refers to anything related to the sense of touch.
+\defword{Kinesthetic} refers to the feeling of motion, resulting from sensations produced in muscles, tendons, and joints.
+\defword{Force Feedback} is about the “mechanical production of information sensed by the human kinesthetic system”.
+\defword{Tactile} relates to pressure sensations sensed by the skin.
+
+%Haptic: Relating to the sense of touch.
+%Proprioceptive: Relating to sensory information about the state of the body (including cutaneous, kinesthetic, and vestibular sensations).
+%Vestibular: Pertaining to the perception of head position, acceleration, and deceleration.
+%Kinesthetic: Meaning the feeling of motion. Relating to sensations originating in 
+%Cutaneous: Pertaining to the skin itself or the skin as a sense organ. Includes sensation of pressure, temperature, and pain.
+%Tactile: Pertaining to the cutaneous sense but more specifically the sensation of pressure rather than temperature or pain.
+%Force Feedback: Relating to the mechanical production of information sensed by the human kinesthetic system.
 
 \cite{maclean09}
 
-defs \cite{oakley00}
-
 
 % Hence, haptics is generally not the primary focus for the design of user interfaces.
 % The focus is generally on the graphics, and sound to some extent.
@@ -58,7 +71,7 @@ The design of haptic systems requires joint efforts between specialists in sever
 This pipeline has two steps on the system side and two steps on the human side.
 Both the system and human have a step in the physical world and one outside the physical world.
 The objective of this pipeline is to transmit information to users through their sense of touch.
-This is indeed a simplified pipeline, each step being studied by several research communities.
+This is indeed a simplified pipeline, which nevertheless shows that several scientific disciplines are interested in this topic. %, and each step is essentially studied by several distinct research communities.
 While each step of the pipeline is essentially studied by one or two scientific fields, the role of Human-Computer Interaction is to connect them in a meaningful and useful way for people.
 
 \begin{figure}[htb]
@@ -101,12 +114,14 @@ While each step of the pipeline is essentially studied by one or two scientific
 \end{figure}
 
 \paragraph{Haptic systems}
-The pipeline starts with the software part of the system, which uses the data associated with this information to compute a command (also called a signal).
+The objective of the pipeline is to render virtual objects or pieces of information into haptic sensations.
+The pipeline starts with the software part of the system, which uses the data associated with this information to compute a command, or a signal.
 This is the system side, out of the physical world.
 Here we consider, relatively speaking, that the software is the computer's mind.
 These commands activate various kinds of actuators to produce a mechanical effect.
+Since there is a dichotomy between kinesthetic and tactile sensation, there is also a dichotomy between force-feedback and tactile systems.
 
-There are two major types of control for force-feedback systems.
+Force-feedback systems typically use one of two major types of controls.
 The usual way to control a force-feedback system is to measure motion and compute a force, this is called \defword{impedance control}~\cite{ruspini97-2}.
 This is the most common technique, mostly because there are many easy and cheap ways to measure motion.
 A function that computes a force depending on movement is called a force model.
@@ -117,19 +132,19 @@ It is also worth mentioning Electrical Muscular Stimulation (EMS) which directly
 
 There are many ways to compute tactile signals, especially due to the diversity of actuation mechanisms and associated effects.
 Vibrotactile feedback is certainly the most common type of haptic feedback, because of its low price and simplicity.
-\defword{Eccentric Rotating Mass} (ERM) actuators are widely used.
+\defword{Eccentric Rotating Mass} (ERM) actuators are widely used for these specific reasons.
 The mechanical effect results from the centrifugal force of the rotating mass.
 There is a delay before the motor spins fast enough, and inertia when the signal stops.
 Therefore there is no easy way to control both the frequency and amplitude of the produced mechanical effect with these actuators.
-\defword{Voice coil actuators} actuators work similarly to speakers, and they can actually be controlled with sound systems.
+\defword{Voice coil} actuators actuators work similarly to speakers, and they can actually be controlled with sound systems.
 The only difference is the frequency range, which is 1-1000Hz, compared to 200-20000Hz for sound.
-They produce vibration with a coil and a permanent magnet~\cite{mortimer07,yao10}.
+They produce vibrations with a coil and a permanent magnet~\cite{mortimer07,yao10}.
 The precision of these actuators enables fine control of both frequency and amplitude.
 Such precision is either used for encoding abstract messages called Tactons~\cite{brewster04,hoggan07}, or reproduce tactile effects such as button clicks~\cite{nashel03,lylykangas11}.
 
 \defword{Pin arrays} are essentially used to render patterns~\cite{pietrzak06,pietrzak09}.
 Each pin is controlled individually, either up or down.
-Variable friction technologies change the perceived friction of a surface.
+\defword{Variable friction} technologies change the perceived friction of a surface.
 Two methods can produce this effect: \defword{electro-vibration} and \defword{squeeze-film effect}.
 The electro-vibration mechanism uses a high voltage (hundreds to thousand volts) to stick the user onto the interactive surface~\cite{strong70}.
 The signal is a sinusoid (even though other shapes are possible), with controllable amplitude and frequency~\cite{bau10}.
@@ -137,9 +152,9 @@ The squeeze film effect uses a high-frequency signal (tens of thousand Hertz) th
 This vibration creates an air cushion between the finger and the surface so that this surface feels smoother~\cite{biet07}.
 
 Finally, there are non-contact tactile technologies that transmit tactile feedback through air.
-The first technique uses an array of ultrasound actuators.
+One technique uses an array of ultrasound actuators.
 The interferences of ultrasound waves create a stress field that triggers the sense of touch~\cite{hoshi10,carter13}
-The second technique uses air vortexes~\cite{guptas13,sodhi13}.
+Another technique uses air vortexes~\cite{guptas13,sodhi13}.
 The displacement of a large membrane inside a box moves the air inside, which can escape trough a small circular hole.
 The vortex is created with the pressure, and moves forward on several meters before dissipating.
 
@@ -173,13 +188,91 @@ For example the funneling illusion, also called phantom sensations enables to cr
 To do so, one must place two actuators, one at each end.
 The amplitude of the signal on both actuators is a ratio corresponding to the desired position of the virtual vibration.
 For example let $A$ be the maximum amplitude and two actuators $a$ and $b$ placed $4cm$ apart.
-If the amplitude of actuator $a$ is $\frac{A}{4}$ and the amplitude of actuator $b$ is $\frac{3A}{4}$, then the users feel a vibration between $a$ and $b$, $1cm$ away from $a$ and $3cm$ away from $b$.
+If the amplitude of actuator $a$ is $A(a) = \frac{A}{4}$ and the amplitude of actuator $b$ is $A(b) = \frac{3A}{4}$, then the users feel a vibration between $a$ and $b$, $1cm$ away from $a$ and $3cm$ away from $b$.
 Tactile saltation, also called the cutaneous rabbit illusion, gives the illusion of a sequence of equally spaced vibration~\cite{geldard72}.
 The tactile stimulation however is a repeated vibration on a smaller subset of locations.
-For example with three actuators $a$, $b$ and $c$ equally spaced on a straight line, the stimulation is three vibrations on $a$, three on $b$b, and three on $c$.
+For example with three actuators $a$, $b$ and $c$ equally spaced on a straight line, the stimulation is three vibrations on $a$, three on $b$, and three on $c$.
 The person feels nine equally spaced stimulations between $a$ and $c$.
 Israr \etal combined both funneling and saltation to produce 2D tactile motions, not only in straight line but also on curves~\cite{israr11}.
 
+\begin{figure}[htb]
+\definecolor{cellred}{rgb}    {0.98,0.17,0.15}
+\definecolor{virt}{rgb}    {0.98,0.77,0.75}
+\definecolor{cellblue}{rgb}    {0.17,0.60,0.99}
+
+\newcommand{\actuator}[3]{\node[x=1mm,y=1mm, fill=#3, text=white, circle, minimum size=1cm] at (#1) {#2};}
+\newcommand{\vibrdot}[2]{\node[x=1mm,y=1mm, fill=#2, circle, minimum size=1mm] at (#1) {};}
+\begin{tikzpicture}
+  \draw[x=1mm,y=1mm, loosely dotted] (0,20) grid (80,30);
+  \actuator{0,25}{a}{cellred}
+  \actuator{80,25}{b}{cellred}
+  \actuator{20,25}{v}{virt}
+%  \node[x=1mm,y=1mm, fill=blue, draw, circle, minimum size=1cm] at
+    %(8,0) {b};
+  \draw[x=1mm,y=1mm, <->]
+    (0,15) -- (0,0) -- (85,0) node [below] {$pos.$};
+  \draw[x=1mm,y=1mm]
+    (0,10) -- (80,0);
+  \draw[x=1mm,y=1mm]
+    (0,0)  -- (80,10);
+  \node[x=1mm,y=1mm, anchor=south, rotate=90] () at (0,13){$amp.$};
+%  \draw[x=1mm,y=1mm]
+%    (0,10) -- (40,5) node [midway, above] {$A_a$} -- (80,0);
+%  \draw[x=1mm,y=1mm]
+%    (0,0) -- (40,5) -- (80,10) node [midway, above] {$A_b$};
+  \draw[x=1mm,y=1mm, thick, draw=cellred]
+    (20,0) -- (20,7.5) -- (0,7.5) node [left] {$A_a$};
+  \draw[x=1mm,y=1mm, thick, draw=cellred]
+    (20,0) -- (20,2.5) -- (0,2.5) node [left] {$A_b$};
+
+  \node[x=1mm,y=1mm, anchor=center] () at (40,-5){Funneling or Phantom illusion};
+
+%  \draw[x=1mm,y=0.5mm, xshift=85mm, ultra thick]
+
+  \draw[x=1mm,y=1mm, step=8, loosely dotted, yshift=18mm] (96,0) grid (160,8);
+  \node[x=1mm,y=1mm, anchor=south, rotate=90] () at (96,28){$pos.$};
+  \draw[x=1mm,y=1mm, <->]
+    (96,30) -- (96,18) -- (160,18) node [below] {$time$};
+  \node[x=1mm,y=1mm, anchor=west] () at (98,30){Sensation};
+
+  \draw[x=1mm,y=1mm, step=8, loosely dotted] (96,0) grid (160,8);
+  \node[x=1mm,y=1mm, anchor=south, rotate=90] () at (96,10){$pos.$};
+  \draw[x=1mm,y=1mm, <->]
+    (96,12) -- (96,0) -- (160,0) node [below] {$time$};
+  \node[x=1mm,y=1mm, anchor=west] () at (98,12){Stimulation};
+
+
+  \vibrdot{96,18}{virt}
+  \vibrdot{104,19}{virt}
+  \vibrdot{112,20}{virt}
+  \vibrdot{120,21}{virt}
+  \vibrdot{128,22}{virt}
+  \vibrdot{136,23}{virt}
+  \vibrdot{144,24}{virt}
+  \vibrdot{152,25}{virt}
+  \vibrdot{160,26}{virt}
+
+  \vibrdot{96,0}{cellred}
+  \vibrdot{104,0}{cellred}
+  \vibrdot{112,0}{cellred}
+  \vibrdot{120,4}{cellred}
+  \vibrdot{128,4}{cellred}
+  \vibrdot{136,4}{cellred}
+  \vibrdot{144,8}{cellred}
+  \vibrdot{152,8}{cellred}
+  \vibrdot{160,8}{cellred}
+
+  \node[x=1mm,y=1mm, anchor=center] () at (127.5,-5){Saltation or Cutaneous rabbit illusion};
+
+%  \actuator{96,25}{a}{cellred}
+%  \actuator{128,25}{b}{cellred}
+%  \actuator{160,25}{c}{cellred}
+
+\end{tikzpicture}
+\caption[Tactile illusions: funneling and saltation]{Examples of tactile illusions. Left: funneling, right: saltation.}
+\label{fig:illusions}
+\end{figure}
+
 \section{Research questions}
 
 The haptic rendering pipeline illustrates the multidisciplinary aspect of such research.
@@ -207,7 +300,7 @@ Hence the command for a vibrotactile actuator is an electrical signal made of th
     (0,0) sin (3,10) cos (6,0) sin (9,-10) cos
     (12,0) sin (15,10) cos (18,0) sin (21,-10) cos
     (24,0);
-  \node[x=1mm,y=1mm, anchor=center] () at (20,-13){Frequency};
+  \node[x=1mm,y=1mm, anchor=center] () at (20,-9){Frequency};
 
   \draw[x=1mm,y=0.5mm, xshift=55mm, ultra thick]
     (0,0) sin (1,10) cos (2,0) sin (3,-10) cos
@@ -216,13 +309,13 @@ Hence the command for a vibrotactile actuator is an electrical signal made of th
     (12,0);
   \draw[x=1mm,y=0.5mm, ultra thick]
     (70,0) sin (71,5) cos (72,0) sin (73,-5) cos (74,0) sin (75,5) cos (76,0) sin (77,-5) cos (78,0) sin (79,5) cos (80,0) sin (81,-5) cos (82,0);
-  \node[x=1mm,y=1mm, anchor=center] () at (68,-13){Amplitude};
+  \node[x=1mm,y=1mm, anchor=center] () at (68,-9){Amplitude};
 
   \draw[x=1mm,y=0.5mm, ultra thick]
     (99,0) sin (100,10) cos (101,0) sin (102,-10) cos (103,0) sin (104,10) cos (105,0) sin (106,-10) cos (107,0);
   \draw[x=1mm,y=0.5mm, ultra thick]
     (110,0) sin (111,10) cos (112,0) sin (113,-10) cos (114,0) sin (115,10) cos (116,0) sin (117,-10) cos (118,0) sin (119,10) cos (120,0) sin (121,-10) cos (122,0) sin (123,10) cos (124,0) sin (125,-10) cos (126,0);
-  \node[x=1mm,y=1mm, anchor=center] () at (112,-13){Duration};
+  \node[x=1mm,y=1mm, anchor=center] () at (112,-9){Duration};
 
   \draw[x=1mm,y=0.5mm, xshift=143mm, ultra thick]
     (0,0) sin (1,10) cos (2,0) sin (3,-10) cos
@@ -234,7 +327,7 @@ Hence the command for a vibrotactile actuator is an electrical signal made of th
     (4,-10) -- (4,10) -- (6,10) -- (6,-10) --
     (8,-10) -- (8,10) -- (10,10) -- (10,-10) --
     (12,-10) -- (12,0);
-  \node[x=1mm,y=1mm, anchor=center] () at (156,-13){Shape};
+  \node[x=1mm,y=1mm, anchor=center] () at (156,-9){Shape};
 \end{tikzpicture}
 \caption{Four parameters of the vibrotactile output vocabulary: frequency, amplitude, duration and shape.}
 \label{fig:lexical}
@@ -294,10 +387,15 @@ They also use sequences of vibrations to form rhythms.
 
 The \emph{semantic level} represents the mapping between the haptic effect and its associated meaning.
 For example if we create Tactons for messaging system alerts, we can encode the caller ID with a rhythm, and the urgency with roughness.
-
+The combination of both parameters enables encoding every level of urgency for every caller ID.
 
 One may think that because we are computer scientists, we only have to design and implement interaction techniques.
-Technical and user issues, evaluation…
+However this design not only depends on technological factors, but also human factors.
+Moreover, the diversity of haptic sensations and technologies to produce them multiplies the research necessary to create such interaction techniques.
+Typically when a new haptic technology emerges, their designers need information about their specifications: size of actuators, voltage, required amplitude, resonant frequency, maximum force (continuous and peak), etc.
+Therefore we perform human factors studies with prototypes
+
+%Technical and user issues, evaluation…
 
 %The software controller must encode information in an appropriate way.
 %Information can get lost