Haptics - The technology of touch.

 

Vad som menas med haptics är att man kan sätta sig ner vid en dator och "känna på" ett objekt som är datorgenererat, d.v.s. som inte existerar i den fysiska världen. Det kan röra sig om enkel kontakt, som att trycka på en knapp, eller komplexa situationer som att genomföra ett kirurgiskt ingrepp. Haptics betyder hur människan använder sina händer till att känna på och manipulera objekt. Ett haptiskt gränssnitt är ett verktyg som registrerar och mäter händernas rörelser och som stimulerar känselsensorerna i händerna.

Enligt Nationalencyklopedin definieras haptisk som "egenskapen hos en form att framstå särskilt tydlig för beröringssinnet, i motsats till optisk"

 

Historia, bakgrund.

De haptiska gränssnittens födelse ligger inte utvecklingen av 3D-grafik och virtuella världar utan i behovet att inte behöva hantera farliga material och utföra farliga operationer med händerna. Man skapade robotar med armar och händer som efterliknade människans, som hanterade radioaktiva ämnen eller farliga kemikalier. De första haptiska gränssnitten fanns alltså innan man hade datakraft att realisera 3D-grafik i realtid. Dessa var i och för sig enkla, rent mekaniska verktyg. Efter det kunde man också eliminera direktkontakten mellan verktyget och handhavaren. Med hjälp av motorer och elektriska sensorer kunde man koppla samman handens rörelser med verktyget. Motorerna gav alltså verktyget kraft att utföra den specifika uppgiften samtidigt som de, med hjälp av. elektriska signaler försåg användaren med en känsla av utförandet av uppgiften.

Därefter gick man vidare med tanken att om ett dataprogram kunde generera de elektroniska signalerna kunde man få användarna att känna det som om de utförde en operation på riktig. Man kunde nu framkalla känslan av att man verkligen rörde vid ett objekt tack vare datorstyrda elektromekaniska verktyg.

 

Virtuella världar.

När man fick datakraft att skapa tredimensionella virtuella världar, började man även att implementera det haptiska verktygen med de 3D-grafiken föra att öka intrycket av äkthet. Även inom haptiken och virtuell verklighet pratar man om "high fidelity". Man tillverkade handskar utrustade med känselsensorer kunde man med handrörelser utföra rörelser och handlingar i en virtuell verklighet, men utan mekanik kändes det som om man bara viftade med händerna i luften. Man saknade alltså fortfarande återkopplingen av känslan av kontakt med ett objekt.

Ett genombrott i utvecklingen fick man 1993 på Massachusetts Institute of Technology laboratorium för Artificiell Intelligens då man konstruerade ett verktyg som gav användaren en mycket precis stimulering av känselsinnet. Man döpte verktyget till "Phantom Haptic Interface". Phantom betyder Personal HAptic iNTerface Mechanism. Det ser ut ungefär som en vanlig skrivbordslampa utrustad med något som kan liknas med en fingerborg, som man placerar fingret i. Med hjälp av tre motorer och tre sensorer hade man skapat ett verktyg som gav en verklighetstrogen fingertoppskänsla vid kontakt med datorgenererade objekt. Oavsett om det handlar om ett enkelt objekt som en sfär eller en komplicerad rymdfarkost så kan man med Phantom känna och utforska dess yta med fingertoppen. Känslan av kontakt är så stark med Phantom att de som provar för första gången ofta blundar och bara "känner" de nya formerna. Man kan både trycka eller slå till objekt och verkligen känna föremålet man slår till. Vid en demonstration av Phantom fick läkare sticka in en virtuell nål i en virtuell mänsklig hjärna. Reaktionerna från läkarna var att nålen kändes lite slö, m.a.o. var de från början mer bekymrade om procedurens detaljer än om det faktum att det i själva verket rörde sig om en simulering av proceduren.

Vidare kan man nämna att en forskare av Phantom skrev ett program som simulerade en handled av en patient och med hjälp av Phantom kunde man känna patientens hud och dess underliggande senor. Om man kände på rätt ställe kunde man även känna patientens puls, vid testet verkade dock patienten ha en ovanligt hög puls vilket var resultatet av att datorn som man testade programmet på hade en högre klockfrekvens än datorn som programmet var utvecklat på.

två st phantoms tillsmammans

 

Varför är Phantom ett så bra verktyg?

Fram tills nyligen har vårt enda sätt att interagera med datorer skett genom stimuli för våra ögon och/eller öron. Man kan säga att vi har haft ett audiovisuellt gränssnitt. I vår fysiska verklighet är dock känselsinnet en ytterst viktig del av hur vi upplever och tar till oss information om och från vår omvärld. I vissa fall är känsel till och med det mest dominanta sinnet för vår upplevelse. Att integrera känselsinnet i vår kontakt skulle definitivt öka bandbredden för informations utbytet mellan användare och maskin.

Man kan visa att ju fler sinnet man tvingas använda vid informationsutbyte desto lättare och snabbare tar man till sig informationen. Dessutom är det lättare att memorera om fler sinnen är inblandade, d.v.s. att om man "gör" något istället för att bara "se och höra" vad det är tänkt att man skall göra. Till exempel skulle det vara mycket lättare att ta till sig denna information om man verkligen fick prova Phantom istället för att bara läsa om den och se på bilder hur den ser ut och fungerar.

Fler fördelar med Phantom är enkelheten i handhavandet och att är teknologin är så intuitiv. Den som använder Pantom behöver enbart sticka in sitt finger i "fingerborgen" och börja utföra operationer och/eller styra applikationer. Mycket av enkelheten med Phantom ligger i att man insåg betydelsen av att förenkla systemet genom att minska antalet frihetsgrader i output läget till tre. Man upptäckte exempelvis att de rörelser man utför med fingertoppen till stor del handlar om rörelser i xyz-planet och i och med detta kunde man rationalisera bort rotationsrörelsen. Rotation med fingertoppen använder man sig i princip enbart av om man skruvar in en skruv med nageln. Den enkla designen som kom med reduceringen av antalet frihetsgrader resulterade även i att äktheten ökade så att man för första gången kan prata om "high fidelity" inom haptisk återkoppling.

Vidare ger denna förenkling att det är relativt enkelt att programmera mjukvaran för tillämpningar och applikationer för Phantom. Detta ger också en möjlighet att koppla systemet till vanliga standard datorer. Idag finns Phantom för PC:s körda med NT samt för Silicon Graphics maskiner men man kan enkelt utveckla systemet för andra plattformar.

En anledningen till att ett haptiskt gränssnitt som Phantom har tagit så lång tid att utveckla är dels att upplevelsen av känsel är mycket svår att simulera i en dator. Till skillnad från traditionella perifera enheter som skärm, tangentbord och även mus så måste en enhet som tar hand om vår känsel fungera som input och output samtidigt. En bildskärm fungerar ju enbart som output och mus och tangentbord som input, knappast som både och samtidigt.

 

Designen av Phantom

I Phantom systemet ingår tre delar: själva armen, en förstärkarbox och ett interfacekort till datorn. Dessutom behövs alltså en ganska kraftfull dator. Enligt specifikationerna från Sensable Technologies, företaget som idag tillverkar och saluför Phantom, kan man köra den på en Pentium 166 MHz processor men för att det verkligen skall fungera tillfredsställande så bör man nog ha en Pentium II processor som minst kör i 200 MHz. Vad som är unikt med designen av Phantom är egentligen själva armen. När man har placerat fingret i hylsan, eller fingerborgen, och rör sig registreras rörelserna av tre optiska pulsgivare vid armens fäste. Dessa givarsignaler skickas omedelbart till dator genom instickskortet. På kortet omvandlas pulserna till en absolut vinkel. Programmet man kör läser i sin tur av vinklarna som instickskortet genererar och omvandlar dessa till rätvinkliga koordinater i xyz-planet.

Utifrån denna information om var användaren, och dennes fingertopp, befinner sig i rummet räknar programmet den kraft som Phantom måste skapa för användaren att känna. Kraften i sinn tur levereras av tre likströmsmotorer.
I förstärkarlådan finns en analog förstärkare samt en del skyddskretsar.

Armen till Phantom är tillverkad av olika material beroende på vilken storlek man har av Phantom. Den mindre modellerna har en arm konstruerad i aluminium medan den största modellens arm är av kolfiberarmerad plast.

Idag finns det tre kommersiella versioner av Phantom, tre olika storlekar. Den minsta heter 1.0, mellan storleken heter 1.5 och den största heter 3.0. Den minsta versionen har en arbetsräckvidd på 12.7 x 17.8 x 25.4 cm, vilket ungefär motsvarar rörelser med underarmen runt handleden. Mellan versionens räckvidd är 19.1 x 26.7 x 38.1 cm, som motsvarar rörelser med underarmen runt armbågen och version 3.0 har en räckvidd på 40.6 x 58.4 x 83.8 cm, avstånd som approximativt kan liknas vid armrörelser runt axeln. Det största systemet är också det bäst utvecklade med avseende på kraft och liten friktion och bibehållen jämvikt.

 

Verktyg för produktion av program till Phantom.

Från Sensable Technologies finns även programutvecklings paketet GHOST. GHOST, som står för General Haptics Open Software Toolkit, är ett objektorienterat programbibliotek som skall fungera som stöd för programutveckling för Phantom. GHOST stöder alla typer av Phantom, både nya och gamla versioner samt alla olika storlekar av systemet. Det faktum att GHOST fungerar för alla olika storlekar gör att man måste vara vaksam när det gäller sin programmering, ty objekten man skapar har i normala fall konstant storlek.
Med GHOST representeras den haptiska miljön som en hierarkisk uppsättning av geometriska objekt och rumsliga, spatiala effekter. När man programmerar med hjälp av. GHOST som kan man tack vare detta koncentrera sig på en "haptisk scen", de objekt som skall finnas på den scenen, samt deras statiska och dynamiska egenskaper.

Vidare finns det en del globala haptiska effekter som t.ex. vibration. Dessa effekter är helt oberoende av GHOST objekten. De specifika kraftberäkningarna sköt alltså av GHOST, d.v.s. att programmeraren behöver ta hänsyn till detta.
Vad man gör med GHOST är att skapa en haptisk miljö genom att specificera en haptisk nodgraf. GHOST bildar alltså en trädstruktur med själva scenen som rot, med grennoderna grupperar man objekt och anger t.ex. rotation och skalning. Löven, eller ändnoderna; utgör det själva geometriska objektet. Dessa objekt har orientering och skala relativt sin grennod. Man kan m.a.o. säga att nodgrafen beskriver programmets haptiska egenskaper.

När man använder ett haptiskt program för Phantom skapat i GHOST och för in sitt finger i hylsan så är det alltså användarens fingertopps läge som beskriver positionens i det haptiska rummet. Därefter beräknar GHOST automatiskt fram det krafter som skall påverka användaren i just den punkten som denne befinner sig i. Krafterna i sin tur räknas om till moment för de tre motorerna som finns i Phantom.

Ytterligare en sak som GHOST gör är att starta och styra reglerprocessen. Denna process måste exekvera med en helt annan frekvens än huvudprogrammet för att den haptiska simuleringen skall fungera. För att få "high fidelity" i simuleringen så måste reglerprocessen hålla en konstant frekvens på minst 1 KHz.

GHOST kan inte själv generera någon grafik heller, men man har implementerat en "callback"-funktion som gör att man kan exempelvis generera grafiken i OpenGL och få den synkroniserad med den haptiska miljön. I och med detta kan man ibland bli tvungen att spara in på grafiken om man inte har en tillräckligt kraftfull dator som klarar av att exekvera den haptiska reglerprocessen så snabbt som den kräver och som samtidigt har kraft "över" att generera grafik.

 

Framtiden, vad kan man använda ett haptiskt gränssnitt till.

Det första man tänker på när man ser till framtida användningsområden till ett haptiskt gränssnitt är förstås en utveckling av dagens vanliga grafiska gränssnitt. Att i framtiden kunna ha ett tredimensionellt operativsystem med "riktiga" knappar som man kan trycka på och samtidigt känna att man verkligen trycker på dem skulle skapa en helt ny mening och effektivitet. Man skulle till att börja med kunna göra gränssnittet mer intuitivt och där med mer lätt använt för ovana användare.

Även spelindustrin skulle kunna dra en otrolig nytta av en utveckling av användandet av känseln vid interaktion med datorn. Spelen skulle få en helt ny dimension, inte bara bildligt talat, och därmed bli alltmer verklighetstrogna.
Ytterligare ett användningsområde för det haptiska gränssnittet är simulatorer för träning av känsliga och farliga operationer. Flygindustrin använder sig redan av simulatorer för att träna piloter, om man kan addera användningen och stimuleringen av känsel sinnet vid dessa simulatorer verkar ju självklart till att piloternas träning blir effektivare. En annan bransch som redan använder sig av simulatorer vid utbildning är medicin. Man tränar alltså kirurger att göra ingrepp som, om de tränade på riktiga patienter, skulle sväva i livsfara om läkaren i fråga är ovan och inte redan kan det han/hon skall utföra.

De två senaste nämnda användningsområdena är de som självklart kan och kommer att föra utvecklingen framåt ytterligare ett tag. Dessa branscher är ju inte lika kostnadskänsliga som hemmadator industrin. Innan en ordentlig spridning av haptiska gränssnitt för hemmamarknaden måste priserna sjunka väsentlig medan kvaliteten ändå måste vara oerhört hög. Detta med tanke på vilka krav som hemmamarknaden redan ställer på datakraft och kvalitet på representationen av ljud och grafik.

Överhuvudtaget kan man säga att haptiska gränssnitt kan komma till användning i alla sammanhang där man kan tänka sig en tredimensionell representation av grafiken, detta då enbart för att höga äkthetskänslan av det virtuella rummet.

Vad man idag kan känna med ett haptiskt gränssnitt är fortfarande ändå mycket enkla representationer, om än mycket naturtrogna. Aspekter som man i framtid tror att de haptiska gränssnitten ska kunna representera är t.ex. tryck, temperatur och vibrationer.

 

Hjälpmedel för handikappade

Redan idag använder man sig av Phantom på Certec i lund. Certec, som står för Centrum för Rehabiliteringsteknisk forskning har man skapat haptiska program för synskadade i GHOST. Om man är blind eller synskadad så blir det ju uppenbarlingen en del problem vid interaktion med datorer. Det finns visserligen idag s.k. punktdisplayer men presenterar enbart text i form av Braille. De fungerar så att små plast piggar sticker upp och formar tecken som en synskadad läser som vilken annan text skriven i Braille.

Detta betyder m.a.o. att den otroliga utvecklingen av datorer som skett den senaste åren med grafiska gränssnitt och multimedia till trots, så är det svårt för en synskadad att använda sig av något annat en textbaserade program. På Certec har man försökt att anpassa ett grafiskt gränssnitt som Windows för blinda användare. Man kallar idén "Känn Windows" och tanken är att man ska kunna med hjälpa av Phantom ska kunna känna sig fram i operativet, man ska känna menyer, knappar och fönstret och på så vis lära sig, skapa en inre bild av hur systemet är upplagt. Det man inte kan ta till sig grafiskt ska man kunna få presenterat för sig haptiskt i stället. Att anpassa Windows för synskadade användare innebär ju att de inte blir lämnade på efterkälken när det gäller t.ex. jobb eller vanliga program som bara finns för Windows. Om de i stället skulle vara hänvisade till ett textbaserat operativ som DOS så minskar ju antalet tillgängliga program avsevärt. Kanske skulle det program som finns för DOS räcka om enbart vill syssla med text. Men varför ska man begränsa de handikappades möjligheter om man inte behöver.

 

Frågor

  1. Vad innebär Haptik?
  2. Vad är Phantom?
  3. Vilken väsentlig skillnad är det mellan ett haptiskt gränssnitt och det traditionella gränssnitten som skärm och tangentbord?
  4. Vad kan kraftåterkoppling tillföra till dagen datoranvändande och på vilket sätt?
  5. Berätta om GHOST och hur man använder sig av det?

 

Svar

  1. Haptik är det som har med vårt känselsinne att göra. Man kan säga att haptik är hur människan lära känna sin omgivning genom sin känsel, med den kan man ta i och manipulera objekt.
    Inom datorvärlden och virtual realilty är haptik förmågan att känna och kunna ta på ett datorgenererat objekt.
  2. Phantom är ett haptiskt gränssnitt tillverkat av Sensable Technologies. Den första versionen av Phantom tillverkades av laboratoriet för artificiell intelligens på Massachusetts Institute of Technology. Phantom ser ungefär ut som en skrivbordslampa men är utrustad med en hylsa som användaren för in sitt finger i. Den är även utrustad med tre motorer som genererar återkoppling av kraft beroende på var i det virtuella rummet som användaren befinner sig och vilket objekt denne tar i.
  3. Ett traditionellt gränssnitt som t.ex. en skärm, ett tangentbord eller en mus fungerar ju antingen som input eller output. Ett haptiskt måste fungera som både input och output i samma stund. Det är även detta faktum som gör att det är svårt att tillverka haptiska gränssnitt med "high fidelity".
  4. Man kan använda kraft återkoppling genom ett haptisk gränssnitt inom flera olika branscher och tillämpningar. De mest framträdande är självklart i simulatorer av olika slag, t.ex. vid utbildning av läkare eller piloter där det kan uppstå fara för personer om man skulle utföra operationer i verkligheten om man inte är ordentligt utbildad för det. Man får alltså en tillämpning med högre äkthet om man tillför känsel sinnet i simulatorerna.
    Man kan även hjälpa handikappade personer med exempelvis synskador att använda datorer genom att ha ett haptiskt gränssnitt. På så sätt kan de känna sig fram genom systemet på samma sätt som en vanlig användare navigerar sig fram genom systemet med hjälp av synen. Utan användande av haptiken är synskadade hänvisade till textbaserade tillämpningar och punktdisplayer som skriver Braille tecken.
  5. GHOST är ett utvecklings verktyg för tillämpningar för Phantom. Det är ett objektorienterat programbibliotek med funktioner som skall fungera för alla versioner av Phantom. GHOST tar hand om själva kraftåterkopplingen medan programmeraren enbart behöver koncentrera sig på den haptiska miljön. Man behöver alltså bara definiera de objekt som skall finnas med i den haptiska scenen, och deras statiska och/eller dynamiska egenskaper.
    Vidare kan nämnas att GHOST hanterar reglerprocessen för Phantom, d.v.s att den sköte exekveringen och ser till att Phantom styrs på ett korrekt sätt. För att man ska uppleva kraftåterkopplingen som äkta som måste den haptiska bilden uppdateras minst 1000 ggr per sekund. Reglerprocessen måste m.a.o. ha en frekvens på minst 1 KHz.

 

 

 

av Petter Scherdin, me96psn